XHTML validity
authorAryeh Gregor <simetrical@users.mediawiki.org>
Wed, 10 Jan 2007 06:03:14 +0000 (06:03 +0000)
committerAryeh Gregor <simetrical@users.mediawiki.org>
Wed, 10 Jan 2007 06:03:14 +0000 (06:03 +0000)
includes/Linker.php
skins/MonoBook.php

index 192597a..3fe7c70 100644 (file)
@@ -1229,6 +1229,25 @@ class Linker {
                }
                return $out;
        }
+
+       /**
+        * Given the id of an interface element (minus any prefixes such as 'n-'),
+        * constructs the appropriate title attribute from the system messages.
+        *
+        * @param string $name Id of the element, minus prefixes.
+        * @return string title attribute, ready to drop in an element
+        * (e.g., ' title="This does something"').
+        */
+       public function tooltip($name) {
+               $out = '';
+
+               $tooltip = wfMsg('tooltip-'.$name);
+               if (!wfEmptyMsg('tooltip-'.$name, $tooltip) && $tooltip != '-') {
+                       $out = ' title="'.htmlspecialchars($tooltip).'"';
+               }
+
+               return $out;
+       }
 }
 
 ?>
index 8e68e9c..f2fa598 100644 (file)
@@ -123,9 +123,9 @@ class MonoBookTemplate extends QuickTemplate {
                <div class="pBody">
                        <ul>
        <?php                   foreach($this->data['content_actions'] as $key => $tab) { ?>
-                                <li id="ca-<?php echo Sanitizer::escapeId($key) ?>"<?php echo $skin->tooltipAndAccesskey($key) ?><?php
+                                <li id="ca-<?php echo Sanitizer::escapeId($key) ?>"<?php
                                                if($tab['class']) { ?> class="<?php echo htmlspecialchars($tab['class']) ?>"<?php }
-                                        ?>><a href="<?php echo htmlspecialchars($tab['href']) ?>"><?php
+                                        ?>><a href="<?php echo htmlspecialchars($tab['href']) ?>"<?php echo $skin->tooltipAndAccesskey($key) ?>><?php
                                         echo htmlspecialchars($tab['text']) ?></a></li>
        <?php                    } ?>
                        </ul>
@@ -136,9 +136,9 @@ class MonoBookTemplate extends QuickTemplate {
                <div class="pBody">
                        <ul>
 <?php                  foreach($this->data['personal_urls'] as $key => $item) { ?>
-                               <li id="pt-<?php echo Sanitizer::escapeId($key) ?>"<?php echo $skin->tooltipAndAccesskey($key) ?><?php
+                               <li id="pt-<?php echo Sanitizer::escapeId($key) ?>"<?php
                                        if ($item['active']) { ?> class="active"<?php } ?>><a href="<?php
-                               echo htmlspecialchars($item['href']) ?>"<?php
+                               echo htmlspecialchars($item['href']) ?>"<?php echo $skin->tooltipAndAccesskey($key) ?><?php
                                if(!empty($item['class'])) { ?> class="<?php
                                echo htmlspecialchars($item['class']) ?>"<?php } ?>><?php
                                echo htmlspecialchars($item['text']) ?></a></li>
@@ -148,19 +148,19 @@ class MonoBookTemplate extends QuickTemplate {
        </div>
        <div class="portlet" id="p-logo">
                <a style="background-image: url(<?php $this->text('logopath') ?>);" <?php
-                       ?>href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href'])?>" <?php
+                       ?>href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href'])?>"<?php
                        echo $skin->tooltipAndAccesskey('mainpage') ?>></a>
        </div>
        <script type="<?php $this->text('jsmimetype') ?>"> if (window.isMSIE55) fixalpha(); </script>
        <?php foreach ($this->data['sidebar'] as $bar => $cont) { ?>
-       <div class='portlet' id='p-<?php echo Sanitizer::escapeId($bar) ?>'<?php echo $skin->tooltipAndAccesskey($bar) ?>>
+       <div class='portlet' id='p-<?php echo Sanitizer::escapeId($bar) ?>'<?php echo $skin->tooltip($bar) ?>>
                <h5><?php $out = wfMsg( $bar ); if (wfEmptyMsg($bar, $out)) echo $bar; else echo $out; ?></h5>
                <div class='pBody'>
                        <ul>
 <?php                  foreach($cont as $key => $val) { ?>
-                               <li id="<?php echo Sanitizer::escapeId($val['id']) ?>"<?php echo $skin->tooltipAndAccesskey(substr($val['id'],2)) ?><?php
+                               <li id="<?php echo Sanitizer::escapeId($val['id']) ?>"<?php
                                        if ( $val['active'] ) { ?> class="active" <?php }
-                               ?>><a href="<?php echo htmlspecialchars($val['href']) ?>"><?php echo htmlspecialchars($val['text']) ?></a></li>
+                               ?>><a href="<?php echo htmlspecialchars($val['href']) ?>"<?php echo $skin->tooltipAndAccesskey(substr($val['id'],2)) ?>><?php echo htmlspecialchars($val['text']) ?></a></li>
 <?php                  } ?>
                        </ul>
                </div>
@@ -186,46 +186,46 @@ class MonoBookTemplate extends QuickTemplate {
                        <ul>
 <?php
                if($this->data['notspecialpage']) { ?>
-                               <li id="t-whatlinkshere"<?php echo $skin->tooltipAndAccesskey('whatlinkshere') ?>><a href="<?php
+                               <li id="t-whatlinkshere"><a href="<?php
                                echo htmlspecialchars($this->data['nav_urls']['whatlinkshere']['href'])
-                               ?>"><?php $this->msg('whatlinkshere') ?></a></li>
+                               ?>"<?php echo $skin->tooltipAndAccesskey('whatlinkshere') ?>><?php $this->msg('whatlinkshere') ?></a></li>
 <?php
                        if( $this->data['nav_urls']['recentchangeslinked'] ) { ?>
-                               <li id="t-recentchangeslinked"<?php echo $skin->tooltipAndAccesskey('whatlinkshere') ?>><a href="<?php
+                               <li id="t-recentchangeslinked"><a href="<?php
                                echo htmlspecialchars($this->data['nav_urls']['recentchangeslinked']['href'])
-                               ?>"><?php $this->msg('recentchangeslinked') ?></a></li>
+                               ?>"<?php echo $skin->tooltipAndAccesskey('whatlinkshere') ?>><?php $this->msg('recentchangeslinked') ?></a></li>
 <?php          }
                }
                if(isset($this->data['nav_urls']['trackbacklink'])) { ?>
-                       <li id="t-trackbacklink"<?php echo $skin->tooltipAndAccesskey('trackbacklink') ?>><a href="<?php
+                       <li id="t-trackbacklink"><a href="<?php
                                echo htmlspecialchars($this->data['nav_urls']['trackbacklink']['href'])
-                               ?>"><?php $this->msg('trackbacklink') ?></a></li>
+                               ?>"<?php echo $skin->tooltipAndAccesskey('trackbacklink') ?>><?php $this->msg('trackbacklink') ?></a></li>
 <?php  }
                if($this->data['feeds']) { ?>
                        <li id="feedlinks"><?php foreach($this->data['feeds'] as $key => $feed) {
-                                       ?><span id="feed-<?php echo Sanitizer::escapeId($key) ?>"<?php echo $skin->tooltipAndAccesskey('feed-'.$key) ?>><a href="<?php
-                                       echo htmlspecialchars($feed['href']) ?>"><?php echo htmlspecialchars($feed['text'])?></a>&nbsp;</span>
+                                       ?><span id="feed-<?php echo Sanitizer::escapeId($key) ?>"><a href="<?php
+                                       echo htmlspecialchars($feed['href']) ?>"<?php echo $skin->tooltipAndAccesskey('feed-'.$key) ?>><?php echo htmlspecialchars($feed['text'])?></a>&nbsp;</span>
                                        <?php } ?></li><?php
                }
 
                foreach( array('contributions', 'blockip', 'emailuser', 'upload', 'specialpages') as $special ) {
 
                        if($this->data['nav_urls'][$special]) {
-                               ?><li id="t-<?php echo $special ?>"<?php echo $skin->tooltipAndAccesskey($special) ?>><a href="<?php echo htmlspecialchars($this->data['nav_urls'][$special]['href'])
-                               ?>"><?php $this->msg($special) ?></a></li>
+                               ?><li id="t-<?php echo $special ?>"><a href="<?php echo htmlspecialchars($this->data['nav_urls'][$special]['href'])
+                               ?>"<?php echo $skin->tooltipAndAccesskey($special) ?>><?php $this->msg($special) ?></a></li>
 <?php          }
                }
 
                if(!empty($this->data['nav_urls']['print']['href'])) { ?>
-                               <li id="t-print"<?php echo $skin->tooltipAndAccesskey('print') ?>><a href="<?php echo htmlspecialchars($this->data['nav_urls']['print']['href'])
-                               ?>"><?php $this->msg('printableversion') ?></a></li><?php
+                               <li id="t-print"><a href="<?php echo htmlspecialchars($this->data['nav_urls']['print']['href'])
+                               ?>"<?php echo $skin->tooltipAndAccesskey('print') ?>><?php $this->msg('printableversion') ?></a></li><?php
                }
 
                if(!empty($this->data['nav_urls']['permalink']['href'])) { ?>
-                               <li id="t-permalink"<?php echo $skin->tooltipAndAccesskey('permalink') ?>><a href="<?php echo htmlspecialchars($this->data['nav_urls']['permalink']['href'])
-                               ?>"><?php $this->msg('permalink') ?></a></li><?php
+                               <li id="t-permalink"><a href="<?php echo htmlspecialchars($this->data['nav_urls']['permalink']['href'])
+                               ?>"<?php echo $skin->tooltipAndAccesskey('permalink') ?>><?php $this->msg('permalink') ?></a></li><?php
                } elseif ($this->data['nav_urls']['permalink']['href'] === '') { ?>
-                               <li id="t-ispermalink"<?php echo $skin->tooltipAndAccesskey('is-permalink') ?>><?php $this->msg('permalink') ?></li><?php
+                               <li id="t-ispermalink"<?php echo $skin->tooltip('is-permalink') ?>><?php $this->msg('permalink') ?></li><?php
                }
 
                wfRunHooks( 'MonoBookTemplateToolboxEnd', array( &$this ) );