Sha256: 7b890d59eb9d0128c6c7bc1dbbc7df715fe834045e1d06d07298d97173829b50

Contents?: true

Size: 1008 Bytes

Versions: 89

Compression:

Stored size: 1008 Bytes

Contents

module RedmineExtensions
  module Export
    class EasyOtherFormatsBuilder
      def initialize(view)
        @view = view
      end

      # Creates a link tag of the given +name+ using for named format.
      # +query+ parameters follow +name+
      # last parameter +options+ contains *caption* or +url+ *Hash*

      # +name+, +query+, +options+
      def link_to(name, *args)
        options = args.extract_options!
        format = name.to_s.downcase
        query = args.shift
        url = options.delete(:url) || {}
        url.stringify_keys!

        params = @view.params.except('page', 'controller', 'action').merge(:format => format)
        if query && url.blank?
          url = query.path(params)
        else
          url = params.merge(url)
        end
        caption = options.delete(:caption) || name
        html_options = { :class => format, :rel => 'nofollow' }.merge(options)
        @view.content_tag('span', @view.link_to(caption, url, html_options))
      end
    end
  end
end

Version data entries

89 entries across 89 versions & 1 rubygems

Version Path
redmine_extensions-1.2.0 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-1.1.2 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-1.1.1 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-1.1.0 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-1.0.0 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.6.3 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.6.2 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.6.1 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.6.0 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.4.5 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.5.1 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.4.4 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.4.3 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.4.1 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.4.0 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.4.0.beta lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.3.11 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.3.10 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.3.9 lib/redmine_extensions/export/easy_other_formats_builder.rb
redmine_extensions-0.3.8 lib/redmine_extensions/export/easy_other_formats_builder.rb