Thread:Cheeseskates/@comment-26497423-20160504234619

/* * Lol, AjaxDiff Modification. */ (function ($, mw, AjaxDiff) {   AjaxDiff = $.extend(AjaxDiff, {});    AjaxDiff.run = false;    var lng = {        // Deutsch        de: {            expiry: 'Sperrdauer: ',            reason: 'Sperrgrund: ',            success: 'Benutzer wurde gesperrt.',            emptyvariables: 'Du musst den zu sperrenden Benutzer und die Sperrdauer angeben.',            blockbutton: 'Sperre den Benutzer',            cancelbutton: 'Abbrechen',            rollbacksuccess: 'Bearbeitung wurde zurückgesetzt',            loading: 'Wird geladen, bitte warten...',            errorapi: 'Fehler: die API gab einen Fehlercode zurück',            namebutton: 'Zeige den Namen der Seite',            previewbutton: 'Zeige Vorschau der Seite',            diffpreviewof: 'Vorschau der Änderungen von: ',            diffpreview: 'Vorschau der Änderungen',            pageviewver: 'Seiten-Anzeiger',            vandalism: 'Vandalismus' },       // English en: { expiry: 'Block duration: ', reason: 'Block reason: ', success: 'User has been blocked', emptyvariables: 'You have to enter block\'s expiry and user to block.', blockbutton: 'Block the user', cancelbutton: 'Cancel', rollbacksuccess: 'Edit has been rollbacked', loading: 'Loading, please wait...', errorapi: 'Error: API returned error code', namebutton: 'Display page\'s name', previewbutton: 'Preview the page', diffpreviewof: 'Diff Preview of: ', diffpreview: 'Diff Preview', pageviewver: 'Page Viewer', vandalism: 'Vandalism' },       // Español es: { expiry: 'Duración de bloqueo: ', reason: 'Razon de bloqueo: ', success: 'El usuario há sido bloqueado.', emptyvariables: 'Debes definir la duración del bloqueo y el usuario a bloquear.', blockbutton: 'Bloquear usuario', cancelbutton: 'Cancelar', rollbacksuccess: 'La edición ha sido revertida.', loading: 'Cargando, por favor espere...', errorapi: 'Error: el API devolvio un codigo de error', namebutton: 'Mostrar el nombre de la pagina', previewbutton: 'Mostrar la pagina', diffpreviewof: 'Ver dif de: ', diffpreview: 'Demuestración de dif', pageviewver: 'Vistazo de la pagina', vandalism: 'Vandalismo' },       // Français fr: { expiry: 'Durée du blocage :', reason: 'Motif du blocage :', success: 'L\'utilisateur a été bloqué avec succès.', emptyvariables: 'Merci de rentrer la durée du blocage ainsi que l\'utilisateur à bloquer', blockbutton: 'Bloquer l\'utilisateur', cancelbutton: 'Annuler', rollbacksuccess: 'La modification a été révoqué', loading: 'Chargement, merci de patienter...', errorapi: 'Erreur: l\'API a retourné le code d\'erreur', namebutton: 'Afficher le nom de la page', previewbutton: 'Afficher la page', diffpreviewof: 'Diff Preview of: ', // Need translation diffpreview: 'Diff Preview', // Need translation pageviewver: 'Page Viewer', // Need translation vandalism: 'Vandalism' // Need translation },       // Polish pl: { expiry: 'Czas trwania blokady: ', reason: 'Powód blokady: ', success: 'Użytkownik został zablokowany', emptyvariables: 'Musisz wprowadzić czas trwania i użytkownika, aby zablokować.', blockbutton: 'Zablokuj użytkownika', cancelbutton: 'Anuluj', rollbacksuccess: 'Edycja została cofnięta', loading: 'Ładowanie, proszę czekać...', errorapi: 'Błąd: API zwróciło błąd', namebutton: 'Wyświetl nazwę strony', previewbutton: 'Podgląd strony', diffpreviewof: 'Podgląd zmian dla: ', diffpreview: 'Podgląd zmian', pageviewver: 'Podgląd strony', vandalism: 'Wandalizm' }   };    AjaxDiff.expiry = AjaxDiff.expiry || '3 days'; AjaxDiff.reason = AjaxDiff.reason || lng.vandalism; lng = $.extend(lng.en, lng[mw.config.get('wgContentLanguage')], lng[mw.config.get('wgUserLanguage')]); if (wgCanonicalSpecialPageName !== "WikiActivity" || AjaxDiff.run === true) { return false; }   AjaxDiff.run = true; function showname { if ($('.mw-rev-head-action > a').eq(0).length > 0) { $('#diff-preview > h1').hide.html(lng.diffpreviewof + $('.mw-rev-head-action > a').eq(0).attr('title')).fadeIn(1500); }      var top = $('#diff-preview').css('top').replace('px',''); $('html, body').animate({scrollTop:top}, 'fast'); }   function blockuser(user, expiry, reason) { if (!expiry) { var expiry = prompt(lng.expiry, AjaxDiff.expiry); }       if (!reason) { var reason = prompt(lng.reason, AjaxDiff.reason); }       if (!user || !expiry) { alert(lng.emptyvariables); return false; }       var url = wgServer + '/api.php?action=query&prop=info&intoken=block&titles=User:' + user + '&format=json'; $.getJSON(url, function (data) {           var p;            for (var p in data.query.pages) {                break;            };            var token = data.query.pages[p].blocktoken;            var url = wgServer + '/api.php?action=block&user=' + user + '&expiry=' + expiry + '&reason=' + reason + '&nocreate&autoblock&format=json&token=' + encodeURIComponent(token);            $.post(url, function (data) { if (data.error) { alert(lng.errorapi + " : " + data.error.info); return false; } else { alert(lng.success); $('#blockbutton').addClass('disabled'); }           });        });    }    function PreviewPageAjax(content) { if ($('#DiffView').length == 0) { var ajaxform = '\  \ \ ';            $.showCustomModal(lng.pageviewver, ajaxform, {                id: 'page-viewer',                width: 1000,                buttons: [{                    message: lng.cancelbutton,                    handler: function  {                        $('#page-viewer').closeModal;                    }                }]            }); $('#DiffView').html(content); } else { $('#DiffView').html(content); }   }    function DiffAjax(content) { if ($('#diff-preview').length == 0) { var ajaxform = '\  \ \ ';            $.showCustomModal(lng.diffpreview, ajaxform, {                id: 'diff-preview',                width: 900,                buttons: [{                    message: lng.cancelbutton,                    handler: function  {                        $('#diff-preview').closeModal;                    }                }, {                    id: 'shownamebutton',                    message: lng.namebutton,                    defaultButton: false,                    handler: function  {                      showname;					}                }, {                    id: 'previewpagebutton',                    message: lng.previewbutton,                    defaultButton: false,                    handler: function  {                      var pagelink = $('#mw-diff-ntitle1 > strong > a').attr('title');                      getpagecontent(wgServer + '/wiki/' + pagelink);					} }, {                   id: 'blockbutton', message: lng.blockbutton, defaultButton: true, handler: function { if (!$(this).hasClass('disabled')) { blockuser($('#mw-diff-ntitle2 > .mw-userlink').html); }                   }                }]            });            $('#DiffPreview').html(content);

} else { $('#DiffPreview').html(content); }       $('#diff-preview > h1').html(lng.diffpreview); if (content == ' ' + lng.loading) { return false; }       $('#blockbutton').html(lng.blockbutton + ' (' + $('#mw-diff-ntitle2 > .mw-userlink').html + ')'); if (wgUserGroups.indexOf('staff') + wgUserGroups.indexOf('util') + wgUserGroups.indexOf('sysop') + wgUserGroups.indexOf('helper') + wgUserGroups.indexOf('VSTF') === -5) { $('#blockbutton').addClass('disabled'); }       $('#mw-diff-otitle4').find('a').replaceWith('' + $('#mw-diff-otitle4').find('a').html + ''); $('#mw-diff-ntitle4').find('a').replaceWith('' + $('#mw-diff-ntitle4').find('a').html + ''); $('#mw-diff-otitle1').prepend(' ↑ '); $('#mw-diff-otitle1').prepend('↓'); $('#previousedit').click(function {            if ($(this).hasClass('disabled')) {                return false;            }            var value = $('.activityfeed-diff[href*="' + $('span.mw-rev-head-action > a').attr('href').split('oldid=')[1] + '"]').parents('li.activity-type-edit').prevAll('li.activity-type-edit').find('.activityfeed-diff').attr('href');            if (!value) {                $(this).addClass('disabled');                return false;            }            getdiffcontent(value);        }); $('#nextedit').click(function {            if ($(this).hasClass('disabled')) {                return false;            }            var value = $('.activityfeed-diff[href*="' + $('span.mw-rev-head-action > a').attr('href').split('oldid=')[1] + '"]').parents('li.activity-type-edit').nextAll('li.activity-type-edit').find('.activityfeed-diff').attr('href');            if (!value) {                $(this).addClass('disabled');                return false;            }            getdiffcontent(value);        }); $('#diffprev, #diffnext').click(function {            if ($(this).hasClass('disabled')) {                return false;            }            $('#DiffPreview').html(' ' + lng.loading);            var url = wgServer + $(this).attr("links");            setTimeout(getdiffcontent(url), 1000);        }); $('.mw-rollback-link > a').replaceWith(' a').attr('title') + '" href="' + $('.mw-rollback-link > a').attr('href') + '">' + $('.mw-rollback-link > a').html + ''); $('.rollbackbutton').click(function (event) {           if ($(this).hasClass('disabled')) {                return false;            }            event.preventDefault;            $.post($(this).attr('href'));            alert(lng.rollbacksuccess);            $(this).removeAttr('href');            $(this).addClass('disabled');        }); importArticle({           type: "style",            article: "w:c:dev:AjaxDiff/code.css"        }); var title = lng.diffpreviewof + $('span.mw-rev-head-action > a').eq(1).attr('title'); }   $('.WikiaArticle').on('click', '.activityfeed-diff', function (event) {        event.preventDefault;        var url = wgServer + $(this).attr("href");        getdiffcontent(url);    });

function getdiffcontent(url) { DiffAjax(' ' + lng.loading); $.ajax({       type: "GET",        url: url,        success : function(content) {            var content = $(content).find('table.diff').html;            DiffAjax(content);		var	$diffUndoLink = $( 'table.diff' ).find( '.diff-ntitle > #mw-diff-ntitle1 a:last' ),			diffUndoUrl = $diffUndoLink.attr( 'href' ),			$ajaxDiffUndoLink = createUndoLink( diffUndoUrl );		$diffUndoLink.parent.append( ' (', $ajaxDiffUndoLink, ')' );        },        error : function (data) {          alert(lng.errorapi + ' : ' + data.error.info);        }        }); }   function getpagecontent(url) { PreviewPageAjax(' ' + lng.loading); $.ajax({       type: "GET",        url: url,        success : function(content) {            var content = $(content).find('#WikiaArticle').html;            PreviewPageAjax(content);        },        error : function (data) {          alert(lng.errorapi + ' : ' + data.error.info);        }        }); }   mw.util.addCSS(	'div#DiffPreview,\n div#DiffView {\n' +		'\tmax-height:' + ($(window).height - 200) + 'px;\n' +	'}'    ); window.AjaxDiff = AjaxDiff; })(this.jQuery, this.mediaWiki, window.AjaxDiff);

 </ac_metadata>