Module: Octopress::Social::Facebook
Defined Under Namespace
Classes: Tag
Constant Summary collapse
- DEFAULTS =
{ 'profile_id' => nil, 'app_id' => nil, 'layout' => 'button', 'action' => 'like', 'show_faces' => false, 'share' => false, 'colorscheme' => 'light', 'kid_directed_site' => false, 'comment_count' => 5, 'share_link_text' => 'Facebook', 'profile_link_text' => 'Friend me on Facebook' }
Instance Method Summary collapse
- #config(site = nil) ⇒ Object
- #facebook_comments(site, item) ⇒ Object
- #facebook_follow_button(*args) ⇒ Object
- #facebook_like_button(site, item) ⇒ Object
- #facebook_profile_link(*args) ⇒ Object
- #facebook_script_tag(*args) ⇒ Object
- #facebook_send_button(site, item) ⇒ Object
- #facebook_share_link(site, item) ⇒ Object
- #width ⇒ Object
Instance Method Details
#config(site = nil) ⇒ Object
20 21 22 |
# File 'lib/octopress-social/facebook.rb', line 20 def config(site=nil) @config ||= DEFAULTS.merge(site['facebook'] || {}) end |
#facebook_comments(site, item) ⇒ Object
97 98 99 100 101 102 103 |
# File 'lib/octopress-social/facebook.rb', line 97 def facebook_comments(site, item) %Q{<div class="fb-comments" data-href="#{Social.full_url(site, item)}" data-numposts="#{config['comment_count']}" data-colorscheme="#{config['colorscheme']}" ></div>} end |
#facebook_follow_button(*args) ⇒ Object
56 57 58 59 60 61 62 63 64 65 |
# File 'lib/octopress-social/facebook.rb', line 56 def (*args) %Q{<div class="fb-follow" data-href="https://www.facebook.com/#{config['profile_id']}" #{width} data-layout="#{config['layout']}" data-layout="#{config['layout']}" data-action="#{config['action']}" data-colorscheme="#{config['colorscheme']}"> </div>} end |
#facebook_like_button(site, item) ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/octopress-social/facebook.rb', line 39 def (site, item) %Q{<div class="fb-like" data-href="#{Social.full_url(site, item)}" #{width} data-layout="#{config['layout']}" data-action="#{config['action']}" data-show-faces="#{config['show_faces']}" data-colorscheme="#{config['colorscheme']}" data-kid-directed-site="#{config['kid_directed_site']}" data-share="#{config['share']}"></div> } end |
#facebook_profile_link(*args) ⇒ Object
52 53 54 |
# File 'lib/octopress-social/facebook.rb', line 52 def facebook_profile_link(*args) %Q{<a class="facebook-profile-link" href="https://www.facebook.com/#{config['profile_id']}">#{config['profile_link_text']}</a>} end |
#facebook_script_tag(*args) ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'lib/octopress-social/facebook.rb', line 84 def facebook_script_tag(*args) %Q{ <div id="fb-root"></div> <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.0"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script> } end |
#facebook_send_button(site, item) ⇒ Object
67 68 69 70 71 72 73 74 |
# File 'lib/octopress-social/facebook.rb', line 67 def (site, item) %Q{<div class="fb-send" data-href="#{Social.full_url(site, item)}" #{width} data-colorscheme="#{config['colorscheme']}" data-kid-directed-site="#{config['kid_directed_site']}"></div> } end |
#facebook_share_link(site, item) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/octopress-social/facebook.rb', line 24 def facebook_share_link(site, item) url = Social.full_url(site, item) if config['app_id'] %Q{<a class="facebook-share-link" href="https://www.facebook.com/dialog/share? app_id=#{config['app_id']} &href=#{url}&redirect_uri=#{url}" target="_blank">#{config['share_link_text']}</a> } else %Q{<a class="facebook-share-link" href="https://www.facebook.com/sharer/sharer.php?u=#{url}" target="_blank">#{config['share_link_text']}</a>} end end |
#width ⇒ Object
76 77 78 79 80 81 82 |
# File 'lib/octopress-social/facebook.rb', line 76 def width if w = config['width'] %Q{data-width="#{w}"} else '' end end |