ميدياويكي:Gadget-HistoryCount.js

من كوبتيكبيديا
اذهب إلى التنقل اذهب إلى البحث

ملاحظة: بعد النشر، أنت قد تحتاج إلى إفراغ الكاش الخاص بمتصفحك لرؤية التغييرات.

  • فايرفوكس / سافاري: أمسك Shift أثناء ضغط Reload، أو اضغط على إما Ctrl-F5 أو Ctrl-R (⌘-R على ماك)
  • جوجل كروم: اضغط Ctrl-Shift-R (⌘-Shift-R على ماك)
  • إنترنت إكسبلورر/إيدج: أمسك Ctrl أثناء ضغط Refresh، أو اضغط Ctrl-F5
  • أوبرا: اضغط Ctrl-F5.
//[[fa:MediaWiki:Gadget-HistoryCount.js]], suggested by [[ar:User:Elph]]
(function(mw, $) {
    if (mw.config.get('wgIsArticle') || mw.config.get( 'wgAction' ) !== "history" ) return;
    $(function() {
        try {
            var obj = {};
            $("ul#pagehistory").find(".history-user>a.mw-userlink").each(function(i, el) {
                var str = mw.html.escape(el.innerHTML);
                if (!obj[str])
                    obj[str] = { count : 0, href : el.href.substr(mw.config.get('wgServer').length), content : el.innerHTML };
                obj[str].count++;
            });
            var names = Array();
            for (var x in obj) names.push(x);
            names.sort(function(a, b){ return a.localeCompare(b); });
            var html = Array();
            for (var x in names) {
                if (obj[names[x]]) html.push(
                    '<span style=color:red;font-size:12px>(' + String(obj[names[x]].count) + ')</span>&nbsp;'
                    +'<a'
// TODO: this fails for secure server
                    + (obj[names[x]].href ? ' href="//ar.wikipedia.org/wiki/' + obj[names[x]].href.substr(mw.config.get('wgServer').length).replace(/%D8%B3%D8%AA%D8%AE%D8%AF%D9%85/g, "user") + '"' : '')
                    + ' title="' + names[x] + '"'
                    + '>' + obj[names[x]].content
                    + '</a> ');
            }
            $("#bodyContent").append('<div class="history-summary" style="border: 1px solid #aaa;background-color: #f9f9f9;	padding: 5px;margin-top: 1em;clear: both; font-family: Verdana;color: silver;"><b>عدد تعديلات كل مساهم: </b>' + html.join(' <b>&rlm;|&rlm;</b> ') + '</div>');
        }
        catch (e) {
            // just go away
        }
    });
})(mediaWiki, jQuery);