UltrasonicNXT has submitted this change and it was merged.

Change subject: Redo PM header interface
......................................................................


Redo PM header interface

Allow PMS to be collapsed - Brickimedia/brickimedia#161
Remove annoying PM text and replace with tooltip
And fix a message problem

Change-Id: I1e902af6e8e11f78b2377f9014cbe9c289397063
---
M MediaWikiChat.css
M MediaWikiChat.i18n.php
M MediaWikiChat.js
M MediaWikiChat.php
4 files changed, 54 insertions(+), 59 deletions(-)

Approvals:
  UltrasonicNXT: Verified; Looks good to me, approved



diff --git a/MediaWikiChat.css b/MediaWikiChat.css
index b928d24..34b5b1f 100644
--- a/MediaWikiChat.css
+++ b/MediaWikiChat.css
@@ -79,7 +79,7 @@
 .mwchat-useritem[data-read="true"] {
        background-color: #FDD;
 }
-.mwchat-useritem.noshow {
+.mwchat-useritem-header {
        cursor: pointer;
 }
 .mwchat-item-avatar {
@@ -93,18 +93,10 @@
 .mwchat-item-message * {
        display: inline;
 }
-.mwchat-useritem-blocklink {
+.mwchat-useritem-header-right {
        float: right;
-       padding-left: 0.5em;
-       color: #000 !important;
 }
-.mwchat-useritem-kicklink {
-       float: right;
-       padding-right: 0.5em;
-       color: #000 !important;
-}
-.mwchat-useritem-pmlink {
-       padding-left: 0.5em;
+.mwchat-useritem-blocklink, .mwchat-useritem-kicklink {
        color: #000 !important;
 }
 .mwchat-message.system .mwchat-item-message {
diff --git a/MediaWikiChat.i18n.php b/MediaWikiChat.i18n.php
index e88b36c..d7fdd55 100644
--- a/MediaWikiChat.i18n.php
+++ b/MediaWikiChat.i18n.php
@@ -27,25 +27,24 @@
 
        'chat-yesterday' => 'yesterday',
 
+       'chat-kick' => 'kick',
+       'chat-block' => 'block',
+
        'chat-youve-been-kicked' => 'You have been {{GENDER:$2|kicked}} by $1. 
Refresh the page to chat.',
        'chat-you-kicked' => 'You {{GENDER:$2|kicked}} $1.',
        'chat-kicked' => '$1 {{GENDER:$3|kicked}} $2.',
-       'chat-kick' => 'kick',
-
        'chat-youve-been-blocked' => 'You have been {{GENDER:$2|blocked}} by 
$1.',
        'chat-you-blocked' => 'You {{GENDER:$2|blocked}} $1.',
        'chat-blocked' => '$1 {{GENDER:$3|blocked}} $2.',
-       'chat-block' => 'block',
-
        'chat-you-unblocked' => 'You {{GENDER:$2|unblocked}} $1.',
        'chat-unblocked' => '$1 {{GENDER:$3|unblocked}} $2.',
-
-       'chat-private-message' => '(private message)',
-       'chat-user-is-moderator' => 'This user {{GENDER:$1|is}} a moderator.',
-       'chat-you-are-moderator' => 'You {{GENDER:$1|are}} a moderator.',
        'chat-joined' => '$1 has {{GENDER:$2|joined}} the chat.',
        'chat-left' => '$1 has {{GENDER:$2|left}} chat.',
 
+       'chat-private-message' => 'click to private message',
+       'chat-user-is-moderator' => 'This user {{GENDER:$1|is}} a moderator',
+       'chat-you-are-moderator' => 'You {{GENDER:$1|are}} a moderator',
+
        'chat-topic' => 'Welcome to {{SITENAME}} chat. ([[Special:Log/chat|chat 
log]])',
 
        'chat-sidebar-online' => 'Online users in chat:',
diff --git a/MediaWikiChat.js b/MediaWikiChat.js
index 83894dd..506c4aa 100644
--- a/MediaWikiChat.js
+++ b/MediaWikiChat.js
@@ -347,28 +347,32 @@
                var add = true;
 
                var html = '<div class="mwchat-useritem noshow" data-unread="" 
data-name="' + user.name + '" data-id="' + userId + '" id="' + userE + '">';
+               html += '<div class="mwchat-useritem-header">';
+               html += '<span class="mwchat-useritem-header-left" title="' + 
mw.message( 'chat-private-message' ).text() + '">';
+
                if ( mw.config.get( 'wgChatSocialAvatars' ) ) {
                        html += '<img src="' + user.avatar + '" />';
                }
                html += '<span class="mwchat-useritem-user">';
                html += user.name;
                html += '</span>';
+               if ( user.mod ) {
+                       html += '<img src="' + mw.message( 
'chat-mod-image').escaped() + '" height="16px" alt="" title="';
+                       html += mw.message( 'chat-user-is-moderator' ).text() + 
'" />';
+               }
+               html += '</span><span class="mwchat-useritem-header-right">';
+
                if ( MediaWikiChat.amIMod && ( !user.mod ) ) {
                        html += '<a class="mwchat-useritem-blocklink" href="' + 
mw.config.get( 'wgArticlePath' ).replace( '$1', 'Special:UserRights/' + 
user.name );
                        html += '" target="_blank">' + mw.message( 'chat-block' 
).text() + '</a>';
-               }
-               if ( user.mod ) {
-                       html += '<img src="' + mw.message( 
'chat-mod-image').escaped() + '" height="16px" alt="" title="';
-                       html += mw.message( 'user-is-moderator' ).text() + '" 
/>';
+
+                       if ( mw.config.get( 'wgChatKicks' ) ) {
+                               html += '&ensp;<a 
class="mwchat-useritem-kicklink" href="javascript:;">';
+                               html += mw.message( 'chat-kick' ).text() + 
'</a>';
+                       }
                }
 
-               html += ' <span class="mwchat-useritem-pmlink" 
style="display:none">';
-               html += mw.message( 'chat-private-message' ).text() + '</span>';
-
-               if ( ( !user.mod ) && mw.config.get( 'wgChatKicks' ) && 
MediaWikiChat.amIMod ) {
-                       html += '<a class="mwchat-useritem-kicklink" 
href="javascript:;">';
-                       html += mw.message( 'chat-kick' ).text() + '</a>';
-               }
+               html += '</span></div>';
                html += '<div class="mwchat-useritem-window" 
style="display:none;">';
                html += '<div class="mwchat-useritem-content"></div>';
                html += '<input type="text" placeholder="' + mw.message( 
'chat-type-your-private-message' ).text() + '" />';
@@ -377,16 +381,34 @@
 
                $( '#mwchat-users' ).append( html );
                $( '#mwchat-users #' + userE ).fadeIn();
-               $( '#mwchat-users #' + userE ).click( MediaWikiChat.clickUser );
 
-               $( '#mwchat-users #' + userE + ' input' ).keypress( 
MediaWikiChat.userKeypress );
-
-               MediaWikiChat.setupUserLinks();
+               $( '.mwchat-useritem' ).hover( function() {
+                       $( this ).find( '.mwchat-useritem-pmlink' ).fadeIn( 100 
);
+               }, function() {
+                       $( this ).find( '.mwchat-useritem-pmlink' ).fadeOut( 
100 );
+               } );
 
                if ( !firstTime ) {
                        MediaWikiChat.addSystemMessage( mw.message( 
'chat-joined', user.name, user.gender ).text(), MediaWikiChat.now() );
                        MediaWikiChat.scrollToBottom();
                }
+
+               // Setup user actions
+               $( '#mwchat-users #' + userE + ' .mwchat-useritem-header' 
).click( MediaWikiChat.clickUser );
+
+               $( '#mwchat-users #' + userE + ' input' ).keypress( 
MediaWikiChat.userKeypress );
+
+               $( '.mwchat-useritem-kicklink' ).click( function() {
+                       var parent = $( this ).parent();
+
+                       $.ajax({
+                               url: mw.config.get( 'wgScriptPath' ) + 
'/api.php',
+                               data: { 'action': 'chatkick', 'id': 
parent.attr( 'data-id' ), 'format': 'json' },
+                       })
+                       .done( function() {
+                               MediaWikiChat.getNew( 'kick' );
+                       });
+               } );
        },
 
        removeUser: function( userId ) {
@@ -400,16 +422,18 @@
        },
 
        clickUser: function( e ) {
-               $( this ).attr( 'data-read', '' );
+               var parent = $( this ).parent();
 
-               if ( $( this ).hasClass( 'noshow' ) ) {
-                       $( this ).children( '.mwchat-useritem-window' 
).slideDown();
+               parent.attr( 'data-read', '' );
+               parent.children( '.mwchat-useritem-window' ).slideToggle();
 
+               if ( parent.hasClass( 'noshow' ) ) {
                        $( '.mwchat-useritem.show .mwchat-useritem-window' 
).slideUp();
                        $( '.mwchat-useritem.show' ).toggleClass( 'show noshow' 
);
 
-                       $( this ).toggleClass( 'show noshow' );
+                       parent.toggleClass( 'show noshow' );
                }
+               $( '.mwchat-useritem.show' ).toggleClass( 'show noshow' );
        },
 
        userKeypress: function( e ) {
@@ -430,26 +454,6 @@
 
                        $( this ).val( '' );
                }
-       },
-
-       setupUserLinks: function() {
-               $( '.mwchat-useritem-kicklink' ).click( function() {
-                       var parent = $( this ).parent();
-
-                       $.ajax({
-                               url: mw.config.get( 'wgScriptPath' ) + 
'/api.php',
-                               data: { 'action': 'chatkick', 'id': 
parent.attr( 'data-id' ), 'format': 'json' },
-                       })
-                       .done( function() {
-                               MediaWikiChat.getNew( 'kick' );
-                       });
-               } );
-
-               $( '.mwchat-useritem' ).hover( function() {
-                       $( this ).find( '.mwchat-useritem-pmlink' ).fadeIn( 100 
);
-               }, function() {
-                       $( this ).find( '.mwchat-useritem-pmlink' ).fadeOut( 
100 );
-               } );
        },
 
        addMe: function() {
diff --git a/MediaWikiChat.php b/MediaWikiChat.php
index a1e37ae..503812e 100644
--- a/MediaWikiChat.php
+++ b/MediaWikiChat.php
@@ -17,7 +17,7 @@
 $wgExtensionCredits['specialpage'][] = array(
        'path' => __FILE__,
        'name' => 'MediaWikiChat',
-       'version' => '2.3',
+       'version' => '2.4',
        'author' => 'Adam Carter/UltrasonicNXT',
        'url' => 'https://www.mediawiki.org/wiki/Extension:MediaWikiChat',
        'descriptionmsg' => 'chat-desc',

-- 
To view, visit https://gerrit.wikimedia.org/r/110698
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I1e902af6e8e11f78b2377f9014cbe9c289397063
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/MediaWikiChat
Gerrit-Branch: master
Gerrit-Owner: UltrasonicNXT <[email protected]>
Gerrit-Reviewer: UltrasonicNXT <[email protected]>

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

Reply via email to