משתמש:Ofekalef/common.js/Work.js

מתוך ויקיפדיה, האנציקלופדיה החופשית

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

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
/* סקריפט להוספת קישורים להוספת תבניות אזהרה שונות למשתמשים, מאת Yonidebest תוספת ס: ו|שם הדף, על ידי Ofekalef הוספת תבניות ושיפוץ על ידי חיים 7 :)*/
 
function save_topage(title, summary, content, next, warning) {
 
                if(warning == 'ניסויים' || warning == 'אזהרה' || warning == 'בוטל') {
		       var param = {action: 'edit', title: title, summary: summary, watchlist: 'unwatch',  token: mw.user.tokens.get('csrfToken'), appendtext: content, format: 'json'};
                }
                else {
		       var param = {action: 'edit', title: title, summary: summary,  token: mw.user.tokens.get('csrfToken'), appendtext: content, format: 'json'};
                }
 
	       $.post(mw.util.wikiScript('api'), $.extend(param, content), function (data) {
		        if (data && data.error) 
			      alert('error saving: ' + data.error['info']);
		        else if (data && data.edit && data.edit.result == 'Success' && typeof next == 'function')
			      next();
              });
}
 
 
 
function createWarningLink( user, warning, title, view, 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 = ( wgNamespaceNumber == 6 || wgNamespaceNumber == 14 ) ? ( ":" + wgPageName ) : wgPageName;
        }
        var text = "";
        var reason ="";
        if( !warning ) return;
        if (warning == "בוטל")
        {
                reason = prompt("ההסבר לביטול"); 
			if ($.trim(reason) == '') {
                              reason = '';
                        }
                        else {
			     reason = "|סיבה=" + reason;
                        }

        }

        else if(warning == "הסבר") {
                reason = prompt("בוטל? (הקלידו כן אם כן)");
                        if ($.trim(reason) == '') {
                               reason = '';
                        }
                        else {

                              reason = '|בוטל=כן';
                         
                        }
        }

        if( refPage ) {
            refPage = refPage.replace( /_/g, " " ); 
        }
		if (warning == 'ברוך בואך')
		{
			text = "{" + "{" + warning + "}} ~~" + "~~\n" + text;
		}
		else
		{
			text += "\n== [[" + refPage + "]] ==";
			text += "\n{" + "{" + warning + "|" + refPage + reason + "}} ~~" + "~~";
		}
        save_topage("שיחת משתמש:" + user, warning, text, function()  {alert('בקשתך נשמרה ב-שיחת משתמש:' + user);}, warning);
 
 
}
 
 
 
    link.setAttribute( "user", user );
    link.setAttribute( "warning", view );
    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;
 
    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, "הסבר", "הוספת תבנית הסבר", "הסבר" ) );
    if(( !/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test( user ))==false )  {// an anonymous user diff page 
		span.appendChild( document.createTextNode(" | ") );
		span.appendChild( createWarningLink( user, "תודה", "הוספת תבנית תודה", "תודה" ) );
    }
    if(( !/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test( user )))
    {
	span.appendChild( document.createTextNode(" | ") );
	span.appendChild( createWarningLink( user, "בה", "הוספת תבנית ברוך בואך", "ברוך בואך" ) );
    }
    span.appendChild( document.createTextNode( ")" ) );
    link.parentNode.insertBefore( span, link.nextSibling );
}
 
 
$(warningDiffLinks);