diff --git a/theme/nonzero/config.php b/theme/nonzero/config.php new file mode 100644 index 00000000000..aeb59f8d375 --- /dev/null +++ b/theme/nonzero/config.php @@ -0,0 +1,226 @@ +name = 'nonzero'; + +//////////////////////////////////////////////////// +// 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', + 'pagelayout', +); + +//////////////////////////////////////////////////// +// Name of the stylesheet(s) you've including in +// this theme's /styles/ directory. +//////////////////////////////////////////////////// + +$THEME->parents_exclude_sheets = array( + 'base'=>array( + 'pagelayout', + ), + 'canvas'=>array( + 'pagelayout', + ), +); + + +$THEME->enable_dock = true; + +//////////////////////////////////////////////////// +// Do you want to use the new navigation dock? +//////////////////////////////////////////////////// + + +// $THEME->editor_sheets + +//////////////////////////////////////////////////// +// An array of stylesheets to include within the +// body of the editor. +//////////////////////////////////////////////////// + +$THEME->layouts = array( + 'base' => array( + 'file' => 'general.php', + 'regions' => array('side-pre', 'side-post'), + 'defaultregion' => 'side-post', + ), + 'general' => array( + 'file' => 'general.php', + 'regions' => array('side-pre', 'side-post'), + 'defaultregion' => 'side-post', + ), + 'course' => array( + 'file' => 'general.php', + 'regions' => array('side-pre', 'side-post'), + 'defaultregion' => 'side-post' + ), + 'coursecategory' => array( + 'file' => 'general.php', + 'regions' => array('side-pre', 'side-post'), + 'defaultregion' => 'side-post', + ), + 'incourse' => array( + 'file' => 'general.php', + 'regions' => array('side-pre', 'side-post'), + 'defaultregion' => 'side-post', + ), + 'frontpage' => array( + 'file' => 'frontpage.php', + 'regions' => array('side-pre', 'side-post'), + 'defaultregion' => 'side-post', + ), + 'admin' => array( + 'file' => 'general.php', + 'regions' => array('side-pre'), + 'defaultregion' => 'side-pre', + ), + 'mydashboard' => array( + 'file' => 'general.php', + 'regions' => array('side-pre', 'side-post'), + 'defaultregion' => 'side-post', + 'options' => array('langmenu'=>true), + ), + 'mypublic' => array( + 'file' => 'general.php', + 'regions' => array('side-pre', 'side-post'), + 'defaultregion' => 'side-post', + ), + 'login' => array( + 'file' => 'general.php', + 'regions' => array(), + 'options' => array('langmenu'=>true), + ), + 'popup' => array( + 'file' => 'general.php', + 'regions' => array(), + 'options' => array('nofooter'=>true, 'noblocks'=>true, 'nonavbar'=>true), + ), + 'frametop' => array( + 'file' => 'general.php', + 'regions' => array(), + 'options' => array('nofooter'=>true), + ), + 'maintenance' => array( + 'file' => 'general.php', + 'regions' => array(), + 'options' => array('nofooter'=>true, 'nonavbar'=>true), + ), + 'embedded' => array( + 'theme' => 'canvas', + 'file' => 'embedded.php', + 'regions' => array(), + 'options' => array('nofooter'=>true, 'nonavbar'=>true), + ), + +); + +/////////////////////////////////////////////////////////////// +// These are all of the possible layouts in Moodle. The +// simplest way to do this is to keep the theme and file +// variables the same for every layout. Including them +// all in this way allows some flexibility down the road +// if you want to add a different layout template to a +// specific page. +/////////////////////////////////////////////////////////////// + +// $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/nonzero/lang/en/theme_nonzero.php b/theme/nonzero/lang/en/theme_nonzero.php new file mode 100644 index 00000000000..16dbaf734f6 --- /dev/null +++ b/theme/nonzero/lang/en/theme_nonzero.php @@ -0,0 +1,29 @@ +. + +/** + * Strings for component 'theme_formfactor', language 'en', branch 'MOODLE_20_STABLE' + * + * @package theme_boxxie + * @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +$string['pluginname'] = 'Nonzero'; +$string['region-side-post'] = 'Right'; +$string['region-side-pre'] = 'Left'; +$string['choosereadme'] = 'Nonzero, a Moodle 2.0 theme developed by Patrick Malley (newschoollearning.com). Credit for the original design of this theme belongs to NodeThirtyThree; diff --git a/theme/nonzero/layout/frontpage.php b/theme/nonzero/layout/frontpage.php new file mode 100644 index 00000000000..b9bdddfdc13 --- /dev/null +++ b/theme/nonzero/layout/frontpage.php @@ -0,0 +1,112 @@ +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); + +$showsidepre = ($hassidepre && !$PAGE->blocks->region_completely_docked('side-pre', $OUTPUT)); +$showsidepost = ($hassidepost && !$PAGE->blocks->region_completely_docked('side-post', $OUTPUT)); + +$bodyclasses = array(); +if ($showsidepre && !$showsidepost) { + $bodyclasses[] = 'side-pre-only'; +} else if ($showsidepost && !$showsidepre) { + $bodyclasses[] = 'side-post-only'; +} else if (!$showsidepost && !$showsidepre) { + $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() ?> + + \ No newline at end of file diff --git a/theme/nonzero/layout/general.php b/theme/nonzero/layout/general.php new file mode 100644 index 00000000000..2b381ae430b --- /dev/null +++ b/theme/nonzero/layout/general.php @@ -0,0 +1,112 @@ +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() ?> + + \ No newline at end of file diff --git a/theme/nonzero/pix/n1.gif b/theme/nonzero/pix/n1.gif new file mode 100644 index 00000000000..74e84809207 Binary files /dev/null and b/theme/nonzero/pix/n1.gif differ diff --git a/theme/nonzero/pix/n2.gif b/theme/nonzero/pix/n2.gif new file mode 100644 index 00000000000..79287202beb Binary files /dev/null and b/theme/nonzero/pix/n2.gif differ diff --git a/theme/nonzero/style/core.css b/theme/nonzero/style/core.css new file mode 100644 index 00000000000..774a8b40c2d --- /dev/null +++ b/theme/nonzero/style/core.css @@ -0,0 +1,130 @@ +/******************************************************** +** +** Theme name: Nonzero +** Description: A GPL theme for the Moodle core. +** Creation Date: 06/22/10 +** Author: Patrick Malley +** Author URI: http://newschoollearning.com +** +** Customize, edit, poke, prod, and adapt to your needs. +** +*********************************************************/ + +/* Global +--------------------------*/ + +body { + background: #fff; + margin: 0; + padding: 0; + color: #281f18; +} + +body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,input,textarea { + font-family:"Trebuchet MS", Helvetica, Arial, sans-serif; +} + +.wrapper { + margin: 0 35px; +} + +a:link,a:visited { + color: #27608d; +} + +a:hover,a:active { + color: #000; +} + +a img { + border: none; +} + +a:active { + outline: none; +} + +/* Header +---------------------------*/ + +#page-header { + background: url([[pix:theme|n1]]) repeat-x 0 100%; + color: #fff; + height: 122px; +} + +#page-header h1 { + font-size:2.5em; + padding-top:70px; + margin: 0; +} + +#page-header a:link, +#page-header a:visited { + color: #fff; + text-decoration: underline; +} + +/* Navbar +--------------------------*/ + +.navbar { + padding-top: 3px; +} + +.breadcrumb .sep { + color: #777; + font-size: 0.8em; +} + +/* Content +--------------------------*/ + +#top { + background:url([[pix:theme|n2]]) repeat-x 0 0; +} + +/* Blocks +---------------------------*/ + +.block { + border: none; + margin-bottom: 25px; +} + +.block .header { + border-bottom: 1px solid #ccc; + text-transform: lowercase; +} + +.block .title h2 { + font-weight: normal; + font-size: 1.2em; + margin: 0; +} + +.block .content { + font-size: 0.95em; +} + +. +/* Forums +---------------------------*/ + +.forumpost .subject { + font-size: 1.2em; +} + +.forumpost .author { + font-size: 0.9em; +} + +.forumpost .content { + border-bottom:5px solid #aaa; + padding:5px 7px 10px 7px; +} + +.forumpost .topic { + background: #eee; + border-bottom: 1px solid #aaa; +} \ No newline at end of file diff --git a/theme/nonzero/style/pagelayout.css b/theme/nonzero/style/pagelayout.css new file mode 100644 index 00000000000..2bda63b7db9 --- /dev/null +++ b/theme/nonzero/style/pagelayout.css @@ -0,0 +1,143 @@ +/** Path: theme pagelayout **/ + +/********************************************************************************************* + + left column: 250px + right column: 350px + padding left/right column: 10px + padding center column: 30px + +**********************************************************************************************/ +body {margin:auto 0px;width:auto;} +#page {width:100%;overflow:hidden;} +#page-content { + clear: both; + overflow: hidden; + position: relative; + width: 100%; +} + +#page-content #region-main-box { + float: left; + margin-left: -200px; + position: relative; + width: 200%; + right: 100%; +} + +#page-content #region-main-box #region-post-box { + float: left; + margin-left: -200px; + width: 100%; +} + +#page-content #region-main-box #region-post-box #region-main-wrap { + float: left; + width: 50%; +} + +#page-content #region-main-box #region-post-box #region-main-wrap #region-main { + overflow: hidden; + position: relative; + margin-left: 400px; + left: 100%; +} + +#page-content #region-main-box #region-post-box #region-pre { + float: right; + position: relative; + left: 200px; + width: 200px; +} + +#page-content #region-main-box #region-post-box #region-post { + float: right; + position: relative; + left: 600px; + width: 200px; +} + +#page-content #region-main-box #region-post-box #region-main-wrap #region-main .region-content { + overflow: hidden; + padding: 20px 20px 20px 0; +} + +#page-content #region-main-box #region-post-box #region-pre .region-content, +#page-content #region-main-box #region-post-box #region-post .region-content { + overflow: hidden; + padding: 20px 10px; +} + +#page-footer { + clear: both; + float: left; + width: 100%; +} + +/** Only side pre **/ + +.side-pre-only #page-content #region-main-box { + margin-left: 0px; +} + +.side-pre-only #page-content #region-main-box #region-post-box { + margin-left: -200px; +} + +.side-pre-only #page-content #region-main-box #region-post-box #region-main-wrap #region-main { + margin-left: 200px; +} + +.side-pre-only #page-content #region-main-box #region-post-box #region-pre { + left: 200px; + width: 200px; +} + +.side-pre-only #page-content #region-main-box #region-post-box #region-post { + width: 0%; +} + +/** Only side post **/ + +.side-post-only #page-content #region-main-box { + margin-left: 0px; +} + +.side-post-only #page-content #region-main-box #region-post-box { + margin-left: -200px; +} + +.side-post-only #page-content #region-main-box #region-post-box #region-main-wrap #region-main { + margin-left: 200px; +} + +.side-post-only #page-content #region-main-box #region-post-box #region-post { + left: 200px; + width: 200px; +} + +.has_dock.side-post-only .page-middle #region-main-box #region-post-box #region-main-wrap #region-main { + margin-left: 200px; +} + +/** No blocks whatsoever **/ + +.content-only #page-content #region-main-box { + margin-left: 0px; +} + +.content-only #page-content #region-main-box #region-post-box { + margin-left: 0px; +} + +.content-only #page-content #region-main-box #region-post-box #region-main-wrap #region-main { + margin-left: 0px; +} + +.content-only #page-content #region-main-box #region-post-box #region-pre { + width: 0px; +} + +.content-only #page-content #region-main-box #region-post-box #region-post { + width: 0px; +} \ No newline at end of file