Sha256: 1c05c2c48e165d36dc610094097ba140c10652217210bfb8e13e0329e983ebdf

Contents?: true

Size: 1.09 KB

Versions: 10

Compression:

Stored size: 1.09 KB

Contents

module Agilibox::LinkHelper
  def link_to_object(obj, options = {})
    return if obj.nil?

    if policy(obj).read?
      link_to(obj.to_s, engine_polymorphic_path(obj), options)
    else
      obj.to_s
    end
  end

  def icon_link_to(icon, name, options = nil, html_options = nil, &block)
    name = "#{icon(icon)} #{name}".html_safe
    link_to(name, options, html_options, &block)
  end

  def web_link(text, opts = {})
    return if text.to_s.blank?

    href = text
    href = "http://#{text}" unless text.include?("://")

    link_to(text, href, opts)
  end

  def email_link(text, opts = {})
    return if text.to_s.blank?

    href = "mailto:#{text}"

    link_to(text, href, opts)
  end

  def tel_link(text, opts = {})
    return if text.to_s.blank?

    value = text.gsub(" ", "")
    href  = "tel:#{value}"

    link_to(text, href, opts)
  end

  def twitter_link(text, opts = {})
    return if text.to_s.blank?

    href = text
    href = "https://twitter.com/#{text}" unless text.include?("twitter.com")
    href = "https://#{text}" unless href.include?("://")

    link_to(text, href, opts)
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
agilibox-1.0.9 app/helpers/agilibox/link_helper.rb
agilibox-1.0.8 app/helpers/agilibox/link_helper.rb
agilibox-1.0.7 app/helpers/agilibox/link_helper.rb
agilibox-1.0.6 app/helpers/agilibox/link_helper.rb
agilibox-1.0.5 app/helpers/agilibox/link_helper.rb
agilibox-1.0.4 app/helpers/agilibox/link_helper.rb
agilibox-1.0.3 app/helpers/agilibox/link_helper.rb
agilibox-1.0.2 app/helpers/agilibox/link_helper.rb
agilibox-1.0.1 app/helpers/agilibox/link_helper.rb
agilibox-1.0.0 app/helpers/agilibox/link_helper.rb