Sha256: c1752536cbaa6624fe3d00eb0f7e837e3619e62535211aef31ad4ef2f4032f8b

Contents?: true

Size: 531 Bytes

Versions: 3

Compression:

Stored size: 531 Bytes

Contents

module BazaModels::Helpers::RansackerHelper
  def bm_sort_link(ransacker, attribute)
    require "html_gen"

    label = ransacker.klass.human_attribute_name(attribute)

    new_params = params.clone
    new_params[:q] ||= {}

    sort_asc = "#{attribute} asc"

    if new_params[:q][:s] == sort_asc
      new_params[:q][:s] = "#{attribute} desc"
    else
      new_params[:q][:s] = sort_asc
    end

    href = url_for(new_params)

    element = HtmlGen::Element.new(:a, str: label, attr: {href: href})
    element.html
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
baza_models-0.0.6 lib/baza_models/helpers/ransacker_helper.rb
baza_models-0.0.5 lib/baza_models/helpers/ransacker_helper.rb
baza_models-0.0.4 lib/baza_models/helpers/ransacker_helper.rb