Sha256: 4c8b700b8dba098de780a4ae14ae10244123e0a39cbfe92c6fd3397cebe79bd2

Contents?: true

Size: 1.08 KB

Versions: 5

Compression:

Stored size: 1.08 KB

Contents

module ActiveAdmin
  module Views

    class SiteTitle < Component

      def tag_name
        'h1'
      end

      def build(namespace)
        super(id: "site_title")
        @namespace = namespace

        if site_title_link?
          text_node site_title_with_link
        else
          text_node site_title_content
        end
      end

      def site_title_link?
        @namespace.site_title_link.present?
      end

      def site_title_image?
        @namespace.site_title_image.present?
      end

      private

      def site_title_with_link
        helpers.link_to(site_title_content, @namespace.site_title_link)
      end

      def site_title_content
        if site_title_image?
          title_image
        else
          title_text
        end
      end

      def title_text
        helpers.render_or_call_method_or_proc_on(self, @namespace.site_title)
      end

      def title_image
        path = helpers.render_or_call_method_or_proc_on(self, @namespace.site_title_image)
        helpers.image_tag(path, id: "site_title_image", alt: title_text)
      end

    end

  end
end

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
activeadmin-orac-1.0.0.pre4 lib/active_admin/views/components/site_title.rb
activeadmin-orac-1.0.0 lib/active_admin/views/components/site_title.rb
activeadmin-orac-1.0.0.pre.orac lib/active_admin/views/components/site_title.rb
activeadmin-1.0.0.pre4 lib/active_admin/views/components/site_title.rb
activeadmin-1.0.0.pre3 lib/active_admin/views/components/site_title.rb