Patch by Mizuki ISHIKAWA. git-svn-id: http://svn.redmine.org/redmine/trunk@18346 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/4.1.0
@@ -298,6 +298,42 @@ module ApplicationHelper | |||
link_to(name, "#", :onclick => onclick) | |||
end | |||
def link_to_previous_month(year, month, options={}) | |||
target_year, target_month = if month == 1 | |||
[year - 1, 12] | |||
else | |||
[year, month - 1] | |||
end | |||
name = if target_month == 12 | |||
"#{month_name(target_month)} #{target_year}" | |||
else | |||
month_name(target_month) | |||
end | |||
link_to_month(("« " + name), target_year, target_month, options) | |||
end | |||
def link_to_next_month(year, month, options={}) | |||
target_year, target_month = if month == 12 | |||
[year + 1, 1] | |||
else | |||
[year, month + 1] | |||
end | |||
name = if target_month == 1 | |||
"#{month_name(target_month)} #{target_year}" | |||
else | |||
month_name(target_month) | |||
end | |||
link_to_month((name + " »"), target_year, target_month, options) | |||
end | |||
def link_to_month(link_name, year, month, options={}) | |||
link_to(link_name, {:params => request.query_parameters.merge(:year => year, :month => month)}, options) | |||
end | |||
# Used to format item titles on the activity view | |||
def format_activity_title(text) | |||
text |
@@ -20,44 +20,6 @@ | |||
module CalendarsHelper | |||
include Redmine::Utils::DateCalculation | |||
def link_to_previous_month(year, month, options={}) | |||
target_year, target_month = if month == 1 | |||
[year - 1, 12] | |||
else | |||
[year, month - 1] | |||
end | |||
name = if target_month == 12 | |||
"#{month_name(target_month)} #{target_year}" | |||
else | |||
"#{month_name(target_month)}" | |||
end | |||
# \xc2\xab(utf-8) = « | |||
link_to_month(("\xc2\xab " + name), target_year, target_month, options) | |||
end | |||
def link_to_next_month(year, month, options={}) | |||
target_year, target_month = if month == 12 | |||
[year + 1, 1] | |||
else | |||
[year, month + 1] | |||
end | |||
name = if target_month == 1 | |||
"#{month_name(target_month)} #{target_year}" | |||
else | |||
"#{month_name(target_month)}" | |||
end | |||
# \xc2\xbb(utf-8) = » | |||
link_to_month((name + " \xc2\xbb"), target_year, target_month, options) | |||
end | |||
def link_to_month(link_name, year, month, options={}) | |||
link_to(link_name, {:params => request.query_parameters.merge(:year => year, :month => month)}, options) | |||
end | |||
def calendar_day_css_classes(calendar, day) | |||
css = day.month==calendar.month ? +'even' : +'odd' | |||
css << " today" if User.current.today == day |
@@ -70,8 +70,13 @@ | |||
</div> | |||
<p class="contextual"> | |||
<%= gantt_zoom_link(@gantt, :in) %> | |||
<%= gantt_zoom_link(@gantt, :out) %> | |||
<span> | |||
<%= gantt_zoom_link(@gantt, :in) %> | |||
<%= gantt_zoom_link(@gantt, :out) %> | |||
</span> | |||
<span> | |||
<%= link_to_previous_month(@gantt.year_from, @gantt.month_from, :accesskey => accesskey(:previous)) %> | <%= link_to_next_month(@gantt.year_from, @gantt.month_from, :accesskey => accesskey(:next)) %> | |||
</span> | |||
</p> | |||
<p class="buttons"> |
@@ -47,7 +47,11 @@ class GanttsControllerTest < Redmine::ControllerTest | |||
assert_select 'fieldset#filters.collapsible' | |||
assert_select 'fieldset#options' | |||
end | |||
assert_select 'p.contextual' | |||
assert_select 'p.contextual' do | |||
prev_month, next_month = User.current.today.prev_month, User.current.today.next_month | |||
assert_select 'a[accesskey="p"][href=?]', project_gantt_path(:project_id => 1, :month => prev_month.month, :year => prev_month.year) | |||
assert_select 'a[accesskey="n"][href=?]', project_gantt_path(:project_id => 1, :month => next_month.month, :year => next_month.year) | |||
end | |||
assert_select 'p.buttons' | |||
end | |||
end |