משתמש:M.y./common.js

מתוך חב"דפדיה, אנציקלופדיה חב"דית חופשית
גרסה מ־23:38, 6 ביולי 2016 מאת M.y. (שיחה | תרומות) (יצירת דף עם התוכן "if ( mw.config.get( 'wgNamespaceNumber' ) + 1 ) (function() { "use strict"; mw.loader.using( 'mediawiki.api', function() { new mw.Api().get( { prop: 'info...")
(הבדל) → הגרסה הקודמת | הגרסה האחרונה (הבדל) | הגרסה הבאה ← (הבדל)
קפיצה לניווט קפיצה לחיפוש

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

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
if ( mw.config.get( 'wgNamespaceNumber' ) + 1 ) 
(function() {
"use strict";
	mw.loader.using( 'mediawiki.api', function() {
		new mw.Api().get( {
			prop: 'info',
			inprop: 'watchers|visitingwatchers',
			titles: mw.config.get( 'wgPageName' )
		} ).done( function( data ) {
			if ( data && data.query && data.query.pages )
				for ( var pageid in data.query.pages ) {
					var pinfo = data.query.pages[pageid];
					showWatchers( pinfo.watchers, pinfo.visitingwatchers );
				}
		} );	
	} );

	function showWatchers( watchersNum, visitingWatchers ) {
		var color, 
			text,
			caWatch = $( '#ca-watch a, #ca-unwatch a' ),
			range = watchersNum === 0 ? 'zero'
			: watchersNum === 1 ? 'one'
			: watchersNum < 5 ? 'few'
			: watchersNum < 12 ? 'several'
			: watchersNum < 30 ? 'dozens'
			: watchersNum >= 30 ? 'many'
			: 'unknown'; // less than 30; user does not have permissions to get watchers count
		switch ( range ) {
			case 'zero':
				text = 'אין עוקבים';
				color = '#ff0000';
				break;
			case 'one':
				text = 'עוקב יחיד';
				color = 'orange';
				break;
			case 'unknown':
				color = 'yellow';
				text = 'פחות מ-30 עוקבים';
				break;
			default: 
				text = watchersNum + ' עוקבים';
				color = { few: 'pink', several: 'yellow', dozens: 'lightblue', many: 'lightgreen' }[range];
				break;
		}
		if ( typeof( visitingWatchers ) === 'number' )
			text += ", " + visitingWatchers + " פעילים";
		if ( caWatch.length )
			caWatch.css( { backgroundColor: color } ).attr( { title: text } );
		else $( function() { // wait until #ca-watch is available
			$( '#ca-watch a' ).css( { backgroundColor: color } ).attr( { title: text } );
		});
	}
})();