/** * Outputs a single sidebar portlet of any kind. */ private function outputPortlet($box) { if (!$box['content']) { return; } ?> <div role="navigation" class="mw-portlet" id="<?php echo Sanitizer::escapeId($box['id']); ?> " <?php echo Linker::tooltip($box['id']); ?> > <h3> <?php if (isset($box['headerMessage'])) { $this->msg($box['headerMessage']); } else { echo htmlspecialchars($box['header']); } ?> </h3> <?php if (is_array($box['content'])) { echo '<ul>'; foreach ($box['content'] as $key => $item) { echo $this->makeListItem($key, $item); } echo '</ul>'; } else { echo $box['content']; } ?> </div> <?php }
/** * Outputs the entire contents of the page */ public function execute() { global $wgGroupPermissions; global $wgVectorUseIconWatch; global $wgSearchPlacement; global $wgMediaWikiBootstrapSkinLoginLocation; global $wgMediaWikiBootstrapSkinAnonNavbar; global $wgMediaWikiBootstrapSkinUseStandardLayout; // Suppress warnings to prevent notices about missing indexes in $this->data wfSuppressWarnings(); // search box locations if (!$wgSearchPlacement) { $wgSearchPlacement['top-nav'] = true; $wgSearchPlacement['nav'] = true; } // Build additional attributes for navigation urls $nav = $this->data['content_navigation']; if ($wgVectorUseIconWatch) { $mode = $this->getSkin()->getUser()->isWatched($this->getSkin()->getRelevantTitle()) ? 'unwatch' : 'watch'; if (isset($nav['actions'][$mode])) { $nav['views'][$mode] = $nav['actions'][$mode]; $nav['views'][$mode]['class'] = rtrim('icon ' . $nav['views'][$mode]['class'], ' '); $nav['views'][$mode]['primary'] = true; unset($nav['actions'][$mode]); } } $xmlID = ''; foreach ($nav as $section => $links) { foreach ($links as $key => $link) { if ($section == 'views' && !(isset($link['primary']) && $link['primary'])) { $link['class'] = rtrim('collapsible ' . $link['class'], ' '); } $xmlID = isset($link['id']) ? $link['id'] : 'ca-' . $xmlID; $nav[$section][$key]['attributes'] = ' id="' . Sanitizer::escapeId($xmlID) . '"'; if ($link['class']) { $nav[$section][$key]['attributes'] .= ' class="' . htmlspecialchars($link['class']) . '"'; unset($nav[$section][$key]['class']); } if (isset($link['tooltiponly']) && $link['tooltiponly']) { $nav[$section][$key]['key'] = Linker::tooltip($xmlID); } else { $nav[$section][$key]['key'] = Xml::expandAttributes(Linker::tooltipAndAccesskeyAttribs($xmlID)); } } } $this->data['namespace_urls'] = $nav['namespaces']; $this->data['view_urls'] = $nav['views']; $this->data['action_urls'] = $nav['actions']; $this->data['variant_urls'] = $nav['variants']; // Output HTML Page $this->html('headelement'); ?> <div id="wrapper" class="container"> <!-- start navbar --> <?php if ($wgGroupPermissions['*']['edit'] || $wgMediaWikiBootstrapSkinAnonNavbar || $this->data['loggedin']) { ?> <div class="navbar navbar-default" role="navigation"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#main-nav-top"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand visible-xs" href="#"><?php $this->html('sitename'); ?> </a> </div> <div class="navbar-collapse collapse" id="main-nav-top"> <?php # Page options & menu $this->renderNavigation(array('PAGE-OPTIONS')); /* # This content in other languages if ($this->data['language_urls']) { $this->renderNavigation(array('LANGUAGES')); } */ # Edit button $this->renderNavigation(array('EDIT')); # Actions menu $this->renderNavigation(array('ACTIONS')); # Sidebar items to display in navbar $this->renderNavigation(array('SIDEBARNAV')); # Toolbox if (!isset($portals['TOOLBOX'])) { $this->renderNavigation(array('TOOLBOX')); } # Personal menu (at the right) $this->renderNavigation(array('PERSONAL')); # Search box (at the right) if ($wgSearchPlacement['top-nav']) { $this->renderNavigation(array('TOP-NAV-SEARCH')); } ?> </div><!--/.nav-collapse --> </div><!--/.container-fluid --> </div> <!-- /navbar --> <?php } ?> <div id="mw-page-base" class="noprint"></div> <div id="mw-head-base" class="noprint"></div> <?php if ($this->data['loggedin']) { $userStateClass = "user-loggedin"; } else { $userStateClass = "user-loggedout"; } ?> <?php if ($wgGroupPermissions['*']['edit'] || $this->data['loggedin']) { $userStateClass += " editable"; } else { $userStateClass += " not-editable"; } ?> <section id="header"> <div id="page-header" class="row"> <!--site logo--> <div id="logo" class="col-xm-12 col-sm-12 col-md-12 col-lg-12"> <div class="<?php echo $this->data['loggedin'] ? 'signed-in' : 'signed-out'; ?> "> <?php $this->renderLogo(); ?> </div> </div> <div class="clearfix"></div> <div id="main-nav-area" class="col-xm-12 col-sm-12 col-md-12 col-lg-12" > <!--navigation menu--> <nav id="main-navbar" class="navbar navbar-default main-navbar" role="navigation"> <div class="container-fluid"> <!-- Brand and toggle get grouped for better mobile display --> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#main-nav"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand visible-xs" href="#"><?php $this->html('sitename'); ?> </a> </div> <div class="collapse navbar-collapse" id="main-nav"> <ul class="nav navbar-nav navbar-right"> <?php $this->renderNavigation(array('SIDEBAR')); if ($wgSearchPlacement['nav']) { $this->renderNavigation(array('SEARCHNAV')); } /* # This content in other languages if ($this->data['language_urls']) { $this->renderNavigation(array('LANGUAGES')); } */ ?> </ul> </div><!-- /.navbar-collapse --> </div><!-- /.container-fluid --> </nav> </div> </div> </section> <!-- /page-header --> <!-- content --> <section id="content" class="mw-body <?php echo $userStateClass; ?> "> <div id="top"></div> <div class="row"> <div id="mw-js-message" class="col-xm-12 col-sm-12 col-md-12 col-lg-12" style="display:none;"<?php $this->html('userlangattributes'); ?> ></div> </div> <?php if ($this->data['sitenotice']) { ?> <!-- sitenotice --> <div class="row"> <div class="col-xm-12 col-sm-offset-1 col-sm-10 col-md-offset-1 col-md-10 col-lg-offset-1 col-lg-10"> <div id="siteNotice" class="alert alert-info"> <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button> <?php $this->html('sitenotice'); ?> </div> </div> </div> <!-- /sitenotice --> <?php } ?> <div class="clearfix"></div> <div id="bodyContent" class="row"> <?php if ($this->data['newtalk']) { ?> <!-- newtalk --> <div class="usermessage col-xm-12 col-sm-offset-1 col-sm-10 col-md-offset-1 col-md-10 col-lg-offset-1 col-lg-10"> <div class="alert alert-success"> <i class="fa fa-comments"></i> <?php $this->html('newtalk'); ?> </div> </div> <!-- /newtalk --> <?php } ?> <?php if ($this->data['showjumplinks']) { ?> <!-- jumpto --> <div id="jump-to-nav" class="mw-jump"> <?php $this->msg('jumpto'); ?> <a href="#mw-head"><?php $this->msg('jumptonavigation'); ?> </a>, <a href="#p-search"><?php $this->msg('jumptosearch'); ?> </a> </div> <!-- /jumpto --> <?php } ?> <!-- innerbodycontent --> <div id="innerbodycontent"> <div class="col-xm-12 col-sm-offset-1 col-sm-8 col-md-offset-1 col-md-8 col-lg-offset-1 col-lg-8"> <h1 id="firstHeading" class="firstHeading page-header"> <span dir="auto"><?php $this->html('title'); ?> </span> </h1> </div> <div id="other_language_link" class="col-xm-12 col-sm-2 col-md-2 col-lg-2 pull-right"> <?php if ($this->data['language_urls']) { $this->renderNavigation(array('LANGUAGES')); } ?> </div> <div class="col-xm-12 col-sm-offset-1 col-sm-10 col-md-offset-1 col-md-10 col-lg-offset-1 col-lg-10"> <hr> <!-- subtitle --> <div id="contentSub" <?php $this->html('userlangattributes'); ?> ><?php $this->html('subtitle'); ?> </div> <!-- /subtitle --> <?php if ($this->data['undelete']) { ?> <!-- undelete --> <div id="contentSub2"><?php $this->html('undelete'); ?> </div> <!-- /undelete --> <?php } ?> <?php $this->html('bodycontent'); ?> </div> </div> <!-- /innerbodycontent --> <?php if ($this->data['printfooter']) { ?> <!-- printfooter --> <div class="printfooter"> <?php $this->html('printfooter'); ?> </div> <!-- /printfooter --> <?php } ?> <?php if ($this->data['catlinks']) { ?> <!-- catlinks --> <div class="row"> <div class="col-xm-12 col-sm-offset-1 col-sm-10 col-md-offset-1 col-md-10 col-lg-offset-1 col-lg-10"> <?php $this->html('catlinks'); ?> </div> </div> <!-- /catlinks --> <?php } ?> <?php if ($this->data['dataAfterContent']) { ?> <!-- dataAfterContent --> <div class="row"> <div class="col-xm-12 col-sm-offset-1 col-sm-10 col-md-offset-1 col-md-10 col-lg-offset-1 col-lg-10"> <?php $this->html('dataAfterContent'); ?> </div> </div> <!-- /dataAfterContent --> <?php } ?> <div class="visualClear"></div> <!-- debughtml --> <?php $this->html('debughtml'); ?> <!-- /debughtml --> </div> </section> <!-- /content --> </div> <!-- /#wrapper --> <?php /* Support a custom footer, or use MediaWiki's default, if footer.php does not exist. */ $footerfile = dirname(__FILE__) . '/footer.php'; if (file_exists($footerfile)) { ?> <div id="footer" class="text-center footer container"<?php $this->html('userlangattributes'); ?> > <hr> <div class="row"> <div class="col-xm-12 col-sm-12 col-md-12 col-lg-12"> <?php include $footerfile; ?> <ul class="list-inline"> <li id="pt-login"> <?php if (!$this->data['loggedin']) { ?> <a href="#"><?php echo $personalTemp[$loginType]['links'][0]['text']; ?> </a> <?php } ?> </li> </ul> </div> </div> </div><?php } else { ?> <div id="footer" class="footer container"<?php $this->html('userlangattributes'); ?> > <hr> <div class="row"> <?php $footerLinks = $this->getFooterLinks(); if (is_array($footerLinks)) { foreach ($footerLinks as $category => $links) { ?> <ul id="footer-<?php echo $category; ?> " class="list-inline text-center"> <?php foreach ($links as $link) { ?> <li id="footer-<?php echo $category; ?> -<?php echo $link; ?> "><?php $this->html($link); ?> </li> <?php } ?> <?php if ($category === 'places') { # Show sign in link, if not signed in if ($wgMediaWikiBootstrapSkinLoginLocation == 'footer' && !$this->data['loggedin']) { $personalTemp = $this->getPersonalTools(); if (isset($personalTemp['login'])) { $loginType = 'login'; } else { $loginType = 'anonlogin'; } ?> <li id="pt-login"> <a href="<?php echo $personalTemp[$loginType]['links'][0]['href']; ?> "><?php echo $personalTemp[$loginType]['links'][0]['text']; ?> </a> </li><?php } } ?> </ul> <?php } } $footericons = $this->getFooterIcons("icononly"); if (count($footericons) > 0) { ?> <ul id="footer-icons" class="noprint list-inline text-center"> <?php foreach ($footericons as $blockName => $footerIcons) { ?> <li id="footer-<?php echo htmlspecialchars($blockName); ?> ico"> <?php foreach ($footerIcons as $icon) { ?> <?php echo $this->getSkin()->makeFooterIcon($icon); ?> <?php } ?> </li> <?php } ?> </ul> <?php } ?> </div> </div> <!-- /footer --> <?php } ?> <?php $this->printTrail(); ?> </body> </html><?php wfRestoreWarnings(); }
function customBox($bar, $cont) { ?> <li class='widget-container' id='<?php echo Sanitizer::escapeId("p-{$bar}"); ?> '<?php echo Linker::tooltip('p-' . $bar); ?> > <h3 class="widget-title"> <?php $out = wfMsg($bar); if (wfEmptyMsg($bar, $out)) { echo htmlspecialchars($bar); } else { echo htmlspecialchars($out); } ?> </h3> <?php if (is_array($cont)) { ?> <ul> <?php foreach ($cont as $key => $val) { ?> <li id="<?php echo Sanitizer::escapeId($val['id']); ?> "<?php if ($val['active']) { ?> class="active" <?php } ?> ><a href="<?php echo htmlspecialchars($val['href']); ?> "<?php echo Linker::tooltipAndAccesskeyAttribs($val['id']); ?> > <?php echo htmlspecialchars($val['text']); ?> </a> </li> <?php } ?> </ul> <?php } else { # allow raw HTML block to be defined by extensions print $cont; } echo '</li>'; }
public function execute() { global $wgUser; global $wgForegroundFeatures; wfSuppressWarnings(); $this->html('headelement'); switch ($wgForegroundFeatures['NavWrapperType']) { case '0': break; case 'divonly': echo "<div id='navwrapper'>"; break; default: echo "<div id='navwrapper' class='" . $wgForegroundFeatures['NavWrapperType'] . "'>"; break; } // Set default variables for footer and switch them if 'showFooterIcons' => true $footerLeftClass = 'small-8 large-centered columns text-center'; $footerRightClass = 'large-12 small-12 columns'; $poweredbyType = "nocopyright"; $poweredbyMakeType = 'withoutImage'; switch ($wgForegroundFeatures['showFooterIcons']) { case true: $footerLeftClass = 'large-8 small-12 columns'; $footerRightClass = 'large-4 small-12 columns'; $poweredbyType = "icononly"; $poweredbyMakeType = 'withImage'; break; default: break; } ?> <!-- START FOREGROUNDTEMPLATE --> <nav class="top-bar"> <ul class="title-area"> <li class="name"> <h1 class="title-name"> <a href="<?php echo $this->data['nav_urls']['mainpage']['href']; ?> "> <?php if ($wgForegroundFeatures['navbarIcon'] != '0') { ?> <img alt="<?php echo $this->text('sitename'); ?> " src="<?php echo $this->text('logopath'); ?> " style="max-width: 64px;height:auto; max-height:36px; display: inline-block; vertical-align:middle;"> <?php } ?> <div class="title-name" style="display: inline-block;"><?php echo $wgForegroundFeatures['wikiName']; ?> </div> </a> </h1> </li> <li class="toggle-topbar menu-icon"> <a href="#"><span><?php echo wfMessage('foreground-menutitle')->text(); ?> </span></a> </li> </ul> <section class="top-bar-section"> <ul id="top-bar-left" class="left"> <li class="divider"></li> <?php foreach ($this->getSidebar() as $boxName => $box) { if ($box['header'] != wfMessage('toolbox')->text()) { ?> <li class="has-dropdown active" id='<?php echo Sanitizer::escapeId($box['id']); ?> '<?php echo Linker::tooltip($box['id']); ?> > <a href="#"><?php echo htmlspecialchars($box['header']); ?> </a> <?php if (is_array($box['content'])) { ?> <ul class="dropdown"> <?php foreach ($box['content'] as $key => $item) { echo $this->makeListItem($key, $item); } ?> </ul> <?php } } ?> <?php } ?> </ul> <ul id="top-bar-right" class="right"> <li class="has-form"> <form action="<?php $this->text('wgScript'); ?> " id="searchform" class="mw-search"> <div class="row"> <div class="small-12 columns"> <?php echo $this->makeSearchInput(array('placeholder' => wfMessage('searchsuggest-search')->text(), 'id' => 'searchInput')); ?> <button type="submit" class="button search"><?php echo wfMessage('search')->text(); ?> </button> </div> </div> </form> </li> <li class="divider show-for-small"></li> <li class="has-form"> <li class="has-dropdown active"><a href="#"><i class="fa fa-cogs"></i></a> <ul id="toolbox-dropdown" class="dropdown"> <?php foreach ($this->getToolbox() as $key => $item) { echo $this->makeListItem($key, $item); } ?> <?php if ($wgForegroundFeatures['showRecentChangesUnderTools']) { ?> <li id="n-recentchanges"><?php echo Linker::specialLink('Recentchanges'); ?> </li><?php } ?> <?php if ($wgForegroundFeatures['showHelpUnderTools']) { ?> <li id="n-help" <?php echo Linker::tooltip('help'); ?> ><a href="/wiki/Help:Contents"><?php echo wfMessage('help')->text(); ?> </a></li><?php } ?> </ul> </li> <?php if ($wgUser->isLoggedIn()) { ?> <li id="personal-tools-dropdown" class="has-dropdown active"><a href="#"><i class="fa fa-user"></i></a> <ul class="dropdown"> <?php foreach ($this->getPersonalTools() as $key => $item) { echo $this->makeListItem($key, $item); } ?> </ul> </li> <?php } else { ?> <li> <?php if (isset($this->data['personal_urls']['anonlogin'])) { ?> <a href="<?php echo $this->data['personal_urls']['anonlogin']['href']; ?> "><?php echo wfMessage('login')->text(); ?> </a> <?php } elseif (isset($this->data['personal_urls']['login'])) { ?> <a href="<?php echo htmlspecialchars($this->data['personal_urls']['login']['href']); ?> "><?php echo wfMessage('login')->text(); ?> </a> <?php } else { ?> <?php echo Linker::link(Title::newFromText('Special:UserLogin'), wfMessage('login')->text()); ?> <?php } ?> </li> <?php } ?> </ul> </section> </nav> <?php if ($wgForegroundFeatures['NavWrapperType'] != '0') { echo "</div>"; } ?> <div id="page-content"> <div class="row"> <div class="large-12 columns"> <!--[if lt IE 9]> <div id="siteNotice" class="sitenotice panel radius"><?php echo $this->text('sitename') . ' ' . wfMessage('foreground-browsermsg')->text(); ?> </div> <![endif]--> <?php if ($this->data['sitenotice']) { ?> <div id="siteNotice" class="sitenotice"><?php $this->html('sitenotice'); ?> </div><?php } ?> <?php if ($this->data['newtalk']) { ?> <div id="usermessage" class="newtalk panel radius"><?php $this->html('newtalk'); ?> </div><?php } ?> </div> </div> <div id="mw-js-message" style="display:none;"></div> <div class="row"> <div id="p-cactions" class="large-12 columns"> <?php if ($wgUser->isLoggedIn() || $wgForegroundFeatures['showActionsForAnon']) { ?> <a href="#" data-dropdown="drop1" class="button dropdown small secondary radius"><i class="fa fa-cog"><span class="show-for-medium-up"> <?php echo wfMessage('actions')->text(); ?> </span></i></a> <ul id="drop1" class="views large-12 columns f-dropdown"> <?php foreach ($this->data['content_actions'] as $key => $item) { echo preg_replace(array('/\\sprimary="1"/', '/\\scontext="[a-z]+"/', '/\\srel="archives"/'), '', $this->makeListItem($key, $item)); } ?> <?php wfRunHooks(SkinTemplateToolboxEnd, array(&$this, true)); ?> </ul> <?php if ($wgUser->isLoggedIn()) { ?> <div id="echo-notifications"></div> <?php } ?> <?php } $namespace = str_replace('_', ' ', $this->getSkin()->getTitle()->getNsText()); $displaytitle = $this->data['title']; if (!empty($namespace)) { $pagetitle = $this->getSkin()->getTitle(); $newtitle = str_replace($namespace . ':', '', $pagetitle); $displaytitle = str_replace($pagetitle, $newtitle, $displaytitle); ?> <h4 class="namespace label"><?php print $namespace; ?> </h4><?php } ?> <h2 class="title"><?php print $displaytitle; ?> </h2> <?php if ($this->data['isarticle']) { ?> <h3 id="tagline"><?php $this->msg('tagline'); ?> </h3><?php } ?> <h5 class="subtitle"><?php $this->html('subtitle'); ?> </h5> <div class="clear_both"></div> <div class="mw-bodytext"> <?php $this->html('bodytext'); ?> <div class="clear_both"></div> </div> <div class="group"><?php $this->html('catlinks'); ?> </div> <?php $this->html('dataAfterContent'); ?> </div> </div> <footer class="row"> <div id="footer"> <?php if ($wgForegroundFeatures['addThisFollowPUBID'] != '') { ?> <div class="social-footer large-12 small-12 columns"> <div class="social-links"> <!-- Go to www.addthis.com/dashboard to customize your tools --> <div class="addthis_horizontal_follow_toolbox"></div> <script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=<?php echo $wgForegroundFeatures['addThisFollowPUBID']; ?> "></script> </div> </div> <?php } ?> <div id="footer-left" class="<?php echo $footerLeftClass; ?> "> <ul id="footer-left"> <?php foreach ($this->getFooterLinks("flat") as $key) { ?> <li id="footer-<?php echo $key; ?> "><?php $this->html($key); ?> </li> <?php } ?> </ul> </div> <div id="footer-right-icons" class="<?php echo $footerRightClass; ?> "> <ul id="poweredby"> <?php foreach ($this->getFooterIcons($poweredbyType) as $blockName => $footerIcons) { ?> <li class="<?php echo $blockName; ?> "><?php foreach ($footerIcons as $icon) { ?> <?php echo $this->getSkin()->makeFooterIcon($icon, $poweredbyMakeType); ?> <?php } ?> </li> <?php } ?> </ul> </div> </div> </footer> </div> <?php $this->printTrail(); ?> </body> </html> <?php wfRestoreWarnings(); }
/** * Outputs the entire contents of the (X)HTML page */ public function execute() { global $wgLang, $wgVectorUseIconWatch; $this->skin = $this->data['skin']; // Build additional attributes for navigation urls //$nav = $this->skin->buildNavigationUrls(); $nav = $this->data['content_navigation']; if ($wgVectorUseIconWatch) { $mode = $this->skin->getTitle()->userIsWatching() ? 'unwatch' : 'watch'; if (isset($nav['actions'][$mode])) { $nav['views'][$mode] = $nav['actions'][$mode]; $nav['views'][$mode]['class'] = rtrim('icon ' . $nav['views'][$mode]['class'], ' '); $nav['views'][$mode]['primary'] = true; unset($nav['actions'][$mode]); } } $xmlID = ''; foreach ($nav as $section => $links) { foreach ($links as $key => $link) { if ($section == 'views' && !(isset($link['primary']) && $link['primary'])) { $link['class'] = rtrim('collapsible ' . $link['class'], ' '); } $xmlID = isset($link['id']) ? $link['id'] : 'ca-' . $xmlID; $nav[$section][$key]['attributes'] = ' id="' . Sanitizer::escapeId($xmlID) . '"'; if ($link['class']) { $nav[$section][$key]['attributes'] .= ' class="' . htmlspecialchars($link['class']) . '"'; unset($nav[$section][$key]['class']); } if (isset($link['tooltiponly']) && $link['tooltiponly']) { $nav[$section][$key]['key'] = Linker::tooltip($xmlID); } else { $nav[$section][$key]['key'] = Xml::expandAttributes(Linker::tooltipAndAccesskeyAttribs($xmlID)); } } } $this->data['namespace_urls'] = $nav['namespaces']; $this->data['view_urls'] = $nav['views']; $this->data['action_urls'] = $nav['actions']; $this->data['variant_urls'] = $nav['variants']; // Reverse horizontally rendered navigation elements if ($wgLang->isRTL()) { $this->data['view_urls'] = array_reverse($this->data['view_urls']); $this->data['namespace_urls'] = array_reverse($this->data['namespace_urls']); $this->data['personal_urls'] = array_reverse($this->data['personal_urls']); } // Output HTML Page $this->html('headelement'); ?> <div id="idSngHeader"> <div id="p-logo"><a style="background-image: url(<?php $this->text('logopath'); ?> );" href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href']); ?> " <?php echo Xml::expandAttributes(Linker::tooltipAndAccesskeyAttribs('p-logo')); ?> ></a> </div> <?php $this->renderNavigation('PERSONAL'); ?> <?php $this->renderNavigation('SEARCH'); ?> <div id="idSngMenu" class="noprint"> <ul class="classSngMenu"> <?php $this->renderPortals($this->data['sidebar']); ?> <li><a href="<?php echo $_SERVER['SCRIPT_NAME']; ?> /Help:Contents">Help</a></li> </ul> </div> <!-- PaneMenu --> <div id="idSngTitle"> <?php $this->html('title'); ?> </div> </div><!-- /PaneHeader --> <div id="idSngSplitter"> <div id="idSngSplitLeft" class="noprint"> </div> <div id="idSngSplitRight"> <a id="idTop"></a> <div id="page-navigation"> <?php $this->renderNavigation(array('NAMESPACES', 'VARIANTS')); ?> <?php $this->renderNavigation(array('VIEWS', 'ACTIONS')); ?> </div> <div id="content"> <div id="mw-js-message" style="display:none;"<?php $this->html('userlangattributes'); ?> ></div> <?php if ($this->data['sitenotice']) { ?> <!-- sitenotice --> <div id="siteNotice"><?php $this->html('sitenotice'); ?> </div> <!-- /sitenotice --> <?php } ?> <!-- bodyContent --> <div id="bodyContent"> <?php if ($this->data['isarticle']) { ?> <!-- tagline --> <div id="siteSub"><?php $this->msg('tagline'); ?> </div> <!-- /tagline --> <?php } ?> <!-- subtitle --> <div id="contentSub"<?php $this->html('userlangattributes'); ?> ><?php $this->html('subtitle'); ?> </div> <!-- /subtitle --> <?php if ($this->data['undelete']) { ?> <!-- undelete --> <div id="contentSub2"><?php $this->html('undelete'); ?> </div> <!-- /undelete --> <?php } ?> <?php if ($this->data['newtalk']) { ?> <!-- newtalk --> <div class="usermessage"><?php $this->html('newtalk'); ?> </div> <!-- /newtalk --> <?php } ?> <?php if ($this->data['showjumplinks']) { ?> <!-- jumpto --> <div id="jump-to-nav"> <?php $this->msg('jumpto'); ?> <a href="#idTop"><?php $this->msg('jumptonavigation'); ?> </a>, <a href="#p-search"><?php $this->msg('jumptosearch'); ?> </a> </div> <!-- /jumpto --> <?php } ?> <!-- bodycontent --> <?php $this->html('bodycontent'); ?> <!-- /bodycontent --> <?php if ($this->data['printfooter']) { ?> <!-- printfooter --> <div class="printfooter"> <?php $this->html('printfooter'); ?> </div> <!-- /printfooter --> <?php } ?> <?php if ($this->data['catlinks']) { ?> <!-- catlinks --> <?php $this->html('catlinks'); ?> <!-- /catlinks --> <?php } ?> <?php if ($this->data['dataAfterContent']) { ?> <!-- dataAfterContent --> <?php $this->html('dataAfterContent'); ?> <!-- /dataAfterContent --> <?php } ?> <div class="visualClear"></div> <!-- debughtml --> <?php $this->html('debughtml'); ?> <!-- /debughtml --> </div><!-- /bodyContent --> </div> <!-- /content --> <div id="footer"<?php $this->html('userlangattributes'); ?> > <?php foreach ($this->getFooterLinks() as $category => $links) { ?> <ul id="footer-<?php echo $category; ?> "> <?php foreach ($links as $link) { ?> <li id="footer-<?php echo $category; ?> -<?php echo $link; ?> "><?php $this->html($link); ?> </li> <?php } ?> </ul> <?php } ?> <?php $footericons = $this->getFooterIcons("icononly"); if (count($footericons) > 0) { ?> <ul id="footer-icons" class="noprint"><?php foreach ($footericons as $blockName => $footerIcons) { ?> <li id="footer-<?php echo htmlspecialchars($blockName); ?> ico"><?php foreach ($footerIcons as $icon) { ?> <?php echo $this->skin->makeFooterIcon($icon); } ?> </li><?php } ?> </ul> <?php } ?> <div style="clear:both"></div> </div><!-- /footer --> <!-- fixalpha --> <script type="<?php $this->text('jsmimetype'); ?> "> if ( window.isMSIE55 ) fixalpha(); </script> <!-- /fixalpha --> <?php $this->printTrail(); ?> </div><!-- /PaneSplitRight --> </div><!-- /PaneSplitter --> </body> </html> <?php }
/** * @param string $name * @param array $content * @param null|string $msg * @param null|string|array $hook */ protected function renderPortal($name, $content, $msg = null, $hook = null) { if ($msg === null) { $msg = $name; } $msgObj = wfMessage($msg); $labelId = Sanitizer::escapeId("p-{$name}-label"); ?> <?php if ($this->config->get('MetrolookSearchBar')) { ?> <div class="portal" role="navigation" id='<?php echo Sanitizer::escapeId("p-{$name}"); ?> '<?php echo Linker::tooltip('p-' . $name); ?> aria-labelledby='<?php echo $labelId; ?> '> <h5<?php $this->html('userlangattributes'); ?> id='<?php echo $labelId; ?> '><?php echo htmlspecialchars($msgObj->exists() ? $msgObj->text() : $msg); ?> </h5> <?php } else { ?> <div class="portal-custom" role="navigation" id='<?php echo Sanitizer::escapeId("p-{$name}"); ?> '<?php echo Linker::tooltip('p-' . $name); ?> aria-labelledby='<?php echo $labelId; ?> '> <h5<?php $this->html('userlangattributes'); ?> id='<?php echo $labelId; ?> '><?php echo htmlspecialchars($msgObj->exists() ? $msgObj->text() : $msg); ?> </h5> <?php } ?> <?php if ($this->config->get('MetrolookSearchBar')) { ?> <div class="body"> <?php } else { ?> <div class="body-custom"> <?php } ?> <?php if (is_array($content)) { ?> <ul> <?php foreach ($content as $key => $val) { echo $this->makeListItem($key, $val); } if ($hook !== null) { Hooks::run($hook, array(&$this, true)); } ?> </ul> <?php } else { echo $content; /* Allow raw HTML block to be defined by extensions */ } $this->renderAfterPortlet($name); ?> </div> </div> <?php }
private function outputNavDropdown($box) { if (!$box['content']) { return; } ?> <li class="dropdown" id="<?php echo Sanitizer::escapeId($box['id']); ?> "<?php echo Linker::tooltip($box['id']); ?> > <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> <?php if (isset($box['headerSafe'])) { echo $box['headerSafe']; } else { if (isset($box['headerMessage'])) { $this->msg($box['headerMessage']); } else { echo htmlspecialchars($box['header']); } } ?> <span class="caret"></span></a> <ul class="dropdown-menu <?php if (isset($box['ulClass'])) { echo $box['ulClass']; } ?> "> <?php if (is_array($box['content'])) { echo '<li>'; foreach ($box['content'] as $key => $item) { echo $this->makeListItem($key, $item); } echo '</li>'; } else { echo $box['content']; } ?> </ul> </li><?php }
private function renderPortal($name, $content, $msg = null, $hook = null) { if ($msg === null) { $msg = $name; } ?> <div class="portal" id='<?php echo Sanitizer::escapeId("p-{$name}"); ?> '<?php echo Linker::tooltip('p-' . $name); ?> > <h5<?php $this->html('userlangattributes'); ?> ><?php $msgObj = wfMessage($msg); echo htmlspecialchars($msgObj->exists() ? $msgObj->text() : $msg); ?> </h5> <div class="body"> <?php if (is_array($content)) { ?> <ul> <?php foreach ($content as $key => $val) { ?> <?php echo $this->makeListItem($key, $val); ?> <?php } if ($hook !== null) { wfRunHooks($hook, array(&$this, true)); } ?> </ul> <?php } else { ?> <?php echo $content; /* Allow raw HTML block to be defined by extensions */ } ?> </div> </div> <?php }
/** * Outputs the entire contents of the (X)HTML page */ public function execute() { global $wgGroupPermissions; global $wgVectorUseIconWatch; global $wgSearchPlacement; global $wgBootstrapSkinLogoLocation; global $wgBootstrapSkinLoginLocation; global $wgBootstrapSkinAnonNavbar; global $wgBootstrapSkinUseStandardLayout; if (!$wgSearchPlacement) { $wgSearchPlacement['header'] = true; $wgSearchPlacement['nav'] = false; $wgSearchPlacement['footer'] = false; } // Build additional attributes for navigation urls $nav = $this->data['content_navigation']; if ($wgVectorUseIconWatch) { $mode = $this->getSkin()->getTitle()->userIsWatching() ? 'unwatch' : 'watch'; if (isset($nav['actions'][$mode])) { $nav['views'][$mode] = $nav['actions'][$mode]; $nav['views'][$mode]['class'] = rtrim('icon ' . $nav['views'][$mode]['class'], ' '); $nav['views'][$mode]['primary'] = true; unset($nav['actions'][$mode]); } } $xmlID = ''; foreach ($nav as $section => $links) { foreach ($links as $key => $link) { if ($section == 'views' && !(isset($link['primary']) && $link['primary'])) { $link['class'] = rtrim('collapsible ' . $link['class'], ' '); } $xmlID = isset($link['id']) ? $link['id'] : 'ca-' . $xmlID; $nav[$section][$key]['attributes'] = ' id="' . Sanitizer::escapeId($xmlID) . '"'; if ($link['class']) { $nav[$section][$key]['attributes'] .= ' class="' . htmlspecialchars($link['class']) . '"'; unset($nav[$section][$key]['class']); } if (isset($link['tooltiponly']) && $link['tooltiponly']) { $nav[$section][$key]['key'] = Linker::tooltip($xmlID); } else { $nav[$section][$key]['key'] = Xml::expandAttributes(Linker::tooltipAndAccesskeyAttribs($xmlID)); } } } $this->data['namespace_urls'] = $nav['namespaces']; $this->data['view_urls'] = $nav['views']; $this->data['action_urls'] = $nav['actions']; $this->data['variant_urls'] = $nav['variants']; // Output HTML Page $this->html('headelement'); ?> <div id="mw-page-base" class="noprint"></div> <div id="mw-head-base" class="noprint"></div> <!-- Header --> <div id="page-header" class="container-fluid <?php echo $this->data['loggedin'] ? 'signed-in' : 'signed-out'; ?> "> <div class="col-md-10 pull-left" style="margin-left:-16px;"> <ul class="nav navbar-nav pull-left searchform-disabled"> <li class="active"><a href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href']); ?> "><i class="fa fa-home"></i> Main Page</a></li> <li class="dropdown"> <a class="dropdown-toggle" data-toggle="dropdown"><i class="fa fa-info"></i> Dropdown <b class="caret"></b></a> <ul class="dropdown-menu text-left" role="menu"> <li><a href="[[Members One]]<">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li class="divider"></li> <li><a href="#">Separated link</a></li> </ul> </li> <li class="dropdown"> <a href="" class="dropdown-toggle" data-toggle="dropdown"><i class="fa fa-info"></i> Dropdown <b class="caret"></b></a> <ul class="dropdown-menu text-left mwbs-color-white" role="menu"> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li class="divider"></li> <li><a href="#">Separated link</a></li> </ul> </li> </ul> </div> <div class="col-md-2 hidden-xs hidden-sm" style="margin-top:20px;"> <?php if ($wgSearchPlacement['header']) { $this->renderNavigation(array('SEARCH')); } ?> </div> <div class="col-md-2"> <?php # Personal menu (at the right) $this->renderNavigation(array('PERSONAL')); ?> </div> </div> <div class="clearfix"> <div class="col-md-4" style="margin-left:7px;"> <?php if ($wgBootstrapSkinLogoLocation == 'bodycontent') { $this->renderLogo(); } ?> </div> <?php if ($wgGroupPermissions['*']['edit'] || $wgBootstrapSkinAnonNavbar || $this->data['loggedin']) { ?> <div id="userbar" class="navbar col-md-6 pull-right push-down hidden-xs hidden-sm"> <div class="navbar-inner"> <ul id="tabs-default-lighter" class="nav nav-tabs nav-tabs-lighter"> <li style="margin-top:10px"><?php $this->renderNavigation(array('EDIT')); ?> </li> <li><?php $this->renderNavigation(array('PERSONALNAV')); ?> </li> <li><?php $this->renderNavigation(array('PAGE')); ?> </li> <li><?php $this->renderNavigation(array('ACTIONS')); ?> </li> <li><?php if (!isset($portals['TOOLBOX'])) { $this->renderNavigation(array('TOOLBOX')); ?> </li> </ul> <?php if ($wgBootstrapSkinLogoLocation == 'navbar') { $this->renderLogo(); } # This content in other languages if ($this->data['language_urls']) { $this->renderNavigation(array('LANGUAGES')); } # Sidebar items to display in navbar $this->renderNavigation(array('SIDEBARNAV')); } ?> </div> </div> </div> <?php } ?> <?php if ($this->data['loggedin']) { $userStateClass = "user-loggedin"; } else { $userStateClass = "user-loggedout"; } ?> <?php if ($wgGroupPermissions['*']['edit'] || $this->data['loggedin']) { $userStateClass += " editable"; } else { $userStateClass += " not-editable"; } ?> <!-- content --> <section id="content" class="mw-body container-fluid <?php echo $userStateClass; ?> "> <div id="top"></div> <div id="mw-js-message" style="display:none;"<?php $this->html('userlangattributes'); ?> ></div> <?php if ($this->data['sitenotice']) { ?> <!-- sitenotice --> <div id="siteNotice"><?php $this->html('sitenotice'); ?> </div> <!-- /sitenotice --> <?php } ?> <!-- bodyContent --> <div id="bodyContent"> <?php if ($this->data['newtalk']) { ?> <!-- newtalk --> <div class="usermessage"><?php $this->html('newtalk'); ?> </div> <!-- /newtalk --> <?php } ?> <?php if ($this->data['showjumplinks']) { ?> <!-- jumpto --> <div id="jump-to-nav" class="mw-jump"> <?php $this->msg('jumpto'); ?> <a href="#mw-head"><?php $this->msg('jumptonavigation'); ?> </a>, <a href="#p-search"><?php $this->msg('jumptosearch'); ?> </a> </div> <!-- /jumpto --> <?php } ?> <!-- innerbodycontent --> <?php # Peek into the body content of articles, to see if a custom layout is used if ($wgBootstrapSkinUseStandardLayout || preg_match("/<div.*class.*row.*>/i", $this->data['bodycontent']) && $this->data['articleid']) { # If there's a custom layout, the H1 and layout is up to the page ?> <div id="innerbodycontent" class="layout"> <h1 id="firstHeading" class="firstHeading page-header"> <span dir="auto"><?php $this->html('title'); ?> </span> </h1> <!-- subtitle --> <div id="contentSub" <?php $this->html('userlangattributes'); ?> ><?php $this->html('subtitle'); ?> </div> <!-- /subtitle --> <?php if ($this->data['undelete']) { ?> <!-- undelete --> <div id="contentSub2"><?php $this->html('undelete'); ?> </div> <!-- /undelete --> <?php } ?> <?php $this->html('bodycontent'); ?> </div> <?php } else { # If there's no custom layout, then we automagically add one ?> <div id="innerbodycontent" class="row nolayout"><div class="offset1 span10"> <h1 id="firstHeading" class="firstHeading page-header"> <span dir="auto"><?php $this->html('title'); ?> </span> </h1> <!-- subtitle --> <div id="contentSub" <?php $this->html('userlangattributes'); ?> ><?php $this->html('subtitle'); ?> </div> <!-- /subtitle --> <?php if ($this->data['undelete']) { ?> <!-- undelete --> <div id="contentSub2"><?php $this->html('undelete'); ?> </div> <!-- /undelete --> <?php } ?> <?php $this->html('bodycontent'); ?> </div></div> <?php } ?> <!-- /innerbodycontent --> <?php if ($this->data['printfooter']) { ?> <!-- printfooter --> <div class="printfooter"> <?php $this->html('printfooter'); ?> </div> <!-- /printfooter --> <?php } ?> <?php if ($this->data['catlinks']) { ?> <!-- catlinks --> <?php $this->html('catlinks'); ?> <!-- /catlinks --> <?php } ?> <?php if ($this->data['dataAfterContent']) { ?> <!-- dataAfterContent --> <?php $this->html('dataAfterContent'); ?> <!-- /dataAfterContent --> <?php } ?> <div class="visualClear"></div> <!-- debughtml --> <?php $this->html('debughtml'); ?> <!-- /debughtml --> </div> <!-- /bodyContent --> </section> <!-- /content --> <!-- footer --> <?php /* Support a custom footer, or use MediaWiki's default, if footer.php does not exist. */ $footerfile = dirname(__FILE__) . '/footer.php'; if (file_exists($footerfile)) { ?> <div id="footer" class="footer container-fluid custom-footer"><?php include $footerfile; ?> </div><?php } else { ?> <div id="footer" class="footer container-fluid"<?php $this->html('userlangattributes'); ?> > <div class="row"> <?php $footerLinks = $this->getFooterLinks(); if (is_array($footerLinks)) { foreach ($footerLinks as $category => $links) { if ($category === 'info') { continue; } ?> <ul id="footer-<?php echo $category; ?> "> <?php foreach ($links as $link) { ?> <li id="footer-<?php echo $category; ?> -<?php echo $link; ?> "><?php $this->html($link); ?> </li> <?php } ?> <?php if ($category === 'places') { # Show sign in link, if not signed in if ($wgBootstrapSkinLoginLocation == 'footer' && !$this->data['loggedin']) { $personalTemp = $this->getPersonalTools(); if (isset($personalTemp['login'])) { $loginType = 'login'; } else { $loginType = 'anonlogin'; } ?> <li id="pt-login"><a href="<?php echo $personalTemp[$loginType]['links'][0]['href']; ?> "><?php echo $personalTemp[$loginType]['links'][0]['text']; ?> </a></li><?php } # Show the search in footer to all if ($wgSearchPlacement['footer']) { echo '<li>'; $this->renderNavigation(array('SEARCHFOOTER')); echo '</li>'; } } ?> </ul> <?php } } ?> <?php $footericons = $this->getFooterIcons("icononly"); if (count($footericons) > 0) { ?> <ul id="footer-icons" class="noprint"> <?php foreach ($footericons as $blockName => $footerIcons) { ?> <li id="footer-<?php echo htmlspecialchars($blockName); ?> ico"> <?php foreach ($footerIcons as $icon) { ?> <?php echo $this->getSkin()->makeFooterIcon($icon); ?> <?php } ?> </li> <?php } ?> </ul> <?php } ?> </div> </div> <!-- /footer --> <?php } ?> <?php $this->printTrail(); ?> </body> </html> <?php }
/** * Render the ContentOther (Languages, Categories, Toolbox...) */ private function renderContentOther() { if ($this->data['language_urls']) { ?> <!-- language_urls --> <div class="portal" id="p-lang"<?php echo Linker::tooltip('p-lang'); ?> > <h5<?php $this->html('userlangattributes'); ?> ><?php echo wfMessage('otherlanguages')->text() . wfMsgExt('colon-separator', 'escapenoentities'); ?> </h5> <ul> <?php $this->renderNavigation(array('LANG')); ?> </ul> </div> <!-- /language_urls --> <?php } ?> <?php if ($this->data['catlinks']) { ?> <!-- catlinks --> <?php $this->html('catlinks'); ?> <!-- /catlinks --> <?php } ?> <!-- toolbox --> <div class="portal" id="p-tb"<?php echo Linker::tooltip('p-tb'); ?> > <h5<?php $this->html('userlangattributes'); ?> ><?php echo wfMessage('toolbox')->text() . wfMsgExt('colon-separator', 'escapenoentities'); ?> </h5> <ul> <?php $this->renderNavigation(array('TOOLBOX')); ?> </ul> </div> <!-- /toolbox --> <?php }
/** * Outputs the entire contents of the (X)HTML page */ public function execute() { // Build additional attributes for navigation urls global $wgUser; $nav = $this->data['content_navigation']; if ($this->config->get('LibreUseIconWatch')) { $mode = $this->getSkin()->getUser()->isWatched($this->getSkin()->getRelevantTitle()) ? 'unwatch' : 'watch'; if (isset($nav['actions'][$mode])) { $nav['views'][$mode] = $nav['actions'][$mode]; $nav['views'][$mode]['class'] = rtrim('icon ' . $nav['views'][$mode]['class'], ' '); $nav['views'][$mode]['primary'] = true; unset($nav['actions'][$mode]); } } $xmlID = ''; foreach ($nav as $section => $links) { foreach ($links as $key => $link) { if ($section == 'views' && !(isset($link['primary']) && $link['primary'])) { $link['class'] = rtrim('collapsible ' . $link['class'], ' '); } $xmlID = isset($link['id']) ? $link['id'] : 'ca-' . $xmlID; $nav[$section][$key]['attributes'] = ' id="' . Sanitizer::escapeId($xmlID) . '"'; if ($link['class']) { $nav[$section][$key]['attributes'] .= ' class="' . htmlspecialchars($link['class']) . '"'; unset($nav[$section][$key]['class']); } if (isset($link['tooltiponly']) && $link['tooltiponly']) { $nav[$section][$key]['key'] = Linker::tooltip($xmlID); } else { $nav[$section][$key]['key'] = Xml::expandAttributes(Linker::tooltipAndAccesskeyAttribs($xmlID)); } } } $this->data['namespace_urls'] = $nav['namespaces']; $this->data['view_urls'] = $nav['views']; $this->data['action_urls'] = $nav['actions']; $this->data['variant_urls'] = $nav['variants']; // Reverse horizontally rendered navigation elements if ($this->data['rtl']) { $this->data['view_urls'] = array_reverse($this->data['view_urls']); $this->data['namespace_urls'] = array_reverse($this->data['namespace_urls']); $this->data['personal_urls'] = array_reverse($this->data['personal_urls']); } $userLinks = $this->getPersonalTools(); $user = $wgUser->isLoggedIn() ? array_shift($userLinks) : array_pop($userLinks); $userLink = $user['links'][0]; // Output HTML Page $this->html('headelement'); ?> <div class="container"> <!-- Static navbar --> <nav class="navbar navbar-default navbar-fixed-top libre_navbar"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar"> <span class="sr-only">Toggle navigation</span> <span class="glyphicon glyphicon-th-large" aria-hidden="true"></span> </button> <div class="dropdown"> <?php if ($wgUser->isLoggedIn()) { $loginfuc = "data-toggle=\"dropdown\""; $loginbtn = "user"; } else { $loginbtn = "lock"; $loginfuc = "onclick=\"location.href='" . $userLink['href'] . "'\""; } ?> <button type="button" class="navbar-toggle collapsed dropdown-toggle" <?php echo $loginfuc; ?> aria-expanded="false"> <span class="sr-only">Toggle navigation</span> <span class="glyphicon glyphicon-<?php echo $loginbtn; ?> " aria-hidden="true"></span> </button> <?php if ($wgUser->isLoggedIn()) { ?> <ul class="dropdown-menu libre_personal_dropdown" role="menu"> <?php $this->renderNavigation('PERSONAL'); ?> </ul> <?php } ?> </div> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#nav_search" aria-expanded="false" aria-controls="nav_search"> <span class="sr-only">Toggle navigation</span> <span class="glyphicon glyphicon-search" aria-hidden="true"></span> </button> <a class="navbar-brand" href="/wiki/리브레_위키:현관"><img alt="<?php echo $this->msg('tagline'); ?> " src="//librewiki.net/skins/Libre/logo.png" style="width: auto; height: 36px" /></a> </div> <div id="navbar" class="navbar-collapse collapse"> <ul class="nav navbar-nav libre_navbar_menu"> <li><?php echo Linker::linkKnown(SpecialPage::getTitleFor('Recentchanges', null), '최근바뀜', array('title' => '최근 변경 문서를 불러옵니다. [alt+shift+r]', 'accesskey' => 'r')); ?> </li> <li><?php echo Linker::linkKnown(SpecialPage::getTitleFor('Randompage', null), '임의문서', array('title' => '임의 문서를 불러옵니다. [alt+shift+x]', 'accesskey' => 'x')); ?> </li> <li><a href="https://bbs.librewiki.net/wiki">위키방</a></li> <li><a href="https://bbs.librewiki.net/anon">익명게시판</a></li> <li class="dropdown"> <?php echo Linker::linkKnown(SpecialPage::getTitleFor('Specialpages', null), '도구', array('data-toggle' => 'dropdown', ' role' => 'button', 'aria-expanded' => 'false', 'title' => '도구를 보여줍니다.')); ?> <ul class="dropdown-menu" role="menu"> <li><?php echo Linker::linkKnown(SpecialPage::getTitleFor('SpecialPages', null), '특수 문서 목록', array('title' => '특수 문서 목록을 불러옵니다. [alt+shift+q]', 'accesskey' => 'q')); ?> </li> <li><?php echo Linker::linkKnown(SpecialPage::getTitleFor('upload', null), '업로드', array('title' => '파일을 올립니다. [alt+shift+g]', 'accesskey' => 'g')); ?> </li> </ul> </li> <li class="dropdown"> <?php echo Linker::linkKnown(Title::makeTitle(NS_HELP, '위키 문법'), '도움말', array('data-toggle' => 'dropdown', ' role' => 'button', 'aria-expanded' => 'false', 'title' => '도움말 항목들을 보여줍니다.')); ?> <ul class="dropdown-menu" role="menu"> <li><?php echo Linker::linkKnown(Title::makeTitle(NS_HELP, '위키 문법'), '위키 문법'); ?> </li> <li><?php echo Linker::linkKnown(Title::makeTitle(NS_HELP, 'Tex 문법'), 'Tex 문법'); ?> </li> <li><?php echo Linker::linkKnown(Title::makeTitle(NS_HELP, '태그'), '태그'); ?> </li> </ul> </li> </ul> <ul class="nav navbar-nav navbar-right nav-pills nav-login libre_navbar_menu"> <?php if ($wgUser->isLoggedIn()) { $loginname = $wgUser->getName(); $loginfuc = "data-toggle=\"dropdown\""; $logincheck = ""; } else { $loginfuc = "onclick=\"location.href='" . $userLink['href'] . "'\""; $loginname = "로그인"; $logincheck = "nav-login-btn"; } ?> <li class="dropdown"><a href="#" class="dropdown-toggle <?php echo $logincheck; ?> " <?php echo $loginfuc; ?> role="button" aria-expanded="false"><?php echo $loginname; ?> </a> <?php if ($wgUser->isLoggedIn()) { ?> <ul class="dropdown-menu" role="menu"> <?php $this->renderNavigation('PERSONAL'); ?> </ul> <?php } ?> </li> </ul> <button type="button" class="navbar-toggle navbar-search navbar-right collapsed" data-toggle="collapse" data-target="#nav_search" aria-expanded="false" aria-controls="nav_search"> <span class="sr-only">Toggle navigation</span> <span class="glyphicon glyphicon-search" aria-hidden="true"></span> </button> </div> <div id="nav_search" class="collapse libre_navbar_other"> <form class="navbar-form navbar-right" action="<?php $this->text('wgScript'); ?> "> <input type='hidden' name="title" value="<?php $this->text('searchtitle'); ?> "/> <?php echo $this->makeSearchInput(array("id" => "searchInput", "class" => "form-control", "placeholder" => "검색어")); ?> </form> </div> </div><!--/.container-fluid --> </nav> <!-- Main component for a primary marketing message or call to action --> <div class="container-fluid libre_content"> <div class="row"> <div class="col-xs-9"> <div class="libre_left_content" role="main"> <div id="mw-js-message" style="display:none;"<?php $this->html('userlangattributes'); ?> ></div> <div id="mw-notification-area" class="mw-notification-area mw-notification-area-layout" style="display: none;"></div> <?php if ($this->data['sitenotice']) { ?> <div id="alertmsg" class="alert alert-info siteNotice alert-dismissible" role="alert"> <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button> <?php $this->html('sitenotice'); ?> </div> <?php } ?> <!-- Footer ad --> <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block; min-width:320px; width:100%; height:90pxmargin-top:15px;margin-bottom:10px;" data-ad-client="ca-pub-2664061841343191" data-ad-slot="6502738263" data-ad-format="auto"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> <?php if ($this->data['catlinks']) { $this->html('catlinks'); } ?> <?php $this->renderNavigation('TOOLS'); ?> <h1 id="firstHeading" class="firstHeading" lang="<?php $this->data['pageLanguage'] = $this->getSkin()->getTitle()->getPageViewLanguage()->getHtmlCode(); $this->text('pageLanguage'); ?> "><span dir="auto"><?php $this->html('title'); ?> </span></h1> <?php if ($this->getSkin()->getTitle() == "FrontPage") { ?> <p><a href="#" class="darklibre_function" style="background-color: #000; color: #fff;">난 어두운 화면이 좋아요.</a></p> <?php } ?> <?php $this->html('prebodyhtml'); ?> <div class="libre_main_content"> <?php if ($this->data['isarticle']) { ?> <div id="siteSub"><?php $this->msg('tagline'); ?> </div> <?php } ?> <div id="contentSub"<?php $this->html('userlangattributes'); ?> ><?php $this->html('subtitle'); ?> </div> <?php if ($this->data['undelete']) { ?> <div id="contentSub2"><?php $this->html('undelete'); ?> </div> <?php } ?> <?php if ($this->data['newtalk']) { ?> <div class="usermessage"><?php $this->html('newtalk'); ?> </div> <?php } ?> <div id="jump-to-nav" class="mw-jump"> <?php $this->msg('jumpto'); ?> <a href="#mw-navigation"><?php $this->msg('jumptonavigation'); ?> </a><?php $this->msg('comma-separator'); ?> <a href="#p-search"><?php $this->msg('jumptosearch'); ?> </a> </div> <?php $this->html('bodycontent'); ?> <?php if ($this->data['printfooter']) { ?> <div class="printfooter"> <?php $this->html('printfooter'); ?> </div> <?php } ?> <?php if ($this->data['dataAfterContent']) { $this->html('dataAfterContent'); } ?> <div class="visualClear"></div> <?php $this->html('debughtml'); ?> </div> </div> <div id="footer" class="libre_footer" role="contentinfo"<?php $this->html('userlangattributes'); ?> > <?php foreach ($this->getFooterLinks() as $category => $links) { ?> <ul id="footer-<?php echo $category; ?> "> <?php foreach ($links as $link) { ?> <li id="footer-<?php echo $category; ?> -<?php echo $link; ?> "><?php $this->html($link); ?> </li> <?php } ?> </ul> <?php } ?> <?php $footericons = $this->getFooterIcons("icononly"); if (count($footericons) > 0) { ?> <ul id="footer-icons"> <?php foreach ($footericons as $blockName => $footerIcons) { ?> <li id="footer-<?php echo htmlspecialchars($blockName); ?> ico"> <?php foreach ($footerIcons as $icon) { echo $this->getSkin()->makeFooterIcon($icon); } ?> </li> <?php } ?> </ul> <?php } ?> <div style="clear:both"></div> </div> </div> <div class="col-xs-3 libre_right_content"> <div class="libre_right_fixed"> <form class="libre_right_search" action="<?php $this->text('wgScript'); ?> "> <input type='hidden' name="title" value="<?php $this->text('searchtitle'); ?> "/> <?php echo $this->makeSearchInput(array("id" => "searchInput", "class" => "form-control", "placeholder" => "검색어")); ?> </form> <div id="libre_right_toc"> </div> <div class="libre_recent-title"> <ul class="nav nav-tabs" id="libre_recent-tabs"> <li><a href="#" id="libre_recent-tab1" class="libre_recent-selected">최근 바뀜</a></li> <li><a href="#" id="libre_recent-tab2">최근 토론</a></li> </ul> </div> <div id = "recent-list-div"> <ul id = "recent-list"> <li>불러오고 있습니다...</li> </ul> <span class="recent-more"> <span class="mw-editsection-bracket">[</span> <a href="/wiki/특수:최근바뀜" title="최근바뀜문서">more</a> <span class="mw-editsection-bracket">]</span> </span> </div> <!-- sidebar ad --> <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <!-- 사이드바 --> <ins class="adsbygoogle" style="display:block;max-width:230px;margin-top:10px;height:100%;max-height:600px;" data-ad-client="ca-pub-2664061841343191" data-ad-slot="2751059465" data-ad-format="auto"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> </div> </div> </div> </div> <!-- /container --> <?php $this->printTrail(); ?> <div class="notice-wrap"> </div> <div class="top_scroll" style="display: none"> <a href="#" class="top_s_btn"> <span class="glyphicon glyphicon-open"></span> </a> </div> </body> </html> <?php }
/** * Returns a single sidebar portlet of any kind (monobook style) */ private function assemblePortlet($box) { if (!$box['content']) { return; } if (!isset($box['class'])) { $box['class'] = 'mw-portlet'; } else { $box['class'] .= ' mw-portlet'; } $content = '<div role="navigation" class="' . $box['class'] . '" id="' . Sanitizer::escapeId($box['id']) . '"' . Linker::tooltip($box['id']) . '>'; $content .= '<h3>'; if (isset($box['headerMessage'])) { $content .= $this->getMsg($box['headerMessage'])->escaped(); } else { $content .= htmlspecialchars($box['header']); } $content .= '</h3>'; if (is_array($box['content'])) { $content .= '<ul>'; foreach ($box['content'] as $key => $item) { $content .= $this->makeListItem($key, $item); } $content .= '</ul>'; } else { $content .= $box['content']; } $content .= '</div>'; return $content; }
* @since Version 1.0 * @ingroup Skins * @author Tom Hutchison * @license 2-clause BSD */ if (!defined('MEDIAWIKI')) { die("Not Directly Called So What Are You Doing?"); } foreach ($this->getSidebar() as $boxName => $box) { if ($box['header'] != wfMessage('toolbox')->text()) { ?> <li id='<?php echo Sanitizer::escapeId($box['id']); ?> '<?php echo Linker::tooltip($box['id']); ?> > <li><label><?php echo htmlspecialchars($box['header']); ?> </label></li> <?php if (is_array($box['content'])) { ?> <?php foreach ($box['content'] as $key => $item) { echo $this->makeListItem($key, $item); } ?> <?php
/** * Outputs the entire contents of the (X)HTML page */ public function execute() { global $wgLang, $wgVectorUseIconWatch; $this->skin = $this->data['skin']; // Build additional attributes for navigation urls //$nav = $this->skin->buildNavigationUrls(); $nav = $this->data['content_navigation']; if ($wgVectorUseIconWatch) { $mode = $this->skin->getTitle()->userIsWatching() ? 'unwatch' : 'watch'; if (isset($nav['actions'][$mode])) { $nav['views'][$mode] = $nav['actions'][$mode]; $nav['views'][$mode]['class'] = rtrim('icon ' . $nav['views'][$mode]['class'], ' '); $nav['views'][$mode]['primary'] = true; unset($nav['actions'][$mode]); } } $xmlID = ''; foreach ($nav as $section => $links) { foreach ($links as $key => $link) { if ($section == 'views' && !(isset($link['primary']) && $link['primary'])) { $link['class'] = rtrim('collapsible ' . $link['class'], ' '); } $xmlID = isset($link['id']) ? $link['id'] : 'ca-' . $xmlID; $nav[$section][$key]['attributes'] = ' id="' . Sanitizer::escapeId($xmlID) . '"'; if ($link['class']) { $nav[$section][$key]['attributes'] .= ' class="' . htmlspecialchars($link['class']) . '"'; unset($nav[$section][$key]['class']); } if (isset($link['tooltiponly']) && $link['tooltiponly']) { $nav[$section][$key]['key'] = Linker::tooltip($xmlID); } else { $nav[$section][$key]['key'] = Xml::expandAttributes(Linker::tooltipAndAccesskeyAttribs($xmlID)); } } } $this->data['namespace_urls'] = $nav['namespaces']; $this->data['view_urls'] = $nav['views']; $this->data['action_urls'] = $nav['actions']; $this->data['variant_urls'] = $nav['variants']; // Reverse horizontally rendered navigation elements if ($wgLang->isRTL()) { $this->data['view_urls'] = array_reverse($this->data['view_urls']); $this->data['namespace_urls'] = array_reverse($this->data['namespace_urls']); } // Output HTML Page $this->html('headelement'); global $Cppreference2SkinRootLink; $root_link = '/'; if (isset($Cppreference2SkinRootLink)) { $root_link = htmlspecialchars($Cppreference2SkinRootLink); } ?> <!-- header --> <div id="mw-head" class="noprint"> <div id="cpp-head-first-base"> <div id="cpp-head-first"> <h5><a href="<?php echo $root_link; ?> "> <?php global $wgSitename; echo $wgSitename; ?> </a></h5> <div id="cpp-head-search"> <?php $this->renderNavigation('SEARCH'); ?> </div> <div id="cpp-head-personal"> <?php $this->renderNavigation('PERSONAL'); ?> </div> </div> </div> <div id="cpp-head-second-base"> <div id="cpp-head-second"> <div id="cpp-head-tools-left"> <?php $this->renderNavigation(array('NAMESPACES', 'VARIANTS')); ?> </div> <div id="cpp-head-tools-right"> <?php $this->renderNavigation(array('VIEWS', 'ACTIONS')); ?> </div> </div> </div> </div> <!-- /header --> <!-- content --> <div id="cpp-content-base"> <div id="content"> <a id="top"></a> <div id="mw-js-message" style="display:none;"<?php $this->html('userlangattributes'); ?> ></div> <?php if ($this->data['sitenotice']) { ?> <!-- sitenotice --> <div id="siteNotice"><?php $this->html('sitenotice'); ?> </div> <!-- /sitenotice --> <?php } ?> <!-- firstHeading --> <h1 id="firstHeading" class="firstHeading"><?php $this->html('title'); ?> </h1> <!-- /firstHeading --> <!-- bodyContent --> <div id="bodyContent"> <?php if ($this->data['isarticle']) { ?> <!-- tagline --> <div id="siteSub"><?php $this->msg('tagline'); ?> </div> <!-- /tagline --> <?php } ?> <!-- subtitle --> <div id="contentSub"<?php $this->html('userlangattributes'); ?> ><?php $this->html('subtitle'); ?> </div> <!-- /subtitle --> <?php if ($this->data['undelete']) { ?> <!-- undelete --> <div id="contentSub2"><?php $this->html('undelete'); ?> </div> <!-- /undelete --> <?php } ?> <?php if ($this->data['newtalk']) { ?> <!-- newtalk --> <div class="usermessage"><?php $this->html('newtalk'); ?> </div> <!-- /newtalk --> <?php } ?> <!-- bodycontent --> <?php $this->html('bodycontent'); ?> <!-- /bodycontent --> <?php if ($this->data['printfooter']) { ?> <!-- printfooter --> <div class="printfooter"> <?php $this->html('printfooter'); ?> </div> <!-- /printfooter --> <?php } ?> <?php if ($this->data['catlinks']) { ?> <!-- catlinks --> <?php $this->html('catlinks'); ?> <!-- /catlinks --> <?php } ?> <?php if ($this->data['dataAfterContent']) { ?> <!-- dataAfterContent --> <?php $this->html('dataAfterContent'); ?> <!-- /dataAfterContent --> <?php } ?> <div class="visualClear"></div> <!-- debughtml --> <?php $this->html('debughtml'); ?> <!-- /debughtml --> </div> <!-- /bodyContent --> </div> </div> <!-- /content --> <!-- footer --> <div id="cpp-footer-base" class="noprint"> <div id="footer"<?php $this->html('userlangattributes'); ?> > <?php $this->renderBottomNavigation(); ?> <?php $this->renderToolbox(); ?> <?php $this->renderFooter(); ?> </div> </div> <!-- /footer --> <?php $this->printTrail(); ?> </body> </html> <?php }
/** * Outputs the entire contents of the page */ public function execute() { /** * Personal navigation bar */ $personalTools = $this->getPersonalTools(); $pageNav = $this->data['content_navigation']; if (!$this->data['loggedin']) { $personalLogin = $personalTools; $toggleGoogleAds = true; $toggleFloatingTOC = false; $loggedIn = false; } else { $loggedIn = true; $personalBar[0] = $personalTools['watchlist']; $personalBar[1] = $personalTools['mytalk']; $personalBar[2] = $personalTools['notifications']; $personalFlyout[0] = $personalTools['mycontris']; $personalFlyout[4] = $personalTools['preferences']; $personalFlyout[6] = $personalTools['logout']; foreach ($personalFlyout as $key => $item) { $personalFlyout[$key]['class'] = "group-start"; } $personalFlyout[1] = $personalTools['newmessages']; $personalFlyout[1] = $personalTools['mytalk']; $personalFlyout[3] = $personalTools['watchlist']; if (isset($personalTools['adminlinks'])) { $personalFlyout[5] = $personalTools['adminlinks']; } foreach ($personalFlyout as $key => $item) { $personalFlyout[$key]['id'] = rtrim($personalFlyout[$key]['id'] . '-flyout'); } /* Work around for Echo preferences. */ $personalFlyout[4]['id'] = 'pt-preferences'; ksort($personalFlyout); /** * Replace watch button with star */ $watchStatus = $this->getSkin()->getUser()->isWatched($this->getSkin()->getRelevantTitle()) ? 'unwatch' : 'watch'; if (isset($pageNav['actions'][$watchStatus])) { $pageNav['views'][$watchStatus] = $pageNav['actions'][$watchStatus]; $pageNav['views'][$watchStatus]['class'] = rtrim('icon ' . $pageNav['views'][$watchStatus]['class']); $pageNav['views'][$watchStatus]['primary'] = true; unset($pageNav['actions'][$watchStatus]); } /** * Preferences */ $user = $this->getSkin()->getUser(); $toggleGoogleAds = $user->getOption('overclocked-ads'); $toggleFloatingTOC = $user->getOption('overclocked-floating-toc'); } global $wgSkinOverclockedAds; global $wgTitle; $namespace = $wgTitle->getNamespace(); /** * Disable Google Ads on certain namespaces */ if ($namespace == -1 || $namespace == 4) { $toggleGoogleAds = false; } $this->html('headelement'); ?> <header id="pcgw-header"> <div id="pcgw-header-sidebar-toggle"></div> <div id="pcgw-header-search-toggle"></div> <div id="pcgw-header-logo"> <a href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href']); ?> "> <img src="//pcgamingwiki.com/images/0/04/PCGamingWiki_notext.svg" alt="<?php $this->text('sitename'); ?> " width="40px" height="40px"/> </a> </div> <div id="header-search"> <form action="<?php $this->text('wgScript'); ?> " id="searchform"> <?php echo $this->makeSearchInput(array('id' => 'searchInput')); echo Html::hidden('title', $this->get('searchtitle')); ?> </form> </div> <div id="pcgw-header-sidebar"> <ul class="header-item-left-container"> <li class="header-item current"><a href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href']); ?> ">Wiki</a> <li class="header-item no-mobile"><a href="//community.pcgamingwiki.com/blog">Blog</a> <li class="header-item no-mobile"><a href="//community.pcgamingwiki.com/index">Forums</a> <li class="header-item no-mobile"><a href="//community.pcgamingwiki.com/files/">Files</a> <li class="header-item no-mobile"><a href="//community.pcgamingwiki.com/page/irc">IRC</a> <li class="header-item no-mobile"><a href="/wiki/PCGamingWiki:Extension">Extension</a> <li class="header-item"><a href="/wiki/PCGamingWiki:Donate">Donate</a> <li class="header-item mobile-only"><a href="/wiki/Special:RecentChanges">Recent changes</a> <li class="header-item mobile-only"><a href="/wiki/Special:Random">Random article</a> </ul> <ul id="p-personal"> <?php if ($loggedIn == false) { foreach ($personalLogin as $key => $item) { echo $this->makeListItem($key, $item); } } else { ?> <div id="p-personal-logged-in"> <?php foreach ($personalBar as $key => $item) { echo $this->makeListItem($key, $item); } ?> <div id="personal-bar-flyout"> <div> <a href="<?php echo $personalTools['userpage']['links'][0]['href']; ?> "><?php echo $personalTools['userpage']['links'][0]['text']; ?> </a> <ul> <?php foreach ($personalFlyout as $key => $item) { echo $this->makeListItem($key, $item); } ?> </ul> </div> </div> </div> <?php } ?> </ul> </div> </header> <div id="masthead" <?php if ($toggleFloatingTOC) { ?> class="floating-toc-enabled" <?php } ?> > <div id="sidebar"> <div id="pcgw-logo"> <a href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href']); ?> "> <img src="<?php $this->text('logopath'); ?> " alt="<?php $this->text('sitename'); ?> " width="145px" height="88px"/> </a> </div> <nav class="sidebar-nav"> <?php $sidebar = $this->getSidebar(); if (isset($sidebar["TOOLBOX"]["content"]["print"])) { unset($sidebar["TOOLBOX"]["content"]["print"]); } foreach ($sidebar as $boxName => $box) { ?> <div id="<?php echo Sanitizer::escapeId($box['id']); ?> "<?php echo Linker::tooltip($box['id']); ?> > <?php if (is_array($box['content'])) { ?> <ul> <li><?php echo htmlspecialchars($box['header']); ?> </li> <?php foreach ($box['content'] as $key => $item) { echo $this->makeListItem($key, $item); } ?> </ul> <?php } else { echo $box['content']; } } ?> </nav> <?php if ($toggleGoogleAds == true) { ?> <!-- sidebar ad --> <div class="ad-sidebar-container"> <?php echo $wgSkinOverclockedAds['sidebar']; ?> </div> <?php } ?> </div> <div id="main-column"> <?php if ($toggleGoogleAds == true) { ?> <!-- horizontal header ad --> <div class="ad-header-container"> <?php echo $wgSkinOverclockedAds['header']; ?> </div> <?php } ?> <?php if ($this->data['sitenotice']) { ?> <div id="site-notice"><?php $this->html('sitenotice'); ?> </div> <?php } ?> <div id="main-content"> <div id="mw-head"> <ul id="mw-head-left"> <?php foreach ($pageNav['namespaces'] as $key => $tab) { echo $this->makeListItem($key, $tab); } ?> </ul> <ul id="mw-head-right"> <!-- "View", "Edit", "History" buttons --> <?php foreach ($pageNav['views'] as $key => $tab) { echo $this->makeListItem($key, $tab); } if ($this->data['isarticle'] && $loggedIn == true) { ?> <div id="mw-head-more"> <div> <a href="#">More</a> <ul> <?php foreach ($pageNav['actions'] as $key => $tab) { echo $this->makeListItem($key, $tab); } ?> </ul> </div> </div> <?php } ?> </ul> </div> <?php if ($this->data['newtalk']) { ?> <div class="user-message"><?php $this->html('newtalk'); ?> </div> <?php } ?> <!-- Article header --> <div class="article-header"> <!-- Indicators --> <?php echo $this->getIndicators(); ?> <!-- Article title --> <h1 class="article-title"><?php $this->html('title'); ?> </h1> </div> <!-- Site subtitle, "From PCGamingWiki, the wiki about fixing PC games" --> <div id="site-sub"> <?php if ($this->data['isarticle']) { $this->msg('tagline'); } ?> <?php if ($this->data['subtitle']) { ?> <div id="sub-sub-title"><?php $this->html('subtitle'); ?> </div><?php } ?> <?php $this->html('undelete'); ?> </div> <!-- Body content container. If ads are enabled, an "mw-body-with-ads" class is added so that ad-specific styles can be applied on certain pages. --> <?php if ($toggleGoogleAds == false) { ?> <div id="body-content" class="mw-body"> <?php } else { ?> <div id="body-content" class="mw-body mw-body-with-ads"> <!-- mpu ad --> <div id="mpu"> <?php echo $wgSkinOverclockedAds['infobox']; ?> </div> <?php } ?> <?php $this->html('bodytext'); ?> <?php $this->html('catlinks'); ?> <?php $this->html('dataAfterContent'); ?> </div> </div> <?php if ($toggleGoogleAds == true) { ?> <!-- footer ad --> <div class="ad-footer-container"> <?php echo $wgSkinOverclockedAds['footer']; ?> </div> <?php } ?> </div> </div> <!-- Footer --> <footer id="pcgw-footer" class="pcgw-footer"> <!-- Social links --> <div class="pcgw-footer-column"> <div id="footer-social-links"> <!-- Facebook Icon --> <a href="https://www.facebook.com/PCGamingWiki"> <div class="icon-container footer-facebook icon"></div> </a> <!-- Google+ Icon --> <a href="https://www.google.com/+PCGamingWiki"> <div class="icon-container footer-google icon"></div> </a> <!-- Twitter Icon --> <a href="https://www.twitter.com/PCGamingWiki"> <div class="icon-container footer-twitter icon"></div> </a> <!-- YouTube Icon --> <a href="https://www.youtube.com/user/PCGamingWikiTV"> <div class="icon-container footer-youtube icon"></div> </a> <!-- Steam Icon --> <a href="http://steamcommunity.com/groups/pcgamingwiki"> <div class="icon-container footer-steam icon"></div> </a> </div> </div> <!-- Other links --> <div class="pcgw-footer-column"> <div id="footer-links-container"> <ul> <li>PCGamingWiki <li><a href="/">Wiki</a> <li><a href="//community.pcgamingwiki.com/index">Forums</a> <li><a href="//pcgamingwiki.com/wiki/PCGamingWiki:About">About us</a> <li><a href="//pcgamingwiki.com/wiki/PCGamingWiki:About#Contact">Contact us</a> <li><a href="//pcgamingwiki.com/wiki/PCGamingWiki:About#Advertising">Advertising</a> <li><a href="//pcgamingwiki.com/wiki/PCGamingWiki:Privacy_policy">Privacy policy</a> <li><a href="//pcgamingwiki.com/wiki/PCGamingWiki:General_disclaimer">General disclaimer</a> <li><a href="//pcgamingwiki.com/wiki/PCGamingWiki:Code_of_conduct">Code of conduct</a> <li><a href="https://github.com/PCGamingWiki">Open source</a> </ul> <ul> <li>Network <li><a href="//ftlwiki.com/wiki/FTL:_Faster_Than_Light_Wiki">FTL Wiki</a> <li><a href="//gunpointwiki.net/wiki/Gunpoint_Wiki">Gunpoint Wiki</a> <li><a href="//prisonarchitectwiki.com/wiki/Home">Prison Architect Wiki</a> <li><a href="//siryouarebeinghuntedwiki.com/wiki/Home">Sir, You Are Being Hunted Wiki</a> <li><a href="//www.cheapshark.com/">CheapShark</a> </ul> <ul> <li>Powered by <li><a href="https://www.mediawiki.org/wiki/MediaWiki">MediaWiki</a> <li><a href="https://www.semantic-mediawiki.org/wiki/Semantic_MediaWiki">Semantic MediaWiki</a> <li><a href="https://www.patreon.com/PCGamingWiki">Our generous patrons</a> <li>and You <3 </ul> </div> <!-- Page last modified, copyright, and disclaimer texts --> <?php if (isset($this->getFooterLinks()['info'])) { $footerNav = $this->getFooterLinks()['info']; ?> <div id="footer-info-lastmod"><?php $this->html($footerNav[0]); ?> </div> <div id="footer-info-copyright"><?php $this->html($footerNav[1]); ?> </div> <?php } ?> <div id="footer-info-disclaimer">Some store links may include affiliate tags. Buying through these links helps support PCGamingWiki (<a href="/wiki/PCGamingWiki:About#Support_us">Learn more</a>).</div> </div> </footer> <!-- See schema.org and developers.google.com/structured-data for more information on what this does. --> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Organization", "name": "PCGamingWiki", "url": "http://pcgamingwiki.com", "logo": "http://pcgamingwiki.com/images/d/d8/PCGamingWiki.svg", "sameAs": [ "https://www.facebook.com/PCGamingWiki", "https://twitter.com/PCGamingWiki", "https://plus.google.com/+PCGamingWiki" ] } </script> <!-- Open Sans font family --> <link rel="stylesheet" media="screen" href="//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,400,300,600"> <?php $this->printTrail(); ?> </body> </html><?php }
public function tooltip($name, $options = null) { return Linker::tooltip($name, $options); }
/** * Outputs the entire contents of the (X)HTML page */ public function execute() { global $wgVectorUseIconWatch; global $wgTweekiSkinHideAnon; global $wgGroupPermissions; global $wgTweekiSkinPageRenderer; // Build additional attributes for navigation urls $nav = $this->data['content_navigation']; if ($wgVectorUseIconWatch) { $mode = $this->getSkin()->getUser()->isWatched($this->getSkin()->getRelevantTitle()) ? 'unwatch' : 'watch'; if (isset($nav['actions'][$mode])) { $nav['views'][$mode] = $nav['actions'][$mode]; $nav['views'][$mode]['class'] = rtrim('icon ' . $nav['views'][$mode]['class'], ' '); $nav['views'][$mode]['primary'] = true; unset($nav['actions'][$mode]); } } $xmlID = ''; foreach ($nav as $section => $links) { foreach ($links as $key => $link) { if ($section == 'views' && !(isset($link['primary']) && $link['primary'])) { $link['class'] = rtrim('collapsible ' . $link['class'], ' '); } $xmlID = isset($link['id']) ? $link['id'] : 'ca-' . $xmlID; $nav[$section][$key]['attributes'] = ' id="' . Sanitizer::escapeId($xmlID) . '"'; if ($link['class']) { $nav[$section][$key]['attributes'] .= ' class="' . htmlspecialchars($link['class']) . '"'; unset($nav[$section][$key]['class']); } if (isset($link['tooltiponly']) && $link['tooltiponly']) { $nav[$section][$key]['key'] = Linker::tooltip($xmlID); } else { $nav[$section][$key]['key'] = Xml::expandAttributes(Linker::tooltipAndAccesskeyAttribs($xmlID)); } } } $this->data['namespace_urls'] = $nav['namespaces']; $this->data['view_urls'] = $nav['views']; $this->data['action_urls'] = $nav['actions']; $this->data['variant_urls'] = $nav['variants']; //set userStateClass if ($this->data['loggedin']) { $this->data['userstateclass'] = "user-loggedin"; } else { $this->data['userstateclass'] = "user-loggedout"; } if ($wgGroupPermissions['*']['edit'] || $this->data['loggedin']) { $this->data['userstateclass'] .= " editable"; } else { $this->data['userstateclass'] .= " not-editable"; } //set 'namespace' and 'title_formatted' variables $this->data['namespace'] = $this->getSkin()->getTitle()->getNsText(); $this->data['title_formatted'] = $this->data['title']; if (strpos($this->data['title'], $this->data['namespace'] . ":") !== false) { $this->data['title_formatted'] = '<span class="namespace">' . str_replace(":", ":</span> ", $this->data['title']); } // Reverse horizontally rendered navigation elements if ($this->data['rtl']) { $this->data['view_urls'] = array_reverse($this->data['view_urls']); $this->data['namespace_urls'] = array_reverse($this->data['namespace_urls']); $this->data['personal_urls'] = array_reverse($this->data['personal_urls']); } // Output HTML Page $this->html('headelement'); call_user_func_array($wgTweekiSkinPageRenderer, array($this)); ?> </body> </html> <?php }
/** * Outputs the entire contents of the page */ public function execute() { global $wgBSWfblink, $wgBSWgooglelink, $wgBSWtwitterlink, $wgBSWyoutubelink, $wgBSWemaillink; $this->html('headelement'); ?> <nav id="myNavbar" class="navbar navbar-default navbar-fixed-top" role="nevigation"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbarCollapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href']); ?> " <?php echo Xml::expandAttributes(Linker::tooltipAndAccessKeyAttribs('p-logo')); ?> > <img class="img-responsive" src="<?php $this->text('logopath'); ?> " alt="<?php $this->text('sitename'); ?> " /> </a> </div> <div class="collapse navbar-collapse" id="navbarCollapse"> <ul class="nav navbar-nav"> <?php $count = 0; $actionMenuStart = <<<AMS \t\t\t\t\t<li class="dropdown"> \t\t\t\t\t\t<a href="#" class="dropdown-toggle" data-toggle="dropdown"><span class="glyphicon glyphicon-cog"></span><span class="caret"></span></a> \t\t\t\t\t\t<ul class="dropdown-menu" role="menu"> AMS; $actionMenuEnd = <<<AME \t\t\t\t\t\t</ul> \t\t\t\t\t</li> AME; $actionMenuBody = ""; foreach ($this->data['content_navigation'] as $category => $tabs) { foreach ($tabs as $key => $tab) { if ($count > 4) { $actionMenuBody .= $this->makeListItem($key, $tab); } else { echo $this->makeListItem($key, $tab); } ++$count; } } echo $actionMenuStart . $actionMenuBody . $actionMenuEnd; ?> </ul> <ul class="nav navbar-nav navbar-right"> <?php if (isset($wgBSWfblink) && trim($wgBSWfblink) != "") { ?> <li><a href="<?php echo $wgBSWfblink; ?> " target="_blank" class="socicon facebook" title="like on facebook">b</a></li> <?php } ?> <?php if (isset($wgBSWtwitterlink) && trim($wgBSWtwitterlink) != "") { ?> <li><a href="<?php echo $wgBSWfblink; ?> " target="_blank" class="socicon twitter" title="Follow on twitter">a</a></li> <?php } ?> <?php if (isset($wgBSWyoutubelink) && trim($wgBSWyoutubelink) != "") { ?> <li><a href="<?php echo $wgBSWfblink; ?> " target="_blank" class="socicon youtube" title="subscribe on youtube">r</a></li> <?php } ?> <?php if (isset($wgBSWgooglelink) && trim($wgBSWgooglelink) != "") { ?> <li><a href="<?php echo $wgBSWgooglelink; ?> " target="_blank" class="socicon google" title="follow on google plus">c</a></li> <?php } ?> <?php if (isset($wgBSWemaillink) && trim($wgBSWemaillink) != "") { ?> <li><a href="mailto:<?php echo $wgBSWemaillink; ?> " class="socicon email" title="Email us">@</a></li> <?php } ?> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"><span class="glyphicon glyphicon-user"></span><span class="caret"></span></a> <ul class="dropdown-menu" role="menu"> <?php foreach ($this->getPersonalTools() as $key => $item) { echo $this->makeListItem($key, $item); } ?> </ul> </li> </ul> </div> </div> </nav> <div class="container"> <?php if ($this->data['newtalk']) { ?> <div class="row"> <div class="col-sm-12"> <div class="bg-info usermessage"><?php $this->html('newtalk'); ?> </div> </div> </div> <?php } ?> <?php if ($this->data['sitenotice']) { ?> <div class="row"> <div class="col-sm-12"> <div class="" id="siteNotice"><?php $this->html('sitenotice'); ?> </div> </div> </div> <?php } ?> <div class="row"> <div class="col-xs-12 col-sm-4 col-md-4 col-lg-3" id="sidebar"> <div id="search-div"> <form class="form-inline" role="form" action="<?php $this->text('wgScript'); ?> "> <div class="form-group"> <div class="input-group"> <input type="hidden" name="title" value="<?php $this->text('searchtitle'); ?> " /> <?php echo $this->makeSearchInput(array('class' => 'form-control')); ?> <div class="input-group-addon"><span class="glyphicon glyphicon-search"></span></div> </div> </div> </form> </div> <?php foreach ($this->getSidebar() as $boxName => $box) { ?> <div id="<?php echo Sanitizer::escapeId($box['id']); ?> "<?php echo Linker::tooltip($box['id']); ?> > <ul class="nav nav-pills nav-stacked left-margin-zero"> <li class="dropdown"> <a class="side-menu-toggle" data-toggle="" onclick="" href="#"><?php echo htmlspecialchars($box['header']); ?> </a> <?php if (is_array($box['content'])) { ?> <ul class="nav-pills list-unstyled sub-side-menu" role="menu"> <?php foreach ($box['content'] as $key => $item) { echo $this->makeListItem($key, $item); } ?> </ul> <?php } else { echo $box['content']; } ?> </li> </ul> </div> <?php } ?> <?php if ($this->data['language_urls']) { ?> <ul class="nav nav-pills nav-stacked left-margin-zero"> <li class="dropdown"> <a class="side-menu-toggle" data-toggle="" onclick="" href="#">Language</a> <ul class="nav-pills list-unstyled sub-side-menu" role="menu"> <?php foreach ($this->data['language_urls'] as $key => $langLink) { echo $this->makeListItem($key, $langLink); } ?> </ul> </li> </ul> <?php } ?> </div> <div class="col-xs-12 col-sm-8 col-md-8 col-lg-9" id="maincontent"> <h1 id="firstHeading" class="firstHeading"><?php $this->html('title'); ?> </h1> <hr/> <?php if ($this->data['subtitle']) { ?> <h4 class="small" ><?php $this->html('subtitle'); ?> </h4><?php } ?> <?php if ($this->data['undelete']) { ?> <h4 class="small" ><?php $this->html('undelete'); ?> </h4><?php } ?> <div id="bodyContent"><?php $this->html('bodytext'); ?> </div> <?php $this->html('catlinks'); ?> <?php $this->html('dataAfterContent'); ?> </div> </div> <hr/> <div class="row"> <div class="col-sm-12 text-center"> <footer> <?php foreach ($this->getFooterIcons('icononly') as $blockName => $footerIcons) { foreach ($footerIcons as $icon) { echo $this->getSkin()->makeFooterIcon($icon); } } ?> <a href="https://www.examsmyantra.com" title="Designed By ExamsMyantra" id="em-logo"></a> </footer> </div> </div> </div> <a href="javascript:void(0);" id="top"><span class="glyphicon glyphicon-arrow-up"></span></a> <?php $this->printTrail(); ?> </body> </html> <?php }
/** * Outputs the entire contents of the (X)HTML page */ public function execute() { global $wgArticlePath; // Build additional attributes for navigation urls $nav = $this->data['content_navigation']; $xmlID = ''; foreach ($nav as $section => $links) { foreach ($links as $key => $link) { if ($section == 'views' && !(isset($link['primary']) && $link['primary'])) { $link['class'] = rtrim('collapsible ' . $link['class'], ' '); } $xmlID = isset($link['id']) ? $link['id'] : 'ca-' . $xmlID; $nav[$section][$key]['attributes'] = ' id="' . Sanitizer::escapeId($xmlID) . '"'; if ($link['class']) { $nav[$section][$key]['attributes'] .= ' class="' . htmlspecialchars($link['class']) . '"'; unset($nav[$section][$key]['class']); } if (isset($link['tooltiponly']) && $link['tooltiponly']) { $nav[$section][$key]['key'] = Linker::tooltip($xmlID); } else { $nav[$section][$key]['key'] = Xml::expandAttributes(Linker::tooltipAndAccesskeyAttribs($xmlID)); } } } $this->data['namespace_urls'] = $nav['namespaces']; $this->data['view_urls'] = $nav['views']; $this->data['action_urls'] = $nav['actions']; $this->data['variant_urls'] = $nav['variants']; # Check using right sidebar $c_page = $this->data['skin']->getTitle(); $c_namespace = $c_page->getNamespace(); $c_mainpage = Title::newMainPage(); $use_sidebar = false; $hook_args = array($c_page, $c_namespace, $c_maainpage, &$use_sidebar); if ($c_namespace >= 0 && $c_namespace != NS_USER && $c_namespace != NS_FILE && $c_namespace != NS_MEDIAWIKI && (!isset($_GET["action"]) || $_GET["action"] == "submit") && !$c_page->isMainPage() || $c_page->getBaseText() == 'EditWatchlist' && $c_namespace == -1) { $use_sidebar = true; } // check other extensions wfRunHooks('wikichanUseRightSidebar', $hook_args); $this->data['useRightSidebar'] = $use_sidebar; # Check hide h1 tag, toolbar if ($c_namespace == NS_USER || $c_namespace == NS_BOARD) { $this->data['hideH1Toolbar'] = true; } else { $this->data['hideH1Toolbar'] = false; } # Make custom Notice global $wgWikichanCustomNotice; if (isset($wgWikichanCustomNotice)) { $this->data['customNotice'] = "<p>" . $wgWikichanCustomNotice . "</p>"; } # 로그인 부분 컨트롤 $PersonalTools = $this->getPersonalTools(); //로그인 안한 상태에서 로그인 주소에 접근하지 못하는 버그 fix if (!isset($PersonalTools['login'])) { $PersonalTools['login'] = $PersonalTools['anonlogin']; } # 개인 연습장 만들기 if ($this->data['skin']->loggedin) { $PersonalTools['sandbox']['links'][0]['href'] = $this->getUrl("연습장:" . $this->data['skin']->getUser()->mName); $PersonalTools['sandbox']['links'][0]['text'] = "연습장"; $PersonalTools['sandbox']['id'] = 'pt-sandbox'; } # 커스텀 카테고리 리스트 $this->data['catlinks'] = str_replace("catlinks' class='", "catlinks' class='clear ", $this->data['catlinks']); //$this->data['catlinks'] = str_replace("</a>:", "</a>://", $this->data['catlinks']); $this->data['catlinks'] = str_replace("</a>: ", "</a>", $this->data['catlinks']); if (strpos($this->data['catlinks'], "<a") !== false) { $this->data['catlinks'] = substr($this->data['catlinks'], 0, strpos($this->data['catlinks'], '<a')) . substr($this->data['catlinks'], strpos($this->data['catlinks'], "</a>") + 4); } //$this->data['catlinks'] = str_replace("</li><li", "</li> / <li", $this->data['catlinks']); //$this->data['catlinks'] = str_replace("</li></ul>", "</li> / </ul>", $this->data['catlinks']); # 메뉴를 위한 툴 리스트 받기 $toolList = $this->getToolbox(); # 대문 네임스페이스에서 제목에서 '대문:' 자 빼기 if ($c_namespace == NS_PORTAL && strpos($this->data['title'], ':') !== false) { $this->data['title'] = substr($this->data['title'], strpos($this->data['title'], ':') + 1); } # 현재 유저가 어드민 그룹에 속해있는지 검사 if (in_array('sysop', $this->data['skin']->getUser()->getEffectiveGroups())) { $this->data['isadmin'] = true; } else { $this->data['isadmin'] = false; } // Output HTML Page $this->html('headelement'); ?> <div id="header" role="header"> <div class="holder clear"> <div id="header-tools" role="navigation"> <ul class="top-menu nolist clear"> <li><a href="<?php echo $this->getUrl("대문"); ?> " accesskey="z">대문으로</a></li> <li><a href="<?php echo $this->getUrl("특수기능:임의문서"); ?> " accesskey="x">랜덤 읽기</a></li> <li class="dropdown"> <a href="<?php echo $this->getUrl("특수기능:특수문서"); ?> " accesskey="t">도구</a> <ul class="dropdown-menu lefted"> <li><a href="<?php echo $this->getUrl("특수기능:최근바뀜"); ?> " accesskey="r">모든 문서의 바뀜 <span class="shortcut">r</span></a></li> <li><a href="<?php echo $this->getUrl("특수기능:주시문서목록"); ?> " accesskey="l">주시 문서의 바뀜 <span class="shortcut">l</span></a></li> <hr> <li><a href="<?php echo $this->getUrl("특수기능:사용자"); ?> ">모든 회원 목록</a></li> <li><a href="<?php echo $this->getUrl("특수기능:활동적인사용자"); ?> ">활동적인 회원 목록</a></li> <hr> <li><a href="<?php echo $toolList['whatlinkshere']['href']; ?> " accesskey="b">여기를 가리키는 문서 <span class="shortcut">b</span></a></li> <li><a href="<?php echo $this->getUrl("특수기능:파일올리기"); ?> ">파일 업로드</a></li> <hr> <li><a href="<?php echo $this->getUrl("특수기능:새문서"); ?> ">새로 등록된 문서</a></li> <li><a href="<?php echo $this->getUrl("특수기능:새파일"); ?> ">새로 등록된 파일</a></li> <li><a href="<?php echo $this->getUrl("특수기능:분류안된문서"); ?> ">분류되지 않은 문서</a></li> <li><a href="<?php echo $this->getUrl("특수기능:분류안된파일"); ?> ">분류되지 않은 파일</a></li> <li><a href="<?php echo $this->getUrl("특수기능:필요한분류"); ?> ">필요한 분류 목록</a></li> <li><a href="<?php echo $this->getUrl("특수기능:끊긴넘겨주기"); ?> ">끊긴 넘겨주기 문서</a></li> </ul> </li> <?php if ($this->data['isadmin']) { ?> <li class="dropdown"> <a href="<?php echo $this->getUrl("특수기능:특수문서"); ?> ">관리</a> <ul class="dropdown-menu lefted"> <li><a href="<?php echo $this->getUrl("특수기능:멀티업로드"); ?> ">여러 파일 올리기</a></li> <li><a href="<?php echo $this->getUrl("특수기능:찾아바꾸기"); ?> ">찾아 바꾸기</a></li> <hr> <li><a href="<?php echo $this->getUrl("특수기능:일괄삭제"); ?> ">문서 일괄 삭제</a></li> <li><a href="<?php echo $this->getUrl("특수기능:문서대량삭제"); ?> ">문서 패턴 삭제</a></li> <hr> <li><a href="<?php echo $this->getUrl("특수기능:이름바꾸기"); ?> ">계정 이름 변경</a></li> <li><a href="<?php echo $this->getUrl("특수기능:사용자병합"); ?> ">사용자 병합</a></li> <li><a href="<?php echo $this->getUrl("특수기능:차단"); ?> ">사용자 차단</a></li> <li><a href="<?php echo $this->getUrl("특수기능:차단해제"); ?> ">사용자 차단 해제</a></li> <li><a href="<?php echo $this->getUrl("특수기능:차단된사용자"); ?> ">차단된 사용자 목록</a></li> </ul> </li> <?php } ?> </ul> </div> <div id="header-account" role="navigation"> <ul class="top-menu nolist clear"> <?php if ($this->data['skin']->loggedin) { ?> <li class="dropdown"> <a href="<?php echo $PersonalTools['userpage']['links'][0]['href']; ?> "> <?php echo $PersonalTools['userpage']['links'][0]['text']; ?> <span id="alarm-container"></span> </a> <ul class="dropdown-menu righted"> <?php echo $this->makeListItem("preferences", $PersonalTools["preferences"]); echo $this->makeListItem("sandbox", $PersonalTools["sandbox"]); echo $this->makeListItem("logout", $PersonalTools["logout"]); ?> </ul> </li> <?php } else { ?> <li><a href="<?php echo $PersonalTools['login']['links'][0]['href']; ?> &type=signup">회원가입</a></li> <li><a href="<?php echo $PersonalTools['login']['links'][0]['href']; ?> ">로그인</a></li> <?php } ?> </ul> </div> <div id="header-search" role="search"> <form action="<?php $this->text('wgScript'); ?> " id="searchform"> <div id="simpleSearch"> <?php echo $this->makeSearchInput(array('id' => 'searchInput', 'type' => 'text')); ?> <?php echo $this->makeSearchButton('go', array('id' => 'searchButton')); ?> <input type='hidden' name="title" value="<?php $this->text('searchtitle'); ?> "/> </div> </form> </div> </div> </div> <!-- Navi for smaller screens --> <div id="rsp-header" class="rsp clear"> <div class="rsp-logo"> <a href="<?php echo $this->getUrl("대문"); ?> "> <img src="/skins/modern-skylight/images/modern-skylight-logo-s.png" alt="대문" /> </a> </div> <div class="rsp-nav tools"><a id="r-tools">메뉴</a></div> <div class="rsp-nav search"><a id="r-search">검색</a></div> <div class="rsp-nav account"><a id="r-account">계정</a></div> <div id="rsp-search" class="rsp" role="search"> <form action="<?php $this->text('wgScript'); ?> " id="searchform"> <div id="simpleSearch"> <?php echo $this->makeSearchInput(array('id' => 'searchInput', 'type' => 'text')); ?> <?php echo $this->makeSearchButton('go', array('id' => 'searchButton')); ?> <input type='hidden' name="title" value="<?php $this->text('searchtitle'); ?> "/> </div> </form> </div> <div id="rsp-account" class="rsp" role="navigation"> <ul class="rsp-menu nolist"> <?php if ($this->data['skin']->loggedin) { ?> <li> <a href="<?php echo $PersonalTools['userpage']['links'][0]['href']; ?> "> <?php echo $PersonalTools['userpage']['links'][0]['text']; ?> <span id="noti-container"></span> </a> </li> <?php echo $this->makeListItem("preferences", $PersonalTools["preferences"]); echo $this->makeListItem("sandbox", $PersonalTools["sandbox"]); echo $this->makeListItem("logout", $PersonalTools["logout"]); ?> <?php } else { ?> <li><a href="<?php echo $PersonalTools['login']['links'][0]['href']; ?> ">로그인</a></li> <li><a href="<?php echo $PersonalTools['login']['links'][0]['href']; ?> &type=signup">회원가입</a></li> <?php } ?> </ul> </div> <div id="rsp-tools" class="rsp" role="navigation"> <ul class="rsp-menu"> <li><a href="<?php echo $this->getUrl("특수기능:임의문서"); ?> ">랜덤 읽기</a></li> <li><a href="<?php echo $this->getUrl("위키쨩:연습장"); ?> ">연습장</a></li> <li><a class="r-submenu">도구</a> <ul class="rsp-submenu"> <li><a href="<?php echo $this->getUrl("특수기능:최근바뀜"); ?> ">모든 문서의 바뀜</a></li> <li><a href="<?php echo $this->getUrl("특수기능:주시문서목록"); ?> ">주시 문서의 바뀜</a></li> <li><a href="<?php echo $this->getUrl("특수기능:새문서"); ?> ">새로 등록된 문서</a></li> <li><a href="<?php echo $this->getUrl("특수기능:새파일"); ?> ">새로 등록된 파일</a></li> <li><a href="<?php echo $toolList['whatlinkshere']['href']; ?> ">여기를 가리키는 문서</a></li> </ul> </li> <?php if ($this->data['isadmin']) { ?> <li><a class="r-submenu">관리</a> <ul class="rsp-submenu"> <li><a href="<?php echo $this->getUrl("특수기능:멀티업로드"); ?> ">여러 파일 올리기</a></li> <li><a href="<?php echo $this->getUrl("특수기능:찾아바꾸기"); ?> ">찾아 바꾸기</a></li> <hr> <li><a href="<?php echo $this->getUrl("특수기능:일괄삭제"); ?> ">문서 일괄 삭제</a></li> <li><a href="<?php echo $this->getUrl("특수기능:문서대량삭제"); ?> ">문서 패턴 삭제</a></li> <li><a href="<?php echo $this->getUrl("특수기능:아바타삭제"); ?> ">아바타 삭제하기</a></li> <hr> <li><a href="<?php echo $this->getUrl("특수기능:이름바꾸기"); ?> ">계정 이름 변경</a></li> <li><a href="<?php echo $this->getUrl("특수기능:사용자병합"); ?> ">사용자 병합</a></li> <li><a href="<?php echo $this->getUrl("특수기능:차단"); ?> ">사용자 차단</a></li> <li><a href="<?php echo $this->getUrl("특수기능:차단해제"); ?> ">사용자 차단 해제</a></li> <li><a href="<?php echo $this->getUrl("특수기능:차단된사용자"); ?> ">차단된 사용자 목록</a></li> </ul> </li> <?php } ?> </ul> </div> </div> <!-- /Navi for smaller screens --> </div> <div class="content clear" role="main"> <div class="article<?php if (!$this->data['useRightSidebar']) { echo ' alpha'; } ?> "> <div id="mw-js-message" style="display:none;"></div> <?php if ($this->data['catlinks']) { ?> <!-- catlinks --> <?php $this->html('catlinks'); ?> <!-- /catlinks --> <?php } ?> <!-- firstHeading --> <h1 id="firstheading" class="firstheading"<?php if ($this->data['hideH1Toolbar']) { echo " style=\"display:none;\""; } ?> ><?php $this->html('title'); ?> </h1> <!-- /firstHeading --> <!-- actions --> <?php if (!$this->data['hideH1Toolbar']) { ?> <ul id="cactions" class="cactions nolist clear"><?php $this->renderNavigations($c_namespace); ?> </ul> <?php } ?> <!-- /actions --> <?php if ($this->data['undelete']) { ?> <!-- undelete --> <div id="contentSub2"><?php $this->html('undelete'); ?> </div> <!-- /undelete --> <?php } ?> <?php if ($this->data['sitenotice'] || $this->data['customNotice']) { ?> <!-- sitenotice --> <div id="siteNotice"><?php $this->html('sitenotice'); echo $this->data['customNotice']; ?> </div> <!-- /sitenotice --> <?php } ?> <!-- bodyContent --> <div id="bodyContent"> <?php if ($this->data['isarticle']) { ?> <?php } ?> <!-- subtitle --> <div id="contentSub"<?php $this->html('userlangattributes'); ?> ><?php $this->html('subtitle'); ?> </div> <!-- /subtitle --> <!-- bodycontent --> <?php $this->html('bodycontent'); ?> <!-- /bodycontent --> <!-- printfooter --> <div class="printfooter"> <?php $this->html('printfooter'); ?> </div> <!-- /printfooter --> <?php if ($this->data['dataAfterContent']) { ?> <!-- dataAfterContent --> <?php $this->html('dataAfterContent'); ?> <!-- /dataAfterContent --> <?php } ?> <div class="visualClear"></div> <!-- debughtml --> <?php $this->html('debughtml'); ?> <!-- /debughtml --> </div> <!-- /bodyContent --> </div> <!-- sidemenu --> <?php if ($this->data['useRightSidebar']) { ?> <div class="sidebar"> <div class="sidetoc"></div> <div class="sidesearch"> <form action="<?php $this->text('wgScript'); ?> " id="searchform"> <div id="simpleSearch"> <?php echo $this->makeSearchInput(array('id' => 'searchInput', 'type' => 'text')); ?> <?php echo $this->makeSearchButton('go', array('id' => 'searchButton')); ?> <input type='hidden' name="title" value="<?php $this->text('searchtitle'); ?> "/> </div> </form> </div> </div> <?php } ?> <!-- /sidemenu --> </div> <div class="footer<?php if ($c_page->getNamespace() == 0 && !$c_page->isMainPage()) { echo ' collapsed'; } ?> " role="contentinfo" onclick="expandFooter()"> <div class="footer-collapse holder center">클릭하면 안내문이 나타납니다.</div> <div class="footer-expand"> <div class="holder clear"> <div class="column"> <div class="column-head">Head Here</div> <div class="column-body"> <div class="entry"> <a href="<?php echo $this->getUrl("대문"); ?> " class="page">Title Here</a> <p>Lorem ipsum dolor sit amet, at vim prima nominati. Has augue repudiare urbanitas cu, ne pro appareat expetenda intellegebat.</p> </div> <div class="entry"> <a href="<?php echo $this->getUrl("Link"); ?> " class="page">Title Here</a> <p>Vidisse equidem copiosae eum ad, ludus delectus sea eu, in sit liber facilisis.</p> </div> </div> </div> <div class="column"> <div class="column-head">Head Here</div> <div class="column-body"> <div class="entry"> <a href="<?php echo $this->getUrl("Link"); ?> " class="page">Title Here</a> <p>Vidit hendrerit tincidunt vis ei, mel reprehendunt concludaturque et.</p> </div> <div class="entry"> <a href="<?php echo $this->getUrl("Link"); ?> " class="page">Title Here</a> <p>Id cum semper timeam, quo ei simul utinam, dicunt eripuit mediocrem ei mel.</p> </div> </div> </div> <div class="column"> <div class="column-head">Head Here</div> <div class="column-body"> <div class="entry"> <a href="<?php echo $this->getUrl("Link"); ?> " class="page">Title Here</a> <p>Has augue repudiare urbanitas cu, ne pro appareat expetenda intellegebat. Usu cu purto iuvaret deleniti.</p> </div> <div class="entry"> <p>Eum alienum adversarium in. Tantas suavitate maiestatis nec no, cibo facer eruditi ut sed.</p> </div> </div> </div> </div> </div> </div> <?php $this->printTrail(); ?> </body> </html> <?php }