Sha256: 7b178daf32de4934b2d0d0524d11fd4c59361c03536d1702f219005ebc72b76b

Contents?: true

Size: 1.1 KB

Versions: 11

Compression:

Stored size: 1.1 KB

Contents

module Blazer
  module BaseHelper
    def blazer_title(title = nil)
      if title
        content_for(:title) { title }
      else
        content_for?(:title) ? content_for(:title) : nil
      end
    end

    BLAZER_URL_REGEX = /\Ahttps?:\/\/[\S]+\z/
    BLAZER_IMAGE_EXT = %w[png jpg jpeg gif]

    def blazer_format_value(key, value)
      if value.is_a?(Numeric) && !key.to_s.end_with?("id") && !key.to_s.start_with?("id")
        number_with_delimiter(value)
      elsif value.is_a?(String) && value =~ BLAZER_URL_REGEX
        # see if image or link
        if Blazer.images && (key.include?("image") || BLAZER_IMAGE_EXT.include?(value.split(".").last.split("?").first.try(:downcase)))
          link_to value, target: "_blank" do
            image_tag value, referrerpolicy: "no-referrer"
          end
        else
          link_to value, value, target: "_blank"
        end
      else
        value
      end
    end

    def blazer_js_var(name, value)
      "var #{name} = #{json_escape(value.to_json(root: false))};".html_safe
    end

    def blazer_series_name(k)
      k.nil? ? "null" : k.to_s
    end
  end
end

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
blazer-3.2.0 app/helpers/blazer/base_helper.rb
blazer-3.1.0 app/helpers/blazer/base_helper.rb
blazer-3.0.4 app/helpers/blazer/base_helper.rb
blazer_xlsx-3.0.8 app/helpers/blazer/base_helper.rb
blazer_xlsx-3.0.7 app/helpers/blazer/base_helper.rb
blazer_xlsx-3.0.6 app/helpers/blazer/base_helper.rb
blazer_xlsx-3.0.5 app/helpers/blazer/base_helper.rb
blazer-3.0.3 app/helpers/blazer/base_helper.rb
blazer-3.0.2 app/helpers/blazer/base_helper.rb
blazer-3.0.1 app/helpers/blazer/base_helper.rb
blazer-3.0.0 app/helpers/blazer/base_helper.rb