| <?php |
| /** |
| * Apache Open Office skin, inherited from MonoBook. |
| * |
| */ |
| |
| if( !defined( 'MEDIAWIKI' ) ) |
| die( -1 ); |
| |
| class SkinAoo extends SkinTemplate { |
| var $skinname = 'aoo', $stylename = 'aoo', |
| $template = 'AooTemplate', $useHeadElement = true; |
| |
| function setupSkinUserCss( OutputPage $out ) { |
| global $wgHandheldStyle; |
| parent::setupSkinUserCss( $out ); |
| |
| $out->addModuleStyles( 'skins.aoo' ); |
| |
| if( $wgHandheldStyle ) { |
| $out->addStyle( $wgHandheldStyle, 'handheld' ); |
| } |
| |
| |
| $out->addStyle('aoo/IE50Fixes.css', 'screen', 'lt IE 5.5000'); |
| $out->addStyle('aoo/IE55Fixes.css', 'screen', 'IE 5.5000'); |
| $out->addStyle('aoo/IE60Fixes.css', 'screen', 'IE 6'); |
| $out->addStyle('aoo/IE70Fixes.css', 'screen', 'IE 7'); |
| $out->addStyle('aoo/rtl.css', 'screen', '', 'rtl' ); |
| $out->addHeadItem( 'canonical', |
| '<link href="https://plus.google.com/114598373874764163668 rel="publisher" />' . |
| '<script type="text/javascript">' . "\n" . |
| 'var _gaq = _gaq || [];' . |
| '_gaq.push([\'_setAccount\', \'UA-30193653-1\']);' . |
| '_gaq.push([\'_setDomainName\', \'openoffice.org\']);' . |
| '_gaq.push([\'_trackPageview\']);' . "\n" . |
| '(function() {' . |
| 'var ga = document.createElement(\'script\'); ga.type = \'text/javascript\';' . |
| 'ga.async = true; ga.src = (\'https:\' == document.location.protocol ? ' . |
| '\'https://ssl\' : \'http://www\') + \'.google-analytics.com/ga.js\';' . |
| 'var s = document.getElementsByTagName(\'script\')[0]; s.parentNode.insertBefore(ga, s);' . |
| "\n" . '})();' . "\n" . |
| '</script>' . "\n" ); |
| } |
| } |
| |
| |
| class AooTemplate extends BaseTemplate { |
| function execute() { |
| wfSuppressWarnings(); |
| |
| $this->html( 'headelement' ); |
| ?><div id="globalWrapper"> |
| <div id="column-content"><div id="content" class="mw-body-primary"> |
| <a id="top"></a> |
| <?php if($this->data['sitenotice']) { ?><div id="siteNotice"><?php $this->html('sitenotice') ?></div><?php } ?> |
| |
| <h1 id="firstHeading" class="firstHeading"><span dir="auto"><?php $this->html('title') ?></span></h1> |
| <div id="bodyContent" class="mw-body"> |
| <div id="siteSub"><?php $this->msg('tagline') ?></div> |
| <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 } ?><?php if($this->data['showjumplinks']) { ?> |
| <div id="jump-to-nav" class="mw-jump"><?php $this->msg('jumpto') ?> <a href="#column-one"><?php $this->msg('jumptonavigation') ?></a><?php $this->msg( 'comma-separator' ) ?><a href="#searchInput"><?php $this->msg('jumptosearch') ?></a></div> |
| <?php } ?> |
| <!-- start content --> |
| <?php $this->html('bodytext') ?> |
| <?php if($this->data['catlinks']) { $this->html('catlinks'); } ?> |
| <!-- end content --> |
| <?php if($this->data['dataAfterContent']) { $this->html ('dataAfterContent'); } ?> |
| <div class="visualClear"></div> |
| </div> |
| </div></div> |
| <div id="column-one"<?php $this->html('userlangattributes') ?>> |
| <?php $this->cactions(); ?> |
| <div class="portlet" id="p-personal"> |
| <h5><?php $this->msg('personaltools') ?></h5> |
| <div class="pBody"> |
| <ul<?php $this->html('userlangattributes') ?>> |
| <?php foreach($this->getPersonalTools() as $key => $item) { ?> |
| <?php echo $this->makeListItem($key, $item); ?> |
| |
| <?php } ?> |
| </ul> |
| </div> |
| </div> |
| <div class="portlet" id="p-logo"> |
| <?php |
| echo Html::element( 'a', array( |
| 'href' => $this->data['nav_urls']['mainpage']['href'], |
| 'style' => "background-image: url({$this->data['logopath']});" ) |
| + Linker::tooltipAndAccesskeyAttribs('p-logo') ); ?> |
| |
| </div> |
| <?php |
| $this->renderPortals( $this->data['sidebar'] ); |
| ?> |
| </div><!-- end of the left (by default at least) column --> |
| <div class="visualClear"></div> |
| <?php |
| $validFooterIcons = $this->getFooterIcons( "icononly" ); |
| $validFooterLinks = $this->getFooterLinks( "flat" ); // Additional footer links |
| |
| if ( count( $validFooterIcons ) + count( $validFooterLinks ) > 0 ) { ?> |
| <div id="footer"<?php $this->html('userlangattributes') ?>> |
| <?php |
| $footerEnd = '</div>'; |
| } else { |
| $footerEnd = ''; |
| } |
| foreach ( $validFooterIcons as $blockName => $footerIcons ) { ?> |
| <div id="f-<?php echo htmlspecialchars($blockName); ?>ico"> |
| <?php foreach ( $footerIcons as $icon ) { ?> |
| <?php echo $this->getSkin()->makeFooterIcon( $icon ); ?> |
| |
| <?php } |
| ?> |
| </div> |
| <?php } |
| |
| if ( count( $validFooterLinks ) > 0 ) { |
| ?> <ul id="f-list"> |
| <?php |
| foreach( $validFooterLinks as $aLink ) { ?> |
| <li id="<?php echo $aLink ?>"><?php $this->html($aLink) ?></li> |
| <?php |
| } |
| ?> |
| </ul> |
| <?php } |
| echo $footerEnd; |
| ?> |
| |
| </div> |
| <?php |
| $this->printTrail(); |
| echo Html::closeElement( 'body' ); |
| echo Html::closeElement( 'html' ); |
| wfRestoreWarnings(); |
| } // end of execute() method |
| |
| /*************************************************************************************************/ |
| |
| protected function renderPortals( $sidebar ) { |
| if ( !isset( $sidebar['SEARCH'] ) ) $sidebar['SEARCH'] = true; |
| if ( !isset( $sidebar['TOOLBOX'] ) ) $sidebar['TOOLBOX'] = true; |
| if ( !isset( $sidebar['LANGUAGES'] ) ) $sidebar['LANGUAGES'] = true; |
| |
| foreach( $sidebar as $boxName => $content ) { |
| if ( $content === false ) |
| continue; |
| |
| if ( $boxName == 'SEARCH' ) { |
| $this->searchBox(); |
| } elseif ( $boxName == 'TOOLBOX' ) { |
| $this->toolbox(); |
| } elseif ( $boxName == 'LANGUAGES' ) { |
| $this->languageBox(); |
| } else { |
| $this->customBox( $boxName, $content ); |
| } |
| } |
| } |
| |
| /*************************************************************************************************/ |
| |
| function searchBox() { |
| global $wgUseTwoButtonsSearchForm; |
| ?> |
| <div id="p-search" class="portlet"> |
| <h5><label for="searchInput"><?php $this->msg('search') ?></label></h5> |
| <div id="searchBody" class="pBody"> |
| <form action="<?php $this->text('wgScript') ?>" id="searchform"> |
| <input type='hidden' name="title" value="<?php $this->text('searchtitle') ?>"/> |
| <?php echo $this->makeSearchInput(array( "id" => "searchInput" )); ?> |
| |
| <?php echo $this->makeSearchButton("go", array( "id" => "searchGoButton", "class" => "searchButton" )); |
| if ($wgUseTwoButtonsSearchForm): ?>  |
| <?php echo $this->makeSearchButton("fulltext", array( "id" => "mw-searchButton", "class" => "searchButton" )); |
| else: ?> |
| |
| <div><a href="<?php $this->text('searchaction') ?>" rel="search"><?php $this->msg('powersearch-legend') ?></a></div><?php |
| endif; ?> |
| |
| </form> |
| </div> |
| </div> |
| <?php |
| } |
| |
| |
| /*************************************************************************************************/ |
| |
| function cactions() { |
| ?> |
| <div id="p-cactions" class="portlet"> |
| <h5><?php $this->msg('views') ?></h5> |
| <div class="pBody"> |
| <ul><?php |
| foreach($this->data['content_actions'] as $key => $tab) { |
| echo ' |
| ' . $this->makeListItem( $key, $tab ); |
| } ?> |
| |
| </ul> |
| </div> |
| </div> |
| <?php |
| } |
| |
| /*************************************************************************************************/ |
| |
| function toolbox() { |
| ?> |
| <div class="portlet" id="p-tb"> |
| <h5><?php $this->msg('toolbox') ?></h5> |
| <div class="pBody"> |
| <ul> |
| <?php |
| foreach ( $this->getToolbox() as $key => $tbitem ) { ?> |
| <?php echo $this->makeListItem($key, $tbitem); ?> |
| |
| <?php |
| } |
| wfRunHooks( 'AooTemplateToolboxEnd', array( &$this ) ); |
| wfRunHooks( 'SkinTemplateToolboxEnd', array( &$this, true ) ); |
| ?> |
| </ul> |
| </div> |
| </div> |
| <?php |
| } |
| |
| /*************************************************************************************************/ |
| |
| function languageBox() { |
| if( $this->data['language_urls'] ) { |
| ?> |
| <div id="p-lang" class="portlet"> |
| <h5<?php $this->html('userlangattributes') ?>><?php $this->msg('otherlanguages') ?></h5> |
| <div class="pBody"> |
| <ul> |
| <?php foreach($this->data['language_urls'] as $key => $langlink) { ?> |
| <?php echo $this->makeListItem($key, $langlink); ?> |
| |
| <?php } ?> |
| </ul> |
| </div> |
| </div> |
| <?php |
| } |
| } |
| |
| /*************************************************************************************************/ |
| |
| function customBox( $bar, $cont ) { |
| $portletAttribs = array( 'class' => 'generated-sidebar portlet', 'id' => Sanitizer::escapeId( "p-$bar" ) ); |
| $tooltip = Linker::titleAttrib( "p-$bar" ); |
| if ( $tooltip !== false ) { |
| $portletAttribs['title'] = $tooltip; |
| } |
| echo ' ' . Html::openElement( 'div', $portletAttribs ); |
| ?> |
| |
| <h5><?php $msg = wfMessage( $bar ); echo htmlspecialchars( $msg->exists() ? $msg->text() : $bar ); ?></h5> |
| <div class='pBody'> |
| <?php if ( is_array( $cont ) ) { ?> |
| <ul> |
| <?php foreach($cont as $key => $val) { ?> |
| <?php echo $this->makeListItem($key, $val); ?> |
| |
| <?php } ?> |
| </ul> |
| <?php } else { |
| # allow raw HTML block to be defined by extensions |
| print $cont; |
| } |
| ?> |
| </div> |
| </div> |
| <?php |
| } |
| } // end of class |
| |
| |