(bug 17055) Use a CSS class ('mw-revdelundel-link') for RevisionDelete "(show/hide...
authorAlex Z <mrzman@users.mediawiki.org>
Sun, 18 Jan 2009 21:07:09 +0000 (21:07 +0000)
committerAlex Z <mrzman@users.mediawiki.org>
Sun, 18 Jan 2009 21:07:09 +0000 (21:07 +0000)
RELEASE-NOTES
includes/DefaultSettings.php
includes/Linker.php
includes/LogEventsList.php
includes/diff/DifferenceEngine.php
includes/specials/SpecialUndelete.php
skins/common/shared.css

index 7ad920e..fef2c84 100644 (file)
@@ -41,6 +41,8 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN
   from the database.
 * (bug 17045) Options on the block form are prefilled with the options of the 
   existing block when modifying an existing block.
+* (bug 17055) "(show/hide)" links to Special:RevisionDelete now use a CSS class 
+  rather than hardcoded HTML tags
 
 === Bug fixes in 1.15 ===
 * (bug 16968) Special:Upload no longer throws useless warnings.
index ca26e66..9492c55 100644 (file)
@@ -1455,7 +1455,7 @@ $wgCacheEpoch = '20030516000000';
  * to ensure that client-side caches don't keep obsolete copies of global
  * styles.
  */
-$wgStyleVersion = '197';
+$wgStyleVersion = '198';
 
 
 # Server-side caching:
index 5a346cc..ccb34e5 100644 (file)
@@ -1793,4 +1793,23 @@ class Linker {
                wfProfileOut( __METHOD__ );
                return false;
        }
+       
+       /**
+        * Creates a (show/hide) link for deleting revisions/log entries
+        *
+        * @param array $query  Query parameters to be passed to link()
+        * @param bool $restricted  Set to true to use a <strong> instead of a <span>
+        *
+        * @return string HTML <a> link to Special:Revisiondelete, wrapped in a
+        * span to allow for customization of appearance with CSS
+        */
+       public function revDeleteLink( $query = array(), $restricted = false ) {
+               $sp = SpecialPage::getTitleFor( 'Revisiondelete' );
+               $text = wfMsgHtml( 'rev-delundel' );
+               $tag = 'span';
+               if( $restricted )
+                       $tag = 'strong';
+               $link = $this->link( $sp, $text, array(), $query, array( 'known', 'noclasses' ) );
+               return Xml::tags( $tag, array( 'class' => 'mw-revdelundel-link' ), "($link)" );
+       }
 }
index 994257c..129ed34 100644 (file)
@@ -373,19 +373,18 @@ class LogEventsList {
                $revdel = SpecialPage::getTitleFor( 'Revisiondelete' );
                // If event was hidden from sysops
                if( !self::userCan( $row, LogPage::DELETED_RESTRICTED ) ) {
-                       $del = $this->message['rev-delundel'];
+                       $del = Xml::tags( 'span', array( 'class'=>'mw-revdelundel-link' ), '('.$this->message['rev-delundel'].')' );
                } else if( $row->log_type == 'suppress' ) {
                        // No one should be hiding from the oversight log
-                       $del = $this->message['rev-delundel'];
+                       $del = Xml::tags( 'span', array( 'class'=>'mw-revdelundel-link' ), '('.$this->message['rev-delundel'].')' );
                } else {
                        $target = SpecialPage::getTitleFor( 'Log', $row->log_type );
-                       $del = $this->skin->makeKnownLinkObj( $revdel, $this->message['rev-delundel'],
-                               'target=' . $target->getPrefixedUrl() . '&logid='.$row->log_id );
-                       // Bolden oversighted content
-                       if( self::isDeleted( $row, LogPage::DELETED_RESTRICTED ) )
-                               $del = "<strong>$del</strong>";
+                       $query = array( 'target' => $target->getPrefixedUrl(),
+                               'logid' => $row->log_id
+                       );
+                       $del = $this->skin->revDeleteLink( $query, self::isDeleted( $row, LogPage::DELETED_RESTRICTED ) );
                }
-               return "<tt>(<small>$del</small>)</tt>";
+               return $del;
        }
 
        /**
index 8233451..05e69ff 100644 (file)
@@ -226,37 +226,29 @@ CONTROL;
 
                $rdel = ''; $ldel = '';
                if( $wgUser->isAllowed( 'deleterevision' ) ) {
-                       $revdel = SpecialPage::getTitleFor( 'Revisiondelete' );
                        if( !$this->mOldRev->userCan( Revision::DELETED_RESTRICTED ) ) {
                                // If revision was hidden from sysops
-                               $ldel = wfMsgHtml( 'rev-delundel' );
+                               $ldel = Xml::tags( 'span', array( 'class'=>'mw-revdelundel-link' ), '('.wfMsgHtml( 'rev-delundel' ).')' );
                        } else {
-                               $ldel = $sk->makeKnownLinkObj( $revdel,
-                               wfMsgHtml( 'rev-delundel' ),
-                                       'target=' . urlencode( $this->mOldRev->mTitle->getPrefixedDbkey() ) .
-                                       '&oldid=' . urlencode( $this->mOldRev->getId() ) );
-                               // Bolden oversighted content
-                               if( $this->mOldRev->isDeleted( Revision::DELETED_RESTRICTED ) )
-                               $ldel = "<strong>$ldel</strong>";
+                               $query = array( 'target' => $this->mOldRev->mTitle->getPrefixedDbkey(),
+                                       'oldid' => $this->mOldRev->getId()
+                               );
+                               $ldel = $sk->revDeleteLink( $query, $this->mOldRev->isDeleted( Revision::DELETED_RESTRICTED ) );
                        }
-                       $ldel = "&nbsp;&nbsp;&nbsp;<tt>(<small>$ldel</small>)</tt> ";
+                       $ldel = "&nbsp;&nbsp;&nbsp;$ldel ";
                        // We don't currently handle well changing the top revision's settings
                        if( $this->mNewRev->isCurrent() ) {
-                               // If revision was hidden from sysops
-                               $rdel = wfMsgHtml( 'rev-delundel' );
+                               $rdel = Xml::tags( 'span', array( 'class'=>'mw-revdelundel-link' ), '('.wfMsgHtml( 'rev-delundel' ).')' );
                        } else if( !$this->mNewRev->userCan( Revision::DELETED_RESTRICTED ) ) {
                                // If revision was hidden from sysops
-                               $rdel = wfMsgHtml( 'rev-delundel' );
+                               $rdel = Xml::tags( 'span', array( 'class'=>'mw-revdelundel-link' ), '('.wfMsgHtml( 'rev-delundel' ).')' );
                        } else {
-                               $rdel = $sk->makeKnownLinkObj( $revdel,
-                               wfMsgHtml( 'rev-delundel' ),
-                                       'target=' . urlencode( $this->mNewRev->mTitle->getPrefixedDbkey() ) .
-                                       '&oldid=' . urlencode( $this->mNewRev->getId() ) );
-                               // Bolden oversighted content
-                               if( $this->mNewRev->isDeleted( Revision::DELETED_RESTRICTED ) )
-                               $rdel = "<strong>$rdel</strong>";
+                               $query = array( 'target' =>  $this->mNewRev->mTitle->getPrefixedDbkey(),
+                                       'oldid' => $this->mNewRev->getId()
+                               );
+                               $rdel = $sk->revDeleteLink( $query, $this->mNewRev->isDeleted( Revision::DELETED_RESTRICTED ) );
                        }
-                       $rdel = "&nbsp;&nbsp;&nbsp;<tt>(<small>$rdel</small>)</tt> ";
+                       $rdel = "&nbsp;&nbsp;&nbsp;$rdel ";
                }
 
                $oldHeader = '<div id="mw-diff-otitle1"><strong>'.$this->mOldtitle.'</strong></div>' .
index a9fb4ef..4bbaff6 100644 (file)
@@ -1132,19 +1132,15 @@ class UndeleteForm {
                $comment = $sk->revComment( $rev );
                $revdlink = '';
                if( $wgUser->isAllowed( 'deleterevision' ) ) {
-                       $revdel = SpecialPage::getTitleFor( 'Revisiondelete' );
                        if( !$rev->userCan( Revision::DELETED_RESTRICTED ) ) {
                        // If revision was hidden from sysops
-                               $del = wfMsgHtml('rev-delundel');
+                               $revdlink = Xml::tags( 'span', array( 'class'=>'mw-revdelundel-link' ), '('.wfMsgHtml('rev-delundel').')' );
                        } else {
-                               $del = $sk->makeKnownLinkObj( $revdel,
-                                       wfMsgHtml('rev-delundel'),
-                                       'target=' . $this->mTargetObj->getPrefixedUrl() . "&artimestamp=$ts" );
-                               // Bolden oversighted content
-                               if( $rev->isDeleted( Revision::DELETED_RESTRICTED ) )
-                                       $del = "<strong>$del</strong>";
+                               $query = array( 'target' => $this->mTargetObj->getPrefixedUrl(),
+                                       'artimestamp' => $ts
+                               );
+                               $revdlink = $sk->revDeleteLink( $query, $rev->isDeleted( Revision::DELETED_RESTRICTED ) );
                        }
-                       $revdlink = "<tt>(<small>$del</small>)</tt>";
                }
 
                return "<li>$checkBox $revdlink ($last) $pageLink . . $userLink $stxt $comment</li>";
index bd30616..7404a15 100644 (file)
@@ -311,3 +311,10 @@ div.mw-warning-with-logexcerpt {
 div.mw-warning-with-logexcerpt ul li {
        font-size: 90%;
 }
+
+/* (show/hide) revision deletion links */
+span.mw-revdelundel-link,
+strong.mw-revdelundel-link {
+       font-family: monospace;
+       font-size: smaller
+}
\ No newline at end of file