Sha256: 68b818c94d3b818663ce4591376454cd80b64913b05d32af30295d33d0d7ce32

Contents?: true

Size: 1.23 KB

Versions: 4

Compression:

Stored size: 1.23 KB

Contents

require 'alula/plugin'

module Alula
  class Disqus
    def self.path
      File.join(File.dirname(__FILE__), %w{.. .. .. plugins disqus})
    end
    
    def self.version
      Alula::Plugins::VERSION
    end
    
    def self.install(options)
      return false unless options.shortname
      # Force defer mode on script loading
      # Alula::Plugin.script_load_mode = :defer
      
      # Add Emphasis -powered link to footer
      Alula::Plugin.addon(:post_bottom, ->(context) {
        <<-EOS
        <script type="text/javascript">
        var disqus_shortname = '#{options['shortname']}';
        var disqus_identifier = '#{context.item.metadata.disqus_identifier || context.item.slug}';
        (function() {
          var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
          dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
          (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
          })();
        </script>
        <a href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
        EOS
      }
      )
    end
  end
end

Alula::Plugin.register :disqus, Alula::Disqus

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
alula-plugins-0.4.11 lib/alula/plugins/disqus.rb
alula-plugins-0.4.11a lib/alula/plugins/disqus.rb
alula-plugins-0.4.4 lib/alula/plugins/disqus.rb
alula-plugins-0.4.3 lib/alula/plugins/disqus.rb