mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-02-20 00:46:23 +00:00
Monotone-Parent: 0f4484bf642d11bc96f9672226ec495c99e2301f Monotone-Revision: b7b4b1f3f729de477db90d41fee55b91ea781b02 Monotone-Author: ludovic@Sophos.ca Monotone-Date: 2008-01-14T13:57:28 Monotone-Branch: ca.inverse.sogo
136 lines
5.1 KiB
JavaScript
136 lines
5.1 KiB
JavaScript
function initializeWindowButtons() {
|
|
var okButton = $("okButton");
|
|
var cancelButton = $("cancelButton");
|
|
|
|
Event.observe(okButton, "click", onEditorOkClick, false);
|
|
Event.observe(cancelButton, "click", onEditorCancelClick, false);
|
|
}
|
|
|
|
function initializeFormValues() {
|
|
$("repeatType").value = parent$("repeatType").value;
|
|
|
|
if ($("repeatType").value == 0) {
|
|
$('recurrence_form').setRadioValue('dailyRadioButtonName', parent$("repeat1").value);
|
|
$('dailyDaysField').value = parent$("repeat2").value;
|
|
}
|
|
else if ($("repeatType").value == 1) {
|
|
$('weeklyWeeksField').value = parent$("repeat1").value;
|
|
$('recurrence_form').setCheckBoxListValues('weeklyCheckBoxName', parent$("repeat2").value);
|
|
}
|
|
else if ($("repeatType").value == 2) {
|
|
$('monthlyMonthsField').value = parent$("repeat1").value;
|
|
$('recurrence_form').setRadioValue('monthlyRadioButtonName', parent$("repeat2").value);
|
|
$('monthlyRepeat').value = parent$("repeat3").value;
|
|
$('monthlyDay').value = parent$("repeat4").value;
|
|
$('recurrence_form').setCheckBoxListValues('monthlyCheckBoxName', parent$("repeat5").value);
|
|
}
|
|
else {
|
|
$('yearlyYearsField').value = parent$("repeat1").value;
|
|
$('recurrence_form').setRadioValue('yearlyRadioButtonName', parent$("repeat2").value);
|
|
$('yearlyDayField').value = parent$("repeat3").value;
|
|
$('yearlyMonth1').value = parent$("repeat4").value;
|
|
$('yearlyRepeat').value = parent$("repeat5").value;
|
|
$('yearlyDay').value = parent$("repeat6").value;
|
|
$('yearlyMonth2').value = parent$("repeat7").value;
|
|
}
|
|
|
|
$('recurrence_form').setRadioValue('rangeRadioButtonName', parent$("range1").value);
|
|
|
|
if (parent$("range1").value == 1) {
|
|
$('rangeAppointmentsField').value = parent$("range2").value;
|
|
}
|
|
else if (parent$("range1").value == 2) {
|
|
$('endDate').value = parent$("range2").value;
|
|
}
|
|
}
|
|
|
|
function onEditorOkClick(event) {
|
|
preventDefault(event);
|
|
var v;
|
|
|
|
parent$("repeatType").value = $("repeatType").value;
|
|
|
|
if ($("repeatType").value == 0) {
|
|
parent$("repeat1").value = $('recurrence_form').getRadioValue('dailyRadioButtonName');
|
|
parent$("repeat2").value = $('dailyDaysField').value;
|
|
|
|
// We check if the dailyDaysField really contains an integer
|
|
v = parseInt(parent$("repeat2").value);
|
|
if (parent$("repeat1").value == 0 && (isNaN(v) || v <= 0)) {
|
|
window.alert("Please specify a numerical value in the Days field greater or equal to 1.");
|
|
return false;
|
|
}
|
|
}
|
|
else if ($("repeatType").value == 1) {
|
|
parent$("repeat1").value = $('weeklyWeeksField').value;
|
|
parent$("repeat2").value = $('recurrence_form').getCheckBoxListValues('weeklyCheckBoxName');
|
|
|
|
// We check if the weeklyWeeksField really contains an integer
|
|
v = parseInt(parent$("repeat1").value);
|
|
if (isNaN(v) || v <= 0) {
|
|
window.alert("Please specify a numerical value in the Week(s) field greater or equal to 1.");
|
|
return false;
|
|
}
|
|
}
|
|
else if ($("repeatType").value == 2) {
|
|
parent$("repeat1").value = $('monthlyMonthsField').value;
|
|
parent$("repeat2").value = $('recurrence_form').getRadioValue('monthlyRadioButtonName');
|
|
parent$("repeat3").value = $('monthlyRepeat').value;
|
|
parent$("repeat4").value = $('monthlyDay').value;
|
|
parent$("repeat5").value = $('recurrence_form').getCheckBoxListValues('monthlyCheckBoxName');
|
|
|
|
// We check if the monthlyMonthsField really contains an integer
|
|
v = parseInt(parent$("repeat1").value);
|
|
if (isNaN(v) || v <= 0) {
|
|
window.alert("Please specify a numerical value in the Month(s) field greater or equal to 1.");
|
|
return false;
|
|
}
|
|
}
|
|
else {
|
|
parent$("repeat1").value = $('yearlyYearsField').value;
|
|
parent$("repeat2").value = $('recurrence_form').getRadioValue('yearlyRadioButtonName');
|
|
parent$("repeat3").value = $('yearlyDayField').value;
|
|
parent$("repeat4").value = $('yearlyMonth1').value;
|
|
parent$("repeat5").value = $('yearlyRepeat').value;
|
|
parent$("repeat6").value = $('yearlyDay').value;
|
|
parent$("repeat7").value = $('yearlyMonth2').value;
|
|
|
|
// We check if the yearlyYearsField really contains an integer
|
|
v = parseInt(parent$("repeat1").value);
|
|
if (isNaN(v) || v <= 0) {
|
|
window.alert("Please specify a numerical value in the Year(s) field greater or equal to 1.");
|
|
return false;
|
|
}
|
|
}
|
|
|
|
parent$("range1").value = $('recurrence_form').getRadioValue('rangeRadioButtonName');
|
|
|
|
if (parent$("range1").value == 1) {
|
|
parent$("range2").value = $('rangeAppointmentsField').value;
|
|
|
|
// We check if the rangeAppointmentsField really contains an integer
|
|
v = parseInt(parent$("range2").value);
|
|
if (isNaN(v) || v <= 0) {
|
|
window.alert("Please specify a numerical value in the Appointment(s) field greater or equal to 1.");
|
|
return false;
|
|
}
|
|
}
|
|
else if (parent$("range1").value == 2) {
|
|
parent$("range2").value = $('endDate').value;
|
|
}
|
|
|
|
window.close();
|
|
}
|
|
|
|
function onEditorCancelClick(event) {
|
|
preventDefault(event);
|
|
window.close();
|
|
}
|
|
|
|
function onRecurrenceLoadHandler() {
|
|
initializeWindowButtons();
|
|
initializeFormValues();
|
|
}
|
|
|
|
FastInit.addOnLoad(onRecurrenceLoadHandler);
|