From 0e0b7728fd742f69025634b311be66c020710b4f Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 11 Jan 2013 09:46:58 -0500 Subject: [PATCH] Fix until date in event recurrence editor - fixed date picker - fixed JavaScript error caused by French translation - fixed until date definition when timezone of active user was different from the system timezone - fixes #2173, fixes #2175 --- UI/Scheduler/French.lproj/Localizable.strings | 2 +- UI/Scheduler/UIxComponentEditor.m | 10 ++++++++++ .../SchedulerUI/UIxRecurrenceEditor.wox | 3 ++- UI/WebServerResources/UIxRecurrenceEditor.css | 2 +- UI/WebServerResources/UIxRecurrenceEditor.js | 18 +++++++++--------- 5 files changed, 23 insertions(+), 12 deletions(-) diff --git a/UI/Scheduler/French.lproj/Localizable.strings b/UI/Scheduler/French.lproj/Localizable.strings index 9d84f0d35..f6fcbe825 100644 --- a/UI/Scheduler/French.lproj/Localizable.strings +++ b/UI/Scheduler/French.lproj/Localizable.strings @@ -511,7 +511,7 @@ vtodo_class2 = "(Tâche confidentielle)"; "monthDayFieldInvalid" = "Veuillez spécifier un chiffre supérieur ou égal à 1 dans la journée du mois."; "yearFieldInvalid" = "Veuillez spécifier un chiffre supérieur ou égal à 1 dans le champ Année(s)."; "appointmentFieldInvalid" = "Veuillez spécifier un chiffre supérieur ou égal à 1 dans le champ rendez-vous."; -"recurrenceUnsupported" = "Ce type de récurrence n\'est pas supporté."; +"recurrenceUnsupported" = "Ce type de récurrence n\\\'est pas supporté."; "Please specify a calendar name." = "Veuillez définir un nom au calendrier."; "tagNotDefined" = "Vous devez spécifier un label si vous désirez synchroniser ce calendrier."; "tagAlreadyExists" = "Le label spécifié est déjà associé à un autre calendrier. Choisissez-en un autre."; diff --git a/UI/Scheduler/UIxComponentEditor.m b/UI/Scheduler/UIxComponentEditor.m index 9aef4cb05..163e8783e 100644 --- a/UI/Scheduler/UIxComponentEditor.m +++ b/UI/Scheduler/UIxComponentEditor.m @@ -1917,10 +1917,20 @@ RANGE(2); else if (range == 2) { NSCalendarDate *date; + SOGoUserDefaults *ud; date = [NSCalendarDate dateWithString: [self range2] calendarFormat: dateFormat locale: locale]; + + // Adjust timezone + ud = [[context activeUser] userDefaults]; + date = [NSCalendarDate dateWithYear: [date yearOfCommonEra] + month: [date monthOfYear] + day: [date dayOfYear] + hour: 0 minute: 0 second: 0 + timeZone: [ud timeZone]]; + [theRule setUntilDate: date]; } // No end date. diff --git a/UI/Templates/SchedulerUI/UIxRecurrenceEditor.wox b/UI/Templates/SchedulerUI/UIxRecurrenceEditor.wox index cf62dd56d..7ced27de7 100644 --- a/UI/Templates/SchedulerUI/UIxRecurrenceEditor.wox +++ b/UI/Templates/SchedulerUI/UIxRecurrenceEditor.wox @@ -10,7 +10,8 @@ className="UIxPageFrame" const:toolbar="none" const:popup="YES" - const:jsFiles="skycalendar.js"> + const:cssFiles="datepicker.css" + const:jsFiles="datepicker.js">