private void loadPage() { order = App.formHandler.loadOrderFromIsolatedStorage(orderID); if (order.State != OrderState.Giving.ToString()) { order.State = OrderState.Giving.ToString(); } foreach (Form form in order.FormList) { foreach (FormPage fp in form.FormPageList) { if (fp.FormPageID == EditPageType) { formID = form.FormID; page = fp; } } } if (page != null) { setUpPage(); } else { Debug.WriteLine("Fehler beim Erstellen der Seite"); } App.formHandler.saveData(order); }
public void loadAllFormPagesInOrder(Order o) { order = o; foreach (Form form in order.FormList) { formID = form.FormID; foreach (FormPage fp in form.FormPageList) { EditPageType = fp.FormPageID; page = fp; setUpPage(); App.formHandler.saveData(order); } } }
private void validateData(Order data) { if (data.OrderID == "") { Debug.WriteLine("Warnung---> ID des Auftrags fehlt!"); data.OrderID = "000000"; } else if (data.FormList.Count > 0) { Debug.WriteLine("In dem Auftrag (" + data.OrderID + ") ist ..."); } int i = 0; while (i < data.FormList.Count) { Form form = data.FormList[i]; if (form.FormID == "") { Debug.WriteLine("Warnung---> ID für das " + (i + 1) + ". Formular fehlt!"); data.FormList[i].FormID = "Form" + i; } else { Debug.WriteLine("... das Formular " + form.FormID + " enthalten"); } int j = 0; while (j < form.FormPageList.Count) { FormPage page = form.FormPageList[j]; if (page.FormPageID == "") { Debug.WriteLine("Warnung---> ID für die " + (j + 1) + ". Formularseite fehlt!"); data.FormList[i].FormPageList[j].FormPageID = "FormPage" + i + "_" + j; } else { Debug.WriteLine(" mit der Formularseite: " + page.FormPageID); } int k = 0; while (k < page.FormItemList.Count) { FormItem item = page.FormItemList[k]; if (item.ID == "") { Debug.WriteLine("Warnung---> ID für das " + (k + 1) + ". Formularelement fehlt!"); data.FormList[i].FormPageList[j].FormItemList[k].ID = "FormItem" + i + "_" + j + "_" + k; } else { Debug.WriteLine(" Formularelement: " + item.ID); } if (item.ControlType == "") { Debug.WriteLine("Warnung---> Typ für das " + (k + 1) + ". Formularelement fehlt!"); data.FormList[i].FormPageList[j].FormItemList[k].ControlType = defaultFormItemType; } k++; } j++; } i++; } }
private void setUpPages(object sender, EventArgs e) { Pivot.Items.Clear(); foreach (Form form in order.FormList) { //if (Pivot.Items.Count > order.FormList.IndexOf(form)) //{ PivotItem pivotItem = new PivotItem(); Pivot.Items.Add(pivotItem); pivotItem.Header = form.FormHeader; StackPanel panel = new StackPanel(); ListBox viewer = new ListBox(); panel.Tag = form.FormID; viewer.Items.Add(panel); pivotItem.Content = viewer; bool signable = true; foreach (FormPage page in form.FormPageList) { StackPanel pagePanel = new StackPanel(); FormPage = page; foreach (FormItem item in page.FormItemList) { if (EnumerationMatcher.StringToFormItemState(item.State) != FormItemState.Edited) { bool found = false; foreach (OrderInformation info in order.Information) { if (info.ID == item.ID || info.ID == (form.FormID + item.ID)) { Debug.WriteLine("Die Information zu " + item.ID + " ist bereits vorhanden: " + info.Information); item.Input = info.Information; found = true; } } if (found) { order.setStateOfFormItem(item.ID, FormItemState.Edited); } } if (item.State == FormItemState.Edited.ToString() || item.Input != "" || item.ControlType == FormItemType.Header.ToString() || item.ControlType == FormItemType.Subheader.ToString() || item.ControlType == FormItemType.Listing.ToString() || item.ControlType == FormItemType.PageLink.ToString()) { FrameworkElement element = elementFactory.getFrameworkElementFromItem(item, this); if (element != null) { pagePanel.Children.Add(element); } } else if (item.Important) { signable = false; if ((item.Input == "" || item.State == FormItemState.Blank.ToString())) { TextBlock textBlock = new TextBlock(); textBlock.Text = item.Header + " (?)"; Style style = (Style)App.resources["OverviewBlank"]; if (style == null) { Debug.WriteLine("Fehler: Der Style \"OverviewBlank\" fehlt!"); } else { textBlock.Style = style; } textBlock.Name = item.ID; pagePanel.Children.Add(textBlock); } } } pagePanel.Tag = page.FormPageID; if (form.State == FormState.Open.ToString() || form.State == FormState.Signable.ToString()) { pagePanel.DoubleTap += JumpToEditFormPage; } panel.Children.Add(pagePanel); } TextBlock SignumHeader = new TextBlock(); SignumHeader.Text = "Unterschriften"; SignumHeader.Style = (Style)App.resources["Subheader"]; panel.Children.Add(SignumHeader); bool OtherSigned = false; bool ISigned = false; string Person1 = ""; if (form.FormOtherHaveToSign) { foreach (OrderInformation info in order.Information) { if (info.ID == "GivingPersonName") { Person1 = info.Information; } } if (Person1 != "") { if (!GlobalSettings.HasSignedList.Contains(Person1 + form.FormID) && ((form.State == FormState.Open.ToString() || form.State == FormState.Signable.ToString()))) { Image image = new Image(); MakeABackground(Person1, (form.State == FormState.Signable.ToString() && signable)); BitmapSource source = App.formHandler.getSignumOf(Person1 + "Button"); if (source != null) { image.Source = source; } else { Debug.WriteLine("Buttonbild sollte da sein, wurde als Bild aber nicht gefunden."); } Button button = new Button(); button.Width = 655 / 2; button.Height = 480 / 2; button.BorderThickness = new Thickness(0); button.Tag = form.FormID; button.Name = "SignOther" + form.FormID; button.HorizontalAlignment = System.Windows.HorizontalAlignment.Center; if (!(form.State == FormState.Signable.ToString() && signable)) { button.IsEnabled = false; } button.Click += JumpToSignumPage; button.Content = image; panel.Children.Add(button); } else { OtherSigned = true; BitmapSource source = App.formHandler.getSignumOf(Person1 + form.FormID); if (source != null) { Image image = new Image(); image.Source = source; image.Width = 655 / 2; image.Height = 480 / 2; panel.Children.Add(image); } else { Debug.WriteLine("Signum sollte da sein, wurde als Bild aber nicht gefunden."); } } } } else { OtherSigned = true; } if (form.FormIHaveToSign) { Person1 = GlobalSettings.myName; if (Person1 != "") { if (!GlobalSettings.HasSignedList.Contains(Person1 + form.FormID) && ((form.State == FormState.Open.ToString() || form.State == FormState.Signable.ToString()))) { Image image = new Image(); MakeABackground(Person1, (form.State == FormState.Signable.ToString() && signable)); BitmapSource source = App.formHandler.getSignumOf(Person1 + "Button"); if (source != null) { image.Source = source; } else { Debug.WriteLine("Buttonbild sollte da sein, wurde als Bild aber nicht gefunden."); } Button button = new Button(); button.Width = 655 / 2; button.Height = 480 / 2; button.BorderThickness = new Thickness(0); button.Tag = form.FormID; button.Name = "SignMe" + form.FormID; button.HorizontalAlignment = System.Windows.HorizontalAlignment.Center; if (!(form.State == FormState.Signable.ToString() && signable)) { button.IsEnabled = false; } button.Click += JumpToSignumPage; button.Content = image; panel.Children.Add(button); } else { ISigned = true; BitmapSource source = App.formHandler.getSignumOf(Person1 + form.FormID); if (source != null) { Image image = new Image(); image.Source = source; image.Width = 655 / 2; image.Height = 480 / 2; panel.Children.Add(image); } else { Debug.WriteLine("Signum sollte da sein, wurde als Bild aber nicht gefunden."); } } } } else { ISigned = true; } if (OtherSigned && ISigned) { form.State = FormState.Signed.ToString(); if (ApplicationBar != null) { ApplicationBar.IsVisible = true; } App.formHandler.saveData(order); } pivotItem.Visibility = System.Windows.Visibility.Visible; } // if (GlobalSettings.focusElement != null) // focusOnElement(GlobalSettings.focusElement); }