הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
importUserScript(2);
importUserScript(17);

/* סקריפט להוספת קישורים להוספת תבניות אזהרה שונות למשתמשים, מאת Yonidebest */
function warningTalkPage( user, warning, refPage ) {
    var url = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=" + encodeURIComponent( "שיחת_משתמש:" + user ) + "&action=edit&warning=" + encodeURIComponent( warning );
    if( refPage != "null" ) {
        url += "&ref_page=" + encodeURIComponent( refPage );
    }
    window.open( url );
}
 
function createWarningLink( user, warning, title, refPage ) {
    var link = document.createElement("a");
    link.href = "javascript:void(0);";
    link.onclick = function() {
        var user = this.getAttribute( "user" );
        var warning = this.getAttribute( "warning" );
        var refPage = this.getAttribute( "ref_page" );
        if( !refPage ) {
            refPage = ( wgCanonicalNamespace == "Image" || wgCanonicalNamespace == "Category" ) ? ( ":" + wgPageName ) : wgPageName;
        }
        warningTalkPage( user, warning, refPage );
    }
    link.setAttribute( "user", user );
    link.setAttribute( "warning", warning );
    if( refPage ) {
        link.setAttribute( "ref_page", refPage );
    }
    link.innerHTML = warning;
    link.title = title;
    return link;
}
 
function warningDiffLinks() {
    if( !document.getElementById("mw-diff-ntitle2") ) return; // not a diff page
    var link = document.getElementById("mw-diff-ntitle2").getElementsByTagName("a")[0];
    var user = link.innerHTML;
    if( !/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test( user ) ) return; // not an anonymous user diff page
 
    var span = document.createElement("span");
    span.appendChild( document.createTextNode( " (" ) );
    span.appendChild( createWarningLink( user, "אזהרה", "הוספת תבנית אזהרה" ) );
    span.appendChild( document.createTextNode(" | ") );
    span.appendChild( createWarningLink( user, "ניסויים", "הוספת תבנית ניסויים" ) );
    span.appendChild( document.createTextNode(" | ") );
    span.appendChild( createWarningLink( user, "נמחק", "הוספת תבנית נמחק" ) );
    span.appendChild( document.createTextNode(" | ") );
    span.appendChild( createWarningLink( user, "העתקה", "הוספת תבנית העתקה" ) );
    span.appendChild( document.createTextNode(" | ") );
span.appendChild( createWarningLink( user, "לך", "הוספת תבנית לך" ) );
    span.appendChild( document.createTextNode(" | ") );
span.appendChild( createWarningLink( user, "הסבר", "הוספת תבנית הסבר" ) );
    span.appendChild( document.createTextNode(" | ") );
span.appendChild( createWarningLink( user, "שגיאה", "הוספת תבנית שגיאה" ) );
    span.appendChild( document.createTextNode(" | ") );
span.appendChild( createWarningLink( user, "טעות", "הוספת תבנית טעות" ) );
    span.appendChild( document.createTextNode(" | ") );
span.appendChild( createWarningLink( user, "בוטל", "הוספת תבנית בוטל" ) );
    span.appendChild( document.createTextNode(" | ") );
span.appendChild( createWarningLink( user, "פרסומת", "הוספת תבנית פרסומת" ) );
    span.appendChild( document.createTextNode(" | ") );
span.appendChild( createWarningLink( user, "חזרה על עריכה", "הוספת תבנית חזרה על עריכה" ) );
    span.appendChild( document.createTextNode(" | ") );
span.appendChild( createWarningLink( user, "נייטרליות", "הוספת תבנית נייטרליות" ) );
    span.appendChild( document.createTextNode(" | ") );
    span.appendChild( createWarningLink( user, "תודה", "הוספת תבנית תודה" ) );
    span.appendChild( document.createTextNode( ")" ) );
    link.parentNode.insertBefore( span, link.nextSibling );
}
 
function postWarning() {
    var warning = getParamValue( "warning" );
    var refPage = getParamValue( "ref_page" );
    var text = "";
    if( !warning ) return;
    if( refPage ) {
        refPage = refPage.replace( /_/g, " " );
        text += "\n== [" + "[" + refPage + "]] ==\n";
    }
    text += "{" + "{" + warning + "}} ~~" + "~~";
    document.getElementById("wpTextbox1").value += text;
    document.getElementById("wpSummary").value = warning;
    document.getElementById("editform").submit();
}
 
$(warningDiffLinks);
$(postWarning);
//