Modifications to allow parent theme, and some genral cleanups

This commit is contained in:
moodler 2005-01-30 18:17:44 +00:00
parent 55760c9a05
commit 6fde77de24
7 changed files with 77 additions and 34 deletions

View File

@ -5,15 +5,14 @@
/// how Moodle uses this theme.
////////////////////////////////////////////////////////////////////////////////
$THEME->custompix = false;
/// If true, then this theme must have a "pix"
/// subdirectory that contains copies of all
/// files from the moodle/pix directory, plus a
/// "pix/mod" directory containing all the icons
/// for all the activity modules.
$THEME->sheets = array('styles_layout', 'styles_fonts', 'styles_color', 'styles_moz');
/// This variable is an array containing the names of all the
/// stylesheet files you want included in this theme, and in what order
////////////////////////////////////////////////////////////////////////////////
$THEME->standardsheets = true;
/// This variable can be set to an array containing
@ -30,6 +29,44 @@ $THEME->standardsheets = true;
////////////////////////////////////////////////////////////////////////////////
$THEME->parent = '';
/// This variable can be set to the name of a parent theme
/// which you want to have included before the current theme.
/// This can make it easy to make modifications to another
/// theme without having to actually change the files
/// If this variable is empty or false then a parent theme
/// is not used.
////////////////////////////////////////////////////////////////////////////////
$THEME->parentsheets = false;
/// This variable can be set to an array containing
/// filenames from a chosen *PARENT* theme. If the
/// array exists, it will be used to choose the
/// files to include in the standard style sheet.
/// When false, then no files are used.
/// When true or NON-EXISTENT, then ALL standard files are used.
/// This parameter can be used, for example, to prevent
/// having to override too many classes.
/// Note that the trailing .css should not be included
/// eg $THEME->standardsheets = array('styles_layout', 'styles_fonts',
/// 'styles_color', 'styles_moz');
////////////////////////////////////////////////////////////////////////////////
$THEME->custompix = false;
/// If true, then this theme must have a "pix"
/// subdirectory that contains copies of all
/// files from the moodle/pix directory, plus a
/// "pix/mod" directory containing all the icons
/// for all the activity modules.
////////////////////////////////////////////////////////////////////////////////
// These colours are not used anymore, so I've set them to
// bright green to help identify where they should be removed
// These lines will be deleted soon

View File

@ -1,4 +1,3 @@
/* $Id$ */
.siteinfocontent { }

View File

@ -4,40 +4,53 @@
/// up any necessary variables, and lets us include raw CSS files.
/// The output of this script should be a completely standard CSS file.
if (!isset($themename)) {
$themename = NULL;
}
/// There should be no need to modify this file!! Use config.php instead.
$nomoodlecookie = true;
require_once("../../config.php");
/// Following lines are just for standard theme/styles.php
$lastmodified = 0;
$lifetime = 600;
/// The following lines are only for standard/theme/styles.php
if (!isset($THEME->standardsheets) or $THEME->standardsheets === true) { // Use all the sheets we have
$subsheets = array('styles_layout', 'styles_fonts', 'styles_color', 'styles_moz');
$THEME->sheets = array('styles_layout', 'styles_fonts', 'styles_color', 'styles_moz');
} else if (empty($THEME->standardsheets)) { // We can stop right now!
exit;
} else { // Use the provided subset only
$subsheets = $THEME->standardsheets;
$THEME->sheets = $THEME->standardsheets;
}
/// Normal themes will just use a line like this instead of the above.
/// $subsheets = array('styles_layout', 'styles_fonts', 'styles_color', 'styles_moz');
/// If we are a parent theme, then check for parent definitions
/// There should be no need to touch the following
$lastmodified = filemtime('styles.php');
foreach ($subsheets as $subsheet) {
$lastmodifiedsub = filemtime($subsheet.'.css');
if ($lastmodifiedsub > $lastmodified) {
$lastmodified = $lastmodifiedsub;
if (isset($parent)) {
if (!isset($THEME->parentsheets) or $THEME->parentsheets === true) { // Use all the sheets we have
$THEME->sheets = array('styles_layout', 'styles_fonts', 'styles_color', 'styles_moz');
} else if (empty($THEME->parentsheets)) { // We can stop right now!
exit;
} else { // Use the provided subset only
$THEME->sheets = $THEME->parentsheets;
}
}
$themeurl = style_sheet_setup($lastmodifiedsub, 600, $themename);
/// Work out the last modified date for this theme
foreach ($subsheets as $subsheet) {
include_once($subsheet.'.css');
foreach ($THEME->sheets as $sheet) {
$sheetmodified = filemtime($sheet.'.css');
if ($sheetmodified > $lastmodified) {
$lastmodified = $sheetmodified;
}
}
/// Print out the entire style sheet
style_sheet_setup($lastmodified, $lifetime);
foreach ($THEME->sheets as $sheet) {
echo "/***** $sheet.css start *****/\n\n";
include_once($sheet.'.css');
echo "\n\n/***** $sheet.css end *****/\n\n";
}
?>

View File

@ -1,5 +1,3 @@
/* $Id$ */
/*************************************************
***
*** color

View File

@ -1,5 +1,3 @@
/* $Id$ */
/*************************************************
***
*** fonts
@ -315,4 +313,4 @@ table.calendarmonth tbody td div {
.rssclientdescription {
font-size:x-small;
}
}

View File

@ -1,5 +1,3 @@
/* $Id$ */
/*************************************************
***
*** layout

View File

@ -105,4 +105,4 @@ table.calendarmini tbody td {
.sideblockmain, .sideblocklatestnews, .sideblockrecentactivity, .mycalendar {
-moz-border-radius-bottomleft:20px;
-moz-border-radius-bottomright:20px;
}
}