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

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

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

  • פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
  • גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
  • אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
  • אופרה: ללחוץ על Ctrl-F5.
/*
 * Adds option to share link to the current page in social networks and email
 * Written by [[:he:User:ערן]] 
 *
 */ 

$( document ).ready( function () {
	var shareLabel, emailLabel, socialShares;

	shareLabel = 'שיתוף';
	emailLabel = 'דוא\"ל';

	socialShares = [
		{
			'title': emailLabel,
			'url': 'mailto:?subject=' + encodeURIComponent( mw.config.get('wgPageName') ) + '&body=' + mw.config.get('wgServer') + '/wiki/' + encodeURIComponent( mw.config.get('wgPageName') ),
			'img': '//upload.wikimedia.org/wikipedia/commons/4/42/Icon_External_Link_E-Mail.png'
		},
		{
			'title': 'facebook',
			'url': 'http://www.facebook.com/sharer.php?u=' + mw.config.get('wgServer') + '/wiki/' + encodeURIComponent( mw.config.get('wgPageName') ) + '&t=' + encodeURIComponent( mw.config.get('wgPageName') ),
			'img': '//upload.wikimedia.org/wikipedia/commons/thumb/b/b8/2021_Facebook_icon.svg/20px-2021_Facebook_icon.svg.png' // [[File:2021 Facebook icon.svg]]
		},
		{
			'title': 'twitter',
			'url': 'http://twitter.com/?status=' + encodeURIComponent( 'ראו ערך: \n' + mw.config.get('wgPageName') + '\nבוויקיפדיה' ),
			'img': '//upload.wikimedia.org/wikipedia/commons/thumb/4/4f/Twitter-logo.svg/20px-Twitter-logo.svg.png' // [[File:Twitter-logo.svg]]
		}
	];

	try {
		var $whatLinksItem, $shareText, $item;

		$whatLinksItem = $( '#t-whatlinkshere' );

		if ( !$whatLinksItem.length ) {
			return;
		}
		
		$shareText = $( '<span>' ).text( shareLabel + ':' );

		$( socialShares ).each( function() {
			var $socialSpan, $socialA, $socialImg;

			$socialSpan = $( '<span>' );
			$socialA = $( '<a>', { href: this.url, title: this.title } );

			if ( this.title !== emailLabel ) {
				$socialA.click( function () {
					window.open(
						this.href,
						shareLabel,
						'toolbar=0,status=0,resizable=1,width=550,height=400'
					);

					return false;
				} );
			}

			$socialImg = $( '<img>', { 'src': this.img } );
			$socialA.append( $socialImg );
			$socialSpan.append( $socialA );
			$shareText.append( $socialSpan );
		} );

		$item = $( '<li>', { id: 't-socialShare' } );
		$item.append( $shareText );
		$whatLinksItem.before( $item );
	}
	catch( e ) {
		return;      // lets just ignore what's happened
	}
} );