r83812, r83814: Don't use cl_type at all when paging categorylinks
[lhc/web/wiklou.git] / includes / ChangeTags.php
index 58f56ef..3366f69 100644 (file)
@@ -28,11 +28,8 @@ class ChangeTags {
        }
 
        static function tagDescription( $tag ) {
-               $msg = wfMsgExt( "tag-$tag", 'parseinline' );
-               if ( wfEmptyMsg( "tag-$tag", $msg ) ) {
-                       return htmlspecialchars( $tag );
-               }
-               return $msg;
+               $msg = wfMessage( "tag-$tag" );
+               return $msg->exists() ? $msg->parse() : htmlspecialchars( $tag ); 
        }
 
        ## Basic utility method to add tags to a particular change, given its rc_id, rev_id and/or log_id.
@@ -150,17 +147,24 @@ class ChangeTags {
        }
 
        /**
-        * If $fullForm is set to false, then it returns an array of (label, form).
-        * If $fullForm is true, it returns an entire form.
+        * Build a text box to select a change tag
+        *
+        * @param $selected String: tag to select by default
+        * @param $fullForm Boolean:
+        *        - if false, then it returns an array of (label, form).
+        *        - if true, it returns an entire form around the selector.
+        * @param $title Title object to send the form to.
+        *        Used when, and only when $fullForm is true.
+        * @return String or array:
+        *        - if $fullForm is false: Array with
+        *        - if $fullForm is true: String, html fragment
         */
-       static function buildTagFilterSelector( $selected='', $fullForm = false /* used to put a full form around the selector */ ) {
+       public static function buildTagFilterSelector( $selected='', $fullForm = false, Title $title = null ) {
                global $wgUseTagFilter;
 
                if ( !$wgUseTagFilter || !count( self::listDefinedTags() ) )
                        return $fullForm ? '' : array();
 
-               global $wgTitle;
-
                $data = array( wfMsgExt( 'tag-filter', 'parseinline' ), Xml::input( 'tagfilter', 20, $selected ) );
 
                if ( !$fullForm ) {
@@ -169,8 +173,8 @@ class ChangeTags {
 
                $html = implode( ' ', $data );
                $html .= "\n" . Xml::element( 'input', array( 'type' => 'submit', 'value' => wfMsg( 'tag-filter-submit' ) ) );
-               $html .= "\n" . Xml::hidden( 'title', $wgTitle-> getPrefixedText() );
-               $html = Xml::tags( 'form', array( 'action' => $wgTitle->getLocalURL(), 'method' => 'get' ), $html );
+               $html .= "\n" . Html::hidden( 'title', $title-> getPrefixedText() );
+               $html = Xml::tags( 'form', array( 'action' => $title->getLocalURL(), 'method' => 'get' ), $html );
 
                return $html;
        }
@@ -180,16 +184,17 @@ class ChangeTags {
                // Caching...
                global $wgMemc;
                $key = wfMemcKey( 'valid-tags' );
-
-               if ( $tags = $wgMemc->get( $key ) )
+               $tags = $wgMemc->get( $key );
+               if ( $tags ) {
                        return $tags;
+               }
 
                $emptyTags = array();
 
                // Some DB stuff
                $dbr = wfGetDB( DB_SLAVE );
                $res = $dbr->select( 'valid_tag', 'vt_tag', array(), __METHOD__ );
-               while( $row = $res->fetchObject() ) {
+               foreach ( $res as $row ) {
                        $emptyTags[] = $row->vt_tag;
                }