UltrasonicNXT has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/112331

Change subject: Various JS fixes
......................................................................

Various JS fixes

Attempt to get some IE compatibilty

Change-Id: If74a3c24447865e45f9feadb8dbbcb1249079ce3
---
M MediaWikiChat.js
1 file changed, 79 insertions(+), 90 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/MediaWikiChat 
refs/changes/31/112331/1

diff --git a/MediaWikiChat.js b/MediaWikiChat.js
index 3da009f..f35199c 100644
--- a/MediaWikiChat.js
+++ b/MediaWikiChat.js
@@ -1,4 +1,4 @@
-/* global $, mw, sajax_do_call */
+/* global $, mw */
 var MediaWikiChat = {
        users: [],
        amIMod: false,
@@ -42,7 +42,7 @@
        },
 
        realTimestamp: function( timestamp ) {
-               var d = new Date(), month = '';
+               var d = new Date();
 
                d.setTime( timestamp * 10 );
 
@@ -63,7 +63,7 @@
                var dayThen = dateThen.getDate();
 
                var dateNow = new Date();
-               var tsNow = parseInt( dateNow.getTime() / 10 );
+               var tsNow = parseInt( dateNow.getTime() / 10, 10 );
                var dayNow = dateNow.getDate();
 
                var diff = ( tsNow - timestamp ) / 100;
@@ -94,13 +94,14 @@
 
        redoTimestamps: function() {
                $.each( $( '.mwchat-item-timestamp.pretty' ), function( index, 
item ) {
-                       var timestamp = $( this ).attr( 'data-timestamp' );
-                       var oldPretty = $( this ).html();
+                       item = $( item );
+                       var timestamp = item.attr( 'data-timestamp' );
+                       var oldPretty = item.html();
                        var newPretty = MediaWikiChat.prettyTimestamp( 
timestamp );
                        if ( oldPretty != newPretty ) {
-                               $( this ).fadeOut( 250, function() {
-                                       $( this ).html( newPretty );
-                                       $( this ).fadeIn( 250 );
+                               item.fadeOut( 250, function() {
+                                       item.html( newPretty );
+                                       item.fadeIn( 250 );
                                });
                        }
                });
@@ -116,66 +117,64 @@
                return html;
        },
 
-       getNew: function( called ) {
-               $.ajax({
+       getNew: function() {
+               $.ajax( {
                        url: mw.config.get( 'wgScriptPath' ) + '/api.php',
-                       data: { 'action': 'chatgetnew', 'format': 'json' },
-               })
-               .done( function( response ) {
+                       data: { 'action': 'chatgetnew', 'format': 'json' }
+               } ).done( function( response ) {
                        var data = response.chatgetnew;
 
                        var onlineUsers = [];
 
                        for ( var userId in data.users ) {
-                               var obj = data.users[userId];
-                               MediaWikiChat.userData[userId] = { 'name': 
obj.name, 'avatar': obj.avatar, 'gender': obj.gender };
-                               if ( obj.mod ) {
+                               var user = data.users[userId];
+                               MediaWikiChat.userData[userId] = { 'name': 
user.name, 'avatar': user.avatar, 'gender': user.gender };
+                               if ( user.mod ) {
                                        MediaWikiChat.userData[userId].mod = 
true;
                                }
-                               if ( obj.online ) {
+                               if ( user.online ) {
                                        onlineUsers[onlineUsers.length] = 
userId;
                                }
                        }
 
-                       MediaWikiChat.amIMod = data.users[wgUserId].mod;
+                       MediaWikiChat.amIMod = data.users[mw.config.get( 
'wgUserId' )].mod;
 
                        MediaWikiChat.doUsers( onlineUsers );
 
-                       for ( var timestamp in data.messages ) {
-                               var obj = data.messages[timestamp];
+                       for ( var messageTimestamp in data.messages ) {
+                               var message = data.messages[messageTimestamp];
                                MediaWikiChat.addMessage(
-                                       obj.from,
-                                       obj['*'],
-                                       timestamp
+                                       message.from,
+                                       message['*'],
+                                       messageTimestamp
                                );
                        }
 
-                       for ( var timestamp in data.pms ) {
-                               var obj = data.pms[timestamp];
-                               var convWith = obj.conv;
+                       for ( var pmTimestamp in data.pms ) {
+                               var pm = data.pms[pmTimestamp];
 
                                MediaWikiChat.addPrivateMessage(
-                                       obj.from,
-                                       convWith,
-                                       obj['*'],
-                                       timestamp
+                                       pm.from,
+                                       pm.conv,
+                                       pm['*'],
+                                       pmTimestamp
                                );
-                               var div = $( '#' + MediaWikiChat.safe( convWith 
) + ' .mwchat-useritem-content' );
-                               var objDiv = $( '#' + MediaWikiChat.safe( 
convWith ) + ' .mwchat-useritem-content' );
+                               var div = $( '#' + MediaWikiChat.safe( pm.conv 
) + ' .mwchat-useritem-content' );
+                               var objDiv = $( '#' + MediaWikiChat.safe( 
pm.conv ) + ' .mwchat-useritem-content' );
                                objDiv.animate( { 'scrollTop': 
div[0].scrollHeight }, 1000 );
                        }
 
-                       for ( var timestamp in data.kicks ) {
-                               var obj = data.kicks[timestamp];
-                               MediaWikiChat.showKickMessage( 
MediaWikiChat.userData[obj.from], MediaWikiChat.userData[obj.to], timestamp );
+                       for ( var kickTimestamp in data.kicks ) {
+                               var kick = data.kicks[kickTimestamp];
+                               MediaWikiChat.showKickMessage( 
MediaWikiChat.userData[kick.from], MediaWikiChat.userData[kick.to], 
kickTimestamp );
                        }
-                       for ( var timestamp in data.blocks ) {
-                               var obj = data.blocks[timestamp];
-                               MediaWikiChat.showBlockMessage( 
MediaWikiChat.userData[obj.from], MediaWikiChat.userData[obj.to], timestamp );
+                       for ( var blockTimestamp in data.blocks ) {
+                               var block = data.blocks[blockTimestamp];
+                               MediaWikiChat.showBlockMessage( 
MediaWikiChat.userData[block.from], MediaWikiChat.userData[block.to], 
blockTimestamp );
                        }
-                       for ( var timestamp in data.unblocks ) {
-                               var obj = data.unblocks[timestamp];
-                               MediaWikiChat.showUnblockMessage( 
MediaWikiChat.userData[obj.from], MediaWikiChat.userData[obj.to], timestamp );
+                       for ( var unblockTimestamp in data.unblocks ) {
+                               var unblock = data.unblocks[unblockTimestamp];
+                               MediaWikiChat.showUnblockMessage( 
MediaWikiChat.userData[unblock.from], MediaWikiChat.userData[unblock.to], 
unblockTimestamp );
                        }
 
                        if ( data.kick ) {
@@ -190,7 +189,7 @@
                        }
                        MediaWikiChat.addMe();
 
-               });
+               } );
        },
 
        scrollToBottom: function() {
@@ -200,9 +199,9 @@
 
        showKickMessage: function( from, to, timestamp ) {
                var message;
-               if ( to.name == wgUserName ) {
+               if ( to.name == mw.config.get( mw.config.get( 'wgUserName' ) ) 
) {
                        message = mw.message( 'chat-youve-been-kicked', 
from.name, mw.user ).text();
-               } else if ( from.name == wgUserName ) {
+               } else if ( from.name == mw.config.get( 'wgUserName' ) ) {
                        message = mw.message( 'chat-you-kicked', to.name, 
mw.user ).text();
                } else {
                        message = mw.message( 'chat-kicked', from.name, 
to.name, from.gender ).text();
@@ -212,11 +211,11 @@
 
        showBlockMessage: function( from, to, timestamp ) {
                var message;
-               if ( to.name == wgUserName ) {
+               if ( to.name == mw.config.get( 'wgUserName' ) ) {
                        message = mw.message( 'chat-youve-been-blocked', 
from.name, mw.user ).text();
                        $( '#mwchat-type input' ).attr( 'disabled', 'disabled' 
);
                        $( '#mwchat-users div input' ).attr( 'disabled', 
'disabled' );
-               } else if ( from.name == wgUserName ) {
+               } else if ( from.name == mw.config.get( 'wgUserName' ) ) {
                        message = mw.message( 'chat-you-blocked', to.name, 
mw.user ).text();
                } else {
                        message = mw.message( 'chat-blocked', from, to.name, 
from.gender ).text();
@@ -225,10 +224,11 @@
        },
 
        showUnblockMessage: function( from, to, timestamp ) {
-               if ( from.name == wgUserName ) {
-                       var message = mw.message( 'chat-you-unblocked', 
to.name, mw.user );
+               var message = '';
+               if ( from.name == mw.config.get( 'wgUserName' ) ) {
+                       message = mw.message( 'chat-you-unblocked', to.name, 
mw.user );
                } else {
-                       var message = mw.message( 'chat-unblocked', from.name, 
to.name, from.gender );
+                       message = mw.message( 'chat-unblocked', from.name, 
to.name, from.gender );
                }
                MediaWikiChat.addSystemMessage( message, timestamp );
        },
@@ -275,14 +275,14 @@
                });
 
                if ( post ) {
-                       elem = $( html ).appendTo( $( '#mwchat-table' ) );
+                       var elem = $( html ).appendTo( $( '#mwchat-table' ) );
 
                        elem.hover( function() {
-                               $( this ).find( '.pretty' ).css( 'visibility', 
'hidden' );
-                               $( this ).find( '.real' ).show();
+                               elem.find( '.pretty' ).css( 'visibility', 
'hidden' );
+                               elem.find( '.real' ).show();
                        }, function() {
-                               $( this ).find( '.real' ).hide();
-                               $( this ).find( '.pretty' ).css( 'visibility', 
'visible' );
+                               elem.find( '.real' ).hide();
+                               elem.find( '.pretty' ).css( 'visibility', 
'visible' );
                        });
 
                        elem.find( 'a' ).attr( 'target', '_blank' );
@@ -291,7 +291,6 @@
 
        addPrivateMessage: function( userId, convwith, message, timestamp ) {
                var user = MediaWikiChat.userData[userId];
-               var userE = MediaWikiChat.safe( user.name );
                var convwithE = MediaWikiChat.safe( convwith );
 
                var html = '<div class="mwchat-message">';
@@ -306,7 +305,7 @@
 
                $( '#' + convwithE + ' .mwchat-useritem-content' ).append( html 
);
 
-               if ( user.name != wgUserName ) {
+               if ( user.name != mw.config.get( 'wgUserName' ) ) {
                        $( '#' + convwithE ).attr( 'data-read', 'true' );
                }
 
@@ -329,9 +328,9 @@
                });
 
                if ( allusers.length ){
-                       $("#mwchat-no-other-users").hide();
+                       $( "#mwchat-no-other-users" ).hide();
                } else {
-                       $("#mwchat-no-other-users").show();
+                       $( "#mwchat-no-other-users" ).show();
                }
 
                MediaWikiChat.users = newusers;
@@ -341,8 +340,6 @@
        addUser: function( userId, firstTime ) {
                var user = MediaWikiChat.userData[userId];
                var userE = MediaWikiChat.safe( user.name );
-
-               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" title="' + 
mw.message( 'chat-private-message' ).text() + '">';
@@ -379,12 +376,6 @@
                $( '#mwchat-users' ).append( html );
                $( '#mwchat-users #' + userE ).fadeIn();
 
-               $( '.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();
@@ -402,14 +393,13 @@
                $( '.mwchat-useritem-kicklink' ).click( function() {
                        var parent = $( this ).parent().parent();
 
-                       $.ajax({
+                       $.ajax( {
                                type: 'POST',
                                url: mw.config.get( 'wgScriptPath' ) + 
'/api.php',
-                               data: { 'action': 'chatkick', 'id': 
parent.attr( 'data-id' ), 'format': 'json' },
-                       })
-                       .done( function() {
-                               MediaWikiChat.getNew( 'kick' );
-                       });
+                               data: { 'action': 'chatkick', 'id': 
parent.attr( 'data-id' ), 'format': 'json' }
+                       } ).done( function() {
+                               MediaWikiChat.getNew();
+                       } );
                } );
        },
 
@@ -423,7 +413,7 @@
                MediaWikiChat.scrollToBottom();
        },
 
-       clickUser: function( e ) {
+       clickUser: function() {
                var parent = $( this ).parent();
 
                parent.children( '.mwchat-useritem-window' ).slideToggle();
@@ -443,16 +433,15 @@
                if ( e.which == 13 ) {
                        var toid = $( this ).parents( '.mwchat-useritem' 
).attr( 'data-id' );
 
-                       $.ajax({
+                       $.ajax( {
                                type: 'POST',
                                url: mw.config.get( 'wgScriptPath' ) + 
'/api.php',
-                               data: { 'action': 'chatsendpm', 'message': $( 
this )[0].value, 'id': toid, 'format': 'json' },
-                       })
-                       .done( function( response ) {
-                               MediaWikiChat.getNew( 'user keypress' );
+                               data: { 'action': 'chatsendpm', 'message': $( 
this )[0].value, 'id': toid, 'format': 'json' }
+                       } ).done( function() {
+                               MediaWikiChat.getNew();
                                window.clearInterval( MediaWikiChat.newInterval 
);
                                MediaWikiChat.newInterval = setInterval( 
MediaWikiChat.getNew, MediaWikiChat.interval );
-                       });
+                       } );
 
                        $( this ).val( '' );
                }
@@ -461,7 +450,7 @@
        addMe: function() {
                if ( !MediaWikiChat.amI ) {
 
-                       var me = MediaWikiChat.userData[wgUserId];
+                       var me = MediaWikiChat.userData[mw.config.get( 
'wgUserId' )];
 
                        $( '#mwchat-me span' ).html( me.name );
                        $( '#mwchat-me img' ).attr( 'src', me.avatar );
@@ -482,7 +471,7 @@
                        //ping.play();
                        document.title = "* " + MediaWikiChat.title;
                }
-       },
+       }
 };
 
 $( document ).ready( function() {
@@ -490,21 +479,21 @@
                if ( e.which == 13 && e.shiftKey ) {
                        return false;
                } else if ( e.which == 13 ) {
-                       $.ajax({
+                       $.ajax( {
                                type: 'POST',
                                url: mw.config.get( 'wgScriptPath' ) + 
'/api.php',
-                               data: { 'action': 'chatsend', 'message': $( 
'#mwchat-type input' )[0].value, 'format': 'json' },
-                       }).done( function( response ) {
-                               MediaWikiChat.getNew( 'main input keypress' );
+                               data: { 'action': 'chatsend', 'message': $( 
'#mwchat-type input' )[0].value, 'format': 'json' }
+                       } ).done( function() {
+                               MediaWikiChat.getNew();
                                window.clearInterval( MediaWikiChat.newInterval 
);
                                MediaWikiChat.newInterval = setInterval( 
MediaWikiChat.getNew, MediaWikiChat.interval );
-                       });
+                       } );
 
                        $( '#mwchat-type input' ).val( '' );
                }
-       });
+       } );
 
-       MediaWikiChat.getNew( 'starter' );
+       MediaWikiChat.getNew();
 
        setTimeout( MediaWikiChat.getNew, 2500 );
 
@@ -514,9 +503,9 @@
 
 $( window ).blur( function() {
        MediaWikiChat.focussed = false;
-});
+} );
 
 $( window ).focus( function() {
        MediaWikiChat.focussed = true;
        document.title = MediaWikiChat.title; // restore title
-});
\ No newline at end of file
+} );
\ No newline at end of file

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: If74a3c24447865e45f9feadb8dbbcb1249079ce3
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/MediaWikiChat
Gerrit-Branch: master
Gerrit-Owner: UltrasonicNXT <adamr_car...@btinternet.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to