https://www.mediawiki.org/wiki/Special:Code/MediaWiki/113370

Revision: 113370
Author:   emsmith
Date:     2012-03-08 16:43:48 +0000 (Thu, 08 Mar 2012)
Log Message:
-----------
bug 34090 - make different titles for masking appear if it's been hidden or 
oversighted.  Add links to the user pages for the red lines on the overlays, 
fix a bug where the item wasn't being added in the right spot, moved the "make 
a user link" to the utils class since it was being used in several places

Modified Paths:
--------------
    trunk/extensions/ArticleFeedbackv5/ArticleFeedbackv5.hooks.php
    trunk/extensions/ArticleFeedbackv5/ArticleFeedbackv5.i18n.php
    trunk/extensions/ArticleFeedbackv5/api/ApiArticleFeedbackv5Utils.php
    trunk/extensions/ArticleFeedbackv5/api/ApiFlagFeedbackArticleFeedbackv5.php
    trunk/extensions/ArticleFeedbackv5/api/ApiViewActivityArticleFeedbackv5.php
    trunk/extensions/ArticleFeedbackv5/api/ApiViewFeedbackArticleFeedbackv5.php
    
trunk/extensions/ArticleFeedbackv5/modules/jquery.articleFeedbackv5/jquery.articleFeedbackv5.special.js

Modified: trunk/extensions/ArticleFeedbackv5/ArticleFeedbackv5.hooks.php
===================================================================
--- trunk/extensions/ArticleFeedbackv5/ArticleFeedbackv5.hooks.php      
2012-03-08 16:35:46 UTC (rev 113369)
+++ trunk/extensions/ArticleFeedbackv5/ArticleFeedbackv5.hooks.php      
2012-03-08 16:43:48 UTC (rev 113370)
@@ -231,7 +231,8 @@
                                
'articlefeedbackv5-noteflyover-declineoversight-help',
                                
'articlefeedbackv5-noteflyover-declineoversight-help-link',
                                
-                               'articlefeedbackv5-mask-text',
+                               'articlefeedbackv5-mask-text-hidden',
+                               'articlefeedbackv5-mask-text-oversight',
                                'articlefeedbackv5-mask-postnumber'
                        ),
                        'dependencies' => array(

Modified: trunk/extensions/ArticleFeedbackv5/ArticleFeedbackv5.i18n.php
===================================================================
--- trunk/extensions/ArticleFeedbackv5/ArticleFeedbackv5.i18n.php       
2012-03-08 16:35:46 UTC (rev 113369)
+++ trunk/extensions/ArticleFeedbackv5/ArticleFeedbackv5.i18n.php       
2012-03-08 16:43:48 UTC (rev 113370)
@@ -142,9 +142,10 @@
        'articlefeedbackv5-timestamp-months' => '{{PLURAL:$1|$1 month|$1 
months}}',
        'articlefeedbackv5-timestamp-weeks' => '{{PLURAL:$1|$1 week|$1 weeks}}',
        'articlefeedbackv5-timestamp-seconds' => 'less than 1 minute',
-       'articlefeedbackv5-mask-text' => 'Feedback hidden by administrative 
action. Click to view contents.',
+       'articlefeedbackv5-mask-text-hidden' => 'This post was hidden by an 
authorized editor',
+       
'articlefeedbackv5-mask-text-overarticlefeedbackv5-mask-text-hiddensight' => 
'This post was oversighted by an authorized editor',
        'articlefeedbackv5-mask-postnumber' => 'Post #$1',
-               
+
        /* Special page flyover panels */
        /* Hide this post panel */
        'articlefeedbackv5-noteflyover-hide-caption' => 'Hide this post',

Modified: trunk/extensions/ArticleFeedbackv5/api/ApiArticleFeedbackv5Utils.php
===================================================================
--- trunk/extensions/ArticleFeedbackv5/api/ApiArticleFeedbackv5Utils.php        
2012-03-08 16:35:46 UTC (rev 113369)
+++ trunk/extensions/ArticleFeedbackv5/api/ApiArticleFeedbackv5Utils.php        
2012-03-08 16:43:48 UTC (rev 113370)
@@ -269,5 +269,34 @@
 
                $dbw->commit();
        }
+
+       /**
+        * Creates a user link for a log row
+        *
+        * @param int $user_id can be null or a user object
+        * @param string $user_ip (name works too)
+        * @return anchor tag link to user
+        */
+       public static function getUserLink($user_id, $user_ip = null) {
+               // if $user is not an object
+               if ( !($user_id instanceof User) ){
+                       $userId = (int) $user_id;
+                       if ( $userId !== 0 ) { // logged-in users
+                               $user = User::newFromId( $userId );
+                       } else { // IP users
+                               $userText = $user_ip;
+                               $user = User::newFromName( $userText, false );
+                       }
+               } else {
+                       // user is an object, all good, make link
+                       $user = $user_id;
+               }
+
+               $element = Linker::userLink(
+                               $user->getId(),
+                               $user->getName()
+                       );
+               return $element;
+       }
 }
 

Modified: 
trunk/extensions/ArticleFeedbackv5/api/ApiFlagFeedbackArticleFeedbackv5.php
===================================================================
--- trunk/extensions/ArticleFeedbackv5/api/ApiFlagFeedbackArticleFeedbackv5.php 
2012-03-08 16:35:46 UTC (rev 113369)
+++ trunk/extensions/ArticleFeedbackv5/api/ApiFlagFeedbackArticleFeedbackv5.php 
2012-03-08 16:43:48 UTC (rev 113370)
@@ -83,7 +83,7 @@
                                }
 
                                // This is data for the "hidden by, oversighted 
by" red line
-                               $results['oversight-user'] = $wgUser->getName();
+                               $results['oversight-user'] = 
ApiArticleFeedbackv5Utils::getUserLink($wgUser);
                                $results['oversight-timestamp'] = wfTimestamp( 
TS_RFC2822, $timestamp );
 
                                // autohide if not hidden
@@ -98,7 +98,7 @@
                                        // tell front-end autohiding was done
                                        $results['autohidden'] = 1;
                                        // This is data for the "hidden by, 
oversighted by" red line
-                                       $results['hide-user'] = 'Article 
Feedback V5';
+                                       $results['hide-user'] = 
ApiArticleFeedbackv5Utils::getUserLink(null, 'Article Feedback V5');
                                        $results['hide-timestamp'] = 
wfTimestamp( TS_RFC2822, $timestamp );
                                }
 
@@ -130,7 +130,7 @@
                                $filters = $this->changeFilterCounts( $record, 
$filters, 'hide' );
 
                                // This is data for the "hidden by, oversighted 
by" red line
-                               $results['hide-user'] = $wgUser->getName();
+                               $results['hide-user'] = 
ApiArticleFeedbackv5Utils::getUserLink($wgUser);
                                $results['hide-timestamp'] = wfTimestamp( 
TS_RFC2822, $timestamp );
 
                        } else {
@@ -202,7 +202,7 @@
                                        // tell front-end autohiding was done
                                        $results['autohidden'] = 1;
                                        // This is data for the "hidden by, 
oversighted by" red line
-                                       $results['hide-user'] = 'Article 
Feedback V5';
+                                       $results['hide-user'] = 
ApiArticleFeedbackv5Utils::getUserLink(null, 'Article Feedback V5');
                                        $results['hide-timestamp'] = 
wfTimestamp( TS_RFC2822, $timestamp );
                                }
                        }
@@ -250,7 +250,7 @@
                                        // tell front-end autohiding was done
                                        $results['autohidden'] = 1;
                                        // This is data for the "hidden by, 
oversighted by" red line
-                                       $results['hide-user'] = 'Article 
Feedback V5';
+                                       $results['hide-user'] = 
ApiArticleFeedbackv5Utils::getUserLink(null, 'Article Feedback V5');
                                        $results['hide-timestamp'] = 
wfTimestamp( TS_RFC2822, $timestamp );
                                }
 

Modified: 
trunk/extensions/ArticleFeedbackv5/api/ApiViewActivityArticleFeedbackv5.php
===================================================================
--- trunk/extensions/ArticleFeedbackv5/api/ApiViewActivityArticleFeedbackv5.php 
2012-03-08 16:35:46 UTC (rev 113369)
+++ trunk/extensions/ArticleFeedbackv5/api/ApiViewActivityArticleFeedbackv5.php 
2012-03-08 16:43:48 UTC (rev 113370)
@@ -85,7 +85,7 @@
                        $html .= Html::openElement( 'div', array() );
                        $html .= wfMessage( 
'articlefeedbackv5-activity-feedback-info',
                                                array($feedback->af_id))
-                                       
->rawParams($this->getUserLink($feedback->af_user_id, $feedback->af_user_ip))
+                                       
->rawParams(ApiArticleFeedbackv5Utils::getUserLink($feedback->af_user_id, 
$feedback->af_user_ip))
                                        ->text();
                        $html .= Html::closeElement( 'div' );
        
@@ -153,7 +153,7 @@
                        if ($item->log_comment == '') {
                                $html .= wfMessage( 
'articlefeedbackv5-activity-item' )
                                        ->rawParams(
-                                               
$this->getUserLink($item->log_user, $item->log_user_text),
+                                               
ApiArticleFeedbackv5Utils::getUserLink($item->log_user, $item->log_user_text),
                                                Html::element( 'span', array(
                                                        'class' => 
'articleFeedbackv5-activity-item-action'
                                                        ),
@@ -164,7 +164,7 @@
                        } else {
                                $html .= wfMessage( 
'articlefeedbackv5-activity-item-comment' )
                                        ->rawParams(
-                                               
$this->getUserLink($item->log_user, $item->log_user_text),
+                                               
ApiArticleFeedbackv5Utils::getUserLink($item->log_user, $item->log_user_text),
                                                Html::element( 'span', array(
                                                'class' => 
'articleFeedbackv5-activity-item-action'
                                                        ),
@@ -345,28 +345,6 @@
        }
 
        /**
-        * Creates a user link for a log row
-        *
-        * @param stdClass $item row from log table db
-        * @return string the SVN version info
-        */
-       protected function getUserLink($user_id, $user_ip) {
-               $userId = (int) $user_id;
-               if ( $userId !== 0 ) { // logged-in users
-                       $user = User::newFromId( $userId );
-               } else { // IP users
-                       $userText = $user_ip;
-                       $user = User::newFromName( $userText, false );
-               }
-
-               $element = Linker::userLink(
-                               $user->getId(),
-                               $user->getName()
-                       );
-               return $element;
-       }
-
-       /**
         * Creates a timestamp/id tuple for continue
         */
        protected function getContinue( $row ) {

Modified: 
trunk/extensions/ArticleFeedbackv5/api/ApiViewFeedbackArticleFeedbackv5.php
===================================================================
--- trunk/extensions/ArticleFeedbackv5/api/ApiViewFeedbackArticleFeedbackv5.php 
2012-03-08 16:35:46 UTC (rev 113369)
+++ trunk/extensions/ArticleFeedbackv5/api/ApiViewFeedbackArticleFeedbackv5.php 
2012-03-08 16:43:48 UTC (rev 113370)
@@ -497,38 +497,14 @@
                        'rel'   => $id
                );
                if ( $record[0]->af_is_hidden ) {
-                       // if user is 0, we use a fake user
-                       if ($record[0]->af_hide_user_id > 0) {
-                               $user = User::newFromId( 
$record[0]->af_hide_user_id );
-                               if ($user) {
-                                       $name = $user->getName();
-                               }
-                       }
-                       if(!isset($name)) {
-                               $name = 'Article Feedback V5';
-                       }
 
-                       $attributes['hide-user'] = $name;
-                       if ($record[0]->af_hide_timestamp > 0) {
-                               $attributes['hide-timestamp'] =  wfTimestamp( 
TS_RFC2822, $record[0]->af_hide_timestamp );
-                       }
+                       $attributes['hide-user'] = 
ApiArticleFeedbackv5Utils::getUserLink($record[0]->af_hide_user_id, 'Article 
Feedback V5');
+                       $attributes['hide-timestamp'] =  wfTimestamp( 
TS_RFC2822, $record[0]->af_hide_timestamp );
                }
                if ( $record[0]->af_is_deleted ) {
-                       // if user is 0, we use a fake user
-                       if ($record[0]->af_oversight_user_id > 0) {
-                               $user = User::newFromId( 
$record[0]->af_oversight_user_id );
-                               if ($user) {
-                                       $name = $user->getName();
-                               }
-                       }
-                       if(!isset($name)) {
-                               $name = 'Article Feedback V5';
-                       }
 
-                       $attributes['oversight-user'] = $name;
-                       if ($record[0]->af_oversight_timestamp > 0) {
-                               $attributes['oversight-timestamp'] =  
wfTimestamp( TS_RFC2822, $record[0]->af_oversight_timestamp );
-                       }
+                       $attributes['oversight-user'] = 
ApiArticleFeedbackv5Utils::getUserLink($record[0]->af_oversight_user_id, 
'Article Feedback V5');
+                       $attributes['oversight-timestamp'] =  wfTimestamp( 
TS_RFC2822, $record[0]->af_oversight_timestamp );
                }
 
                return Html::openElement( 'div', $attributes )

Modified: 
trunk/extensions/ArticleFeedbackv5/modules/jquery.articleFeedbackv5/jquery.articleFeedbackv5.special.js
===================================================================
--- 
trunk/extensions/ArticleFeedbackv5/modules/jquery.articleFeedbackv5/jquery.articleFeedbackv5.special.js
     2012-03-08 16:35:46 UTC (rev 113369)
+++ 
trunk/extensions/ArticleFeedbackv5/modules/jquery.articleFeedbackv5/jquery.articleFeedbackv5.special.js
     2012-03-08 16:43:48 UTC (rev 113370)
@@ -477,9 +477,10 @@
                        .data( 'hidden', true );
                $row.find( '.articleFeedbackv5-comment-wrap' ).addClass( 
'articleFeedbackv5-h3-push');
                $( '<span 
class="articleFeedbackv5-feedback-hidden-marker"></span>' )
-                       .text( mw.msg( 'articlefeedbackv5-hidden', $hide_user, 
$hide_timestamp) )
-                       .insertBefore( $row.find( 
'.articleFeedbackv5-comment-wrap' ) );
-               $.articleFeedbackv5special.maskPost( $row );
+                       // this is on purpose html not text- $hide_user is a  
link
+                       .html( mw.msg( 'articlefeedbackv5-hidden', $hide_user, 
$hide_timestamp) )
+                       .insertBefore( $row.find( 
'.articleFeedbackv5-comment-wrap-h3' ) );
+               $.articleFeedbackv5special.maskPost( $row, 'hidden');
        };
        // }}}
        // {{{ unmarkHidden
@@ -496,7 +497,7 @@
        };
        // }}}
        // {{{ maskPost
-       $.articleFeedbackv5special.maskPost = function( $row ) {
+       $.articleFeedbackv5special.maskPost = function( $row, $type ) {
                var $screen = $( $.articleFeedbackv5special.maskHtmlTemplate )
                        .addClass( 'articleFeedbackv5-post-screen' )
                        .height( $row.innerHeight() )
@@ -506,7 +507,7 @@
                $screen.find( '.articleFeedbackv5-mask-text-wrapper')
                        .css( 'top', $screen.innerHeight() / 2 - 12 );
                $screen.find( '.articleFeedbackv5-mask-text' )
-                       .text( mw.msg( 'articlefeedbackv5-mask-text' ) );
+                       .text( mw.msg( 'articlefeedbackv5-mask-text-' + $type ) 
);
                $screen.find( '.articleFeedbackv5-mask-postid' )
                        .text( mw.msg( 'articlefeedbackv5-mask-postnumber', 
$row.attr( 'rel' ) ) );
                $row.prepend( $screen );
@@ -525,10 +526,11 @@
                $row.addClass( 'articleFeedbackv5-feedback-deleted' )
                        .data( 'deleted', true );
                var $marker = $( '<span 
class="articleFeedbackv5-feedback-deleted-marker"></span>' )
-                       .text( mw.msg( 'articlefeedbackv5-deleted', 
$oversight_user, $oversight_timestamp ) )
+                       // this is on purpose html not text- $oversight_user is 
a  link
+                       .html( mw.msg( 'articlefeedbackv5-deleted', 
$oversight_user, $oversight_timestamp ) )
                        .insertBefore( $row.find( 
'.articleFeedbackv5-comment-wrap h3' ) );
                $row.find( '.articleFeedbackv5-comment-wrap' ).addClass( 
'articleFeedbackv5-h3-push');
-               $.articleFeedbackv5special.maskPost( $row );
+               $.articleFeedbackv5special.maskPost( $row, 'oversight' );
        };
 
        // }}}


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to