/** * Called by OutputPage to provide opportunity to add to body attrs */ public function addToBodyAttributes($out, &$attrs) { $classes = array(); $layout = $this->getLayout(); $attrs['class'] .= ' sitename-' . strtolower(str_replace(' ', '_', $GLOBALS['wgSitename'])); $layoutClass = self::getLayoutClass(); $layoutTree = \Skinny::getClassAncestors($layoutClass); $layoutNames = array_flip(self::$layouts); foreach ($layoutTree as $lc) { if (isset($layoutNames[$lc])) { $classes[] = 'layout-' . $layoutNames[$lc]; } } if ($GLOBALS['wgUser']->isLoggedIn()) { $classes[] = 'user-loggedin'; } else { $classes[] = 'user-anonymous'; } $attrs['class'] .= ' ' . implode(' ', $classes); }
public function getAncestors($class = null) { if (!$class) { $class = get_class($this); } return \Skinny::getClassAncestors($class); }