User:Mario&LuigiBowser'sInsideStory/global.js

// chat count script (function {   if (mw.config.get('wgCanonicalSpecialPageName') !== "Chat" || window.chatCountLoaded) return;    window.chatCountLoaded = true;    $('.Rail .public').before('Chat count ');    $('.checkChatCount').click(function { var count = typeof includeMe !== "undefined" && includeMe === false ? mainRoom.model.users.length - 1 : mainRoom.model.users.length; $.showCustomModal('Chat count', 'There is currently ' + count + ' users online!', {           id: 'chatCount',            buttons: [                {                    id: 'logCount',                    defaultButton: true,                    message: 'Log',                    handler: function{                        localStorage.setItem('chatcount', count);                    }                }, {                    id: 'getCount',                    defaultButton: true,                    message: 'Previous count',                    handler: function{                        var storageChatCount = localStorage.getItem('chatcount') ? localStorage.getItem('chatcount') + ' was previously reorded.' : 'There is no recorded chat count.';                        $.showCustomModal('Latest logged count', storageChatCount, { id: 'recordedCount', buttons: [ {                                   id: 'reset', defaultButton: true, message: 'Clear', handler: function{ $.showCustomModal('Confirm', 'Are you sure you want to reset this data?', {                                           id: 'confirmForReset',                                            buttons: [                                                {                                                    id: 'yes',                                                    defaultButton: true,                                                    message: 'Confirm',                                                    handler: function{                                                        localStorage.removeItem('chatcount');                                                        $('#confirmForReset').closeModal;                                                    }                                                }, {                                                    id: 'no', defaultButton: false, message: 'Cancel', handler: function{ $('#confirmForReset').closeModal; }                                               }                                            ]                                        });                                    }                                }, {                                    id: 'close',                                    message: 'Close',                                    defaultButton: false,                                    handler: function{                                        $('#recordedCount').closeModal;                                    }                                }                            ]                        }); }               }, {                    id: 'close', defaultButton: false, message: 'Close', handler: function{ $('#chatCount').closeModal; }               }            ]        });    }); }); // chat block defaults var chatBlockReason = "Sockpuppetry"; var chatBlockExpiry = "infinite"; // AjaxRC window.ajaxSpecialPages = ["Recentchanges", "WikiActivity", "Contributions", "Log"]; window.ajaxIndicator = 'http://images2.wikia.nocookie.net/__cb20100609110347/software/images/a/a9/Indicator.gif'; window.ajaxRefresh = 60000; window.AjaxRCRefreshText = 'Auto-refresh'; // create userpage $(function { $('.toolbar .tools').append('Create userpage'); $('a.createUserPage').click(function {       // Prevent accidental clicking from creating userpage        $.showCustomModal('Create userpage', 'Do you wish to do that?', { id: 'confirmUserpageModal', width: 300, height: 150, buttons: [ {                   id: 'yes', defaultButton: true, message: 'Confirm', handler: function { $.ajax({                           type: 'POST',                            url: mw.util.wikiScript('api'),                            dataType: 'json',                            data: {                                action: 'edit',                                title: 'User:Mario&LuigiBowser\'sInsideStory',                                text: '',                                summary: 'Creating userpage (script)',                                minor: true,                                format: 'json',                                token: mw.user.tokens.get('editToken')                            }                        }).done(function (data){                            if (data.edit.result === 'Success') {                                new BannerNotification("Userpage has been successfully created!","confirm").show;                            } else { new BannerNotification("An error occurred while creating userpage","error").show; }                       }).fail(function (data) { new BannerNotification("An error occurred while creating userpage","error").show; });                       $('#confirmUserpageModal').closeModal;                    }                },                {                    id: 'no',                    defaultButton: false,                    message: 'Cancel',                    handler: function {                        $('#confirmUserpageModal').closeModal;                    }                }            ]        }); }); });

// Chat scripts

if (mw.config.get('wgCanonicalSpecialPageName') === "Chat") { $(document).on('click', 'li.User', function{       $('.UserStatsMenu').each(function{ if ($(this).css('display') === "block" && !$(this).find('.mention').length) { $(this).find('.regular-actions').append(                   $('', { class: 'mention', text: "Mention", click: function{ document.querySelector('textarea[name="message"]').value += ' ' + $(this).parents('.UserStatsMenu').find('li.username').text; $(this).parents('.UserStatsMenu').hide; },                       css: { 'cursor' : 'pointer' }                   })                );            }        });    });    importArticles({        type: 'script',        articles: [            'u:dev:MediaWiki:ChatBlockButton/code.js',        ]    }); }

// Import importArticles({   type: "script",    articles: [      'u:gumballfanonrandomness:MediaWiki:Chat.js',      'u:dev:MediaWiki:FindAndReplace/code.js',      'u:dev:MediaWiki:MessageBlocker/code.js',      'u:dev:ChatOptions/code.js',      'u:dev:ChatDelay/code.js',      'u:dev:NewMessageCount.js',      'u:dev:MediaWiki:PrivateMessageAlert/code.js',      'u:dev:MediaWiki:ChatHacks.js',      'u:dev:MediaWiki:AjaxRC/code.js'    ] });