8889841cshare-link.min.js000064400000005074150515310030007720 0ustar00!function(t){window.ShareLink=function(e,r){var i,n={},l=function(t){var e="";if(n.width&&n.height){var r=screen.width/2-n.width/2,i=screen.height/2-n.height/2;e="toolbar=0,status=0,width="+n.width+",height="+n.height+",top="+i+",left="+r}var l=ShareLink.getNetworkLink(t,n),s=/^https?:\/\//.test(l);open(l,s?"":"_self",e)},s=function(){t.each(e.classList,function(){var t,e=(t=this).substr(0,n.classPrefixLength)===n.classPrefix?t.substr(n.classPrefixLength):null;if(e)return function(t){i.on("click",function(){l(t)}),"button"===i.attr("role")&&i.on("keyup",e=>{13!==e.keyCode&&32!==e.keyCode||(e.preventDefault(),l(t))})}(e),!1})};t.extend(n,ShareLink.defaultSettings,r),["title","text"].forEach(function(t){n[t]=n[t].replace("#","")}),n.classPrefixLength=n.classPrefix.length,i=t(e),s()},ShareLink.networkTemplates={twitter:"https://twitter.com/intent/tweet?text={text} {url}",pinterest:"https://www.pinterest.com/pin/create/button/?url={url}&media={image}",facebook:"https://www.facebook.com/sharer.php?u={url}",vk:"https://vkontakte.ru/share.php?url={url}&title={title}&description={text}&image={image}",linkedin:"https://www.linkedin.com/shareArticle?mini=true&url={url}&title={title}&summary={text}&source={url}",odnoklassniki:"https://connect.ok.ru/offer?url={url}&title={title}&imageUrl={image}",tumblr:"https://tumblr.com/share/link?url={url}",google:"https://plus.google.com/share?url={url}",digg:"https://digg.com/submit?url={url}",reddit:"https://reddit.com/submit?url={url}&title={title}",stumbleupon:"https://www.stumbleupon.com/submit?url={url}",pocket:"https://getpocket.com/edit?url={url}",whatsapp:"https://api.whatsapp.com/send?text=*{title}*%0A{text}%0A{url}",xing:"https://www.xing.com/app/user?op=share&url={url}",print:"javascript:print()",email:"mailto:?subject={title}&body={text}\n{url}",telegram:"https://telegram.me/share/url?url={url}&text={text}",skype:"https://web.skype.com/share?url={url}"},ShareLink.defaultSettings={title:"",text:"",image:"",url:location.href,classPrefix:"s_",width:640,height:480},ShareLink.getNetworkLink=function(t,e){var r=ShareLink.networkTemplates[t].replace(/{([^}]+)}/g,function(t,r){return e[r]||""});if("email"===t){if(-1 { if ( 13 === event.keyCode || 32 === event.keyCode ) { event.preventDefault(); openShareLink( networkName ); } } ); } }; var openShareLink = function( networkName ) { var shareWindowParams = ''; if ( settings.width && settings.height ) { var shareWindowLeft = ( screen.width / 2 ) - ( settings.width / 2 ), shareWindowTop = ( screen.height / 2 ) - ( settings.height / 2 ); shareWindowParams = 'toolbar=0,status=0,width=' + settings.width + ',height=' + settings.height + ',top=' + shareWindowTop + ',left=' + shareWindowLeft; } var link = ShareLink.getNetworkLink( networkName, settings ), isPlainLink = /^https?:\/\//.test( link ), windowName = isPlainLink ? '' : '_self'; open( link, windowName, shareWindowParams ); }; var run = function() { $.each( element.classList, function() { var networkName = getNetworkNameFromClass( this ); if ( networkName ) { bindShareClick( networkName ); return false; } } ); }; var initSettings = function() { $.extend( settings, ShareLink.defaultSettings, userSettings ); [ 'title', 'text' ].forEach( function( propertyName ) { settings[ propertyName ] = settings[ propertyName ].replace( '#', '' ); } ); settings.classPrefixLength = settings.classPrefix.length; }; var initElements = function() { $element = $( element ); }; var init = function() { initSettings(); initElements(); run(); }; init(); }; ShareLink.networkTemplates = { twitter: 'https://twitter.com/intent/tweet?text={text}\x20{url}', pinterest: 'https://www.pinterest.com/pin/create/button/?url={url}&media={image}', facebook: 'https://www.facebook.com/sharer.php?u={url}', vk: 'https://vkontakte.ru/share.php?url={url}&title={title}&description={text}&image={image}', linkedin: 'https://www.linkedin.com/shareArticle?mini=true&url={url}&title={title}&summary={text}&source={url}', odnoklassniki: 'https://connect.ok.ru/offer?url={url}&title={title}&imageUrl={image}', tumblr: 'https://tumblr.com/share/link?url={url}', google: 'https://plus.google.com/share?url={url}', digg: 'https://digg.com/submit?url={url}', reddit: 'https://reddit.com/submit?url={url}&title={title}', stumbleupon: 'https://www.stumbleupon.com/submit?url={url}', pocket: 'https://getpocket.com/edit?url={url}', whatsapp: 'https://api.whatsapp.com/send?text=*{title}*%0A{text}%0A{url}', xing: 'https://www.xing.com/spi/shares/new?url={url}', print: 'javascript:print()', email: 'mailto:?subject={title}&body={text}%0A{url}', telegram: 'https://telegram.me/share/url?url={url}&text={text}', skype: 'https://web.skype.com/share?url={url}', }; ShareLink.defaultSettings = { title: '', text: '', image: '', url: location.href, classPrefix: 's_', width: 640, height: 480, }; ShareLink.getNetworkLink = function( networkName, settings ) { var link = ShareLink.networkTemplates[ networkName ].replace( /{([^}]+)}/g, function( fullMatch, pureMatch ) { return settings[ pureMatch ] || ''; } ); if ( 'email' === networkName ) { if ( -1 < settings['title'].indexOf( '&' ) || -1 < settings['text'].indexOf( '&' ) ) { var emailSafeSettings = { text: settings['text'].replace( new RegExp('&', 'g'), '%26' ), title: settings['title'].replace( new RegExp('&', 'g'), '%26' ), url: settings['url'], }; link = ShareLink.networkTemplates[ networkName ].replace( /{([^}]+)}/g, function( fullMatch, pureMatch ) { return emailSafeSettings[ pureMatch ]; } ); } if ( link.indexOf( '?subject=&body') ) { link = link.replace( 'subject=&', '' ); } return link; } return link; }; $.fn.shareLink = function( settings ) { return this.each( function() { $( this ).data( 'shareLink', new ShareLink( this, settings ) ); } ); }; } )( jQuery );