module Octopress::Social::Disqus
Constants
- DEFAULTS
Attributes
config[RW]
url[RW]
Public Instance Methods
disqus_comments(site, item)
click to toggle source
# File lib/octopress-social/disqus.rb, line 30 def disqus_comments(site, item) if item['comments'] != false %Q{<div id="disqus_thread"></div> <script type="text/javascript"> var disqus_shortname = '#{config['shortname']}'; var disqus_url = '#{url}'; var disqus_identifier = '#{identifier(site, item)}'; var disqus_title = '#{item['title']}'; #{embed_script('embed')} </script> <noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow">comments powered by Disqus.</a></noscript> } else '' end end
disqus_comments_link(site, item)
click to toggle source
# File lib/octopress-social/disqus.rb, line 57 def disqus_comments_link(site, item) if item['comments'] != false link = (item['context'] == 'page' ? '' : url) link << '#disqus_thread' %Q{<a class="disqus-comments-link" title="#{config['comments_link_title']}" href="#{link}">Comments</a>} elsif !config['disabled_comments_text'].empty? %Q{<span class="disqus-comments-disabled">#{config['disabled_comments_text']}</span>} else '' end end
embed_script(script)
click to toggle source
# File lib/octopress-social/disqus.rb, line 47 def embed_script(script) %Q{(function () { var s = document.createElement('script'); s.async = true; s.type = 'text/javascript'; s.src = '//#{config['shortname']}.disqus.com/#{script}.js'; (document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s); }()); } end
identifier(site, item)
click to toggle source
# File lib/octopress-social/disqus.rb, line 26 def identifier(site, item) item['disqus_identifier'] || url end
set_config(site)
click to toggle source
# File lib/octopress-social/disqus.rb, line 15 def set_config(site) @config ||= begin config = site['octopress_social'] || site DEFAULTS.merge(config['disqus'] || {}) end end
set_url(site, item)
click to toggle source
# File lib/octopress-social/disqus.rb, line 22 def set_url(site, item) @url = Social.full_url(site, item) end