예제 #1
0
        private void imbSave_ServerClick(object sender, EventArgs e)
        {
            int iIssBoxId = -1;

            try
            {
                if (IssBoxId > 0)
                {
                    IncidentBox ib = IncidentBox.Load(IssBoxId);
                    if (ib != null)
                    {
                        ib.IsDefault      = cbIsDefault.Checked;
                        ib.Name           = tbName.Text.Trim();
                        ib.IdentifierMask = tbMask.Text.Trim();
                        IncidentBox.Update(ib);
                    }
                }
                else
                {
                    iIssBoxId = IncidentBox.Create(tbName.Text.Trim(), tbMask.Text.Trim(), cbIsDefault.Checked);
                }
                if (iIssBoxId > 0)
                {
                    Page.ClientScript.RegisterStartupScript(this.GetType(), Guid.NewGuid().ToString(),
                                                            "try {window.opener.location.href='" + ResolveUrl("~/Admin/EMailIssueBoxView.aspx") + "?IssBoxId=" + iIssBoxId + "';}" +
                                                            "catch (e){} window.close();", true);
                }
                else
                {
                    Page.ClientScript.RegisterStartupScript(this.GetType(), Guid.NewGuid().ToString(),
                                                            "try {window.opener.location.href=window.opener.location.href;}" +
                                                            "catch (e){} window.close();", true);
                }
            }
            catch (IncidentBoxDuplicateNameException)
            {
                lblDuplicate.Text    = LocRM.GetString("tDuplicateName");
                lblDuplicate.Visible = true;
            }
            catch (IncidentBoxDuplicateIdentifierMaskException)
            {
                lblDuplicate.Text    = LocRM.GetString("tDuplicateMask");
                lblDuplicate.Visible = true;
            }
        }
예제 #2
0
        private void imbSave_ServerClick(object sender, EventArgs e)
        {
            Page.Validate();
            if (!Page.IsValid)
            {
                return;
            }

            TimeSpan ts;

            if (ViewState["IncidentBoxDocument"] != null)
            {
                try
                {
                    IncidentBox ib = IncidentBox.Load(IssBoxId);
                    if (ib != null)
                    {
                        ib.Name           = lblIssBoxName.Text.Trim();
                        ib.IdentifierMask = tbMask.Text.Trim();
                        ib.IsDefault      = cbIsDefault.Checked;
                    }

                    IncidentBoxDocument ibd = IncidentBoxDocument.Load(IssBoxId, (string)ViewState["IncidentBoxDocument"]);

                    //GeneralBlock
                    GeneralIncidentBoxBlock gibb = ibd.GeneralBlock;

                    //gibb.DefaultCreator = int.Parse(ddCreator.SelectedValue);
                    gibb.Manager              = int.Parse(ddManager.SelectedValue);
                    gibb.CalendarId           = int.Parse(ddCalendar.SelectedValue);
                    gibb.ControllerAssignType = (ControllerAssignType)(int.Parse(ddContType.SelectedValue));
                    if (gibb.ControllerAssignType == ControllerAssignType.CustomUser)
                    {
                        gibb.Controller = int.Parse(ddController.SelectedValue);
                    }
                    gibb.ResponsibleAssignType = (ResponsibleAssignType)(int.Parse(ddRespType.SelectedValue));
                    if (gibb.ResponsibleAssignType == ResponsibleAssignType.CustomUser)
                    {
                        gibb.Responsible = int.Parse(ddResponsible.SelectedValue);
                    }

                    gibb.AllowAddResources             = cbAllowAddRes.Checked;
                    gibb.AllowAddToDo                  = cbAllowAddToDo.Checked;
                    gibb.AllowControl                  = cbAllowControl.Checked;
                    gibb.AllowToDeclineResponsibility  = cbAllowToDeclineResp.Checked;
                    gibb.AllowToReassignResponsibility = cbAllowToReassignResp.Checked;
                    gibb.AllowUserToComeResponsible    = cbAllowToComeResp.Checked;
                    gibb.ReassignResponsibileOnReOpen  = cbReassignResp.Checked;
                    gibb.AllowOutgoingEmailFormat      = cbAllowAutoSigning.Checked;

                    ts = new TimeSpan(ucDuration.Value.Ticks);
                    gibb.ExpectedDuration = (int)ts.TotalMinutes;

                    ts = new TimeSpan(ucResponseTime.Value.Ticks);
                    gibb.ExpectedResponseTime = (int)ts.TotalMinutes;

                    ts = new TimeSpan(ucAssignTime.Value.Ticks);
                    gibb.ExpectedAssignTime = (int)ts.TotalMinutes;

                    ts            = new TimeSpan(ucTaskTime.Value.Ticks);
                    gibb.TaskTime = (int)ts.TotalMinutes;

                    //EMailRouterBlock
                    EMailRouterIncidentBoxBlock eribb = ibd.EMailRouterBlock;

                    eribb.AllowEMailRouting      = cbAllowEMail.Checked;
                    eribb.IncomingEMailAction    = (ExternalEMailActionType)(int.Parse(ddExtActionType.SelectedValue));
                    eribb.OutgoingEMailAction    = (InternalEMailActionType)(int.Parse(ddIntActionType.SelectedValue));
                    eribb.SendAutoReply          = cbAllowAutoReply.Checked;
                    eribb.SendAutoIncidentClosed = cbAllowAutoReplyClose.Checked;

                    //IncidentBoxDocument.Save(ibd);
                    IncidentBox.Update(ib, ibd);
                    Response.Redirect("~/Admin/HDMSettings.aspx");
                }
                catch (IncidentBoxDuplicateNameException)
                {
                    lblDuplicate.Text    = LocRM.GetString("tDuplicateName");
                    lblDuplicate.Visible = true;
                }
                catch (IncidentBoxDuplicateIdentifierMaskException)
                {
                    lblDuplicate.Text    = LocRM.GetString("tDuplicateMask");
                    lblDuplicate.Visible = true;
                }
            }
        }