protected function initialise_standard_body_classes() { global $CFG, $USER; $pagetype = $this->pagetype; if ($pagetype == 'site-index') { $this->_legacyclass = 'course'; } else if (substr($pagetype, 0, 6) == 'admin-') { $this->_legacyclass = 'admin'; } $this->add_body_class($this->_legacyclass); $pathbits = explode('-', trim($pagetype)); for ($i=1;$i<count($pathbits);$i++) { $this->add_body_class('path-'.join('-',array_slice($pathbits, 0, $i))); } $this->add_body_classes(get_browser_version_classes()); $this->add_body_class('dir-' . get_string('thisdirection', 'langconfig')); $this->add_body_class('lang-' . current_language()); $this->add_body_class('yui-skin-sam'); // Make YUI happy, if it is used. $this->add_body_class('yui3-skin-sam'); // Make YUI3 happy, if it is used. $this->add_body_class($this->url_to_class_name($CFG->wwwroot)); $this->add_body_class('pagelayout-' . $this->_pagelayout); // extra class describing current page layout if (!during_initial_install()) { $this->add_body_class('course-' . $this->_course->id); $this->add_body_class('context-' . $this->_context->id); } if (!empty($this->_cm)) { $this->add_body_class('cmid-' . $this->_cm->id); } if (!empty($CFG->allowcategorythemes)) { $this->ensure_category_loaded(); foreach ($this->_categories as $catid => $notused) { $this->add_body_class('category-' . $catid); } } else { $catid = 0; if (is_array($this->_categories)) { $catids = array_keys($this->_categories); $catid = reset($catids); } else if (!empty($this->_course->category)) { $catid = $this->_course->category; } if ($catid) { $this->add_body_class('category-' . $catid); } } if (!isloggedin()) { $this->add_body_class('notloggedin'); } if (!empty($USER->editing)) { $this->add_body_class('editing'); if (optional_param('bui_moveid', false, PARAM_INT)) { $this->add_body_class('blocks-moving'); } } if (!empty($CFG->blocksdrag)) { $this->add_body_class('drag'); } if ($this->_devicetypeinuse != 'default') { $this->add_body_class($this->_devicetypeinuse . 'theme'); } }
function test_get_browser_version_classes() { $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Safari']['2.0']['Mac OS X']; $this->assertEqual(array('safari'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Opera']['9.0']['Windows XP']; $this->assertEqual(array('opera'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['MSIE']['6.0']['Windows XP SP2']; $this->assertEqual(array('ie', 'ie6'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['MSIE']['7.0']['Windows XP SP2']; $this->assertEqual(array('ie', 'ie7'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['MSIE']['8.0']['Windows Vista']; $this->assertEqual(array('ie', 'ie8'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Firefox']['2.0']['Windows XP']; $this->assertEqual(array('gecko', 'gecko18'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Firefox']['3.0.6']['SUSE']; $this->assertEqual(array('gecko', 'gecko19'), get_browser_version_classes()); }
function test_get_browser_version_classes() { $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Safari']['412']['Mac OS X']; $this->assertEqual(array('safari'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Chrome']['8']['Mac OS X']; $this->assertEqual(array('safari'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Safari iOS']['528']['iPhone']; $this->assertEqual(array('safari', 'ios'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['WebKit Android']['530']['Nexus']; $this->assertEqual(array('safari', 'android'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Chrome']['8']['Mac OS X']; $this->assertEqual(array('safari'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Opera']['9.0']['Windows XP']; $this->assertEqual(array('opera'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['MSIE']['6.0']['Windows XP SP2']; $this->assertEqual(array('ie', 'ie6'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['MSIE']['7.0']['Windows XP SP2']; $this->assertEqual(array('ie', 'ie7'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['MSIE']['8.0']['Windows Vista']; $this->assertEqual(array('ie', 'ie8'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Firefox']['2.0']['Windows XP']; $this->assertEqual(array('gecko', 'gecko18'), get_browser_version_classes()); $_SERVER['HTTP_USER_AGENT'] = $this->user_agents['Firefox']['3.0.6']['SUSE']; $this->assertEqual(array('gecko', 'gecko19'), get_browser_version_classes()); }
protected function initialise_standard_body_classes() { global $CFG, $USER; $pagetype = $this->pagetype; if ($pagetype == 'site-index') { $this->_legacyclass = 'course'; } else { if (substr($pagetype, 0, 6) == 'admin-') { $this->_legacyclass = 'admin'; } else { $this->_legacyclass = substr($pagetype, 0, strrpos($pagetype, '-')); } } $this->add_body_class($this->_legacyclass); $this->add_body_classes(get_browser_version_classes()); $this->add_body_class('dir-' . get_string('thisdirection')); $this->add_body_class('lang-' . current_language()); $this->add_body_class('yui-skin-sam'); // Make YUI happy, if it is used. $this->add_body_class($this->url_to_class_name($CFG->wwwroot)); if (!during_initial_install()) { $this->add_body_class('course-' . $this->_course->id); $this->add_body_class('context-' . $this->context->id); } if (!empty($this->_cm)) { $this->add_body_class('cmid-' . $this->_cm->id); } if (!empty($CFG->allowcategorythemes)) { $this->ensure_category_loaded(); foreach ($this->_categories as $catid => $notused) { $this->add_body_class('category-' . $catid); } } else { $catid = 0; if (is_array($this->_categories)) { $catids = array_keys($this->_categories); $catid = reset($catids); } else { if (!empty($this->_course->category)) { $catid = $this->_course->category; } } if ($catid) { $this->add_body_class('category-' . $catid); } } if (!isloggedin()) { $this->add_body_class('notloggedin'); } if (!empty($USER->editing)) { $this->add_body_class('editing'); } if (!empty($CFG->blocksdrag)) { $this->add_body_class('drag'); } }