Sha256: 2992d0b31bf761f3296a314bc950316dc0e41fac06ce584ea28f33679f5a9f2e

Contents?: true

Size: 1003 Bytes

Versions: 17

Compression:

Stored size: 1003 Bytes

Contents

module Locomotive
  module Liquid
    module Tags
      class LinkTo < Hybrid

        include PathHelper
        include ActionView::Helpers::UrlHelper

        def render(context)
          render_path(context) do |page, path|
            label = label_from_page(page)

            if @render_as_block
              context.scopes.last['target'] = page
              label = super.html_safe
            end

            link_to label, path
          end
        end

        def wrong_syntax!
          raise SyntaxError.new("Syntax Error in 'link_to' - Valid syntax: link_to page_handle, locale es (locale is optional)")
        end

        protected

        def label_from_page(page)
          ::Mongoid::Fields::I18n.with_locale(@options['locale']) do
            if page.templatized?
              page.content_entry._label
            else
              page.title
            end
          end
        end

      end

      ::Liquid::Template.register_tag('link_to', LinkTo)
    end
  end
end

Version data entries

17 entries across 17 versions & 2 rubygems

Version Path
locomotive_cms-2.5.7 lib/locomotive/liquid/tags/link_to.rb
locomotivecms-3.0.0.pre.alpha.2 lib/locomotive/previous_liquid/tags/link_to.rb
locomotivecms-3.0.0.pre.alpha lib/locomotive/previous_liquid/tags/link_to.rb
locomotive_cms-2.5.6 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.6.rc2 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.6.rc1 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.5 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.4 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.3 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.2 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.1 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.0 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.0.rc3 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.0.rc2 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.5.0.rc1 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.4.1 lib/locomotive/liquid/tags/link_to.rb
locomotive_cms-2.4.0 lib/locomotive/liquid/tags/link_to.rb