From 3477ded32af3d26a9e4ae7910ac0848c0049e175 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sun, 20 Sep 2009 07:24:16 +0000 Subject: [PATCH] Makes tickets and timelogs filters collapsible (UI). git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2891 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/views/issues/calendar.rhtml | 19 ++++++++++--------- app/views/issues/gantt.rhtml | 25 +++++++++++++------------ app/views/issues/index.rhtml | 16 ++++++++++++---- app/views/timelog/_date_range.rhtml | 13 +++++++++++-- app/views/timelog/details.rhtml | 2 +- app/views/timelog/report.rhtml | 2 +- public/images/arrow_collapsed.png | Bin 0 -> 216 bytes public/images/arrow_expanded.png | Bin 0 -> 222 bytes public/javascripts/application.js | 6 ++++++ public/stylesheets/application.css | 11 +++++------ 10 files changed, 59 insertions(+), 35 deletions(-) create mode 100644 public/images/arrow_collapsed.png create mode 100644 public/images/arrow_expanded.png diff --git a/app/views/issues/calendar.rhtml b/app/views/issues/calendar.rhtml index 089482927..000e3cdc4 100644 --- a/app/views/issues/calendar.rhtml +++ b/app/views/issues/calendar.rhtml @@ -1,20 +1,18 @@ <% form_tag({}, :id => 'query_form') do %> <% if @query.new_record? %> -

<%= l(:label_calendar) %>

-
<%= l(:label_filter_plural) %> +

<%= l(:label_calendar) %>

+
+ <%= l(:label_filter_plural) %> +
<%= render :partial => 'queries/filters', :locals => {:query => @query} %> -
+ +
<% else %>

<%=h @query.name %>

<% html_title @query.name %> <% end %> -
<%= l(:label_date_range) %> - <%= select_month(@month, :prefix => "month", :discard_type => true) %> - <%= select_year(@year, :prefix => "year", :discard_type => true) %> -
- -

+

<%= link_to_remote ('« ' + (@month==1 ? "#{month_name(12)} #{@year-1}" : "#{month_name(@month-1)}")), {:update => "content", :url => { :year => (@month==1 ? @year-1 : @year), :month =>(@month==1 ? 12 : @month-1) }}, {:href => url_for(:action => 'calendar', :year => (@month==1 ? @year-1 : @year), :month =>(@month==1 ? 12 : @month-1))} @@ -26,6 +24,9 @@

+<%= select_month(@month, :prefix => "month", :discard_type => true) %> +<%= select_year(@year, :prefix => "year", :discard_type => true) %> + <%= link_to_remote l(:button_apply), { :url => { :set_filter => (@query.new_record? ? 1 : nil) }, :update => "content", diff --git a/app/views/issues/gantt.rhtml b/app/views/issues/gantt.rhtml index 0b38982ce..e1526cc1c 100644 --- a/app/views/issues/gantt.rhtml +++ b/app/views/issues/gantt.rhtml @@ -1,23 +1,18 @@ <% form_tag(params.merge(:month => nil, :year => nil, :months => nil), :id => 'query_form') do %> <% if @query.new_record? %> -

<%=l(:label_gantt)%>

-
<%= l(:label_filter_plural) %> +

<%=l(:label_gantt)%>

+
+ <%= l(:label_filter_plural) %> +
<%= render :partial => 'queries/filters', :locals => {:query => @query} %> -
+ +
<% else %>

<%=h @query.name %>

<% html_title @query.name %> <% end %> -
<%= l(:label_date_range) %> - <%= text_field_tag 'months', @gantt.months, :size => 2 %> - <%= l(:label_months_from) %> - <%= select_month(@gantt.month_from, :prefix => "month", :discard_type => true) %> - <%= select_year(@gantt.year_from, :prefix => "year", :discard_type => true) %> - <%= hidden_field_tag 'zoom', @gantt.zoom %> -
- -

+

<%= if @gantt.zoom < 4 link_to_remote image_tag('zoom_in.png'), {:url => @gantt.params.merge(:zoom => (@gantt.zoom+1)), :update => 'content'}, {:href => url_for(@gantt.params.merge(:zoom => (@gantt.zoom+1)))} else @@ -31,6 +26,12 @@

+<%= text_field_tag 'months', @gantt.months, :size => 2 %> +<%= l(:label_months_from) %> +<%= select_month(@gantt.month_from, :prefix => "month", :discard_type => true) %> +<%= select_year(@gantt.year_from, :prefix => "year", :discard_type => true) %> +<%= hidden_field_tag 'zoom', @gantt.zoom %> + <%= link_to_remote l(:button_apply), { :url => { :set_filter => (@query.new_record? ? 1 : nil) }, :update => "content", diff --git a/app/views/issues/index.rhtml b/app/views/issues/index.rhtml index e74dbafc1..408a00eaa 100644 --- a/app/views/issues/index.rhtml +++ b/app/views/issues/index.rhtml @@ -5,11 +5,19 @@ <% form_tag({ :controller => 'queries', :action => 'new' }, :id => 'query_form') do %> <%= hidden_field_tag('project_id', @project.to_param) if @project %>

-
<%= l(:label_filter_plural) %> - <%= render :partial => 'queries/filters', :locals => {:query => @query} %> +
+ <%= l(:label_filter_plural) %> +
+ <%= render :partial => 'queries/filters', :locals => {:query => @query} %> +
-

<%= l(:field_group_by) %> - <%= select_tag('group_by', options_for_select([[]] + @query.groupable_columns.collect {|c| [c.caption, c.name.to_s]}, @query.group_by)) %>

+

diff --git a/app/views/timelog/_date_range.rhtml b/app/views/timelog/_date_range.rhtml index 9b4557e1f..0375d3457 100644 --- a/app/views/timelog/_date_range.rhtml +++ b/app/views/timelog/_date_range.rhtml @@ -1,4 +1,6 @@ -

<%= l(:label_date_range) %> +
+<%= l(:label_date_range) %> +

<%= radio_button_tag 'period_type', '1', !@free_period %> <%= select_tag 'period', options_for_period_select(params[:period]), @@ -11,9 +13,16 @@ <%= l(:label_date_from_to, :start => (text_field_tag('from', @from, :size => 10) + calendar_for('from')), :end => (text_field_tag('to', @to, :size => 10) + calendar_for('to'))) %> -<%= submit_tag l(:button_apply), :name => nil %>

+
+

+ <%= link_to_remote l(:button_apply), + { :url => { }, + :update => "content", + :with => "Form.serialize('query_form')" + }, :class => 'icon icon-checked' %> +

<% url_params = @free_period ? { :from => @from, :to => @to } : { :period => params[:period] } %> diff --git a/app/views/timelog/details.rhtml b/app/views/timelog/details.rhtml index 20cf8cea4..eecfec2eb 100644 --- a/app/views/timelog/details.rhtml +++ b/app/views/timelog/details.rhtml @@ -6,7 +6,7 @@

<%= l(:label_spent_time) %>

-<% form_remote_tag( :url => {}, :html => {:method => :get}, :method => :get, :update => 'content' ) do %> +<% form_remote_tag( :url => {}, :html => {:method => :get, :id => 'query_form'}, :method => :get, :update => 'content' ) do %> <%# TOOD: remove the project_id and issue_id hidden fields, that information is already in the URI %> <%= hidden_field_tag('project_id', params[:project_id]) if @project %> diff --git a/app/views/timelog/report.rhtml b/app/views/timelog/report.rhtml index 52bd11f48..2107fcf72 100644 --- a/app/views/timelog/report.rhtml +++ b/app/views/timelog/report.rhtml @@ -6,7 +6,7 @@

<%= l(:label_spent_time) %>

-<% form_remote_tag(:url => {}, :html => {:method => :get}, :method => :get, :update => 'content') do %> +<% form_remote_tag(:url => {}, :html => {:method => :get, :id => 'query_form'}, :method => :get, :update => 'content') do %> <% @criterias.each do |criteria| %> <%= hidden_field_tag 'criterias[]', criteria, :id => nil %> <% end %> diff --git a/public/images/arrow_collapsed.png b/public/images/arrow_collapsed.png new file mode 100644 index 0000000000000000000000000000000000000000..abe1f1d2378e7269c34e40d46beb708d714bf387 GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6*h@TpUD;3=*S<)SS9T^xl_H+M9WCilmJzX3_DsCnJIo}{}V92wFNi4{Hl%R9WIF@l20rx^HWYf3^;J|z%hk`3dc_tinTNGEoger z6JKBO>QRA;_2K-s`1qY6r{W$2FkJcH8?5?`b(6$ng${0pH5TG$oU4{G0;3=*S<)SS9T^xl_H+M9WCikbJzX3_DsCnJIo}{}V93MBs$+2M z;Q##+bw+;@ew_Qz`|$R6Cp{k4`}+-xKN@T>EHL