Bug 34508 - [Regression] IRC string output for log messages no longer compatible
authorSam Reed <reedy@users.mediawiki.org>
Tue, 21 Feb 2012 23:38:08 +0000 (23:38 +0000)
committerSam Reed <reedy@users.mediawiki.org>
Tue, 21 Feb 2012 23:38:08 +0000 (23:38 +0000)
Update messages/MessagesEn.php

Add large backcompat switch conditional thing

includes/logging/LogFormatter.php
languages/messages/MessagesEn.php

index cdd3a70..d4895ba 100644 (file)
@@ -157,16 +157,90 @@ class LogFormatter {
 
                $entry = $this->entry;
                $parameters = $entry->getParameters();
-               switch ( $entry ) {
+               // Text of title the action is aimed at.
+               $target = $entry->getTarget()->getText() ;
+               $text = null;
+               switch( $entry->getType() ) {
                        case 'move':
-                               if ( $entry->getSubtype() === 'move_redir' ) {
-                                       $movesource =  $parameters['4::target'];
-                                       $movetarget = $entry->getTarget()->getText();
-                                       $text = wfMsg( '1movedto2_redir', $movesource, $movetarget );
+                               switch( $entry->getSubtype() ) {
+                                       case 'move':
+                                               $movesource =  $parameters['4::target'];
+                                               $text = wfMsg( '1movedto2', $movesource, $target );
+                                               break;
+                                       case 'move_redir':
+                                               $movesource =  $parameters['4::target'];
+                                               $text = wfMsg( '1movedto2_redir', $movesource, $target  );
+                                               break;
+                                       case 'move-noredirect':
+                                               break;
+                                       case 'move_redir-noredirect':
+                                               break;
                                }
                                break;
-                       // case 'delete':
-                       //      break
+
+                       case 'delete':
+                               switch( $entry->getSubtype() ) {
+                                       case 'delete':
+                                               $text = wfMsg( 'deletedarticle', $target );
+                                               break;
+                                       case 'restore':
+                                               $text = wfMsg( 'undeletedarticle', $target );
+                                               break;
+                                       //case 'revision': // Revision deletion
+                                       //case 'event': // Log deletion
+                                               // see https://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/includes/LogPage.php?&pathrev=97044&r1=97043&r2=97044
+                                       //default:
+                               }
+                               break;
+
+                       case 'patrol':
+                               // https://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/includes/PatrolLog.php?&pathrev=97495&r1=97494&r2=97495
+                               // Create a diff link to the patrolled revision
+                               $diffLink = Linker::link(
+                                       $target,
+                                       htmlspecialchars( wfMsg( 'patrol-log-diff', $parameters['4::curid']) ),
+                                       array(),
+                                       /*query parameters */ array( 'oldid'=>$parameters['4::curid'], 'diff' => 'prev' ),
+                                       array( 'known', 'noclasses' )
+                               );
+                               $link = Linker::link( $entry->getTarget() );
+
+                               if ( $entry->getSubtype() === 'patrol' ) {
+                                       // 'patrol-log-line'             => 'marked $1 of $2 patrolled $3',
+                                       // 'logentry-irc-patrol-patrol'              => '$1 marked revision $4 of page $3 patrolled',
+
+                                       $text = wfMsg( 'patrol-log-line', $diffLink, $link );
+                               } elseif ( $entry->getSubtype() === 'patrol-auto' ) {
+                                       // 'patrol-log-line'             => 'marked $1 of $2 patrolled $3',
+                                       // 'patrol-log-auto'             => '(automatic)',
+                                       // 'logentry-irc-patrol-patrol-auto'         => '$1 automatically marked revision $4 of page $3 patrolled',
+                                       // How is this done with old messages? Some abomination to man?
+                                       $text = wfMsg( 'patrol-log-line-auto', $diffLink, $link );
+                               } else {
+                                       // broken??
+                               }
+                               break;
+
+                       case 'newusers':
+                               switch( $entry->getSubtype() ) {
+                                       case 'newusers':
+                                       case 'create':
+                                               $text = wfMsg( 'newuserlog-create-entry' /* no params */ );
+                                               break;
+                                       case 'create2':
+                                               $text = wfMsg( 'newuserlog-create2-entry', $target );
+                                               break;
+                                       case 'autocreate':
+                                               $text = wfMsg( 'newuserlog-autocreate-entry' /* no params */ );
+                                               break;
+                               }
+                               break;
+
+                       // case 'suppress' --private log -- aaron  (sign your messages so we know who to blame in a few years :-D)
+                       // default:
+               }
+               if( is_null( $text ) ) {
+                       $text = $this->getPlainActionText();
                }
 
                $this->plaintext = false;
index 0feaa2f..28ff4e7 100644 (file)
@@ -4723,8 +4723,6 @@ This site is experiencing technical difficulties.',
 'revdelete-content'           => 'content',
 'revdelete-summary'           => 'edit summary',
 'revdelete-uname'             => 'username',
-'revdelete-restricted'        => 'applied restrictions to administrators',
-'revdelete-unrestricted'      => 'removed restrictions for administrators',
 'revdelete-hid'               => 'hid $1',
 'revdelete-unhid'             => 'unhid $1',
 'revdelete-log-message'       => '$1 for $2 {{PLURAL:$2|revision|revisions}}',
@@ -4735,6 +4733,15 @@ This site is experiencing technical difficulties.',
 'patrol-log-line'             => 'marked $1 of $2 patrolled $3',
 'patrol-log-auto'             => '(automatic)',
 'patrol-log-diff'             => 'revision $1',
+'1movedto2'                   => 'moved [[$1]] to [[$2]]',
+'1movedto2_redir'             => 'moved [[$1]] to [[$2]] over redirect',
+'move-redirect-suppressed'    => 'redirect suppressed',
+'newuserlog-byemail'          => 'password sent by e-mail',
+'newuserlog-create-entry'     => 'New user account',
+'newuserlog-create2-entry'    => 'created new account $1',
+'newuserlog-autocreate-entry' => 'Account created automatically',
+'suppressedarticle'           => 'suppressed "[[$1]]"',
+'deletedarticle'              => 'deleted "[[$1]]"',
 
 # Feedback
 'feedback-bugornote' => 'If you are ready to describe a technical problem in detail please [$1 report a bug].