You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
90 lines
2.8 KiB
90 lines
2.8 KiB
require(['gitbook', 'jquery'], function(gitbook, $) { |
|
var SITES = { |
|
'facebook': { |
|
'label': 'Facebook', |
|
'icon': 'fa fa-facebook', |
|
'onClick': function(e) { |
|
e.preventDefault(); |
|
window.open('http://www.facebook.com/sharer/sharer.php?s=100&p[url]='+encodeURIComponent(location.href)); |
|
} |
|
}, |
|
'twitter': { |
|
'label': 'Twitter', |
|
'icon': 'fa fa-twitter', |
|
'onClick': function(e) { |
|
e.preventDefault(); |
|
window.open('http://twitter.com/home?status='+encodeURIComponent(document.title+' '+location.href)); |
|
} |
|
}, |
|
'google': { |
|
'label': 'Google+', |
|
'icon': 'fa fa-google-plus', |
|
'onClick': function(e) { |
|
e.preventDefault(); |
|
window.open('https://plus.google.com/share?url='+encodeURIComponent(location.href)); |
|
} |
|
}, |
|
'weibo': { |
|
'label': 'Weibo', |
|
'icon': 'fa fa-weibo', |
|
'onClick': function(e) { |
|
e.preventDefault(); |
|
window.open('http://service.weibo.com/share/share.php?content=utf-8&url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)); |
|
} |
|
}, |
|
'instapaper': { |
|
'label': 'Instapaper', |
|
'icon': 'fa fa-instapaper', |
|
'onClick': function(e) { |
|
e.preventDefault(); |
|
window.open('http://www.instapaper.com/text?u='+encodeURIComponent(location.href)); |
|
} |
|
}, |
|
'vk': { |
|
'label': 'VK', |
|
'icon': 'fa fa-vk', |
|
'onClick': function(e) { |
|
e.preventDefault(); |
|
window.open('http://vkontakte.ru/share.php?url='+encodeURIComponent(location.href)); |
|
} |
|
} |
|
}; |
|
|
|
|
|
|
|
gitbook.events.bind('start', function(e, config) { |
|
var opts = config.sharing; |
|
|
|
// Create dropdown menu |
|
var menu = $.map(opts.all, function(id) { |
|
var site = SITES[id]; |
|
|
|
return { |
|
text: site.label, |
|
onClick: site.onClick |
|
}; |
|
}); |
|
|
|
// Create main button with dropdown |
|
if (menu.length > 0) { |
|
gitbook.toolbar.createButton({ |
|
icon: 'fa fa-share-alt', |
|
label: 'Share', |
|
position: 'right', |
|
dropdown: [menu] |
|
}); |
|
} |
|
|
|
// Direct actions to share |
|
$.each(SITES, function(sideId, site) { |
|
if (!opts[sideId]) return; |
|
|
|
gitbook.toolbar.createButton({ |
|
icon: site.icon, |
|
label: site.text, |
|
position: 'right', |
|
onClick: site.onClick |
|
}); |
|
}); |
|
}); |
|
});
|
|
|