Display the correct ISO week number on the project calendar.
http://en.wikipedia.org/wiki/ISO_week Contributed by Holger Just git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3790 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
b2e903ff7c
commit
41ff1b9cb2
|
@ -6,7 +6,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<% day = calendar.startdt
|
<% day = calendar.startdt
|
||||||
while day <= calendar.enddt %>
|
while day <= calendar.enddt %>
|
||||||
<%= "<td class='week-number' title='#{ l(:label_week) }'>#{day.cweek}</td>" if day.cwday == calendar.first_wday %>
|
<%= "<td class='week-number' title='#{ l(:label_week) }'>#{(day+(11-day.cwday)%7).cweek}</td>" if day.cwday == calendar.first_wday %>
|
||||||
<td class="<%= day.month==calendar.month ? 'even' : 'odd' %><%= ' today' if Date.today == day %>">
|
<td class="<%= day.month==calendar.month ? 'even' : 'odd' %><%= ' today' if Date.today == day %>">
|
||||||
<p class="day-num"><%= day.day %></p>
|
<p class="day-num"><%= day.day %></p>
|
||||||
<% calendar.events_on(day).each do |i| %>
|
<% calendar.events_on(day).each do |i| %>
|
||||||
|
|
|
@ -17,4 +17,48 @@ class CalendarsControllerTest < ActionController::TestCase
|
||||||
assert_not_nil assigns(:calendar)
|
assert_not_nil assigns(:calendar)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_week_number_calculation
|
||||||
|
Setting.start_of_week = 7
|
||||||
|
|
||||||
|
get :show, :month => '1', :year => '2010'
|
||||||
|
assert_response :success
|
||||||
|
|
||||||
|
assert_tag :tag => 'tr',
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'week-number'}, :content => '53'},
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'odd'}, :content => '27'},
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'even'}, :content => '2'}
|
||||||
|
|
||||||
|
assert_tag :tag => 'tr',
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'week-number'}, :content => '1'},
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'odd'}, :content => '3'},
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'even'}, :content => '9'}
|
||||||
|
|
||||||
|
|
||||||
|
Setting.start_of_week = 1
|
||||||
|
get :show, :month => '1', :year => '2010'
|
||||||
|
assert_response :success
|
||||||
|
|
||||||
|
assert_tag :tag => 'tr',
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'week-number'}, :content => '53'},
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'even'}, :content => '28'},
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'even'}, :content => '3'}
|
||||||
|
|
||||||
|
assert_tag :tag => 'tr',
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'week-number'}, :content => '1'},
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'even'}, :content => '4'},
|
||||||
|
:descendant => {:tag => 'td',
|
||||||
|
:attributes => {:class => 'even'}, :content => '10'}
|
||||||
|
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue