diff --git a/theme/serenity/config.php b/theme/serenity/config.php new file mode 100644 index 00000000000..0b6037f3a79 --- /dev/null +++ b/theme/serenity/config.php @@ -0,0 +1,126 @@ +name = 'serenity'; + +//////////////////////////////////////////////////// +// Name of the theme. Most likely the name of +// the directory in which this file resides. +//////////////////////////////////////////////////// + + +$THEME->parents = array('canvas','base'); + +///////////////////////////////////////////////////// +// Which existing theme(s) in the /theme/ directory +// do you want this theme to extend. A theme can +// extend any number of themes. Rather than +// creating an entirely new theme and copying all +// of the CSS, you can simply create a new theme, +// extend the theme you like and just add the +// changes you want to your theme. +//////////////////////////////////////////////////// + + +$THEME->sheets = array('core'); + +//////////////////////////////////////////////////// +// Name of the stylesheet(s) you've including in +// this theme's /styles/ directory. +//////////////////////////////////////////////////// + + +$THEME->enable_dock = false; + +//////////////////////////////////////////////////// +// Do you want to use the new navigation dock? +//////////////////////////////////////////////////// + + +// $THEME->editor_sheets = array('editor'); + +//////////////////////////////////////////////////// +// An array of stylesheets to include within the +// body of the editor. +//////////////////////////////////////////////////// + +// $THEME->csspostprocess + +//////////////////////////////////////////////////// +// Allows the user to provide the name of a function +// that all CSS should be passed to before being +// delivered. +//////////////////////////////////////////////////// + +// $THEME->filter_mediaplugin_colors + +//////////////////////////////////////////////////// +// Used to control the colours used in the small +// media player for the filters +//////////////////////////////////////////////////// + +// $THEME->javascripts + +//////////////////////////////////////////////////// +// An array containing the names of JavaScript files +// located in /javascript/ to include in the theme. +// (gets included in the head) +//////////////////////////////////////////////////// + +// $THEME->javascripts_footer + +//////////////////////////////////////////////////// +// As above but will be included in the page footer. +//////////////////////////////////////////////////// + +// $THEME->larrow + +//////////////////////////////////////////////////// +// Overrides the left arrow image used throughout +// Moodle +//////////////////////////////////////////////////// + +// $THEME->rarrow + +//////////////////////////////////////////////////// +// Overrides the right arrow image used throughout Moodle +//////////////////////////////////////////////////// + +// $THEME->layouts + +//////////////////////////////////////////////////// +// An array setting the layouts for the theme +//////////////////////////////////////////////////// + +// $THEME->parents_exclude_javascripts + +//////////////////////////////////////////////////// +// An array of JavaScript files NOT to inherit from +// the themes parents +//////////////////////////////////////////////////// + +// $THEME->parents_exclude_sheets + +//////////////////////////////////////////////////// +// An array of stylesheets not to inherit from the +// themes parents +//////////////////////////////////////////////////// + +// $THEME->plugins_exclude_sheets + +//////////////////////////////////////////////////// +// An array of plugin sheets to ignore and not +// include. +//////////////////////////////////////////////////// + +// $THEME->renderfactory + +//////////////////////////////////////////////////// +// Sets a custom render factory to use with the +// theme, used when working with custom renderers. +//////////////////////////////////////////////////// + +// $THEME->resource_mp3player_colors + +//////////////////////////////////////////////////// +// Controls the colours for the MP3 player +//////////////////////////////////////////////////// diff --git a/theme/serenity/lang/en/theme_serenity.php b/theme/serenity/lang/en/theme_serenity.php new file mode 100644 index 00000000000..9f75a51c69b --- /dev/null +++ b/theme/serenity/lang/en/theme_serenity.php @@ -0,0 +1,29 @@ +. + +/** + * Strings for component 'theme_standard', language 'en', branch 'MOODLE_20_STABLE' + * + * @package theme_standard + * @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +$string['pluginname'] = 'Serenity'; +$string['region-side-post'] = 'Right'; +$string['region-side-pre'] = 'Left'; +$string['choosereadme'] = 'Serenity, a Moodle 2.0 theme by Patrick Malley (newschoollearning.com)'; diff --git a/theme/serenity/layout/embedded.php b/theme/serenity/layout/embedded.php new file mode 100644 index 00000000000..5d222025429 --- /dev/null +++ b/theme/serenity/layout/embedded.php @@ -0,0 +1,23 @@ +doctype() ?> +htmlattributes() ?>> + + <?php echo $PAGE->title ?> + + standard_head_html() ?> + + +standard_top_of_body_html() ?> + +
+ + + +
+ +
+ + +
+standard_end_of_body_html() ?> + + \ No newline at end of file diff --git a/theme/serenity/layout/frontpage.php b/theme/serenity/layout/frontpage.php new file mode 100644 index 00000000000..9fa7bdd4048 --- /dev/null +++ b/theme/serenity/layout/frontpage.php @@ -0,0 +1,106 @@ +blocks->region_has_content('side-pre', $OUTPUT); +$hassidepost = $PAGE->blocks->region_has_content('side-post', $OUTPUT); + +$bodyclasses = array(); +if ($hassidepre && !$hassidepost) { + $bodyclasses[] = 'side-pre-only'; +} else if ($hassidepost && !$hassidepre) { + $bodyclasses[] = 'side-post-only'; +} else if (!$hassidepost && !$hassidepre) { + $bodyclasses[] = 'content-only'; +} +if ($hassidepre || $hassidepost) { + $bodyclasses[] = 'background'; +} + +echo $OUTPUT->doctype() ?> +htmlattributes() ?>> + + <?php echo $PAGE->title ?> + + + standard_head_html() ?> + + +standard_top_of_body_html() ?> + +
+
+ + + + + + + + + +
+
+
+
+ +
+
+
+ +
+
+
+ + +
+
+ blocks_for_region('side-pre') ?> +
+
+ + + +
+
+ blocks_for_region('side-post') ?> +
+
+ + +
+
+
+
+ + + + + + + + +
+
+standard_end_of_body_html() ?> + + diff --git a/theme/serenity/layout/general.php b/theme/serenity/layout/general.php new file mode 100644 index 00000000000..e49562aaedb --- /dev/null +++ b/theme/serenity/layout/general.php @@ -0,0 +1,111 @@ +heading); +$hasnavbar = (empty($PAGE->layout_options['nonavbar']) && $PAGE->has_navbar()); +$hasfooter = (empty($PAGE->layout_options['nofooter'])); +$hassidepre = $PAGE->blocks->region_has_content('side-pre', $OUTPUT); +$hassidepost = $PAGE->blocks->region_has_content('side-post', $OUTPUT); + +$bodyclasses = array(); +if ($hassidepre && !$hassidepost) { + $bodyclasses[] = 'side-pre-only'; +} else if ($hassidepost && !$hassidepre) { + $bodyclasses[] = 'side-post-only'; +} else if (!$hassidepost && !$hassidepre) { + $bodyclasses[] = 'content-only'; +} + +echo $OUTPUT->doctype() ?> +htmlattributes() ?>> + + <?php echo $PAGE->title ?> + + standard_head_html() ?> + + +standard_top_of_body_html() ?> + +
+
+ + + + + + + + + + + + +
+
+
+
+ +
+
+
+ +
+
+
+ + +
+
+ blocks_for_region('side-pre') ?> +
+
+ + + +
+
+ blocks_for_region('side-post') ?> +
+
+ + +
+
+
+
+ + + + + +
+
+standard_end_of_body_html() ?> + + diff --git a/theme/serenity/pix/body.png b/theme/serenity/pix/body.png new file mode 100644 index 00000000000..b9b4399e6ba Binary files /dev/null and b/theme/serenity/pix/body.png differ diff --git a/theme/serenity/pix/breadcrumb.png b/theme/serenity/pix/breadcrumb.png new file mode 100644 index 00000000000..faff6a6b982 Binary files /dev/null and b/theme/serenity/pix/breadcrumb.png differ diff --git a/theme/serenity/pix/header_grass.jpg b/theme/serenity/pix/header_grass.jpg new file mode 100644 index 00000000000..5c9f99f9912 Binary files /dev/null and b/theme/serenity/pix/header_grass.jpg differ diff --git a/theme/serenity/pix/headingblock.jpg b/theme/serenity/pix/headingblock.jpg new file mode 100644 index 00000000000..89338033c03 Binary files /dev/null and b/theme/serenity/pix/headingblock.jpg differ diff --git a/theme/serenity/style/core.css b/theme/serenity/style/core.css new file mode 100644 index 00000000000..9c79014ace7 --- /dev/null +++ b/theme/serenity/style/core.css @@ -0,0 +1,99 @@ +.pagelayout-frontpage, +.pagelayout-incourse, +.pagelayout-general, +.pagelayout-course, +.pagelayout-coursecategory, +.pagelayout-admin, +.pagelayout-mydashboard, +.pagelayout-mypublic, +.pagelayout-login +{ + background:url([[pix:theme|body]]); +} + +body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,input,textarea +{ + font-family:Georgia, "Times New Roman", Times, serif; + color:#2a2513; +} + +#wrapper +{ + background:#fff; + margin:2% 5%; + padding:5px; + border:1px solid #c1bc9d; +} + +a { + color:#336699; +} + +a:hover { + text-decoration:underline; +} + +/* Header +------------------------*/ + +#page-header +{ + background:#ddd6cc url([[pix:theme|header_grass]]) repeat-x 0 100%; +} + +.headermain { + font-weight:normal; + margin:1em 0.5em 0.75em; +} + +/* Blocks +-------------------------*/ + +.block +{ + border-color:#eee; +} + +.block .header { + background:#9eb1bf; + padding-left:5px; +} + +.block .title { + background:#867f6a; + padding-left:5px; +} + +.block .title h2 { + background:#6e6855; + margin:0; + padding:5px; + font-size:1em; + color:#fff; +} + +.block_action { + padding:5px 0 0; +} + +.block .content { + background:#d8d2c6; + border:1px solid #867f6a; +} + +.block .minicalendar td, +.block .minicalendar th { + border-color: #d8d2c6; +} + + +/* Course +----------------------------*/ + +.headingblock { + background: url([[pix:theme|headingblock]]) repeat-x 0 0; + color:#fff; + font-weight:normal; + border:none; + padding:2px 5px; +} \ No newline at end of file