protected override void VisitInternal(BindingInformation info, FormResult result, object service)
        {
            IDisplayNameService typedService = (IDisplayNameService)service;

            TextBlock tb = (TextBlock)result.LabelElement;

            tb.Text = typedService.GetDisplayName(info.SourceType, info.BindingPath);
        }
Beispiel #2
0
 private void barButtonItem20_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
 {
     //ForecastFileClass.ExportExcel(dataTable, forecastReport.Title, false, true);
     //GridTreePrint.Exception(this.treeList1, forecastReport.Title);
     FormResult fr = new FormResult();
     fr.LI = this.treeList1;
     fr.Text = forecastReport.Title;
     fr.ShowDialog();
 }
 private void barButtonItem6_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
 {
     FormResult fr = new FormResult();
     fr.LI = this.treeList1;
     fr.Text = forecastReport.Title;
     fr.ShowDialog();
 }
Beispiel #4
0
 private void barButtonItem20_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
 {
     //FileClass.ExportToExcelOld(this.forecastReport.Title, "", this.gridControl1);
     FormResult fr = new FormResult();
     fr.LI = this.treeList1;
     fr.Text = forecastReport.Title;
     fr.ShowDialog();
 }
Beispiel #5
0
        /// <summary>
        /// Closes the Form with the specified FormResult code.
        /// </summary>
        /// <param name="result">The result of the Form.</param>
        public void Close(FormResult result)
        {
            if (_canClose == false) {
                return;
            }

            _formResult = result;
            _canClose = false;

            Effect closeEffect = CloseEffect;
            if (closeEffect == null) {
                CloseCore();
            }
            else {
                if (((IAttachedObject)closeEffect).AssociatedObject != this) {
                    ((IAttachedObject)closeEffect).Attach(this);
                    closeEffect.Completed += OnCloseEffectCompleted;
                }
                closeEffect.PlayEffect(EffectDirection.Forward);
            }
        }
Beispiel #6
0
 public async Task SaveItemAsync(FormResult item, string token)
 {
     await _requestProvider.PostAsync($"{GlobalSettings.Instance.BaseApiEndpoint}/{ApiUrlBase}", item, token);
 }
Beispiel #7
0
    private static void sendForm(int IdForm)
    {
        FormContext db = new FormContext();
        Form        f  = db.Forms.Find(IdForm);
        Control     pf = findControlI(_Page, "PanelForm" + IdForm);

        if (pf != null)
        {
            var ET = new EmailTemplate(f.EmailTemplate == null ? "" : f.EmailTemplate);

            string result = "";
            result += "Дата и время: " + DateTime.Now + Environment.NewLine;

            ET.AddParam("АОН", (Request.QueryString["AbonentNumber"] != null ? Request.QueryString["AbonentNumber"].ToString() : ""));
            ET.AddParam("Дата и время обращения", DateTime.Now.ToString());
            ET.AddParam("Оператор", Operator);

            List <FormField> FormFields = f.FormFields.ToList();


            string ValueToSubject = "";

            foreach (FormField ff in FormFields)
            {
                FormResult fr = new FormResult()
                {
                    Deleted = Request.QueryString["debug"] != null ? 1 : 0, IdFormSaved = 0, IdPopupLoad = IdPopupLoad, IdField = ff.Id, IdForm = ff.IdForm, IdTask = IdTask, IdProject = IdProject, Active = 1, Created = DateTime.Now, Updated = DateTime.Now
                };
                System.Type T = null;
                if (ff.FormTypeField.SystemTitle != "")
                {
                    try { T = System.Web.Compilation.BuildManager.GetType("FormField" + ff.FormTypeField.SystemTitle, true); }
                    catch (Exception e) { };
                }
                ;
                if (T == null)
                {
                    switch (ff.FormTypeField.Id)
                    {
                    case 2: handlerFieldDropDownList(fr, ff); break;
                    }
                }
                else
                {
                    object  Obj  = Activator.CreateInstance(T);
                    Control cObj = (Control)Obj.GetType().InvokeMember("handlerResult", System.Reflection.BindingFlags.Default | System.Reflection.BindingFlags.InvokeMethod, null, Obj, new object[] { ff, fr, _Page });
                }
                result += ff.Title + ": " + fr.Value + (fr.Note != "" ? ", " : "") + fr.Note + Environment.NewLine;
                ET.AddParam(ff.Title, fr.Value + (fr.Note != "" ? ", " : "") + fr.Note);

                if (ff.InSubjectEmail == true)
                {
                    ValueToSubject += (ValueToSubject != "" ? " -> " : "") + fr.Value + (fr.Note != "" ? ", " : "") + fr.Note;
                }
            }



            var TextBoxMessage = (TextBox)findControlI(_Page, "TableFormEmailMessage" + IdForm);
            var TextBoxSubject = (TextBox)findControlI(_Page, "TableFormEmailSubject" + IdForm);

            if (TextBoxMessage != null)
            {
                result += "Суть вопроса: " + TextBoxMessage.Text + Environment.NewLine;
            }

            HiddenField hf       = (HiddenField)findControlI(_Page, "PanelFormHiddenFieldEmail" + IdForm);
            string      emails   = hf.Value;
            Label       Messager = (Label)findControlI(_Page, "MessagerForm" + IdForm);
            try
            {
                result = result.Replace(Environment.NewLine, "<br/>");
                if (f.EmailTemplate != null && f.EmailTemplate != "" && f.IsBodyHtml)
                {
                    result = ET.GetFullBody();
                }
                EmailSender.sendEmail(emails, result, (TextBoxSubject != null && TextBoxSubject.Text != "" ? TextBoxSubject.Text : f.Title) + (ValueToSubject != "" ? (" : " + ValueToSubject) : ""), IdTask, IdProject, IdPopupLoad, true, f.Id, f.IsBodyHtml);
                Messager.Text      = "Форма отправлена";
                Messager.Visible   = true;
                Messager.ForeColor = System.Drawing.Color.Green;
            }
            catch (Exception err)
            {
                Messager.Text      = err.Message.ToString();
                Messager.Visible   = true;
                Messager.ForeColor = System.Drawing.Color.Red;
            }
        }
    }
Beispiel #8
0
    private static void saveForm(int IdForm)
    {
        FormContext db             = new FormContext();
        Form        f              = db.Forms.Find(IdForm);
        Control     pf             = findControlI(_Page, "PanelForm" + IdForm);
        String      EmailTo        = "";
        String      Subject        = "";
        string      ValueToSubject = "";

        FormRender.IsUpdated = Request.QueryString["IsUpdated"] != null?Convert.ToBoolean(Request.QueryString["IsUpdated"]) : false;


        List <FormResult> frs = new List <FormResult>();
        FormResult        fr1 = new FormResult();

        if (IsUpdated)
        {
            fr1 = db.FormResults.FirstOrDefault(row => row.IdPopupLoad == IdPopupLoad && row.Deleted == 0);
            frs = db.FormResults.Where(row => row.IdFormSaved == fr1.IdFormSaved).ToList();
        }


        FormSaved fs = new FormSaved();

        if (pf != null)
        {
            if (!IsUpdated)
            {
                fs         = new FormSaved();
                fs.Created = DateTime.Now;
                db.FormSaveds.Add(fs);
                db.SaveChanges();
            }
            else
            {
                fs = db.FormSaveds.Find(fr1.IdFormSaved);
            }

            var ET = new EmailTemplate(f.EmailTemplate == null ? "" : f.EmailTemplate);



            string result = "";
            result += setting("EMAIL_PRETEXT") + Environment.NewLine;
            result += "ОБРАЩЕНИЕ №: " + fs.Id + Environment.NewLine;
            ET.AddParam("АОН", (Request.QueryString["AbonentNumber"] != null ? Request.QueryString["AbonentNumber"].ToString() : ""));
            result += "АОН: " + (Request.QueryString["AbonentNumber"] != null ? Request.QueryString["AbonentNumber"].ToString() : "") + Environment.NewLine;
            ET.AddParam("Дата и время обращения", DateTime.Now.ToString());
            result += "Дата и время обращения: " + DateTime.Now + Environment.NewLine;
            ET.AddParam("Оператор", Operator);
            result += "Оператор: " + Operator + Environment.NewLine;
            if (f.IdTask == 4)
            {
                result += getFramePath();
            }
            List <FormField> FormFields = f.FormFields.Where(p => p.Active == 1 && p.Deleted == 0).ToList();

            foreach (FormField ff in FormFields)
            {
                FormResult fr = new FormResult();
                if (IsUpdated)
                {
                    fr = frs.FirstOrDefault(row => row.IdField == ff.Id);
                }
                else
                {
                    fr = new FormResult()
                    {
                        Deleted = Request.QueryString["debug"] != null ? 1 : 0, IdFormSaved = fs.Id, IdPopupLoad = IdPopupLoad, IdField = ff.Id, IdForm = ff.IdForm, IdTask = IdTask, IdProject = IdProject, Active = 1, Created = DateTime.Now, Updated = DateTime.Now
                    }
                };

                System.Type T = null;
                if (ff.FormTypeField.SystemTitle != "")
                {
                    try { T = System.Web.Compilation.BuildManager.GetType("FormField" + ff.FormTypeField.SystemTitle, true); }
                    catch (Exception e) { };
                }
                ;
                if (T == null)
                {
                    switch (ff.FormTypeField.Id)
                    {
                    case 2:
                        handlerFieldDropDownList(fr, ff);
                        if (ff.FormEmails.Count(p => p.IdReferenceBookData == fr.IdValue) > 0)
                        {
                            var objEmail = ff.FormEmails.First(p => p.IdReferenceBookData == fr.IdValue);
                            if (objEmail != null)
                            {
                                EmailTo += (EmailTo == "" ? "" : ", ") + objEmail.Email;
                                Subject += (Subject == "" ? "" : ", ") + objEmail.Subject;
                            }
                            ;
                        }
                        ;
                        break;
                    }
                }
                else
                {
                    object  Obj  = Activator.CreateInstance(T);
                    Control cObj = (Control)Obj.GetType().InvokeMember("handlerResult", System.Reflection.BindingFlags.Default | System.Reflection.BindingFlags.InvokeMethod, null, Obj, new object[] { ff, fr, _Page });
                }
                result += ff.Title + ": " + fr.Value + (fr.Note != "" ? ", " : "") + fr.Note + Environment.NewLine;

                ET.AddParam(ff.Title, fr.Value + (fr.Note != "" ? ", " : "") + fr.Note);

                if (!IsUpdated)
                {
                    db.FormResults.Add(fr);
                }

                if (ff.InSubjectEmail == true)
                {
                    ValueToSubject += (ValueToSubject != "" ? " -> " : "") + fr.Value + (fr.Note != "" ? ", " : "") + fr.Note;
                }
            }

            db.SaveChanges();

            if (f.SendToEmail == 1)
            {
                HiddenField hf       = (HiddenField)findControlI(_Page, "PanelFormHiddenFieldEmail" + IdForm);
                string      emails   = hf.Value;
                Label       Messager = (Label)findControlI(_Page, "MessagerForm" + IdForm);
                if (EmailTo != "")
                {
                    emails += (emails != "" ? "," : "") + EmailTo;
                }

                try
                {
                    if (emails != "")
                    {
                        if (f.IsBodyHtml)
                        {
                            result = result.Replace(Environment.NewLine, "<br/>");
                        }

                        if (f.EmailTemplate != null && f.EmailTemplate != "" && f.IsBodyHtml)
                        {
                            result = ET.GetFullBody();
                        }

                        EmailSender.sendEmail(emails, result, (Subject != "" ? Subject : f.Title) + (ValueToSubject != "" ? (" : " + ValueToSubject) : ""), IdTask, IdProject, IdPopupLoad, true, f.Id, f.IsBodyHtml);

                        Messager.Text      = "Форма отправлена";
                        Messager.Visible   = true;
                        Messager.ForeColor = System.Drawing.Color.Green;
                    }
                }
                catch (Exception err)
                {
                    Messager.Text      = err.Message.ToString();
                    Messager.Visible   = true;
                    Messager.ForeColor = System.Drawing.Color.Red;
                }
            }
            ;

            if (f.HasSaveButton == 1)
            {
                if (f.SendToEmail == 0)
                {
                    Label Messager = (Label)findControlI(_Page, "MessagerForm" + IdForm);
                    Messager.Text      = "Форма сохранена";
                    Messager.Visible   = true;
                    Messager.ForeColor = System.Drawing.Color.Green;
                }
                if (!IsUpdated)
                {
                    foreach (FormField ff in FormFields)
                    {
                        switch (ff.FormTypeField.Id)
                        {
                        case 1: ((TextBox)findControlI(_Page, "FormField" + ff.IdForm + "_" + ff.Id)).Text = ""; break;

                        case 2:
                            DropDownList ddl = (DropDownList)findControlI(_Page, "FormField" + ff.IdForm + "_" + ff.Id);
                            if (ddl.Enabled)
                            {
                                ddl.SelectedIndex = -1;
                            }
                            TextBox tb = (TextBox)findControlI(_Page, "TextBoxForm" + ff.IdForm + "_" + ff.Id);
                            if (tb != null)
                            {
                                tb.Text = "";
                            }
                            break;
                        }
                    }
                }
            }
        }
    }
Beispiel #9
0
    public static Control createForm(int IdForm, bool IsUpdated, int IdPopupLoad, Page page, int IdTask, int IdProject, HttpRequest Request)
    {
        _Page                  = page;
        FormRender.IdTask      = IdTask;
        FormRender.Request     = Request;
        FormRender.IdPopupLoad = IdPopupLoad;
        FormRender.Operator    = Request.QueryString["Operator"];
        FormContext db   = new FormContext();
        Form        Form = db.Forms.Find(IdForm);

        if (Form == null)
        {
            return(null);
        }
        Control c = new Panel()
        {
            ID = "PanelForm" + IdForm
        };

        c.Controls.Add(new Label()
        {
            ID = "FormDescription" + IdForm, Visible = true, Text = Form.Description
        });
        c.Controls.Add(new Label()
        {
            ID = "MessagerForm" + IdForm, Visible = false, Text = ""
        });

        List <FormField> FormFields = Form.FormFields.Where(p => p.Active == 1 && p.Deleted == 0).OrderBy(p => p.Sort).ToList();
        Table            table      = new Table()
        {
            ID = "TableForm" + IdForm
        };

        List <FormResult> frs = new List <FormResult>();

        if (IsUpdated)
        {
            FormResult fr = db.FormResults.FirstOrDefault(row => row.IdPopupLoad == IdPopupLoad);
            frs = db.FormResults.Where(row => row.IdFormSaved == fr.IdFormSaved).ToList();
            //Response.Write(frs.Count);
        }

        // object Obj = Activator.CreateInstance(T);

        foreach (FormField Field in FormFields)
        {
            TableRow tr = new TableRow();
            tr.Cells.Add(new TableCell()
            {
                Text = Field.Title, VerticalAlign = VerticalAlign.Top
            });

            System.Type T = null;
            if (Field.FormTypeField.SystemTitle != "")
            {
                try { T = System.Web.Compilation.BuildManager.GetType("FormField" + Field.FormTypeField.SystemTitle, true); }
                catch (Exception e) { };
            }
            ;
            if (T == null)
            {
                switch (Field.FormTypeField.Id)
                {
                case 2:
                    int IdValue = -1;
                    if (IsUpdated)
                    {
                        var fr = frs.FirstOrDefault(row => row.IdField == Field.Id);
                        if (fr != null)
                        {
                            IdValue = fr.IdValue;
                        }
                    }
                    ;
                    TableCell td = new TableCell(); td.Controls.Add(getControlFormDropDownList(Field, table, IdValue)); tr.Cells.Add(td);

                    break;
                }
            }
            else
            {
                string StrValue = "";
                if (IsUpdated)
                {
                    var fr = frs.FirstOrDefault(row => row.IdField == Field.Id);
                    if (fr != null)
                    {
                        StrValue = fr.Value;
                    }
                }
                ;

                object    Obj  = Activator.CreateInstance(T);
                Control   cObj = (Control)Obj.GetType().InvokeMember("getControl", System.Reflection.BindingFlags.Default | System.Reflection.BindingFlags.InvokeMethod, null, Obj, new object[] { Field, _Page, StrValue, IsUpdated });
                TableCell td1  = new TableCell();

                //Response.Write("FormField" + Field.FormTypeField.SystemTitle);
                //Response.End();

                td1.Controls.Add(cObj); tr.Cells.Add(td1);
            }
            if (Field.TitleNote != null && Field.TitleNote != "")
            {
                var tr_caption = new TableRow();
                var td_caption = new TableCell()
                {
                    ColumnSpan = 2
                };
                td_caption.Controls.Add(new LiteralControl("<b>" + Field.TitleNote + "<b>"));
                tr_caption.Cells.Add(td_caption);
                table.Rows.Add(tr_caption);
            }
            table.Rows.Add(tr);
        }
        ;
        if (Form.HasSaveButton == 1)
        {
            TableRow tr = new TableRow();
            tr.Cells.Add(new TableCell());
            TableCell td           = new TableCell();
            Button    btnSaverForm = new Button()
            {
                ID = "ButtonSaverForm" + IdForm, Text = Form.SendToEmail == 1 ? "ОТПРАВИТЬ" : "СОХРАНИТЬ"
            };
            btnSaverForm.Click += new EventHandler(btnSaverFormClick);
            btnSaverForm.Attributes["IdForm"] = IdForm.ToString();
            btnSaverForm.ValidationGroup      = "ValidationGroupForm" + IdForm.ToString();
            td.Controls.Add(btnSaverForm);
            tr.Cells.Add(td);
            table.Rows.Add(tr);
        }

        if (Form.SendToEmail == 1 || Form.HasSendEmailButton == 1)
        {
            HiddenField hf = new HiddenField()
            {
                ID = "PanelFormHiddenFieldEmail" + IdForm, Value = Form.Email
            };
            if (Form.HasSendEmailButton == 1 && setting("EMAIL_MAIN") != "")
            {
                hf.Value = setting("EMAIL_MAIN");
            }
            c.Controls.Add(hf);
        }

        c.Controls.Add(table);

        if (Form.HasSendEmailButton == 1)
        {
            Button btnEmailForm = new Button()
            {
                ID = "ButtonEmailForm" + IdForm, Text = "ОТПРАВИТЬ ПИСЬМО"
            };
            btnEmailForm.Click += new EventHandler(btnEmailFormClick);
            btnEmailForm.Attributes["IdForm"] = IdForm.ToString();
            //add new 17032017
            if (Form.ShowSubjectField != 1 && Form.ShowMessageField != 1)
            {
                btnEmailForm.ValidationGroup = "ValidationGroupForm" + IdForm.ToString();
            }

            c.Controls.Add(btnEmailForm);

            Panel PanelFormEmail = new Panel()
            {
                ID = "PanelFormEmail" + IdForm, Visible = false
            };
            Table tableFormEmail = new Table()
            {
                ID = "TableFormEmail" + IdForm
            };
            if (Form.ShowSubjectField == 1)
            {
                TableRow tr = new TableRow();
                tr.Cells.Add(new TableCell()
                {
                    Text = "Тема письма", VerticalAlign = VerticalAlign.Top
                });
                TableCell td = new TableCell();


                td.Controls.Add(new TextBox()
                {
                    ID = "TableFormEmailSubject" + IdForm, Width = 500
                });

                {
                    RequiredFieldValidator rfv = new RequiredFieldValidator()
                    {
                        ID = "RequiredFieldValidatorForm" + IdForm + "_subject"
                    };
                    rfv.ErrorMessage      = "Поле обязательно к заполнению";
                    rfv.Display           = ValidatorDisplay.Dynamic;
                    rfv.CssClass          = "error";
                    rfv.ControlToValidate = "TableFormEmailSubject" + IdForm;
                    if (Form.HasSaveButton == 1)
                    {
                        rfv.ValidationGroup = "ValidationGroupForm" + IdForm.ToString();
                    }
                    else
                    {
                        rfv.ValidationGroup = "closedPupup";
                    }
                    rfv.EnableClientScript = true;
                    rfv.Enabled            = false;
                    td.Controls.Add(rfv);
                }

                tr.Cells.Add(td);
                tableFormEmail.Rows.Add(tr);
            }

            if (Form.ShowMessageField == 1)
            {
                TableRow tr2 = new TableRow();
                tr2.Cells.Add(new TableCell()
                {
                    Text = "Суть вопроса", VerticalAlign = VerticalAlign.Top
                });
                TableCell td2 = new TableCell();
                td2.Controls.Add(new TextBox()
                {
                    ID = "TableFormEmailMessage" + IdForm, TextMode = TextBoxMode.MultiLine, Width = 498, Height = 50
                });

                {
                    RequiredFieldValidator rfv = new RequiredFieldValidator()
                    {
                        ID = "RequiredFieldValidatorForm" + IdForm + "_Message"
                    };
                    rfv.ErrorMessage      = "Поле обязательно к заполнению";
                    rfv.Display           = ValidatorDisplay.Dynamic;
                    rfv.CssClass          = "error";
                    rfv.ControlToValidate = "TableFormEmailMessage" + IdForm;
                    if (Form.HasSaveButton == 1)
                    {
                        rfv.ValidationGroup = "ValidationGroupForm" + IdForm.ToString();
                    }
                    else
                    {
                        rfv.ValidationGroup = "closedPupup";
                    }
                    rfv.EnableClientScript = true;
                    rfv.Enabled            = false;
                    td2.Controls.Add(rfv);
                }
                tr2.Cells.Add(td2);
                tableFormEmail.Rows.Add(tr2);
            }

            TableRow tr3 = new TableRow();
            tr3.Cells.Add(new TableCell());
            Button btnEmailSendForm = new Button()
            {
                ID = "btnEmailSendForm" + IdForm, Text = "ОТПРАВИТЬ"
            };
            btnEmailSendForm.Click += new EventHandler(btnEmailSendFormClick);
            btnEmailSendForm.Attributes["IdForm"] = IdForm.ToString();
            if (Form.HasSaveButton == 1)
            {
                btnEmailSendForm.ValidationGroup = "ValidationGroupForm" + IdForm.ToString();
            }
            else
            {
                btnEmailSendForm.ValidationGroup = "closedPupup";
            }
            TableCell td3 = new TableCell();
            td3.Controls.Add(btnEmailSendForm);
            tr3.Cells.Add(td3);
            tableFormEmail.Rows.Add(tr3);

            PanelFormEmail.Controls.Add(tableFormEmail);
            c.Controls.Add(PanelFormEmail);
        }

        return(c);
    }
 /// <summary>
 /// Initializes a new instance of the <see cref="JsEmbededFormActionResult" /> class.
 /// </summary>
 /// <param name="result">The result.</param>
 public JsEmbededFormActionResult(FormResult <FormModel, FormViewModel> result)
 {
     this.Result = result;
 }
Beispiel #11
0
 public static void InformUser(this PageModel page, FormResult result, string itemName, string moduleName)
 {
     page.TempData["Operation"]  = result;
     page.TempData["ItemName"]   = itemName;
     page.TempData["ModuleName"] = moduleName;
 }
Beispiel #12
0
 public static void DestroyFormResult()
 {
     FormResult?.Dispose();
     FormResult = null;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="JsEmbededFormActionResult" /> class.
 /// </summary>
 /// <param name="result">The result.</param>
 public JsEmbededFormActionResult(FormResult<FormModel, FormViewModel> result)
 {
     this.Result = result;
 }