in Office365APIEditor/UI/CreateEventForm.cs [222:337]
private void UpdateRecurringSetting(DateTime newStartDate)
{
// Update reccuring settings
if (!checkBox_Recurring_IsRecurring.Checked)
{
checkBox_Recurring_Pattern_Weekly_Sunday.Checked = false;
checkBox_Recurring_Pattern_Weekly_Monday.Checked = false;
checkBox_Recurring_Pattern_Weekly_Tuesday.Checked = false;
checkBox_Recurring_Pattern_Weekly_Wednesday.Checked = false;
checkBox_Recurring_Pattern_Weekly_Thursday.Checked = false;
checkBox_Recurring_Pattern_Weekly_Friday.Checked = false;
checkBox_Recurring_Pattern_Weekly_Saturday.Checked = false;
if (comboBox_Recurring_Pattern_Monthly_DayOfTheMonth.Items.Count == 31)
{
comboBox_Recurring_Pattern_Monthly_DayOfTheMonth.SelectedItem = newStartDate.Day;
}
var tempDayOfWeekIndex = (int)(Math.Ceiling(newStartDate.Day / 7.0) - 1.0);
if (newStartDate.AddDays(7).Month != newStartDate.Month)
{
tempDayOfWeekIndex = 4; // Last
}
if (comboBox_Recurring_Pattern_Monthly_DayOfWeekIndex.Items.Count == 5)
{
comboBox_Recurring_Pattern_Monthly_DayOfWeekIndex.SelectedIndex = tempDayOfWeekIndex;
}
checkBox_Recurring_Pattern_Monthly_Sunday.Checked = false;
checkBox_Recurring_Pattern_Monthly_Monday.Checked = false;
checkBox_Recurring_Pattern_Monthly_Tuesday.Checked = false;
checkBox_Recurring_Pattern_Monthly_Wednesday.Checked = false;
checkBox_Recurring_Pattern_Monthly_Thursday.Checked = false;
checkBox_Recurring_Pattern_Monthly_Friday.Checked = false;
checkBox_Recurring_Pattern_Monthly_Saturday.Checked = false;
if (comboBox_Recurring_Pattern_Yearly_Absolute_Month.Items.Count == 12)
{
comboBox_Recurring_Pattern_Yearly_Absolute_Month.SelectedIndex = newStartDate.Month - 1;
}
if (comboBox_Recurring_Pattern_Yearly_Absolute_Day.Items.Count == 31)
{
comboBox_Recurring_Pattern_Yearly_Absolute_Day.SelectedIndex = newStartDate.Day - 1;
}
if (comboBox_Recurring_Pattern_Yearly_Relative_DayOfWeekIndex.Items.Count == 5)
{
comboBox_Recurring_Pattern_Yearly_Relative_DayOfWeekIndex.SelectedIndex = tempDayOfWeekIndex;
}
if (comboBox_Recurring_Pattern_Yearly_Relative_Month.Items.Count == 12)
{
comboBox_Recurring_Pattern_Yearly_Relative_Month.SelectedIndex = newStartDate.Month - 1;
}
checkBox_Recurring_Pattern_Yearly_Sunday.Checked = false;
checkBox_Recurring_Pattern_Yearly_Monday.Checked = false;
checkBox_Recurring_Pattern_Yearly_Tuesday.Checked = false;
checkBox_Recurring_Pattern_Yearly_Wednesday.Checked = false;
checkBox_Recurring_Pattern_Yearly_Thursday.Checked = false;
checkBox_Recurring_Pattern_Yearly_Friday.Checked = false;
checkBox_Recurring_Pattern_Yearly_Saturday.Checked = false;
switch (newStartDate.DayOfWeek)
{
case DayOfWeek.Sunday:
checkBox_Recurring_Pattern_Weekly_Sunday.Checked = true;
checkBox_Recurring_Pattern_Monthly_Sunday.Checked = true;
checkBox_Recurring_Pattern_Yearly_Sunday.Checked = true;
break;
case DayOfWeek.Monday:
checkBox_Recurring_Pattern_Weekly_Monday.Checked = true;
checkBox_Recurring_Pattern_Monthly_Monday.Checked = true;
checkBox_Recurring_Pattern_Yearly_Monday.Checked = true;
break;
case DayOfWeek.Tuesday:
checkBox_Recurring_Pattern_Weekly_Tuesday.Checked = true;
checkBox_Recurring_Pattern_Monthly_Tuesday.Checked = true;
checkBox_Recurring_Pattern_Yearly_Tuesday.Checked = true;
break;
case DayOfWeek.Wednesday:
checkBox_Recurring_Pattern_Weekly_Wednesday.Checked = true;
checkBox_Recurring_Pattern_Monthly_Wednesday.Checked = true;
checkBox_Recurring_Pattern_Yearly_Wednesday.Checked = true;
break;
case DayOfWeek.Thursday:
checkBox_Recurring_Pattern_Weekly_Thursday.Checked = true;
checkBox_Recurring_Pattern_Monthly_Thursday.Checked = true;
checkBox_Recurring_Pattern_Yearly_Thursday.Checked = true;
break;
case DayOfWeek.Friday:
checkBox_Recurring_Pattern_Weekly_Friday.Checked = true;
checkBox_Recurring_Pattern_Monthly_Friday.Checked = true;
checkBox_Recurring_Pattern_Yearly_Friday.Checked = true;
break;
case DayOfWeek.Saturday:
checkBox_Recurring_Pattern_Weekly_Saturday.Checked = true;
checkBox_Recurring_Pattern_Monthly_Saturday.Checked = true;
checkBox_Recurring_Pattern_Yearly_Saturday.Checked = true;
break;
default:
break;
}
}
if (dateTimePicker_Recurring_Range_EndByDate.Value.Date < newStartDate)
{
// The end date of recurring must be in the future.
dateTimePicker_Recurring_Range_EndByDate.MinDate = newStartDate;
dateTimePicker_Recurring_Range_EndByDate.Value = newStartDate;
}
}