diff options
author | Gareth Rees <gareth@mysociety.org> | 2015-01-07 10:46:23 +0000 |
---|---|---|
committer | Gareth Rees <gareth@mysociety.org> | 2015-01-08 17:02:07 +0000 |
commit | 620586485d29c0c1cce3df06dd1ac18af3da920b (patch) | |
tree | f34144939e290851d962485312c76f3d80898d01 | |
parent | 1c12c4f2dcd03a042af7c49721bff8523d35bf2d (diff) |
Extract request filter fields to a partial
- Extracts the filters to a separate partial.
- Existing layout is maintained by rendering the new filters partial
in to the search form partial through a local variable.
-rw-r--r-- | app/views/public_body/show.html.erb | 3 | ||||
-rw-r--r-- | app/views/request/_request_filter_form.html.erb | 35 | ||||
-rw-r--r-- | app/views/request/_request_search_form.html.erb | 23 | ||||
-rw-r--r-- | app/views/request/list.html.erb | 6 |
4 files changed, 8 insertions, 59 deletions
diff --git a/app/views/public_body/show.html.erb b/app/views/public_body/show.html.erb index 1c6e83b5d..1dad1deb6 100644 --- a/app/views/public_body/show.html.erb +++ b/app/views/public_body/show.html.erb @@ -92,7 +92,8 @@ <a name="results"></a> <% if @public_body.info_requests.size > 4 %> - <%= render :partial => 'request/request_search_form' %> + <%= render :partial => 'request/request_search_form', + :locals => { :after_form_fields => render(:partial => 'request/request_filter_form') } %> <% end %> <% end %> diff --git a/app/views/request/_request_filter_form.html.erb b/app/views/request/_request_filter_form.html.erb index 090db01df..ced2aa501 100644 --- a/app/views/request/_request_filter_form.html.erb +++ b/app/views/request/_request_filter_form.html.erb @@ -1,30 +1,3 @@ -<%= render :partial => 'general/localised_datepicker' %> - -<div id="list-filter"> - <%= form_tag(request.path, :method => "get", :id=>"filter_requests_form") do %> - <div class="list-filter-item"> - <%= label_tag(:query, _("Keywords"), :class=>"form_label title") %> - <%= text_field_tag(:query, params[:query]) %> - </div> -<% if false # don't think we want this, but leaving as an example %> - <div class="list-filter-item"> - <%= _("Search for words in:") %> <br/> - <% [["sent", _("messages from users")], - ["response", _("messages from authorities")], - ["comment", _("comments")]].each_with_index do |item, index| - variety, title = item %> - - <%= check_box_tag "request_variety[]", variety, params[:request_variety].nil? ? true : params[:request_variety].include?(variety), :id => "request_variety_#{index}" %> - <%= label_tag("request_variety_#{index}", title) %> <br/> - <% end %> - </div> -<% end %> - <div class="list-filter-item"> - <%= label_tag(:query, _("Made between"), :class=>"form_label title") %> - <%= text_field_tag(:request_date_after, params[:request_date_after], {:class => "use-datepicker", :size => 10}) %> - <%= label_tag(:query, _("and"), :class=>"form_label") %> - <%= text_field_tag(:request_date_before, params[:request_date_before], {:class => "use-datepicker", :size => 10}) %> - </div> <div class="list-filter-item"> <h3 class="title"><%= _("Showing") %></h3> <div class="filter-request-types"> @@ -45,10 +18,4 @@ <%= "|" unless statuses.last[0] == status %> <% end %> </div> - </div> - - <div class="list-filter-item"> - <%= submit_tag(_("Search")) %> - </div> -<% end %> -</div> + </div>
\ No newline at end of file diff --git a/app/views/request/_request_search_form.html.erb b/app/views/request/_request_search_form.html.erb index 090db01df..3f2f66950 100644 --- a/app/views/request/_request_search_form.html.erb +++ b/app/views/request/_request_search_form.html.erb @@ -25,27 +25,8 @@ <%= label_tag(:query, _("and"), :class=>"form_label") %> <%= text_field_tag(:request_date_before, params[:request_date_before], {:class => "use-datepicker", :size => 10}) %> </div> - <div class="list-filter-item"> - <h3 class="title"><%= _("Showing") %></h3> - <div class="filter-request-types"> - <% statuses = [["all", _("all requests")], - ["successful", _("successful requests")], - ["unsuccessful", _("unsuccessful requests")], - ["awaiting", _("unresolved requests")]] %> - <% for status, label in statuses %> - <% if params[:view] != status %> - <% if params[:controller] == "public_body" %> - <%= link_to label, url_for(:controller => "public_body", :action => "show", :view => status, :url_name => @public_body.url_name) + "?" + request.query_string + '#results' %> - <% else %> - <%= link_to label, url_for(:controller => "request", :action => "list", :view => status) + "?" + request.query_string + '#results' %> - <% end %> - <% else %> - <%= label %> - <% end %> - <%= "|" unless statuses.last[0] == status %> - <% end %> - </div> - </div> + + <%= after_form_fields if defined?(after_form_fields) -%> <div class="list-filter-item"> <%= submit_tag(_("Search")) %> diff --git a/app/views/request/list.html.erb b/app/views/request/list.html.erb index 3ec7190e5..75cb463ef 100644 --- a/app/views/request/list.html.erb +++ b/app/views/request/list.html.erb @@ -1,7 +1,7 @@ - <div id="header_left"> - <h1><%=@title%></h1> - <%= render :partial => 'request/request_search_form' %> + <h1><%= @title %></h1> + <%= render :partial => 'request/request_search_form', + :locals => { :after_form_fields => render(:partial => 'request/request_filter_form') } %> </div> <div id="header_right"> |