מדיה ויקי:סקריפטים/43.js

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

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

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
// לחיצה על "שחזור" בדף תרומות המשתמש מבצעת את השחזור בלי לעבור לדף השוואת גרסאות.
// אם פעולת השחזור הצליחה, מופיעה הודעה בראש הדף, כולל קישור לדף השוואת גרסאות.
if (mw.config.get( 'wgCanonicalSpecialPageName' ) == "Contributions")
$(function() {
	$('.mw-rollback-link a[text=שחזור]').click(function(e) {
		var 
			$this = $(this),
			href = decodeURI(this.href),
			sparts = href.split(/[\?&]/),
			parts = {};
		for (var p in sparts)
			if (sparts[p].indexOf('=') + 1) {
				var 
					ppart = sparts[p].split('=');
					key = ppart.shift();
					parts[key] = ppart.join('='); // maybe value contains "="?
			}
		if (parts.title && parts.from && parts.token) {
			e.preventDefault();
			$.post(
				mw.util.wikiScript('api'),
				{action: 'rollback', user: parts.from, title: parts.title, token: parts.token.replace("%2B", '+'), format: 'json'},
				function(data) {
					if (data && data.rollback) {
						var 
							revid = data.rollback.revid,
							title = data.rollback.title,
							href = mw.util.wikiScript() + '?title=' + title  + '&diff=prev&oldid=' + revid;
						mw.notify('הדף "' + title + '" שוחזר בהצלחה.<br />' + 
							'<a href="' + href + '">הבדל בין הגרסאות</a>');
						$this.remove();
					}
				}
			);
		}
	});
});