public EventsCreateViewModel(IGoogleCalendar googleCalendar, IRecurrenceSettings recurrenceSettings, IRepository commonRepository, IMessanger commonMessanger) { try { log.Debug("Loading EventsCreate view model..."); calendar = googleCalendar; repository = commonRepository; messanger = commonMessanger; recurrence = recurrenceSettings; CreateEventCommand = new RelayCommand(CreateEvent); UpdateEventCommand = new RelayCommand(UpdateEvent); QuickActionCommand = new RelayCommand(QuickAction); CancelUpdateEventCommand = new RelayCommand(CancelUpdateEvent); // For Update Events eventUpdater = repository.GetEventUpdater(); if (eventUpdater.Type != GoogleCalendar.ActionType.none) { IsUpdate = true; SetUpdateEventSettings(eventUpdater); } log.Debug("EventsCreate view model was succssfully loaded"); } catch (Exception ex) { log.Error("Failed to load EventsCreate view model:", ex); } }
public EventsCreateViewModel(IGoogleCalendar googleCalendar, IRecurrenceSettings recurrenceSettings, IRepository commonRepository, IMessanger commonMessanger) { try { log.Debug("Loading EventsCreate view model..."); calendar = googleCalendar; repository = commonRepository; messanger = commonMessanger; recurrence = recurrenceSettings; CreateEventCommand = new RelayCommand(CreateEvent); UpdateEventCommand = new RelayCommand(UpdateEvent); QuickActionCommand = new RelayCommand(QuickAction); CancelUpdateEventCommand = new RelayCommand(CancelUpdateEvent); // For Update Events eventUpdater = repository.GetEventUpdater(); if (eventUpdater.Type != GoogleCalendar.ActionType.none) { IsUpdate = true; SetUpdateEventSettings(eventUpdater); } log.Debug("EventsCreate view model was succssfully loaded"); } catch(Exception ex) { log.Error("Failed to load EventsCreate view model:", ex); } }
private void SetUpdateEventSettings(CalendarEventUpdater eventUpdater) { CalendarEvent ev = eventUpdater.CalendarEvent; recurrence = eventUpdater.Recurrence == null ? recurrence : eventUpdater.Recurrence; // Set general events settings Title = ev.Title; Content = ev.Content; Location = ev.Location; IsFullDayEvent = ev.IsFullDateEvent; IsRecurringEvent = ev.IsRecurrenceEvent; StartDate = ev.Start; StartTimeHours = ev.Start.Hour; StartTimeMinutes = ev.Start.Minute; DateTime end = ev.End ?? ev.Start; EndDate = end; EndTimeHours = end.Hour; EndTimeMinutes = end.Minute; // Disable recurrence settings if update single instace option was selected if (eventUpdater.Type == GoogleCalendar.ActionType.single && IsRecurringEvent) { IsRecurringEvent = false; IsRecurrenceEnabled = false; return; } SetUpdateEventRecurrenceSettings(); }
private void SetUpdateEventSettings(CalendarEventUpdater eventUpdater) { CalendarEvent ev = eventUpdater.CalendarEvent; recurrence = eventUpdater.Recurrence == null ? recurrence : eventUpdater.Recurrence; // Set general events settings Title = ev.Title; Content = ev.Content; Location = ev.Location; IsFullDayEvent = ev.IsFullDateEvent; IsRecurringEvent = ev.IsRecurrenceEvent; StartDate = ev.Start; StartTimeHours = ev.Start.Hour; StartTimeMinutes = ev.Start.Minute; DateTime end = ev.End ?? ev.Start; EndDate = end; EndTimeHours = end.Hour; EndTimeMinutes = end.Minute; // Disable recurrence settings if update single instace option was selected if (eventUpdater.Type == GoogleCalendar.ActionType.single && IsRecurringEvent) { IsRecurringEvent = false; IsRecurrenceEnabled = false; return; } SetUpdateEventRecurrenceSettings(); }