app/models/decidim/proposals/proposal.rb in decidim-proposals-0.28.0 vs app/models/decidim/proposals/proposal.rb in decidim-proposals-0.28.1

- old
+ new

@@ -95,15 +95,15 @@ scope :voted_by, lambda { |user| includes(:votes).where(decidim_proposals_proposal_votes: { decidim_author_id: user }) } scope :sort_by_valuation_assignments_count_asc, lambda { - order(Arel.sql("#{sort_by_valuation_assignments_count_nulls_last_query} ASC NULLS FIRST").to_s) + order(valuation_assignments_count: :asc) } scope :sort_by_valuation_assignments_count_desc, lambda { - order(Arel.sql("#{sort_by_valuation_assignments_count_nulls_last_query} DESC NULLS LAST").to_s) + order(valuation_assignments_count: :desc) } scope_search_multi :with_any_state, [:accepted, :rejected, :evaluating, :state_not_published, :state_published] def self.with_valuation_assigned_to(user, space) @@ -330,21 +330,9 @@ published_at.nil? end def self.ransack(params = {}, options = {}) ProposalSearch.new(self, params, options) - end - - # Defines the base query so that ransack can actually sort by this value - def self.sort_by_valuation_assignments_count_nulls_last_query - <<-SQL.squish - ( - SELECT COUNT(decidim_proposals_valuation_assignments.id) - FROM decidim_proposals_valuation_assignments - WHERE decidim_proposals_valuation_assignments.decidim_proposal_id = decidim_proposals_proposals.id - GROUP BY decidim_proposals_valuation_assignments.decidim_proposal_id - ) - SQL end # method to filter by assigned valuator role ID def self.valuator_role_ids_has(value) query = <<-SQL.squish