private void CancelButton_Clicked(object sender, EventArgs e) { ViewModels.ScheduleAppointmentModifiedEventArgs args = new ViewModels.ScheduleAppointmentModifiedEventArgs(); args.Appointment = null; args.IsModified = false; (editorLayout.BindingContext as ViewModels.EditorLayoutViewModel).OnAppointmentModified(args); editorLayout.IsVisible = false; }
private async void EditorLayout_AppointmentModified(object sender, ViewModels.ScheduleAppointmentModifiedEventArgs e) { editorLayout.IsVisible = false; if (e.IsModified) { if (CommonVariables.localDatabase) { if (isNewAppointment) { (schedule.DataSource as ObservableCollection <Model.Meeting>).Add(e.Appointment); } else { (schedule.DataSource as ObservableCollection <Model.Meeting>).RemoveAt(indexOfAppointment); (schedule.DataSource as ObservableCollection <Model.Meeting>).Insert(indexOfAppointment, e.Appointment); } } else { schedule.DataSource = await CommonVariables.GetSettings(); } } }
private async void AppointmentDetails() { if (selectedAppointment == null) { selectedAppointment = new Model.Meeting(); selectedAppointment.color = Color.FromHex("#5EDAF2"); update = false; } else { update = true; } if (eventNameText.Text != null) { selectedAppointment.EventName = eventNameText.Text.ToString(); if (string.IsNullOrEmpty(selectedAppointment.EventName)) { selectedAppointment.EventName = "Untitled"; } } if (PostCodeText.Text != null) { selectedAppointment.PostCode = PostCodeText.Text.ToString(); } if (descriptionText.Text != null) { selectedAppointment.Description = descriptionText.Text.ToString(); } if (contactText.Text != null) { selectedAppointment.ContactID = contactText.Text.ToString(); } if (typeDatePicker.SelectedItem != null) { selectedAppointment.type = typeDatePicker.SelectedItem.ToString(); } else { selectedAppointment.type = "Job"; } if (responsiblePicker.SelectedItem != null) { selectedAppointment.responsible = responsiblePicker.SelectedItem.ToString(); if (responsiblePicker1.SelectedItem != null) { if (responsiblePicker1.SelectedItem.ToString() != "NONE") { selectedAppointment.responsible = selectedAppointment.responsible + "/" + responsiblePicker1.SelectedItem.ToString(); } } if (responsiblePicker2.SelectedItem != null) { if (responsiblePicker2.SelectedItem.ToString() != "NONE") { selectedAppointment.responsible = selectedAppointment.responsible + "/" + responsiblePicker2.SelectedItem.ToString(); } } } else { selectedAppointment.responsible = "OTH"; if (responsiblePicker1.SelectedItem != null) { if (responsiblePicker1.SelectedItem.ToString() != "NONE") { selectedAppointment.responsible = selectedAppointment.responsible + "/" + responsiblePicker1.SelectedItem.ToString(); } } if (responsiblePicker2.SelectedItem != null) { if (responsiblePicker2.SelectedItem.ToString() != "NONE") { selectedAppointment.responsible = selectedAppointment.responsible + "/" + responsiblePicker2.SelectedItem.ToString(); } } } selectedAppointment.From = startDatePicker.Date.Add(startTimePicker.Time); selectedAppointment.To = endDatePicker.Date.Add(endTimePicker.Time); selectedAppointment.IsAllDay = switchAllDay.IsToggled; selectedAppointment.Done = done.IsToggled; selectedAppointment.StartTimeZone = startTimeZone; selectedAppointment.EndTimeZone = endTimeZone; if (selectedAppointment.type == "Job") { selectedAppointment.color = Color.Red; } else if (selectedAppointment.type == "Sales") { selectedAppointment.color = Color.Blue; } else if (selectedAppointment.type == "Maintenance") { selectedAppointment.color = Color.Brown; } else { selectedAppointment.color = Color.Orange; } ViewModels.ScheduleAppointmentModifiedEventArgs args = new ViewModels.ScheduleAppointmentModifiedEventArgs(); Todo item = new Todo { id = selectedAppointment.id, ContactID = selectedAppointment.ContactID, Description = selectedAppointment.Description, Done = selectedAppointment.Done, EndTimeZone = selectedAppointment.EndTimeZone, StartTimeZone = selectedAppointment.StartTimeZone, EventName = selectedAppointment.EventName, From = selectedAppointment.From, FromDate = selectedAppointment.FromDate, To = selectedAppointment.To, ToDate = selectedAppointment.ToDate, IsAllDay = selectedAppointment.IsAllDay, MinimumHeight = selectedAppointment.MinimumHeight, PostCode = selectedAppointment.PostCode, responsible = selectedAppointment.responsible, type = selectedAppointment.type }; if (update) { if (CommonVariables.localDatabase) { await App.Database.SaveItemAsync(item); } else { await UpdateDatabase(selectedAppointment); } } else { if (CommonVariables.localDatabase) { await App.Database.SaveItemAsync(item); } else { await AddDatabase(selectedAppointment); } // await App.Database.DeleteItemAsync(item); //List<Todo> meeting_list = await App.Database.GetItemsAsync(); } args.Appointment = selectedAppointment; args.IsModified = true; (editorLayout.BindingContext as ViewModels.EditorLayoutViewModel).OnAppointmentModified(args); }