מדיה ויקי:AlertProtected.js

מתוך צפונות ויקי

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

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
/*
 * Adds an automatic "{{תב|מוגן}}" or "{{תב|מוגן חלקית}}" template when the page is protected.
 * You can use the {{תב|ללא הודעת הגנה אוטומטית}} to prevent the protection notice from being inserted.
 *
 * written by [[User:Yonidebest]]
 *
 */

function protectNotice()
{
 if ( !mw.config.get('wgRestrictionEdit') || ( mw.config.get('wgRestrictionEdit')[0] != 'sysop' && mw.config.get('wgRestrictionEdit')[0] != 'autoconfirmed' && mw.config.get('wgRestrictionEdit')[0]!='autopatrol') ) return; // only protected pages
 if ( wgNamespaceNumber != 0 ) return; // only main namespace
 if ( wgAction != 'view' && wgAction != 'submit' ) return; // only view or preview mode
 if ( document.getElementById('pl-noprotectionnotice') ) return; // no {{תב|ללא הודעת הגנה אוטומטית}} templates
 if ( document.getElementById('pl-autoconfirmed') ) return; // no {{תב|מוגן חלקית}} templates
 if ( document.getElementById('pl-protected') ) return; // no {{תב|מוגן}} templates

 // load appropriate template according to protection level
 var templateUrl = wgServer + wgScriptPath + '/index.php?action=render&title=';
 if (wgRestrictionEdit[0] == 'sysop')
  templateUrl += encodeURIComponent('תבנית:מוגן/קוד');
 else if(wgRestrictionEdit[0] == 'autopatrol')
   templateUrl += encodeURIComponent('תבנית:הגנה מוגברת/קוד');
 else
  templateUrl += encodeURIComponent('תבנית:מוגן חלקית/קוד');
 var a = sajax_init_object();
 a.open('GET', templateUrl, true);
 a.onreadystatechange = function() {
  if (a.readyState != 4) return;

  // adjust text (links mainly)
  var adjustedText = a.responseText;
  var talklink = '<a href="/wiki/' + encodeURIComponent('שיחה:' + wgTitle) + '" title="דף השיחה">דף השיחה</a>';
  adjustedText = adjustedText.replace(/PLPROTECTEDTALK/g, talklink);
  var histlink = '<a href="//he.wikipedia.org/w/index.php?title=' + encodeURIComponent(wgTitle) + '&action=history" title="דף הגרסאות הקודמות">דף הגרסאות הקודמות</a>';
  adjustedText = adjustedText.replace(/PLPROTECTEDPAGE/g, histlink);

  // add text to container
  var divContainer = document.createElement('div');
  divContainer.className = 'plprotected';
  divContainer.innerHTML = adjustedText;

  // attach container before categories (or footer)
  var attachHere = document.getElementById('catlinks');
  if (!attachHere) attachHere = getElementsByClassName(document, 'DIV', 'printfooter')[0];
  attachHere.parentNode.insertBefore(divContainer, attachHere);

 };
 a.send(null);
}

if ( wgNamespaceNumber === 0 && mw.config.get('wgRestrictionEdit') && ( mw.config.get('wgAction') === 'view' || mw.config.get('wgAction') === 'submit' ) ) $( protectNotice );