Use type=search for Monobook sidebar
authorAryeh Gregor <simetrical@users.mediawiki.org>
Wed, 26 Aug 2009 14:59:59 +0000 (14:59 +0000)
committerAryeh Gregor <simetrical@users.mediawiki.org>
Wed, 26 Aug 2009 14:59:59 +0000 (14:59 +0000)
Didn't bother to do this for other skins at the moment.  This should
allow more native-looking styling on some platforms (e.g., Safari on
Mac).

includes/Html.php
skins/MonoBook.php

index 62402f5..8d97bc4 100644 (file)
@@ -100,6 +100,7 @@ class Html {
         * @param $element  string The element's name, e.g., 'a'
         * @param $attribs  array  Associative array of attributes, e.g., array(
         *   'href' => 'http://www.mediawiki.org/' ).  Values will be HTML-escaped.
+        *   A value of false means to omit the attribute.
         * @param $contents string The raw HTML contents of the element: *not*
         *   escaped!
         * @return string Raw HTML
@@ -187,6 +188,7 @@ class Html {
         *
         * @param $attribs array Associative array of attributes, e.g., array(
         *   'href' => 'http://www.mediawiki.org/' ).  Values will be HTML-escaped.
+        *   A value of false means to omit the attribute.
         * @return string HTML fragment that goes between element name and '>'
         *   (starting with a space if at least one attribute is output)
         */
@@ -195,6 +197,10 @@ class Html {
 
                $ret = '';
                foreach ( $attribs as $key => $value ) {
+                       if ( $value === false ) {
+                               continue;
+                       }
+
                        # For boolean attributes, support array( 'foo' ) instead of
                        # requiring array( 'foo' => 'meaningless' ).
                        if ( is_int( $key )
index 175bca0..3b35c40 100644 (file)
@@ -247,9 +247,15 @@ HTML
                <div id="searchBody" class="pBody">
                        <form action="<?php $this->text('wgScript') ?>" id="searchform">
                                <input type='hidden' name="title" value="<?php $this->text('searchtitle') ?>"/>
-                               <input id="searchInput" name="search" type="text"<?php echo $this->skin->tooltipAndAccesskey('search');
-                                       if( isset( $this->data['search'] ) &&  $this->data['search'] ) {
-                                               ?> value="<?php $this->text('search') ?>"<?php } ?> />
+                               <?php
+               echo Html::input( 'search',
+                       isset( $this->data['search'] ) ? $this->data['search'] : '', 'search',
+                       array(
+                               'id' => 'searchInput',
+                               'title' => $this->skin->titleAttrib( 'search' ),
+                               'accesskey' => $this->skin->accesskey( 'search' )
+                       ) ); ?>
+
                                <input type='submit' name="go" class="searchButton" id="searchGoButton" value="<?php $this->msg('searcharticle') ?>"<?php echo $this->skin->tooltipAndAccesskey( 'search-go' ); ?> /><?php if ($wgUseTwoButtonsSearchForm) { ?>&nbsp;
                                <input type='submit' name="fulltext" class="searchButton" id="mw-searchButton" value="<?php $this->msg('searchbutton') ?>"<?php echo $this->skin->tooltipAndAccesskey( 'search-fulltext' ); ?> /><?php } else { ?>