Social Link Opener
by Sam Fereday
HTML
<div id="container">
<a href="#" data-id="facebook">Facebook</a>
<a href="#" data-id="twitter">Twitter</a>
</div>
JavaScript
(function () {
var config = {
title: 'Shout Rooftop Runner',
descr: 'A festive infinite runner brought to you by Shout Digital, happy jumping!',
url: 'http://runner.shoutdigital.com/',
hashtags: 'christmas, shout',
image: 'http://runner.shoutdigital.com/content/assets/ui/MAIN-MENU.gif'
};
var sharer = {
load: function () {
var container = document.getElementById('social-container');
console.log(container);
if (!container)
return;
var winHeight = 480,
winWidth = 600;
var winTop = (screen.height / 2) - (winHeight / 2),
winLeft = (screen.width / 2) - (winWidth / 2);
var self = this,
urlConfig = ', sharer, top=' + winTop + ',left=' + winLeft + ',toolbar=0,status=0,width=' + winWidth + ',height=' + winHeight + '',
url = '';
container.addEventListener('click', function (e) {
e.preventDefault();
url = self.openWindow(e.target);
if (url.length > 0)
window.open(url, "", urlConfig);
return false;
});
},
openWindow: function (target) {
var dataId = target.getAttribute('data-id');
if (dataId && dataId.length > 0) {
switch (dataId) {
case 'twitter':
return this.openTwitter();
break;
case 'facebook':
return this.openFacebook();
break;
};
}
return '';
},
openTwitter: function () {
return 'https://twitter.com/intent/tweet?text=' + config.descr + '&url=' + config.url + '&hashtags=' + config.hashtags;
},
openFacebook: function () {
return...