changed advanced filter from budgets to budgets/investments
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
class BudgetsController < ApplicationController
|
||||
include FeatureFlags
|
||||
include BudgetsHelper
|
||||
include Search
|
||||
feature_flag :budgets
|
||||
|
||||
load_and_authorize_resource
|
||||
|
||||
@@ -5,19 +5,6 @@ module SearchHelper
|
||||
params[:advanced_search].try(:[], :official_level))
|
||||
end
|
||||
|
||||
def budget_phases_search_options
|
||||
selected = params[:advanced_search].nil? ? '' : params[:advanced_search][:budget_phase]
|
||||
options_for_select([
|
||||
[t("budgets.phase.accepting"), 'accepting'],
|
||||
[t("budgets.phase.reviewing"), 'reviewing'],
|
||||
[t("budgets.phase.selecting"), 'selecting'],
|
||||
[t("budgets.phase.valuating"), 'valuating'],
|
||||
[t("budgets.phase.balloting"), 'balloting'],
|
||||
[t("budgets.phase.reviewing_ballots"), 'reviewing_ballots'],
|
||||
[t("budgets.phase.finished"), 'finished']],
|
||||
selected)
|
||||
end
|
||||
|
||||
def date_range_options
|
||||
options_for_select([
|
||||
[t("shared.advanced_search.date_1"), 1],
|
||||
|
||||
@@ -44,24 +44,6 @@ class Budget < ActiveRecord::Base
|
||||
phases.published.order(:id)
|
||||
end
|
||||
|
||||
scope :by_date_range, ->(date_range) { where(created_at: date_range) }
|
||||
|
||||
def self.search(terms)
|
||||
if terms.values.delete_if(&:blank?).empty?
|
||||
Budget.none
|
||||
else
|
||||
Budget.search_by_phase(terms[:phase]).by_date_range(terms[:date_range]).all
|
||||
end
|
||||
end
|
||||
|
||||
def self.search_by_phase(phase)
|
||||
if phase.empty?
|
||||
Budget
|
||||
else
|
||||
Budget.send(phase)
|
||||
end
|
||||
end
|
||||
|
||||
def description
|
||||
description_for_phase(phase)
|
||||
end
|
||||
|
||||
@@ -21,6 +21,7 @@ class Budget
|
||||
include ActsAsParanoidAliases
|
||||
include Relationable
|
||||
include Notifiable
|
||||
include Filterable
|
||||
|
||||
belongs_to :author, -> { with_hidden }, class_name: 'User', foreign_key: 'author_id'
|
||||
belongs_to :heading
|
||||
@@ -258,9 +259,10 @@ class Budget
|
||||
|
||||
def self.apply_filters_and_search(_budget, params, current_filter = nil)
|
||||
investments = all
|
||||
investments = investments.send(current_filter) if current_filter.present?
|
||||
investments = investments.by_heading(params[:heading_id]) if params[:heading_id].present?
|
||||
investments = investments.search(params[:search]) if params[:search].present?
|
||||
investments = investments.send(current_filter) if current_filter.present?
|
||||
investments = investments.by_heading(params[:heading_id]) if params[:heading_id].present?
|
||||
investments = investments.search(params[:search]) if params[:search].present?
|
||||
investments = investments.filter(params[:advanced_search]) if params[:advanced_search].present?
|
||||
investments
|
||||
end
|
||||
|
||||
|
||||
@@ -1,51 +0,0 @@
|
||||
<div class="relative">
|
||||
<%= link_to t("shared.advanced_search.title"), "#advanced_search_form", id: 'js-advanced-search-title', class: "advanced-search small" %>
|
||||
</div>
|
||||
|
||||
<div class="row advanced-search-form">
|
||||
<%= form_tag search_path, id: "advanced_search_form", method: :get do %>
|
||||
<div id='js-advanced-search' data-advanced-search-terms=<%= @advanced_search_terms.present? %> style="display: none">
|
||||
|
||||
<div class="small-12 large-3 column">
|
||||
<label for="advanced_search_budget_phase"><%= t("shared.advanced_search.phase") %></label>
|
||||
<%= select_tag('advanced_search[budget_phase]', budget_phases_search_options,
|
||||
include_blank: t("shared.advanced_search.phase_blank")) %>
|
||||
</div>
|
||||
|
||||
<div class="small-12 large-9">
|
||||
<div class="small-12 large-4 column">
|
||||
<label for="js-advanced-search-date-min"><%= t("shared.advanced_search.date") %></label>
|
||||
<%= select_tag('advanced_search[date_min]', date_range_options,
|
||||
include_blank: t("shared.advanced_search.date_range_blank"),
|
||||
id: 'js-advanced-search-date-min') %>
|
||||
</div>
|
||||
|
||||
<div id='js-custom-date' class='small-12 large-8 column' style="display: none">
|
||||
<div class="row">
|
||||
<div class='small-12 large-6 column'>
|
||||
<label for="advanced_search_date_min">
|
||||
<%= t("shared.advanced_search.from") %> (<%= t("shared.advanced_search.date_placeholder") %>)
|
||||
</label>
|
||||
<%= text_field_tag 'advanced_search[date_min]',
|
||||
params[:advanced_search].try(:[], :date_min),
|
||||
class: 'js-calendar' %>
|
||||
</div>
|
||||
<div class='small-12 large-6 column'>
|
||||
<label for="advanced_search_date_max">
|
||||
<%= t("shared.advanced_search.to") %> (<%= t("shared.advanced_search.date_placeholder") %>)
|
||||
</label>
|
||||
<%= text_field_tag 'advanced_search[date_max]',
|
||||
params[:advanced_search].try(:[], :date_max),
|
||||
class: 'js-calendar' %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="small-12 medium-3 column end clear">
|
||||
<%= submit_tag t("shared.advanced_search.search"), class: 'button expanded' %>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -18,7 +18,7 @@
|
||||
<%= render '/budgets/investments/header' %>
|
||||
<% end %>
|
||||
|
||||
<% if params[:search].present? %>
|
||||
<% if params[:search].present? || params[:advanced_search].present? %>
|
||||
<div class="highlight no-margin-top padding margin-bottom">
|
||||
<div class="row">
|
||||
<div class="small-12 column">
|
||||
@@ -49,6 +49,8 @@
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<%= render("shared/advanced_search", search_path: budget_investments_url(@budget)) %>
|
||||
|
||||
<%= render('shared/order_links', i18n_namespace: "budgets.investments.index") unless @current_filter == "unfeasible" %>
|
||||
|
||||
<% @investments.each do |investment| %>
|
||||
|
||||
Reference in New Issue
Block a user