Sha256: 0aa15f622a93e2d6f06a44b91f0bb56444780195eee5b7640c16fa157a99eaaa

Contents?: true

Size: 1009 Bytes

Versions: 5

Compression:

Stored size: 1009 Bytes

Contents

module Rubycritic
  module ViewHelpers
    def timeago_tag(time)
      "<time class='js-timeago' datetime='#{time}'>#{time}</time>"
    end

    def javascript_tag(file)
      "<script src='" + asset_path("javascripts/#{file}.js").to_s + "'></script>"
    end

    def stylesheet_path(file)
      asset_path("stylesheets/#{file}.css")
    end

    def asset_path(file)
      relative_path("assets/#{file}")
    end

    def file_path(file)
      relative_path(file)
    end

    def smell_location_path(location)
      file_path("#{location.pathname.sub_ext('.html')}#L#{location.line}")
    end

    private

    def relative_path(file)
      (root_directory + file).relative_path_from(file_directory)
    end

    def file_directory
      raise NotImplementedError,
            "The #{self.class} class must implement the #{__method__} method."
    end

    def root_directory
      raise NotImplementedError,
            "The #{self.class} class must implement the #{__method__} method."
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
rubycritic-2.9.2 lib/rubycritic/generators/html/view_helpers.rb
rubycritic-2.9.1 lib/rubycritic/generators/html/view_helpers.rb
rubycritic-2.9.0 lib/rubycritic/generators/html/view_helpers.rb
rubycritic-2.8.0 lib/rubycritic/generators/html/view_helpers.rb
rubycritic-2.7.1 lib/rubycritic/generators/html/view_helpers.rb