מדיה ויקי:Gadget-ArticleShare.js

מתוך ויקימסע

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

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
/* global jQuery:false, mediaWiki:false */
/* eslint one-var: 0, vars-on-top: 0, comma-dangle: 0 */ // extends: wikimedia

( function( $, mw ) {
	$( document ).ready( function() {
		if ( mw.config.get('wgAction') === 'view' &&
				mw.config.get('wgNamespaceNumber') === 0 ) {
			// i18n
			var share;
			switch (  wgUserLanguage  ) {
				case 'he':
					share = {
						main: 'שיתוף',
						mail: 'בדואר האלקטרוני',
					};
					break;
				case 'en':
					share = {
						main: 'Share',
						mail: 'E-Mail',
					};
					break;
				case 'zh-cn':
				case 'zh-hans':
				case 'zh-my':
				case 'zh-sg':
					share = {
						main: 'שיתוף',
						mail: 'בדואר האלקטרוני',
					};
					break;
				default:
					share = {
						main: 'שיתוף באתרי מדיה חברתית',
						mail: 'בדואר האלקטרוני',
					};
			}

			// Setup portlet
			var $share = $( '#p-tb' ).clone()
				.attr( 'id', 'p-share' );
			$share.find( 'li' ).remove();

			$share.find( 'h3' ).text( share.main );
			if ( $share.attr( 'aria-labelledby' ) ) {
				var label = $share.attr( 'aria-labelledby' )
					.replace( 'tb', 'share' );
				$share.attr( 'aria-labelledby', label );
				$share.find( 'h3' ).attr( 'id', label );
			}

			$( '#p-tb' ).before( $share );

			// Add the links
			var pgname = mw.config.get('wgPageName'),
				pgurl = new mw.Uri( mw.config.get('wgServer') + mw.util.getUrl( pgname ) ).toString();
			mw.util.addPortletLink( 'p-share',
				'mailto:?' + $.param( {
					subject: pgname,
					body: pgname + '\n' + pgurl
				} ),
				share.mail
			);
			mw.util.addPortletLink( 'p-share',
				'//facebook.com/sharer.php?' + $.param( {
					u: pgurl,
					t: pgname
				} ),
				'בפייסבוק'
			);
			mw.util.addPortletLink( 'p-share',
				'//twitter.com/share?' + $.param( {
					url: pgurl,
					text: pgname,
					related: ''
				} ),
				'בטוויטר'
			);
			mw.util.addPortletLink( 'p-share',
				'//pinterest.com/pin/create/button/?' + $.param( {
					url: pgurl,
					text: pgname,
					related: ''
				} ),
				'בפינטרסט'
			);
		}
	} );
}( jQuery, mediaWiki ) );