fix validations for daily pattern and fix disappearing target fields for recurring todos

This commit is contained in:
Reinier Balt 2010-04-23 17:13:03 +02:00
parent 38f0cf1b7a
commit 06ac3067d3
2 changed files with 9 additions and 16 deletions

View file

@ -47,8 +47,7 @@ class RecurringTodo < ActiveRecord::Base
end end
def validate_daily def validate_daily
errors.add_to_base("Please choose a recurrence setting") if daily_selector.nil? || daily_selector.blank? if (!only_work_days) && (daily_every_x_days.nil? || daily_every_x_days.blank?)
if (daily_selector == "daily_every_x_day") && (daily_every_x_days.nil? || daily_every_x_days.blank?)
errors.add_to_base("Every other nth day may not be empty for recurrence setting") errors.add_to_base("Every other nth day may not be empty for recurrence setting")
end end
end end

View file

@ -14,16 +14,14 @@ var TracksForm = {
toggleDiv.toggleClass('hide_form'); toggleDiv.toggleClass('hide_form');
}, },
hide_all_recurring: function () { hide_all_recurring: function () {
$('#recurring_daily').hide(); $.each(['daily', 'weekly', 'monthly', 'yearly'], function(){
$('#recurring_weekly').hide(); $('#recurring_'+this).hide();
$('#recurring_monthly').hide(); });
$('#recurring_yearly').hide();
}, },
hide_all_edit_recurring: function () { hide_all_edit_recurring: function () {
$('#recurring_edit_daily').hide(); $.each(['daily', 'weekly', 'monthly', 'yearly'], function(){
$('#recurring_edit_weekly').hide(); $('#recurring_edit_'+this).hide();
$('#recurring_edit_monthly').hide(); });
$('#recurring_edit_yearly').hide();
}, },
toggle_overlay: function () { toggle_overlay: function () {
el = document.getElementById("overlay"); el = document.getElementById("overlay");
@ -435,16 +433,12 @@ $(document).ready(function() {
TracksForm.toggle_overlay(); TracksForm.toggle_overlay();
}); });
$("#recurring_edit_period input").live('click', function(){ $("#recurring_edit_period input").live('click', function(){
$.each(['daily', 'weekly', 'monthly', 'yearly'], function(){ TracksForm.hide_all_edit_recurring();
$('#recurring_edit_'+this).hide();
});
$('#recurring_edit_'+this.id.split('_')[5]).show(); $('#recurring_edit_'+this.id.split('_')[5]).show();
}); });
$("#recurring_period input").live('click', function(){ $("#recurring_period input").live('click', function(){
$.each(['daily', 'weekly', 'monthly', 'yearly', 'target'], function(){ TracksForm.hide_all_recurring();
$('#recurring_'+this).hide();
});
$('#recurring_'+this.id.split('_')[4]).show(); $('#recurring_'+this.id.split('_')[4]).show();
}); });