mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-17 15:50:13 +01:00
fix for the two issues in #852
* the end date is prefilled with an incorrect formatted date * if the radio for ends_on is not selected, but a date is entered, tracks incorrectly behaves as if ends_on was checked
This commit is contained in:
parent
f4f2573f98
commit
239b38cb15
4 changed files with 6 additions and 5 deletions
|
|
@ -596,7 +596,7 @@ class RecurringTodo < ActiveRecord::Base
|
||||||
unless self.number_of_occurences.nil?
|
unless self.number_of_occurences.nil?
|
||||||
return self.occurences_count < self.number_of_occurences
|
return self.occurences_count < self.number_of_occurences
|
||||||
else
|
else
|
||||||
if self.end_date.nil?
|
if self.end_date.nil? || self.ends_on == 'no_end_date'
|
||||||
return true
|
return true
|
||||||
else
|
else
|
||||||
case self.target
|
case self.target
|
||||||
|
|
|
||||||
|
|
@ -78,7 +78,7 @@
|
||||||
<label for="recurring_todo[ends_on]">Ends on:</label><br/>
|
<label for="recurring_todo[ends_on]">Ends on:</label><br/>
|
||||||
<%= radio_button_tag('recurring_todo[ends_on]', 'no_end_date', true)%> No end date<br/>
|
<%= radio_button_tag('recurring_todo[ends_on]', 'no_end_date', true)%> No end date<br/>
|
||||||
<%= radio_button_tag('recurring_todo[ends_on]', 'ends_on_number_of_times')%> Ends after <%= text_field( :recurring_todo, :number_of_occurences, "size" => 3, "tabindex" => 7) %> times<br/>
|
<%= radio_button_tag('recurring_todo[ends_on]', 'ends_on_number_of_times')%> Ends after <%= text_field( :recurring_todo, :number_of_occurences, "size" => 3, "tabindex" => 7) %> times<br/>
|
||||||
<%= radio_button_tag('recurring_todo[ends_on]', 'ends_on_end_date')%> Ends on <%= text_field(:recurring_todo, :end_date, "size" => 12, "class" => "Date", "onfocus" => "Calendar.setup", "tabindex" => 8, "autocomplete" => "off") %><br/>
|
<%= radio_button_tag('recurring_todo[ends_on]', 'ends_on_end_date')%> Ends on <%= text_field(:recurring_todo, :end_date, "size" => 12, "class" => "Date", "onfocus" => "Calendar.setup", "tabindex" => 8, "autocomplete" => "off", "value" => "") %><br/>
|
||||||
</div></div>
|
</div></div>
|
||||||
<div id="recurring_daily" style="display:block">
|
<div id="recurring_daily" style="display:block">
|
||||||
<label>Settings for daily recurring actions</label><br/>
|
<label>Settings for daily recurring actions</label><br/>
|
||||||
|
|
|
||||||
|
|
@ -155,7 +155,7 @@ class RecurringTodosControllerTest < ActionController::TestCase
|
||||||
"recurring_period"=>"yearly",
|
"recurring_period"=>"yearly",
|
||||||
"recurring_show_days_before"=>"0",
|
"recurring_show_days_before"=>"0",
|
||||||
"recurring_target"=>"due_date",
|
"recurring_target"=>"due_date",
|
||||||
"start_from"=>"",
|
"start_from"=>"1/10/2012", # adjust after 2012
|
||||||
"weekly_every_x_week"=>"1",
|
"weekly_every_x_week"=>"1",
|
||||||
"weekly_return_monday"=>"w",
|
"weekly_return_monday"=>"w",
|
||||||
"yearly_day_of_week"=>"0",
|
"yearly_day_of_week"=>"0",
|
||||||
|
|
@ -176,8 +176,8 @@ class RecurringTodosControllerTest < ActionController::TestCase
|
||||||
new_todo = Todo.find_by_description("new recurring pattern")
|
new_todo = Todo.find_by_description("new recurring pattern")
|
||||||
assert !new_todo.nil?
|
assert !new_todo.nil?
|
||||||
|
|
||||||
# the date should be 29 march 2009
|
# the date should be 31 march 2013
|
||||||
assert_equal Time.zone.local(2009,3,29), new_todo.due
|
assert_equal Time.zone.local(2013,3,31), new_todo.due
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -81,6 +81,7 @@ class RecurringTodoTest < Test::Rails::TestCase
|
||||||
assert_equal true, @every_day.has_next_todo(@in_three_days)
|
assert_equal true, @every_day.has_next_todo(@in_three_days)
|
||||||
assert_equal true, @every_day.has_next_todo(@in_four_days)
|
assert_equal true, @every_day.has_next_todo(@in_four_days)
|
||||||
@every_day.end_date = @in_four_days
|
@every_day.end_date = @in_four_days
|
||||||
|
@every_day.ends_on = 'ends_on_end_date'
|
||||||
assert_equal false, @every_day.has_next_todo(@in_four_days)
|
assert_equal false, @every_day.has_next_todo(@in_four_days)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue