نکته: پس از انتشار ممکن است برای دیدن تغییرات نیاز باشد که حافظهٔ نهانی مرورگر خود را پاک کنید.

  • فایرفاکس / سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload کلیک کنید، یا کلید‌های Ctrl-F5 یا Ctrl-R را با هم فشار دهید (در رایانه‌های اپل مکینتاش کلید‌های ⌘-R)
  • گوگل کروم: کلیدهای Ctrl+Shift+R را با هم فشار دهید (در رایانه‌های اپل مکینتاش کلید‌های ⌘-Shift-R)
  • Edge: کلید Ctrl را نگه‌دارید و روی دکمهٔ Refresh کلیک کنید، یا کلید‌های Ctrl-F5 را با هم فشار دهید
// کاربر آنلاین است یا خیر!؟ if(mw.config.get('wgNamespaceNumber')==2 || mw.config.get('wgNamespaceNumber')==3) mw.loader.using('jquery.tipsy', function() {     var user=mw.config.get('wgTitle').replace(/\/.*$/, ''); 	if (!user) 		return; 		 	function tsToDate(rc) { 		var date = new Date(rc.timestamp); 		return date; 	}  	function ago(ms) { 		var s = ms / 1000; 		if (s < 100) 			return 'چند ثانیه پیش'; 		var ranges = [ 				{r: 60, t: 'دقیقه پیش', s: 'یک دقیقه پیش', d: 'دودقیقه پیش'}, 				{r: 60, t: 'ساعت پیش', s: 'یک ساعت پیش', d: 'دو ساعت پیش'}, 				{r: 24, t: 'روز پیش', s: 'یک روزپیش', d: 'دو روز پیش'}, 				{r: 7, t: 'هفته پیش', s: 'یک هفته پیش', d: 'دو هفته پیش'}, 				{r: 52, t: 'سال پیش', s: 'یک سال پیش', d: 'دو سال پیش'} 			]; 			 		var est = '', num; 		for (var i = 0; i < ranges.length; i++) { 			var range = ranges[i]; 			s /= range.r; 			if (s < 1) 				break; 			num = ''; 			if (s < 2) 				est = range.s; 			else if (s < 3 && range.d) 				est = range.d; 			else { 				num = ' ' + Math.floor(s) + ' '; 				est = range.t; 			} 		} 		return 'حوالی ' + num + est; 	} 	 	function pic(recent) { 		return 	recent 			? '//upload.wikimedia.org/wikipedia/commons/3/31/Button_Icon_Green.svg' 			: '//upload.wikimedia.org/wikipedia/commons/0/07/Button_Icon_Red.svg'; 	} 	     $.getJSON(mw.util.wikiScript('api'),  		{action: 'query', list: 'usercontribs', ucuser: user, uclimit: '1', format:'json'},  		function (data) { 		   if (data && data.query && data.query.usercontribs && data.query.usercontribs.length) { 				var lastEditTime = tsToDate(data.query.usercontribs[0]), 					timeSinceEdit = new Date() - lastEditTime; 					recent = timeSinceEdit < 1000 * 60 * 20, 					page = data.query.usercontribs[0].title, 					pageLink = $('<a>', {href: mw.util.getUrl(page), text: page}), 					userLinkTitle = 'پیام ' + user + ' در صفحه بحث', 					userLink = $('<a>', {href: mw.util.getUrl('User Talk:' + user) + '?action=edit&section=new', title: userLinkTitle, text: user}), 					div = $('<div>') 						.append('آخرین ویرایش : ' + ago(timeSinceEdit) + '<br />') 						.append('در: ').append(pageLink).append('<br />') 						.append(' پیام بگذار در صفحه بحث: ').append(userLink), 					timer = null, 					img = $('<img>',{src: pic(recent)}) 						.css({float: 'left'}) 						.css({width: '12px'}) 						.css({cursor: 'pointer'}) 						.tipsy({gravity: 'nw', trigger: 'manual', title: function(){return div.html();}, html: true, fade: true}) 						.mouseover(function() { 							img.tipsy('show') 						}) 						.mouseout(function() { 							timer = setTimeout(function(){ 								img.tipsy('hide') 							}, 5000); 						}); 				$('.tipsy') 					.on('mouseover', function() { 						clearTimeout(timer); 					}) 					.on('mouseout', function(){ 						timer = setTimeout(function(){ 							img.tipsy('hide') 						}, 1000); 					}); 				$('#firstHeading').prepend(img); 			} 		}      );  });