theme-anomaly MDL-20175 Mega theme changes for anomaly

* Changed layout from tables to the 3 divs (2,1,3)
* Cleaned up the all of the images, remade where required with optimised palettes
* Rewrote CSS, this is ongoing process with changes required in both base and anomaly
* Customised the dock to fit with the theme
* Implemented a custom renderer to achieve rounded corners in IE + Opera (CSS otherwise)
This commit is contained in:
Sam Hemelryk
2010-02-05 08:38:02 +00:00
parent 2169e664f2
commit 60e1930096
54 changed files with 838 additions and 754 deletions
+39 -16
View File
@@ -7,12 +7,12 @@
$THEME->name = 'anomaly';
$THEME->sheets = array('styles', 'styles_layout', 'styles_select');
$THEME->sheets = array('base', 'general', 'layout', 'browser','navigation');
/// This variable is an array containing the names of all the
/// stylesheet files you want included in this theme, and in what order
////////////////////////////////////////////////////////////////////////////////
$THEME->parents = array('standardold'); // TODO: new themes can not be based on standardold, instead use 'base' as the base
$THEME->parents = array('base'); // TODO: new themes can not be based on standardold, instead use 'base' as the base
/// 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
@@ -21,7 +21,7 @@ $THEME->parents = array('standardold'); // TODO: new themes can not be based on
/// is not used.
////////////////////////////////////////////////////////////////////////////////
$THEME->parents_exclude_sheets = array('standardold'=>array('styles_moz'));
$THEME->parents_exclude_sheets = array('base'=>array('styles_moz'));
$THEME->resource_mp3player_colors =
'bgColour=000000&btnColour=ffffff&btnBorderColour=cccccc&iconColour=000000&'.
@@ -41,7 +41,12 @@ $THEME->editor_sheets = array('styles_tinymce');
$THEME->layouts = array(
// Most pages - if we encounter an unknown or a missing page type, this one is used.
'normal' => array(
'base' => array(
'theme' => 'anomaly',
'file' => 'general.php',
'regions' => array()
),
'standard' => array(
'theme' => 'anomaly',
'file' => 'general.php',
'regions' => array('side-pre', 'side-post'),
@@ -54,33 +59,47 @@ $THEME->layouts = array(
'regions' => array('side-pre', 'side-post'),
'defaultregion' => 'side-post'
),
// The site home page.
'home' => array(
// Course page
'coursecategory' => array(
'theme' => 'anomaly',
'file' => 'home.php',
'file' => 'general.php',
'regions' => array('side-pre', 'side-post'),
'defaultregion' => 'side-post'
),
'incourse' => array(
'theme' => 'anomaly',
'file' => 'general.php',
'regions' => array('side-pre', 'side-post'),
'defaultregion' => 'side-post'
),
'frontpage' => array(
'theme' => 'anomaly',
'file' => 'general.php',
'regions' => array('side-pre', 'side-post'),
'defaultregion' => 'side-post'
),
// Server administration scripts.
'admin' => array(
'theme' => 'anomaly',
'file' => 'general.php',
'regions' => array('side-pre'),
'defaultregion' => 'side-pre'
),
// My moodle page
'my' => array(
'mydashboard' => array(
'theme' => 'anomaly',
'file' => 'general.php',
'regions' => array('side-pre', 'side-post'),
'defaultregion' => 'side-post'
),
// Settings form pages, like course of module settings.
'form' => array(
'mypublic' => array(
'theme' => 'anomaly',
'file' => 'general.php',
'regions' => array(),
'regions' => array('side-pre', 'side-post'),
'defaultregion' => 'side-post'
),
'login' => array(
'theme' => 'anomaly',
'file' => 'general.php',
'regions' => array()
),
// Pages that appear in pop-up windows - no navigation, no blocks, no header.
'popup' => array(
@@ -111,5 +130,9 @@ $THEME->layouts = array(
'file' => 'general.php',
'regions' => array(),
'options' => array('nofooter'=>true, 'nonavbar'=>true, 'noblocks'=>true),
),
);
)
);
$THEME->rendererfactory = 'theme_overridden_renderer_factory';
$THEME->enable_dock = true;
$THEME->javascripts_footer = array('navigation');
+154
View File
@@ -0,0 +1,154 @@
/**
* Customises the dock for the anomaly theme and does some other cool stuff
*/
function customise_dock_for_theme() {
// If we don't have M.core_dock or Y then bail
if (!M.core_dock) {
return false;
}
// Change the defautl remove all icon to work with our black dock
M.core_dock.cfg.display.removeallicon = M.util.image_url('dock_removeall', 'theme');
// On draw completed add the ability to move the dock to from the left to the right
M.core_dock.on('dock:drawcompleted', anomaly.dock.enable_side_switching, anomaly.dock);
// When the dock is first drawn check to see if it should be moved
M.core_dock.on('dock:drawstarted', anomaly.dock.check_initial_position, anomaly.dock);
// Corrects the panel x position for the theme
M.core_dock.on('dock:itemadded', function(item) {
item.on('dockeditem:showstart', anomaly.dock.correct_panel_x_position, anomaly.dock, item);
item.on('dockeditem:resizecomplete', anomaly.dock.correct_panel_x_position, anomaly.dock, item);
});
// Override the default fix_title_orientation method with our anomaly method
// this will use SVG and rotate the text if possible.
M.core_dock.genericblock.prototype.fix_title_orientation = anomaly.dock.fix_title_orientation;
M.core_dock.genericblock.prototype.resize_block_space = anomaly.dock.resize_block_space;
return true;
}
var anomaly = (function(){
return {
namespaces : {
svg : 'http://www.w3.org/2000/svg'
},
dock : {
enable_side_switching : function() {
var movedock = M.core_dock.Y.Node.create('<img src="'+M.util.image_url('movedock', 'theme')+'" />');
var c = M.core_dock.node.one('.controls');
c.insertBefore(M.core_dock.Y.Node.create('<br />'), c.one('img'));
c.insertBefore(movedock, c.one('br'));
movedock.on('click', this.switch_dock_side);
},
correct_panel_x_position : function(item) {
var dockoffset = M.core_dock.Y.one('#dock_item_'+item.id+'_title').get('offsetWidth');
var panelwidth = M.core_dock.Y.one(item.panel.body).get('offsetWidth');
var screenwidth = parseInt(M.core_dock.Y.get(document.body).get('winWidth'));
switch (M.core_dock.cfg.position) {
case 'left':
item.panel.cfg.setProperty('x', dockoffset);
break;
case 'right':
item.panel.cfg.setProperty('x', (screenwidth-panelwidth-dockoffset-5));
break;
}
},
switch_dock_side : function () {
var oldorientation = M.core_dock.cfg.orientation;
var oldclass = M.core_dock.cfg.css.dock+'_'+M.core_dock.cfg.position+'_'+oldorientation;
switch (M.core_dock.cfg.position) {
case 'right':
M.core_dock.cfg.position = 'left';
M.core_dock.cfg.orientation = 'vertical';
break;
case 'left':
M.core_dock.cfg.position = 'right';
M.core_dock.cfg.orientation = 'vertical';
break;
}
var newclass = M.core_dock.cfg.css.dock+'_'+M.core_dock.cfg.position+'_'+M.core_dock.cfg.orientation;
M.core_dock.node.replaceClass(oldclass, newclass);
M.core_dock.Y.Cookie.set('dock_position', M.core_dock.cfg.position);
},
check_initial_position : function () {
var cookieposition = M.core_dock.Y.Cookie.get('dock_position');
if (cookieposition && cookieposition != 'null' && cookieposition !== M.core_dock.cfg.position) {
var oldclass = M.core_dock.cfg.css.dock+'_'+M.core_dock.cfg.position+'_'+M.core_dock.cfg.orientation;
M.core_dock.cfg.position = cookieposition;
if (M.core_dock.node) {
var newclass = M.core_dock.cfg.css.dock+'_'+M.core_dock.cfg.position+'_'+M.core_dock.cfg.orientation;
M.core_dock.node.replaceClass(oldclass, newclass);
}
}
},
fix_title_orientation : function (node) {
if (M.core_dock.cfg.orientation == 'vertical') {
return anomaly.transform.make_vertical_text(node);
}
return node;
},
resize_block_space : function (node) {
var blockregions = {
pre: {hasblocks:true,c:'side-pre-only'},
post: {hasblocks:true,c:'side-post-only'},
noblocksc:'noblocks'
}
M.core_dock.Y.all('div.block-region').each(function(blockregion){
if (blockregion.hasClass('side-pre') && blockregion.all('.sideblock').size() == 0) {
blockregions.pre.hasblocks = false;
} else if (blockregion.hasClass('side-post') && blockregion.all('.sideblock').size() == 0) {
blockregions.post.hasblocks = false;
}
});
if (blockregions.pre.hasblocks && blockregions.post.hasblocks) {
// No classes required both regions have blocks
M.core_dock.Y.one(document.body).removeClass(blockregions.pre.c).removeClass(blockregions.post.c).removeClass(blockregions.noblocksc);
} else if (blockregions.pre.hasblocks) {
// side-pre-only required: remove any other classes
M.core_dock.Y.one(document.body).addClass(blockregions.pre.c).removeClass(blockregions.post.c).removeClass(blockregions.noblocksc);
} else if (blockregions.post.hasblocks) {
// side-post-only required: remove any other classes
M.core_dock.Y.one(document.body).removeClass(blockregions.pre.c).addClass(blockregions.post.c).removeClass(blockregions.noblocksc);
} else {
// All blocks have been docked: add noblocks remove side-xxx-only's if set
M.core_dock.Y.one(document.body).removeClass(blockregions.pre.c).removeClass(blockregions.post.c).addClass(blockregions.noblocksc);
}
return '200px';
}
},
transform : {
make_vertical_text : function(node) {
if (YAHOO.env.ua.ie > 0) {
if (YAHOO.env.ua.ie > 7) {
node.setAttribute('style', 'writing-mode: tb-rl; filter: flipV flipH;');
} else {
node.innerHTML = node.innerHTML.replace(/(.)/g, "$1<br />");
}
return node;
}
var test = M.core_dock.Y.Node.create('<div><span>'+node.firstChild.nodeValue+'</span></div>');
M.core_dock.Y.one(document.body).append(test);
var height = test.one('span').get('offsetWidth');
test.remove();
var txt = document.createElementNS(anomaly.namespaces.svg, 'text');
txt.setAttribute('x', '0');
txt.setAttribute('y', '0');
txt.setAttribute('transform','rotate(90, 5, 5)');
txt.appendChild(document.createTextNode(node.firstChild.nodeValue));
var svg = document.createElementNS(anomaly.namespaces.svg, 'svg');
svg.setAttribute('version', '1.1');
svg.setAttribute('height', height);
svg.setAttribute('width', 30);
svg.appendChild(txt);
var div = document.createElement(node.nodeName);
div.appendChild(svg);
return div;
}
}
}
})();
+76 -128
View File
@@ -1,11 +1,23 @@
<?php
$properties = new stdClass;
$properties->sidepre = theme_enable_block_region('side-pre');
$properties->sidepost = theme_enable_block_region('side-post');
$properties->hasnavbar = false;
$regionsinfo = 'pagelayout';
if ($PAGE->blocks->region_has_content('side-pre', $OUTPUT)) {
$regionsinfo .= '-pre';
$bodyclasses = array();
if ($properties->sidepre && !$properties->sidepost) {
$bodyclasses[] = 'side-pre-only';
} else if ($properties->sidepost && !$properties->sidepre) {
$bodyclasses[] = 'side-post-only';
}
if ($PAGE->blocks->region_has_content('side-post', $OUTPUT)) {
$regionsinfo .= '-post';
if (!$properties->sidepost && !$properties->sidepre) {
$bodyclasses[] = 'noblocks';
}
if (empty($PAGE->layout_options['nonavbar']) && $PAGE->has_navbar()) {
$bodyclasses[] = 'hasnavbar';
$properties->hasnavbar = true;
}
echo $OUTPUT->doctype() ?>
@@ -15,139 +27,75 @@ echo $OUTPUT->doctype() ?>
<link rel="shortcut icon" href="<?php echo $OUTPUT->pix_url('favicon', 'theme')?>" />
<?php echo $OUTPUT->standard_head_html() ?>
</head>
<body id="<?php echo $PAGE->pagetype ?>" class="<?php echo $PAGE->bodyclasses ?>">
<body id="<?php echo $PAGE->pagetype ?>" class="<?php echo $PAGE->bodyclasses.' '.join(' ', $bodyclasses) ?>">
<?php echo $OUTPUT->standard_top_of_body_html(); ?>
<div id="page" class="<?php echo $regionsinfo ?>">
<!-- First, let's wrap the sides -->
<div id="wrapper-t">
<div id="wrapper-l">
<div id="wrapper-r">
<div id="wrapper-b">
<!-- Now, let's cap the corners -->
<div id="wrapper-tl">
<div id="wrapper-tr">
<div id="wrapper-bl">
<div id="wrapper-br">
<div class="clearfix" id="header">
<div id="header-t">
<div id="header-r">
<div id="header-l">
<div id="header-m" class="clearfix header">
<h1 class="headermain"><?php echo $PAGE->heading ?></h1>
<div class="headermenu"><?php echo $PAGE->headingmenu ?></div>
</div>
</div>
</div>
</div>
</div>
</div>
<?php if (empty($PAGE->layout_options['nonavbar']) and $PAGE->has_navbar()) { // This is the navigation bar with breadcrumbs ?>
<div class="navbar clearfix">
<div class="breadcrumb"><?php echo $OUTPUT->navbar(); ?></div>
<div class="navbutton"><?php echo $PAGE->button; ?></div>
</div>
<?php } ?>
<!-- END OF HEADER -->
<div id="content">
<table id="layout-table" summary="layout">
<tr>
<?php if (empty($PAGE->layout_options['noblocks']) && $PAGE->blocks->region_has_content('side-pre', $OUTPUT)) { ?>
<td id="region-side-pre" class="block-region">
<?php echo $OUTPUT->blocks_for_region('side-pre') ?>
</td>
<?php } ?>
<td id="content" class="content">
<?php echo core_renderer::MAIN_CONTENT_TOKEN ?>
</td>
<?php if (empty($PAGE->layout_options['noblocks']) && $PAGE->blocks->region_has_content('side-post', $OUTPUT)) { ?>
<td id="region-side-post" class="block-region">
<?php echo $OUTPUT->blocks_for_region('side-post') ?>
</td>
<?php } ?>
</tr>
</table>
</div>
<!-- END OF CONTENT -->
<div id="page">
<?php if (empty($PAGE->layout_options['nofooter'])) { ?>
<div class="footer" id="footer">
<div id="footer-b" class="clearfix">
<div id="footer-l">
<div id="footer-r">
<div id="footer-m" class="clearfix">
<div id="footer-logo">
<a href="http://moodle.org" target="_blank"><img src="<?php echo $OUTPUT->pix_url('logo','theme');?>" title="Moodle <?php echo $CFG->release ?>" /></a>
</div>
<div id="footer-helplink">
<?php echo page_doc_link(get_string('moodledocslink')) ?>
</div>
<div id="footer-loggedinas">
<?php echo $OUTPUT->login_info(); ?>
</div>
<?php echo $OUTPUT->standard_footer_html(); ?>
</div>
</div>
</div>
</div>
</div>
<?php } ?>
<div class="page-header">
<div class="rounded-corner top-left"></div>
<div class="rounded-corner top-right"></div>
<h1 class="headermain"><?php echo $PAGE->heading ?></h1>
<div class="headermenu"><?php
echo $OUTPUT->login_info();
if (!empty($PAGE->layout_options['langmenu'])) {
echo $OUTPUT->lang_menu();
}
echo $PAGE->headingmenu
?></div>
<?php if ($properties->hasnavbar) { // This is the navigation bar with breadcrumbs ?>
<div class="navbar clearfix">
<div class="breadcrumb"><?php echo $OUTPUT->navbar(); ?></div>
<div class="navbutton"><?php echo $PAGE->button; ?></div>
</div>
<?php } ?>
</div>
<div class="page-middle">
<div class="column-container">
<div class="column-mask">
<div class="column-centre">
<div class="column-wrap">
<div class="column-pad">
<div class="column-content">
<!-- MAIN CONTENT START -->
<?php echo core_renderer::MAIN_CONTENT_TOKEN ?>
<!-- MAIN CONTENT END -->
</div>
</div>
</div>
</div>
<div class="column-left">
<div class="column-content block-region side-pre"><?php
if ($properties->sidepre) {
echo $OUTPUT->blocks_for_region('side-pre');
} ?>
</div>
</div>
<div class="column-right">
<div class="column-content block-region side-post"><?php
if ($properties->sidepost) {
echo $OUTPUT->blocks_for_region('side-post');
} ?>
</div>
</div>
</div>
</div>
</div>
<?php if (empty($PAGE->layout_options['nofooter'])) { ?>
<div class="page-footer">
<p class="helplink">
<?php echo page_doc_link(get_string('moodledocslink')) ?>
</p>
<?php
echo $OUTPUT->login_info();
echo $OUTPUT->home_link();
echo $OUTPUT->standard_footer_html();
?>
<div class="rounded-corner bottom-left"></div>
<div class="rounded-corner bottom-right"></div>
</div>
<?php } ?>
</div>
<!-- end #page -->
<script type="text/javascript" charset="utf-8">
/* <![CDATA[ */
var CSSClass={};CSSClass.is=function(e,c){if(typeof e=="string")e=document.getElementById(e);var classes=e.className;if(!classes)return false;if(classes==c)return true;return e.className.search("\\b"+c+"\\b")!=-1;};CSSClass.add=function(e,c){if(typeof e=="string")e=document.getElementById(e);if(CSSClass.is(e,c))return;if(e.className)c=" "+c;e.className+=c;};CSSClass.remove=function(e,c){if(typeof e=="string")e=document.getElementById(e);e.className=e.className.replace(new RegExp("\\b"+c+"\\b\\s*","g"),"");};
var jsscript = {
corrections: function () {
// check for layouttabel and add haslayouttable class to body
function setbodytag () {
var bd = document.getElementsByTagName('body')[0];
if (bd) {
var tagname = 'nolayouttable';
if (document.getElementById('middle-column')) {
var lc = document.getElementById('left-column');
var rc = document.getElementById('right-column');
if ( lc && rc ) {
tagname = 'haslayouttable rightandleftcolumn';
} else if (lc) {
tagname = 'haslayouttable onlyleftcolumn';
} else if (rc) {
tagname = 'haslayouttable onlyrightcolumn';
} else {
tagname = 'haslayouttable onlymiddlecolumn';
}
}
CSSClass.add(bd, tagname);
} else {
setTimeout(function() { setbodytag() }, 10);
}
};
setbodytag();
},
init: function() {
jsscript.corrections();
}
};
jsscript.init();
/* ]]> */
</script>
<?php echo $OUTPUT->standard_end_of_body_html() ?>
</body>
</html>
-152
View File
@@ -1,152 +0,0 @@
<?php
$regionsinfo = 'pagelayout';
if ($PAGE->blocks->region_has_content('side-pre', $OUTPUT)) {
$regionsinfo .= '-pre';
}
if ($PAGE->blocks->region_has_content('side-post', $OUTPUT)) {
$regionsinfo .= '-post';
}
echo $OUTPUT->doctype() ?>
<html <?php echo $OUTPUT->htmlattributes() ?>>
<head>
<title><?php echo $PAGE->title ?></title>
<link rel="shortcut icon" href="<?php echo $OUTPUT->pix_url('favicon', 'theme')?>" />
<?php echo $OUTPUT->standard_head_html() ?>
</head>
<body id="<?php echo $PAGE->pagetype ?>" class="<?php echo $PAGE->bodyclasses ?>">
<?php echo $OUTPUT->standard_top_of_body_html(); ?>
<div id="page" class="<?php echo $regionsinfo ?>">
<!-- First, let's wrap the sides -->
<div id="wrapper-t">
<div id="wrapper-l">
<div id="wrapper-r">
<div id="wrapper-b">
<!-- Now, let's cap the corners -->
<div id="wrapper-tl">
<div id="wrapper-tr">
<div id="wrapper-bl">
<div id="wrapper-br">
<div class="clearfix" id="header-home">
<div id="header-t">
<div id="header-r">
<div id="header-l">
<div id="header-m" class="clearfix home">
<h1 class="headermain"><?php echo $PAGE->heading;?><br /><span><?php echo $COURSE->summary;?></span></h1>
<div class="headermenu"><?php echo $PAGE->headingmenu ?></div>
</div>
</div>
</div>
</div>
</div>
</div>
<?php if (empty($PAGE->layout_options['nonavbar']) and $PAGE->has_navbar()) { // This is the navigation bar with breadcrumbs ?>
<div class="navbar clearfix">
<div class="breadcrumb"><?php echo $OUTPUT->navbar(); ?></div>
<div class="navbutton"><?php echo $PAGE->button; ?></div>
</div>
<?php } ?>
<!-- END OF HEADER -->
<div id="content">
<table id="layout-table" summary="layout">
<tr>
<?php if ($PAGE->blocks->region_has_content('side-pre', $OUTPUT)) { ?>
<td id="region-side-pre" class="block-region">
<?php echo $OUTPUT->blocks_for_region('side-pre') ?>
</td>
<?php } ?>
<td id="content" class="content">
<?php echo core_renderer::MAIN_CONTENT_TOKEN ?>
</td>
<?php if ($PAGE->blocks->region_has_content('side-post', $OUTPUT)) { ?>
<td id="region-side-post" class="block-region">
<?php echo $OUTPUT->blocks_for_region('side-post') ?>
</td>
<?php } ?>
</tr>
</table>
</div>
<!-- END OF CONTENT -->
<?php if (empty($PAGE->layout_options['nofooter'])) { ?>
<div id="footer" class="footer">
<div id="footer-b" class="clearfix">
<div id="footer-l">
<div id="footer-r">
<div id="footer-m" class="clearfix">
<div id="footer-logo">
<a href="http://moodle.org" target="_blank"><img src="<?php echo $OUTPUT->pix_url('logo','theme');?>" title="Moodle <?php echo $CFG->release ?>" /></a>
</div>
<div id="footer-helplink">
<?php echo page_doc_link(get_string('moodledocslink')) ?>
</div>
<div id="footer-loggedinas">
<?php echo $OUTPUT->login_info(); ?>
</div>
<?php echo $OUTPUT->standard_footer_html(); ?>
</div>
</div>
</div>
</div>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- end #page -->
<script type="text/javascript" charset="utf-8">
/* <![CDATA[ */
var CSSClass={};CSSClass.is=function(e,c){if(typeof e=="string")e=document.getElementById(e);var classes=e.className;if(!classes)return false;if(classes==c)return true;return e.className.search("\\b"+c+"\\b")!=-1;};CSSClass.add=function(e,c){if(typeof e=="string")e=document.getElementById(e);if(CSSClass.is(e,c))return;if(e.className)c=" "+c;e.className+=c;};CSSClass.remove=function(e,c){if(typeof e=="string")e=document.getElementById(e);e.className=e.className.replace(new RegExp("\\b"+c+"\\b\\s*","g"),"");};
var jsscript = {
corrections: function () {
// check for layouttabel and add haslayouttable class to body
function setbodytag () {
var bd = document.getElementsByTagName('body')[0];
if (bd) {
var tagname = 'nolayouttable';
if (document.getElementById('middle-column')) {
var lc = document.getElementById('left-column');
var rc = document.getElementById('right-column');
if ( lc && rc ) {
tagname = 'haslayouttable rightandleftcolumn';
} else if (lc) {
tagname = 'haslayouttable onlyleftcolumn';
} else if (rc) {
tagname = 'haslayouttable onlyrightcolumn';
} else {
tagname = 'haslayouttable onlymiddlecolumn';
}
}
CSSClass.add(bd, tagname);
} else {
setTimeout(function() { setbodytag() }, 10);
}
};
setbodytag();
},
init: function() {
jsscript.corrections();
}
};
jsscript.init();
/* ]]> */
</script>
<?php echo $OUTPUT->standard_end_of_body_html() ?>
</body>
</html>
+20
View File
@@ -0,0 +1,20 @@
<?php
/**
* This is a slight variatoin on the standard_renderer_factory that uses
* custom_corners_core_renderer instead of core_renderer.
*
* This generates the slightly different HTML that the custom_corners theme expects.
*
* @copyright 2009 Sam Hemelryk
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
function theme_enable_block_region($region) {
global $PAGE, $OUTPUT;
return (
empty($PAGE->layout_options['noblocks']) &&
array_key_exists($PAGE->pagelayout, $PAGE->theme->layouts) &&
in_array($region, $PAGE->theme->layouts[$PAGE->pagelayout]['regions']) &&
$PAGE->blocks->region_has_content($region, $OUTPUT)
);
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 1000 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 383 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 376 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 378 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 267 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 580 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 664 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 563 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 646 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 288 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 B

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 B

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

After

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 292 B

After

Width:  |  Height:  |  Size: 292 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 905 B

After

Width:  |  Height:  |  Size: 905 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 803 B

After

Width:  |  Height:  |  Size: 803 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 B

After

Width:  |  Height:  |  Size: 69 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 818 B

After

Width:  |  Height:  |  Size: 770 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 269 B

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 338 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 331 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 339 B

+78
View File
@@ -0,0 +1,78 @@
<?php
class theme_anomaly_core_renderer extends core_renderer {
/**
* Prints a nice side block with an optional header.
*
* The content is described
* by a {@link block_contents} object.
*
* @param block_contents $bc HTML for the content
* @param string $region the region the block is appearing in.
* @return string the HTML to be output.
*/
function block($bc, $region) {
$bc = clone($bc); // Avoid messing up the object passed in.
$bc->prepare($this, $this->page, $this->target);
$skiptitle = strip_tags($bc->title);
if (empty($skiptitle)) {
$output = '';
$skipdest = '';
} else {
$output = html_writer::tag('a', array('href' => '#sb-' . $bc->skipid, 'class' => 'skip-block'),
get_string('skipa', 'access', $skiptitle));
$skipdest = html_writer::tag('span', array('id' => 'sb-' . $bc->skipid, 'class' => 'skip-block-to'), '');
}
$bc->attributes['id'] = $bc->id;
$bc->attributes['class'] = $bc->get_classes_string();
$output .= html_writer::start_tag('div', $bc->attributes);
/** Rounded corners **/
$output .= html_writer::start_tag('div', array('class'=>'corner-box'));
$output .= html_writer::start_tag('div', array('class'=>'rounded-corner top-left')).html_writer::end_tag('div');
$output .= html_writer::start_tag('div', array('class'=>'rounded-corner top-right')).html_writer::end_tag('div');
$controlshtml = $this->block_controls($bc->controls);
$title = '';
if ($bc->title) {
$title = html_writer::tag('h2', null, $bc->title);
}
if ($title || $controlshtml) {
$output .= html_writer::tag('div', array('class' => 'header'),
html_writer::tag('div', array('class' => 'title'),
$title . $controlshtml));
}
$output .= html_writer::start_tag('div', array('class' => 'content'));
$output .= $bc->content;
if ($bc->footer) {
$output .= html_writer::tag('div', array('class' => 'footer'), $bc->footer);
}
$output .= html_writer::end_tag('div');
/** Four rounded corner ends **/
$output .= html_writer::start_tag('div', array('class'=>'rounded-corner bottom-left')).html_writer::end_tag('div');
$output .= html_writer::start_tag('div', array('class'=>'rounded-corner bottom-right')).html_writer::end_tag('div');
$output .= html_writer::end_tag('div');
$output .= html_writer::end_tag('div');
if ($bc->annotation) {
$output .= html_writer::tag('div', array('class' => 'blockannotation'), $bc->annotation);
}
$output .= $skipdest;
$this->init_block_hider_js($bc);
return $output;
}
}
+78
View File
@@ -0,0 +1,78 @@
body, div, p, li, input, option, textarea {font-size:10pt;line-height:1.5em;}
body, div, p, li, input, option, textarea, h1, h2, h3, h4, h5 {font-family:Georgia,Times,"Times New Roman",serif;}
h1.main, h2.main, h3.main, h4.main, h5.main, h6.main {text-align:center;}
.generalbox {padding:10px;margin-bottom:15px;}
.generaltable, .userinfobox {margin-left:auto;margin-right:auto;}
#notice.generalbox {margin-left: auto;margin-right: auto;width: 60%;}
.notifytiny {font-size:0.7em;color:#333;}
.notifytiny li, .notifytiny td {font-size:100%;}
.notifyproblem {text-align:center;}
.notifysuccess {text-align:center;}
.sideblock .list,
.unlist, .inline-list,
.sideblock .list li,
.unlist li, .inline-list li,
.sitetopic .section li,
.course-content .section,
.course-content .section li,
.tabtree li {list-style: none;margin:0px;padding:0px;}
.jsenabled .collapsibleregion {overflow:hidden;}
.paging {text-align:center;}
/**
* Mforms
*/
.mform {margin:0px auto;width:80%;}
.mform fieldset {width:100%;border:1px solid #000;}
.mform fieldset fieldset {border-width:0px;}
.mform fieldset legend {font-weight:bold;margin-left:0.5em;}
.mform fieldset div {margin:0px 10px 10px 10px;}
.mform fieldset div div {margin:0px;}
.mform fieldset .advancedbutton {text-align:right;}
.mform fieldset.hidden {border-width:0px;}
.mform .fitem {width:100%;overflow:hidden;margin-top:5px;margin-bottom:1px;clear:right;}
.mform .fitem .fitemtitle {width:30%;text-align:right;float:left;}
.mform .fitem .felement {width:60%;margin-left:31%;}
.mform .fitem fieldset.felement {margin-left:0px;padding-left:1%;} /** Fix fieldset margin issue **/
.mform .required label {color:#A00;}
.mform .fdescription.required {color:#A00;text-align:right;}
.mform .fpassword .unmask {display:inline;margin-left:0.5em;}
.ie .mform .fitem .felement {margin-left:0px;text-align:left;float:left;} /** Fix IE double margin + float bugs **/
.ie .mform .fitem .fitemtitle {padding-right:1em;}
/**
* Tabs
*/
.tabtree {position:relative;margin-bottom:3.5em;}
.tabtree .tabrow0 {text-align:center;width:100%;margin:1em 0px;}
.tabtree .tabrow0 li {display:inline;margin-right:-4px;}
.tabtree .tabrow0 li.here a {position:relative;z-index:102;}
.tabtree .tabrow0 li a {background-image:url([[pix:theme|tab/left]]);padding-left:14px;padding-top:10px;background-repeat:no-repeat;padding-bottom:3px;margin-bottom:-1px;}
.tabtree .tabrow0 li a:hover {background-image:url([[pix:theme|tab/left_hover]]);}
.tabtree .tabrow0 li a span { background-image:url([[pix:theme|tab/right]]);background-repeat:no-repeat;background-position:100% 0%;padding-right:14px;padding-top:10px;padding-bottom:3px;}
.tabtree .tabrow0 li a:hover span {background-image:url([[pix:theme|tab/right_hover]]);}
.tabtree .tabrow0 ul,
.tabtree .tabrow0 div {background-image:url([[pix:theme|tab/tabrow1]]);background-position:0% 50%;position:absolute;width:100%;border-top:1px solid #aaa;padding:0.25em 0px;top:100%;margin:0px;}
.tabtree .tabrow0 .empty {height:1px;overflow:hidden;padding:0px;position:absolute;}
.tabtree .tabrow1 li a,
.tabtree .tabrow1 li a:hover,
.tabtree .tabrow1 li a span,
.tabtree .tabrow1 li a:hover span {background-image:none !important;}
/** phpinfo styles **/
.phpinfo .center {text-align: center;}
.phpinfo .center table {margin-left: auto;margin-right: auto;text-align: left;border-collapse: collapse;}
.phpinfo .center th {text-align: center;}
.phpinfo .e,.phpinfo .v,.phpinfo .h {border: 1px solid #000000;font-size: 0.8em;vertical-align: baseline;color: #000000;background-color: #cccccc;}
.phpinfo .e {background-color: #ccccff;font-weight: bold;}
.phpinfo .h {background-color: #9999cc;font-weight: bold;}
.groupmanagementtable {width:90%;}
.groupmanagementtable td {vertical-align:top;border-width:0px;}
.groupmanagementtable td p {margin:0px;}
+66
View File
@@ -0,0 +1,66 @@
/**
* Rounded corner CSS + images
* This CSS uses background images and relative positioning to display rounded
* corners on all browsers.
*/
.rounded-corner {display:block;width:11px;height:11px;font-size:1pt;margin:0px;padding:0px;}
.page-header .rounded-corner {background-image:url([[pix:theme|corners_header]]);clear:both;}
.page-header .rounded-corner.top-left {background-position:0px 0px;float:left;}
.page-header .rounded-corner.top-right {background-position:11px 0px;float:right;}
/** Fix IE8 + Opera positioning issue **/
.ie8 .page-header .rounded-corner.top-right,
.opera .page-header .rounded-corner.top-right {position:relative;top:-11px;}
.page-footer {position:relative;}
.page-footer .rounded-corner {position:absolute;background-image:url([[pix:theme|corners_header]]);clear:both;}
.page-footer .rounded-corner.bottom-left {background-position:0px 11px;bottom:0px;left:0px;float:left;}
.page-footer .rounded-corner.bottom-right {background-position:11px 11px;bottom:0px;right:-1px;float:right;}
.block-region .sideblock {border-width:0px;background-color:white;}
.sideblock .corner-box {border:1px solid #C8C9C7;margin-bottom:10px;padding-bottom:10px;background-color:#E3E3E3;}
.sideblock .corner-box .rounded-corner {background-image:url([[pix:theme|corners_sideblock]]);position:relative;}
.sideblock .corner-box .rounded-corner.top-left {background-position:0px 0px;float:left;top:-1px;left:-1px;}
.sideblock .corner-box .rounded-corner.top-right {background-position:11px 0px;float:right;top:-1px;right:-1px;}
.sideblock .corner-box .rounded-corner.bottom-left {background-position:0px 11px;float:left;bottom:0px;left:-1px;}
.sideblock .corner-box .rounded-corner.bottom-right {background-position:11px 11px;float:right;bottom:0px;right:-1px;}
/**
* Pure CSS rounded corners
* This CSS overrides the above to remove images and use pure CSS to display the
* rounded corners. Less requests, betterg page load time, better looking rounded
* corners.... if only IE could handle it.
*
* Browsers:
* Firefox: body.gecko
* Chrome: body.safari
* Safari: body.safari
*/
.safari .rounded-corner.top-left,
.safari .rounded-corner.top-right,
.safari .rounded-corner.bottom-left,
.safari .rounded-corner.bottom-right
.gecko .rounded-corner.top-left,
.gecko .rounded-corner.top-right,
.gecko .rounded-corner.bottom-left,
.gecko .rounded-corner.bottom-right {background-image:none;display:none;}
.safari .sideblock .corner-box,
.gecko .sideblock .corner-box {-webkit-border-radius: 10px;-moz-border-radius: 10px;}
.safari .sideblock .corner-box .header,
.safari .page-header,
.gecko .sideblock .corner-box .header,
.gecko .page-header {-moz-border-radius: 10px 10px 0px 0px;-webkit-border-top-left-radius:10px;-webkit-border-top-right-radius:10px;}
.safari .page-footer,
.gecko .page-footer {-moz-border-radius: 0px 0px 10px 10px;-webkit-border-bottom-left-radius:10px;-webkit-border-bottom-right-radius:10px;}
.gecko .forumpost,
.gecko .forumpost .side {-moz-border-radius-bottomleft:20px}
.gecko .forumpost,
.gecko .forumpost .content {-moz-border-radius-bottomright:20px;}
/** Fix for IE 6 float background bug */
.ie .column-content {position:relative;}
+221
View File
@@ -0,0 +1,221 @@
a:link {text-decoration:none;color: #697F55;}
a:visited {text-decoration:none;color: #697F55;}
a:hover {text-decoration:underline;}
img.icon,
img.iconhelp {vertical-align:middle;}
html, body {background-color:#C8C9C7;}
#page .page-middle {background-color:#FFF;}
.page-header {background-color: #222; color:#FFF;border-bottom:5px solid #697F55;}
.hasnavbar .page-header {border-bottom-width:0px;}
.page-footer {background-color: #222; color:#FFF;}
.page-header .headermain span {color:#C8C9C7;}
.page-header .navbar {background-color:#697F55;width:100%;}
.page-header .navbar {color:#000;}
.page-header .navbar a:link {color:#fff;}
.page-header .navbar a:visited {color:#fff;}
.page-header .navbar .breadcrumb {margin:5px 1em;float:left;}
.page-header .navbar .navbutton {float:right;margin:5px 1em;}
/** General **/
.generalbox {border: 1px solid #DDDDDD;}
.generaltable td {border-width:0px;}
.sitetopic {border-width:0px;}
.headingblock {margin-bottom:10px;border-bottom:1px solid #697F55;background-color:#E3E3E3;padding:4px 5px;}
.coursebox {width:100%;margin:10px 0px;border-bottom:1px solid #E3E3E3;overflow:hidden;padding-bottom:10px;}
.coursebox .info {width:35%;float:left;}
.coursebox .summary {width:60%;float:right;}
.course-content ul {margin:0px;}
.course-content .headingblock.outline {margin-top:0px;}
.course-content .section.main {border:1px solid #E3E3E3;margin-bottom:10px;}
.course-content .section.main .left.side {float:left;width:20px;padding:5px;}
.course-content .section.main .right.side {float:right;width:20px;padding:5px;}
.course-content .section.main .content {margin:0px 30px 10px 30px;}
.course-content .section.main .content .section_add_menus {text-align:right;}
#course-user .section {border:1px solid #DDD;margin:0px 5% 1.5em 5%;}
#course-user .section h2,
#course-user .section .content {margin:5px 1em;}
#course-user .section table td {border:0px;}
.generaltable {border:1px solid #DDD;}
.generaltable .cell {background-color:#FFF;border:1px solid #EEE;border-collapse: collapse;}
.generaltable .header {background-color:#EEE;border:1px solid #EEE;font-weight:bold;}
/** Login **/
.loginbox {margin-top:15px;margin-bottom:15px;}
.loginbox .loginform {margin-top:15px;}
.loginbox .loginform .form-label {width:39%;float:left;text-align:right;}
.loginbox .loginform .form-input {width:60%;float:right;text-align:left;}
.loginbox .loginform .form-input input {width:6em;}
.loginbox.twocolumns {border:1px solid #DDD;}
.loginbox.twocolumns .loginpanel {float:left;width:49%;text-align:center;}
.loginbox.twocolumns .signuppanel {float:left;width:50%;border-left:1px solid #DDD;}
.loginbox.twocolumns .signuppanel h2 {text-align:center;}
.loginbox.twocolumns .signuppanel div {margin:1em;}
.loginbox.twocolumns .signuppanel div li {font-size:90%;}
.loginbox .loginsub {margin-left:10%;margin-right:10%;padding:10px;margin-bottom:5px;}
.loginbox .guestsub {margin-left:10%;margin-right:10%;padding:10px;margin-bottom:5px;border-top:1px solid #DDD;}
/** Blocks **/
.block-region .sideblock {border:1px solid #C8C9C7;background-color: #E3E3E3;margin-bottom:10px;overflow:hidden;}
.block-region .sideblock h1,
.block-region .sideblock h2,
.block-region .sideblock h3,
.block-region .sideblock h4 {margin:0px;}
.block-region .sideblock .header {margin:10px 6px 3px 6px;}
.block-region .sideblock .content {margin:10px 6px 3px 6px;}
/** Admin **/
.box.adminwarning {text-align:center;border:1px solid #C8C9C7;background-color:#E3E3E3;margin-bottom:1em;padding:10px 10%;}
.box.copyright {text-align:center;font-size:90%;padding:10px 10%;}
#adminsettings fieldset {border:1px solid #C8C9C7;background-color:#E3E3E3;}
#adminsettings fieldset .generalbox {margin:1em 0.5em;border-color:#C8C9C7;}
#adminsettings .form-buttons {margin-left:13em;}
.form-item {width:100%;margin:1em 1em 2em 1em ;}
.form-item .form-label {width:12.5em;text-align:right;float:left;margin-right:0.5em;}
.form-item .form-label .form-shortname {display:block;color:#666;font-size:75%;}
.form-item .form-setting {margin-left:13em;}
.form-item .form-setting .defaultsnext {display:inline;}
.form-item .form-setting .form-defaultinfo {display:inline;margin-left:0.5em;font-size:90%;color:#666;}
.form-item .form-description {margin:0.5em 1em 0.5em 13em;}
.form-item .form-textarea textarea {width:495px;}
#authmenu .informationbox {width:80%;margin-left:auto;margin-right:auto;margin-bottom:10px;border:1px solid #C8C9C7;padding:10px;}
#authmenu table td {border-width:0px;}
#categoryquestions {margin-left:auto;margin-right:auto;width:100%;}
#categoryquestions th,
.user th,
.user th.header,
.group th.header,
.admin table tr th,
.admin table tr th.header {background-color:#697F55;color:#FFF;border:2px solid #697F55;border-bottom-color:#111;}
.user th a:link,
#categoryquestions th a:link,
.group th a:link,
.admin table tr th a:link {color:#FFF;text-decoration:none;}
.user th a:visited,
#categoryquestions th a:visited,
.group th a:visited,
.admin table tr th a:visited {color:#FFF;text-decoration:underline;}
.user tr td.cell,
#categoryquestions tr td.cell,
.group tr td.cell,
.admin table tr td.cell {border:1px solid #C8C9C7;border-width:0px 1px;}
.user .r1 .cell,
#categoryquestions .r1 .cell,
.group .r1 .cell,
.admin table .r1 .cell {background-color:#EEE;}
.admin .plugincompattable .r1 .cell {background-color:#FFF;}
.singlebutton,
.buttons {text-align:center;margin:20px;}
.buttons form {display:inline;}
.buttons div {display:inline;}
.buttons .singlebutton {display:inline;padding:5px;margin:0px;}
.admin .generalbox {background-color:#EEE;border-color:#C8C9C7;}
#admin-mnet-index table td,
#files-index .column-content table td {border-width:0px;}
/** Mforms **/
.mform fieldset {border-color:#C8C9C7;}
/** Tags **/
.tag-management-form {text-align:center;}
#tag-management-list {margin-top:1em;}
/** User **/
.userinfobox td {border-width:0px;vertical-align:top;}
.userinfobox .side {width:120px;text-align:center;}
.userinfobox .list .label {font-weight:bold;text-align:right;}
/** Forum **/
.forumheaderlist,
.forumpost {margin-top:15px;border:1px solid #DDD;border-collapse:separate;}
.forumpost td {border-width:0px;}
.forumpost .topic {background-color:#C8C9C7;}
.forumpost .topic .subject {font-weight:bold;}
.forumpost .topic .author {font-size:0.8em;}
.forumpost .left {background-color:#EEE;padding:4px;text-align:center;vertical-align:top;width:35px;}
.forumpost .content .commands {font-size:0.9em;clear:both;padding-top:0.5em;text-align:right;}
.forumpost .content .link {font-size:0.9em;}
.forumpost .content .footer {font-size:0.9em;padding-top:0.5em;text-align:right;}
/** Calendar **/
.sideblock.block_calendar_month td,
.sideblock.block_calendar_month th {border-width:0px;font-size:10px;padding:1px;width:14%;line-height:18px;}
#calendar abbr,
.sideblock.block_calendar_month abbr {border-bottom-width:0px;}
#calendar .weekend,
.sideblock.block_calendar_month .weekend {color:#A00;}
#calendar .maincalendar .calendarmonth td.today,
.sideblock.block_calendar_month .today {border:1px solid #444;}
#calendar .eventnone a,
.sideblock.block_calendar_month .eventnone a {color:#444;}
#calendar {width:99%;margin:0px 1%;border-spacing:5px;border-collapse: separate;}
#calendar td,
#calendar th {border-width:0px;font-size:10px;padding:1px;width:14%;line-height:18px;vertical-align:top;}
#calendar .maincalendar {width:auto;border:1px solid #DDD;}
#calendar .maincalendar .heightcontainer {height:100%;position:relative;margin:1em;}
#calendar .maincalendar .header {padding:5px;font-weight:bold;}
#calendar .maincalendar .header .buttons {float:right;}
#calendar .maincalendar table {width:100%;}
#calendar .maincalendar .calendar-controls {width:100%;overflow:hidden;font-size:1.1em;}
#calendar .maincalendar .calendar-controls .previous {display:block;float:left;width:20%;}
#calendar .maincalendar .calendar-controls .current {display:block;float:left;width:60%;text-align:center;margin-top:0px;}
#calendar .maincalendar .calendar-controls .next {display:block;float:left;width:20%;text-align:right;}
#calendar .sidecalendar {width:200px;}
#calendar .sidecalendar h2,
#calendar .sidecalendar h3 {margin:5px;font-size:95%;}
#calendar .sidecalendar .sideblock {border:1px solid #DDD;margin-bottom:10px;text-align:center;}
#calendar .sidecalendar .sideblock table {margin:0px auto 5px auto;}
#calendar .sidecalendar .sideblock .filters table {width:95%;margin:0px auto 1em auto;}
#calendar .sidecalendar .sideblock .minicalendarblock {border-top:1px solid #DDD;}
#calendar .filters table {padding:2px;background-color: #EEE;border:1px solid #DDD;border-spacing:2px;border-collapse: separate;}
#calendar .filters table td {font-size:100%;width:auto;}
#calendar .filters .eventskey {border:1px solid #444;overflow:hidden;}
#calendar .event_global {background-color: #D6F8CD;}
#calendar .event_course {background-color: #FFD3BD;}
#calendar .event_group {background-color: #FEE7AE;}
#calendar .event_user {background-color: #DCE7EC;}
#calendar .maincalendar .calendarmonth {border-collapse: separate;}
#calendar .maincalendar .calendarmonth th {font-size:0.9em;border-bottom:2px solid #444;}
#calendar .maincalendar .calendarmonth td {border:1px solid #EEE;border-bottom-color:#CCC;border-right-color:#CCC;height:6em;}
#calendar .maincalendar .calendarmonth td div {margin:4px;font-size:0.9em;}
#calendar .maincalendar .calendarmonth td .day {font-weight:bold;}
#calendar .maincalendar .calendarmonth tr td:first-child {border-left-color:#CCC;}
#calendar .maincalendar .event {border-spacing: 0px;border:1px solid #DDD;background-color:#EEE;}
#calendar .maincalendar .event .picture {width:32px;text-align:center;}
#calendar .maincalendar .event .topic {width:auto;padding:5px;}
#calendar .maincalendar .event .side {width:32px;}
#calendar .maincalendar .event .description {width:auto;border-top:1px solid #DDD;border-left:1px solid #DDD;padding:5px;}
#calendar .maincalendar .bottom {text-align:center;}
#calendar .calendarmonth ul {margin:0px;padding:0px;}
#calendar .calendarmonth ul li {list-style: none;margin:0px;padding:2px;}
/** User **/
.user .rolesform,
.user .searchform,
.user #showall,
.user #participantsform {text-align:center;}
.user #participantsform table {margin-top:1em;}
.user #participantsform td {text-align:left;}
.user table.controls {margin:5px auto;border:1px solid #DDD;background-color:#EEE;border-collapse: collapse;}
.user table.controls td {border-width:0px;}
+41
View File
@@ -0,0 +1,41 @@
/** Main Page Layout - Both side have blocks**/
body {margin:25px 3%;}
#page {width:100%;min-width:600px;overflow:hidden;}
.page-header {float:left;margin:0;padding:0;width:100%;}
.page-header .headermain {float:left;margin:15px;font-size:2.3em;line-height:0.7;clear:left;}
.page-header .headermenu {float:right;margin:15px;font-size:0.8em;clear:right;}
.page-header .navbar {clear:both;}
.page-middle {clear:both;float:left;overflow:hidden;position:relative;width:100%;}
.page-middle .column-container {float:left;left:220px;position:relative;width:200%;}
.page-middle .column-container .column-mask {float:left;left:50%;margin-left:-440px;position:relative;width:100%;}
.page-middle .column-container .column-mask .column-centre {float:right;position:relative;right:100%;width:50%;}
.page-middle .column-container .column-mask .column-centre .column-wrap {margin:0 10px 0 430px;overflow:hidden;}
.page-middle .column-container .column-mask .column-left {float:left;left:220px;margin-left:-50%;overflow:hidden;position:relative;width:200px;}
.page-middle .column-container .column-mask .column-right {float:left;left:15px;overflow:hidden;position:relative;width:200px;}
.page-middle .column-container .column-content {overflow:hidden;margin:10px;}
.page-footer {clear:both;float:left;margin:0;padding:0;width:100%;}
.page-footer .logininfo {float:right;margin:0px 10px;}
.page-footer .sitelink {float:left;margin:0px 10px;}
.page-footer .helplink {float:left;margin:0px 10px;}
.page-footer .performanceinfo {text-align:center;margin:10px 20%;}
.page-footer .performanceinfo span {display:block;}
/** Only side pre **/
.side-pre-only .page-middle .column-container .column-mask {margin-left:-220px;}
.side-pre-only .page-middle .column-container .column-mask .column-centre .column-wrap {margin:0 10px 0 210px;}
.side-pre-only .page-middle .column-container .column-mask .column-left {left:10px;}
.side-pre-only .page-middle .column-container .column-mask .column-right {width:0px;}
/** Only side post **/
.side-post-only .page-middle .column-container {left:0px;}
.side-post-only .page-middle .column-container .column-mask {margin-left:-220px;}
.side-post-only .page-middle .column-container .column-mask .column-centre .column-wrap {margin:0 10px 0 210px;}
.side-post-only .page-middle .column-container .column-mask .column-left {width:0px;}
.has_dock.side-post-only .page-middle .column-container .column-mask .column-centre .column-wrap {margin-left:240px;}
/** No blocks whatsoever **/
.noblocks .page-middle .column-container {left:20px;}
.noblocks .page-middle .column-container .column-mask {margin-left:-30px;}
.noblocks .page-middle .column-container .column-mask .column-centre .column-wrap {margin:0 10px 0 30px;}
.noblocks .page-middle .column-container .column-mask .column-left {left:20px;width:0px;}
.noblocks .page-middle .column-container .column-mask .column-right {width:0px;}
+65
View File
@@ -0,0 +1,65 @@
/** Core overrides **/
body.has_dock {margin-left:60px;margin-right:60px;}
/** Navigation and settings block **/
.block_tree {list-style: none;padding-left:0px;margin:0px;text-align: left;overflow-x:auto;overflow-y:visible;}
.block_tree ul {margin-left: 0px;padding-left:16px;}
.block_tree li {list-style: none;}
.block_tree .tree_item { white-space:nowrap; padding-left: 16px; margin:3px 0px;}
.block_tree .tree_item.note { white-space:normal; font-size:90%;}
.block_tree .tree_item.branch, .block_tree .tree_item.emptybranch {background-image: url([[pix:t/expanded]]);background-position: center left;background-repeat: no-repeat;}
.block_tree .root_node.leaf {padding-left:0px;}
.jsenabled .dock_on_load, .jsenabled .block_tree .collapsed ul {display: none;}
.jsenabled .block_tree .tree_item.branch {cursor:pointer;}
.jsenabled .block_tree .collapsed .tree_item.branch {background-image: url([[pix:t/collapsed]]);}
.jsenabled .block_tree .tree_item.emptybranch {background-image: url([[pix:t/collapsed_empty]]);background-position: center left;background-repeat: no-repeat;}
.block_tree_box .requiresjs {display:none;}
.jsenabled .block_tree_box .requiresjs {display:inline;}
/* This CSS is for the dock */
.dock {width:30px;position:fixed;top:0px;left:0px;height:100%;border-color:#222;border-width:0px 5px 1px 0px;border-style: solid;background-color:#333;background-image:url([[pix:theme|navigation_gradient]]);background-position:60px 0px;}
.dock .dockeditem {background-color:#DDD;}
.dock .dockeditem .firstdockitem {margin-top:1em;}
.dock .dockeditem .dockedtitle {border-bottom:1px solid #000;border-top:1px solid #666;cursor:pointer;background-image:url([[pix:theme|navigation_gradient]]);background-position:30px 0px;}
.dock .dockeditem .dockedtitle.activeitem {background-color:#E3E3E3;background-position:0px 0px;}
.dock .dockeditem .dockedtitle h2 {font-size:0.8em;line-height:100%;text-transform:uppercase;text-align:center;margin:12px 0px;}
.dock .block_tree .current_branch {background-color:#D5E1F4;}
.dock .controls {position:absolute;bottom:1em;text-align:center;width:100%;}
.dock .controls img {cursor:pointer;}
.dock .bd.oversized_content {overflow-y:auto;overflow-x:visible;height:inherit;}
.dock .bd.oversized_content .content {margin:6px 6px 6px 0px;padding-bottom:6px;}
/** YUI overrides **/
.yui-skin-sam .dock .yui-panel {border-width:1px 5px 1px 0;border-color:#222;}
.yui-skin-sam .dock .yui-panel .bd {border-width:0;background-color:#E3E3E3;}
/** Override the above if the dock is on the right **/
.dock.dock_right_vertical {left:auto;right:0px;border-width:0px 0px 1px 5px;}
.dock.dock_right_vertical .commands {text-align:right;}
.yui-skin-sam .dock.dock_right_vertical .yui-panel {border-width:1px 0 1px 5px;}
/* Sideblock expansion code */
.block_js_expansion .block_tree {overflow-x:scroll;}
.block_js_expansion.mouseover .content {width:200%;z-index:1000;position:relative;}
.block_js_expansion.mouseover .content .block_tree {width:100%; background-color:#fcfcfc; padding-bottom:0px;}
/* CSS for shadows */
.divshadow div {position:absolute;width:3px;height:3px;background-color:#333;}
.divshadow .shadow_top {top:-3px;right:0px;width:100%;}
.divshadow .shadow_bottom {bottom:-3px;right:0px;width:100%;}
.divshadow .shadow_left {top:0px;left:-3px;height:100%;}
.divshadow .shadow_right {bottom:0px;right:-3px;height:100%;}
.divshadow .shadow_top_right {top:-3px;right:-3px;}
.divshadow .shadow_bottom_right {bottom:-3px;right:-3px;}
.divshadow .shadow_top_left {top:-3px;left:-3px;}
.divshadow .shadow_bottom_left {bottom:-3px;left:-3px;}
/** IE stylings */
.ie6 .sideblock .block_tree {width:160px;overflow-x:scroll;}
.ie7 .sideblock .block_tree {overflow-x:scroll;}
.ie6 .block_tree .tree_item {width:100%;}
.ie6 .dock {position:absolute;}
.ie6 .dock hr {display:none;margin:0px;height:0px;padding:0px;}
.ie6 .dock li p {background-color:inherit;}
.ie6 .dock .bd.oversized_content .content, .ie7 .dock .bd.oversized_content .content {padding-bottom:0px;}
.ie6 .block_js_expansion.mouseover .content, .ie7 .block_js_expansion.mouseover .content{ padding-bottom:2px;}
.ie6 .dock .bd.oversized_content {width:100%;}
.ie7 .dock .bd.oversized_content {width:400px;}
-328
View File
@@ -1,328 +0,0 @@
/* Core */
html, body {
text-align: left;
background:#C8C9C7;
}
body, p, th, td, li {
font-family:Georgia, Times, "Times New Roman", serif;
font-size:0.95em;
line-height:1.5;
}
p {
margin-top:0;
margin-bottom:1em;
}
#page {
margin:25px 4%;
background: #fff;
}
#layout-table {
margin:0;
padding-top: 15px;
}
.weeks-format, .topics-format {
margin-top: 0;
padding-top: 10px;
}
.tabtree ul li ul li a.nolink span {
color:#000;
}
/* Header */
#header h1.headermain,
#header-home h1.headermain {
font-size:2.3em;
color:#fff;
padding:10px 0 20px 15px;
line-height:0.7;
font-weight:normal;
}
#header h1.headermain {
font-size:1.75em;
}
h1.headermain span {
font-size:0.45em;
color:#bbb;
}
h1.headermain span p {
margin-bottom: 0;
}
.headermenu {
color:#ccc;
margin-right:15px;
}
/* Navbar */
.navbar {
border:none;
margin:0;
}
.navbar .breadcrumb .sep {
font-size:0.8em;
padding:0 5px;
}
/* Content */
#content {
margin:0 11px;
padding:10px 0 25px;
}
#site-index #content,
#course-view #content {
padding-top:0;
}
.sitetopic {
border:none;
}
h2.headingblock {
background:#f2f2f2;
border-width:0 0 1px 0;
padding:4px 5px 2px;
}
/* Sideblocks */
.sideblock .header {
padding:7px 8px 0;
border:none;
background:url([[pix:theme|sideblock_t]]) no-repeat 0 0;
}
.sideblock .title h2 {
font-size:1.1em;
}
.sideblock .content {
background:#f2f2f2;
border-width:0 1px 0 1px;
border-color:#e3e3e3;
padding-bottom:0;
}
.sideblock {
background:url([[pix:theme|sideblock_b]]) no-repeat 0 100%;
padding-bottom:11px;
}
.block_login .header {
background:url([[pix:theme|sideblock-y_t]]) no-repeat 0 0;
}
.block_login .content {
background:#fcfed9;
border-color:#ebedc8;
}
.block_login {
background:url([[pix:theme|sideblock-y_b]]) no-repeat 0 100%;
}
#right-column .hidden .header,
#left-column .hidden .header {
border-bottom:none;
}
#left-column .hidden {
padding-bottom:11px;
}
.sideblock .title .commands {
padding-bottom:5px;
}
.block_adminblock {
width:200px;
}
.weeks-format #left-column,
.weeks-format #right-column,
.topics-format #left-column,
.topics-format #right-column {
width: 200px;
}
.weeks-format #middle-column ,
.topics-format #middle-column {
margin: 0 210px 0 210px;
}
.block_course_summary .header,
.block_course_summary .content,
.block_course_summary {
background: none;
border: none;
}
.block_online_users .info {
padding-bottom: 3px;
}
/* Calendar */
.sidecalendar .sideblock,
.sidecalendar .sideblock .header {
background:none;
}
/* User */
.userinfobox {
border:none;
}
.userinfobox .content {
border:1px solid #ddd;
background:#f2f2f2;
}
/* Course */
.coursebox {
border-width: 0 0 1px 0;
padding-bottom:10px;
}
.categorybox {
border:none;
}
.coursebox .info {
width:35%;
}
.coursebox .summary {
width:55%;
}
.coursebox .teachers {
padding-left: 1.5em;
}
.courseboxes {
width:60%;
margin: 0 auto;
}
#intro {
background:#f2f2f2;
}
/* Forums */
.forumpost {
border-width:0;
}
.forumpost td.left {
background:none;
}
.forumpost td.content {
border-width:1px 0 2px 0;
border-style:solid;
padding-top:10px;
}
.forumpost .topic {
background:#f2f2f2;
}
.forumpost .topic.starter {
background:#ddd;
}
.forumpost .topic.starter .subject {
font-size:1.2em;
}
/* Tables */
#participants th,
#user-grade th,
.logtable th,
.editcourse th,
#admin-roles-override th,
#admin-roles-assign th,
.forumheaderlist th {
background:#f2f2f2;
border-bottom:1px solid #bbb;
}
/* Login */
.loginbox {
margin-bottom: 0;
padding-bottom: 15px;
}
/* Modules */
#mod-forum-search #wrapper-br {
padding-bottom: 21px;
}
#mod-forum-search .generalbox {
padding-bottom: 0;
margin-bottom: 0;
}
#mod-forum-search #content {
padding:0 5% 20px 5%}
/* Footer */
#footer {
color:#ccc;
margin:0 !important;
}
#footer-logo {
float:left;
padding-left:20px;
line-height: 0;
}
#footer-loggedinas {
float:right;
padding-right:20px;
}
#footer-helplink {
font-size: 0.8em;
float: left;
padding-left: 15px;
line-height: 1em;
padding-top: 3px;
}
#footer-helplink img {
margin-bottom: 5px;
}
/* Various Hacks */
#theme-index #page {
min-width: 900px;
}
.admin #page {
min-width: 700px;
}
#region-side-pre, #region-side-post {
width:200px;
}
-4
View File
@@ -1,4 +0,0 @@
/*
* These styles are ONLY included for IE 6 (via meta.php)
*/
-4
View File
@@ -1,4 +0,0 @@
/*
* These styles are ONLY included for IE 7 (via meta.php)
*/
-11
View File
@@ -1,11 +0,0 @@
td,
th {
padding:0px;
}
table.minicalendar {
border-width:0px;
}
table.minicalendar th {
padding:0px;
border-width:0px;
}
-111
View File
@@ -1,111 +0,0 @@
a:link,
a:visited,
.tabtree ul li ul li a span {
color:#4C6B30;
}
a:hover {
color:#702B33;
}
.headermenu a:link,
.headermenu a:visited {
color:#697F55;
}
h2.headingblock,
.forumpost .content {
border-color:#697f55;
}
.navbar,
.course-view .weeks .current,
.course-view .topics .current,
.course-view .current td.side {
background:#697f55;
}
.navbar a:link,
.navbar a:visited {
color:#fff;
}
.navbar a:hover {
color:#000;
}
.navbar .breadcrumb .sep {
color:#333;
}
#header-m {
background:#222;
padding:0 10px;
}
#header-m.home {
border-bottom:5px solid #697F55;
}
#wrapper-t {
background:url([[pix:theme|wrapper_t]]) repeat-x 0 0;
}
#wrapper-l {
background:url([[pix:theme|wrapper_l]]) repeat-y 0 0;
}
#wrapper-r {
background:url([[pix:theme|wrapper_r]]) repeat-y 100% 0;
}
#wrapper-b {
background:url([[pix:theme|wrapper_b]]) repeat-x 100% 100%;
}
#wrapper-tl {
background:url([[pix:theme|wrapper_tl]]) no-repeat 0 0;
}
#wrapper-tr {
background:url([[pix:theme|wrapper_tr]]) no-repeat 100% 0;
}
#wrapper-bl {
background:url([[pix:theme|wrapper_bl]]) no-repeat 0 100%;
}
#wrapper-br {
background:url([[pix:theme|wrapper_br]]) no-repeat 100% 100%;
}
#header-t {
background:url([[pix:theme|header_t]]) repeat-x 0 0;
}
#header-r {
background:url([[pix:theme|header_r]]) no-repeat 100% 0;
}
#header-l {
background:url([[pix:theme|header_l]]) no-repeat 0 0;
padding:11px 0 0;
}
#footer-b {
background:url([[pix:theme|footer_b]]) repeat-x 0 100%;
}
#footer-l {
background:url([[pix:theme|footer_l]]) no-repeat 0 100%;
}
#footer-r {
background:url([[pix:theme|footer_r]]) no-repeat 100% 100%;
padding-bottom: 11px;
}
#footer-m {
background:#000;
padding-top:11px;
}