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 += ' <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