Esempio n. 1
0
    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');
        }
    }
Esempio n. 2
0
 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());
 }
Esempio n. 3
0
 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());
 }
Esempio n. 4
0
 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');
     }
 }