Sha256: a4c407e9676761d23aca8891291f12259fd2bac797b3244a20a74f6fa2bfe0c4

Contents?: true

Size: 861 Bytes

Versions: 33

Compression:

Stored size: 861 Bytes

Contents

# frozen_string_literal: true

require "active_support/concern"

module Decidim
  module Debates
    # Common logic to sorting resources
    module Orderable
      extend ActiveSupport::Concern

      included do
        include Decidim::Orderable

        private

        def available_orders
          @available_orders ||= %w(random recent commented updated)
        end

        def default_order
          "updated"
        end

        def reorder(debates)
          case order
          when "recent"
            debates.order("created_at DESC")
          when "commented"
            debates.order("comments_count DESC")
          when "updated"
            debates.order("updated_at DESC")
          when "random"
            debates.order_randomly(random_seed)
          else
            debates
          end
        end
      end
    end
  end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
decidim-debates-0.26.10 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.9 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.8 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.7 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.5 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.4 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.3 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.2 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.1 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.0 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.0.rc2 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.26.0.rc1 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.25.2 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.25.1 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.25.0 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.25.0.rc4 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.25.0.rc3 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.25.0.rc2 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.25.0.rc1 app/controllers/decidim/debates/orderable.rb
decidim-debates-0.24.3 app/controllers/decidim/debates/orderable.rb