Esempio n. 1
0
        void rpExtOnly_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            int bid = -1;

            bid = int.Parse(e.CommandArgument.ToString());
            if (e.CommandName == "ChangeStatus")
            {
                bid = int.Parse(e.CommandArgument.ToString());
                EMailRouterPop3Box ebox = EMailRouterPop3Box.Load(bid);
                if (EMailRouterPop3Box.CanActivate(bid))
                {
                    EMailRouterPop3Box.Activate(bid, !ebox.Activity.IsActive);
                    Response.Redirect("~/Admin/HDMSettings.aspx");
                }
                else
                {
                    Response.Redirect("~/Admin/HDMSettings.aspx?errorsid=" + bid);
                }
            }
            if (e.CommandName == "Delete")
            {
                EMailRouterPop3Box.Delete(bid);
                Response.Redirect("~/Admin/HDMSettings.aspx");
            }
        }
Esempio n. 2
0
        private void dg_delete(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
        {
            int sid = int.Parse(e.Item.Cells[0].Text);

            EMailRouterPop3Box.Delete(sid);
            Response.Redirect("~/Admin/EMailPop3Boxes.aspx");
        }
Esempio n. 3
0
 protected string GetChangeInternalStatusButton()
 {
     if (InternalBoxId > 0)
     {
         EMailRouterPop3Box box = EMailRouterPop3Box.Load(InternalBoxId);
         if (box != null)
         {
             return(String.Format("<img border='0' align='absmiddle' src='{0}' />&nbsp;{1}",
                                  (box.Activity.IsActive) ?
                                  ResolveUrl("~/layouts/images/icons/status_stopped.gif") :
                                  ResolveUrl("~/layouts/images/icons/status_active.gif"),
                                  (box.Activity.IsActive) ?
                                  LocRM.GetString("tChangeStatusStop") :
                                  LocRM.GetString("tChangeStatusRun")));
         }
         else
         {
             return(string.Empty);
         }
     }
     else
     {
         return(string.Empty);
     }
 }
Esempio n. 4
0
 protected string GetMailBoxIcon(int BoxId)
 {
     if (BoxId > 0)
     {
         EMailRouterPop3Box box = EMailRouterPop3Box.Load(BoxId);
         if (box != null)
         {
             string IconName = "mailbox_";
             if (box.Activity.IsActive)
             {
                 IconName += "started";
             }
             else
             {
                 IconName += "stopped";
             }
             if (box.HasProblem())
             {
                 IconName += "_problem";
             }
             IconName += ".gif";
             string error = string.Empty;
             if (box.HasProblem())
             {
                 error = box.Activity.ErrorText;
             }
             return("<img border='0' src='" + ResolveUrl("~/layouts/images/" + IconName) + "' title='" + error + "' />");
         }
     }
     return(string.Empty);
 }
Esempio n. 5
0
        void rpExtInt_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            int bid = -1;

            bid = int.Parse(e.CommandArgument.ToString());
            if (e.CommandName == "ChangeStatus")
            {
                bid = int.Parse(e.CommandArgument.ToString());
                EMailRouterPop3Box ebox = EMailRouterPop3Box.Load(bid);
                if (EMailRouterPop3Box.CanActivate(bid))
                {
                    EMailRouterPop3Box.Activate(bid, !ebox.Activity.IsActive);
                    Response.Redirect("~/Admin/HDMSettings.aspx");
                }
                else
                {
                    Response.Redirect("~/Admin/HDMSettings.aspx?errorsid=" + bid);
                }
            }
            if (e.CommandName == "Delete")
            {
                try
                {
                    EMailRouterPop3Box.Delete(bid);
                    Response.Redirect("~/Admin/HDMSettings.aspx");
                }
                catch
                {
                    this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), Guid.NewGuid().ToString(),
                                                                 String.Format("alert('{0}');", LocRM.GetString("tCantDeleteMailBox")), true);
                }
            }
        }
        protected void BindBox()
        {
            EMailRouterPop3Box box = EMailRouterPop3Box.Load(BoxId);

            if (box != null)
            {
                lbName.Text = box.Name;
                EMailRouterPop3BoxActivity act = box.Activity;
                if (act.IsActive)
                {
                    lbIsActive.Text = LocRM.GetString("tYes");
                }
                else
                {
                    lbIsActive.Text = LocRM.GetString("tNo");
                }
                lbLastReq.Text      = act.LastRequest.ToString("g");
                lbLastSuccReq.Text  = act.LastSuccessfulRequest.ToString("g");
                lbMessageCount.Text = act.TotalMessageCount.ToString();
                if (act.ErrorText.Trim() != string.Empty)
                {
                    trLastErrText.Visible = true;
                    lbLastErrText.Text    = act.ErrorText.Trim();
                }
            }
        }
Esempio n. 7
0
        private void btCheckSettings_Click(object sender, EventArgs e)
        {
            if (tbPassword.Text != string.Empty)
            {
                ViewState["Pop3Box_Password"] = tbPassword.Text;
            }

            Pop3SecureConnectionType sct = Pop3SecureConnectionType.None;

            switch (rblSecureConnection.SelectedValue)
            {
            case "Never":
                sct = Pop3SecureConnectionType.None;
                break;

            case "SSL":
                sct = Pop3SecureConnectionType.Ssl;
                break;

            case "TLS":
                sct = Pop3SecureConnectionType.Tls;
                break;
            }

            Pop3SettingsResult sok = EMailRouterPop3Box.CheckSettings(tbServer.Text.Trim(), int.Parse(tbPort.Text.Trim()), tbLogin.Text.Trim(),
                                                                      tbPassword.Text != string.Empty ? tbPassword.Text : ViewState["Pop3Box_Password"].ToString(),
                                                                      sct);

            lbSettingsValid.Visible = true;
            if (sok == Pop3SettingsResult.AllOk)
            {
                lbSettingsValid.ForeColor = Color.Blue;
                lbSettingsValid.Text      = LocRM.GetString("tOK");
                rfvPassword.Enabled       = rfvConfirmPassword.Enabled = cvConfirmPassword.Enabled = false;
            }
            else
            {
                lbSettingsValid.ForeColor = Color.Red;
                lbSettingsValid.Text      = LocRM.GetString("tError");
                rfvPassword.Enabled       = rfvConfirmPassword.Enabled = cvConfirmPassword.Enabled = true;
                if (sok == Pop3SettingsResult.None)
                {
                    rfvServer.IsValid = rfvPort.IsValid = false;
                }
                else
                if (sok == Pop3SettingsResult.ServerName)
                {
                    rfvLogin.IsValid = false;
                }
                else
                if (sok == (Pop3SettingsResult.ServerName | Pop3SettingsResult.Pop3User))
                {
                    rfvPassword.IsValid = false;
                }
            }
        }
Esempio n. 8
0
        private void lbIntChangeStatus_Click(object sender, EventArgs e)
        {
            EMailRouterPop3Box pop3Int = EMailRouterPop3Box.ListInternal();

            if (pop3Int != null && EMailRouterPop3Box.CanActivate(pop3Int.EMailRouterPop3BoxId))
            {
                EMailRouterPop3Box.Activate(pop3Int.EMailRouterPop3BoxId, !pop3Int.Activity.IsActive);
            }
            Response.Redirect(this.Page.ResolveUrl("~/Admin/EMailPop3Boxes.aspx"));
        }
Esempio n. 9
0
        private void BindExtDG()
        {
            DataTable dt = new DataTable();

            dt.Columns.Add(new DataColumn("EMailRouterPop3BoxId", typeof(int)));
            dt.Columns.Add(new DataColumn("IsActive", typeof(bool)));
            dt.Columns.Add(new DataColumn("LastRequest", typeof(DateTime)));
            dt.Columns.Add(new DataColumn("LastSuccessfulRequest", typeof(DateTime)));
            dt.Columns.Add(new DataColumn("LastErrorText", typeof(string)));
            dt.Columns.Add(new DataColumn("Name", typeof(string)));
            dt.Columns.Add(new DataColumn("TotalMessageCount", typeof(int)));
            EMailRouterPop3Box[] listExt = EMailRouterPop3Box.ListExternal();
            DataRow dr;

            foreach (EMailRouterPop3Box ex in listExt)
            {
                dr = dt.NewRow();
                dr["EMailRouterPop3BoxId"] = ex.EMailRouterPop3BoxId;
                dr["Name"] = ex.Name;
                EMailRouterPop3BoxActivity act = ex.Activity;
                dr["IsActive"]              = act.IsActive;
                dr["LastRequest"]           = act.LastRequest;
                dr["LastSuccessfulRequest"] = act.LastSuccessfulRequest;
                dr["LastErrorText"]         = act.ErrorText;
                dr["TotalMessageCount"]     = act.TotalMessageCount;
                dt.Rows.Add(dr);
            }
            DataView dv = dt.DefaultView;

            dv.Sort = "Name";

            int i = 1;

            dgBoxes.Columns[i++].HeaderText = LocRM.GetString("tName");
            dgBoxes.Columns[i++].HeaderText = LocRM.GetString("tStatus");
            dgBoxes.Columns[i++].HeaderText = LocRM.GetString("tMessageCount");
            dgBoxes.Columns[i++].HeaderText = LocRM.GetString("tLastReq");
            dgBoxes.Columns[i++].HeaderText = LocRM.GetString("tLastSuccReq");

            dgBoxes.DataSource = dv;
            dgBoxes.DataBind();

            foreach (DataGridItem dgi in dgBoxes.Items)
            {
                ImageButton ib = (ImageButton)dgi.FindControl("ibDelete");
                if (ib != null)
                {
                    ib.Attributes.Add("onclick", "return confirm('" + LocRM.GetString("tWarning") + "')");
                    ib.Attributes.Add("title", LocRM.GetString("tDelete"));
                }
            }
        }
Esempio n. 10
0
 void lbChangeStatusInternal_Click(object sender, EventArgs e)
 {
     if (InternalBoxId > 0)
     {
         EMailRouterPop3Box box = EMailRouterPop3Box.Load(InternalBoxId);
         if (box != null)
         {
             if (EMailRouterPop3Box.CanActivate(InternalBoxId))
             {
                 EMailRouterPop3Box.Activate(InternalBoxId, !box.Activity.IsActive);
             }
         }
     }
     Response.Redirect("~/Admin/HDMSettings.aspx");
 }
Esempio n. 11
0
        protected void Page_PreRender(object sender, EventArgs e)
        {
            bool boxIsEnabled = (EMailRouterPop3Box.ListInternal() != null);

            divNoIntBox.Visible  = !boxIsEnabled;
            cbAllowEMail.Enabled = cbAllowEMail.Checked || boxIsEnabled;

            tr2.Visible  = cbAllowEMail.Checked;
            tr21.Visible = cbAllowEMail.Checked;
            tr3.Visible  = cbAllowEMail.Checked;
            CheckEMR();

            trController1.Visible = cbAllowControl.Checked;
            trController.Visible  = (cbAllowControl.Checked && (int)ControllerAssignType.CustomUser == int.Parse(ddContType.SelectedValue));
        }
Esempio n. 12
0
        protected void BindTitles()
        {
            secHeader1.Title = LocRM.GetString("tMailBoxes");
            secHeader1.AddLink("<img alt='' src='" + ResolveClientUrl("~/Layouts/Images/cancel.gif") + "'/> " + LocRM.GetString("tHDM"), ResolveUrl("~/Apps/Administration/Pages/default.aspx?NodeId=MAdmin5"));
            bhExternal.Title = LocRM.GetString("tMailBoxes");
            bhExternal.AddLink("<img alt='' src='" + ResolveClientUrl("~/Layouts/Images/cancel.gif") + "'/> " + LocRM.GetString("tHDM"), ResolveUrl("~/Apps/Administration/Pages/default.aspx?NodeId=MAdmin5"));
            bhlExtOnly.AddText(LocRM.GetString("tExternalBoxes"));
            bhlExtOnly.AddRightLink("<img align='absmiddle' border='0' src='" + ResolveClientUrl("~/layouts/images/newitem.gif") + "' />&nbsp;" + LocRM.GetString("tAddBox"),
                                    "javascript:OpenWindow('" + ResolveUrl("~/Admin/EMailPop3BoxEdit.aspx") + "', " + constStringNew + ")");
            bhlExtInt.AddText(LocRM.GetString("tExternalBoxes"));
            bhlExtInt.AddRightLink("<img align='absmiddle' border='0' src='" + ResolveClientUrl("~/layouts/images/newitem.gif") + "' />&nbsp;" + LocRM.GetString("tAddBox"),
                                   "javascript:OpenWindow('" + ResolveUrl("~/Admin/EMailPop3BoxEdit.aspx") + "', " + constStringNew + ")");
            bhlIntExt.AddText(LocRM.GetString("tInternalBox"));
            bhlNoInternal.AddText(LocRM.GetString("tInternalBox"));
            bhlNoSmtp.AddText("SMTP");
            hlNoInternal.Text = LocRM.GetString("tNewIntBox");
            string sLink = String.Format("javascript:OpenWindow('{1}', {0});",
                                         constString,
                                         ResolveUrl("~/Admin/EMailPop3BoxEdit.aspx") + "?IsInternal=1");

            hlNoInternal.NavigateUrl = sLink;            // ResolveUrl("~/Admin/EmailPop3BoxEdit.aspx") + "?IsInternal=1";
            hlNoSmtp.Text            = LocRM.GetString("tCheckSMTP");
            hlNoSmtp.NavigateUrl     = ResolveUrl("~/Admin/SMTPSettings.aspx");
            EMailRouterPop3Box pop3Int = EMailRouterPop3Box.ListInternal();

            if (pop3Int != null)
            {
                lbIntName.Text         = InternalBoxName;
                lbIntIsActive.Text     = (pop3Int.Activity.IsActive) ? LocRM.GetString("tYes") : LocRM.GetString("tNo");
                lbIntMessageCount.Text = pop3Int.Activity.TotalMessageCount.ToString();
                lbIntLastReq.Text      = pop3Int.Activity.LastRequest.ToString("g");
                lbIntLastSuccReq.Text  = pop3Int.Activity.LastSuccessfulRequest.ToString("g");
            }

            bhNoAntiSpam.Title = LocRM.GetString("tAntiSpamList");
            bhAntiSpam.Title   = LocRM.GetString("tAntiSpamList");

            bhIssueBoxes.Title = LocRM.GetString("tIssBoxes");
            bhIssueBoxes.AddLink("<img border='0' width='16px' src='" + ResolveClientUrl("~/layouts/images/folder.gif") + "' height='16px' align='absmiddle'/> " + LocRM.GetString("tIssueBoxNew"), "javascript:OpenWindow('" + ResolveUrl("~/Admin/EmailIssueBoxEdit.aspx") + "'," + constString + ")");
            lbDeleteInternalBox.Text = GetDeleteButton();
            lbDeleteInternalBox.Attributes.Add("onclick", "javascript:return confirm('" + LocRM.GetString("tDelete") + "'+'?')");
            lbIntEdit.Text = GetInternalEditButton(InternalBoxId, LocRM.GetString("tEdit"));
            lbIntStat.Text = GetInternalBoxStatisticsButton();             //GetBoxStatisticsButton(InternalBoxId);
            lbChangeStatusInternal.Text = GetChangeInternalStatusButton();
            lbIntStat.Attributes.Add("onclick", "javascript:ShowStatMenu('divIntEmailBox', event)");
            lbIntBoxName.Text = InternalBoxName;
        }
Esempio n. 13
0
 private void dg_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
 {
     if (e.CommandName == "ChangeStatus")
     {
         int sid = int.Parse(e.Item.Cells[0].Text);
         EMailRouterPop3Box ebox = EMailRouterPop3Box.Load(sid);
         if (EMailRouterPop3Box.CanActivate(sid))
         {
             EMailRouterPop3Box.Activate(sid, !ebox.Activity.IsActive);
             Response.Redirect("~/Admin/EMailPop3Boxes.aspx");
         }
         else
         {
             Response.Redirect("~/Admin/EMailPop3Boxes.aspx?errorsid=" + sid);
         }
     }
 }
Esempio n. 14
0
 protected string GetEmailBoxLink(int EmailBoxId)
 {
     if (EmailBoxId <= 0)
     {
         return(string.Empty);
     }
     try
     {
         EMailRouterPop3Box emp3b = EMailRouterPop3Box.Load(EmailBoxId);
         string             Link  = "<a href='" + this.Page.ResolveUrl("~/Admin/HDMSettings.aspx") + "'>" + emp3b.Name + "</a>";
         return(Link);
     }
     catch
     {
         return(string.Empty);
     }
 }
Esempio n. 15
0
        private void BindToolbars()
        {
            secHeader.Title = LocRM.GetString("tEMailPop3");
            secInternal.AddText(LocRM.GetString("tInternalBox"));
            secExternal.AddText(LocRM.GetString("tExternalBoxes"));
            secExternal.AddRightLink("<img align='absmiddle' border='0' src='" + ResolveClientUrl("~/layouts/images/newitem.gif") + "' />&nbsp;" + LocRM.GetString("tAddBox"),
                                     "javascript:OpenWindow('" + this.Page.ResolveUrl("~/Admin/EMailPop3BoxEdit.aspx") + "', " + constStringNew + ")");
            secLog.AddText(LocRM.GetString("tEmailLogSettings"));
            btnUpdateLogSettings.Text = LocRM.GetString("tSave");
            cbLogActive.Text          = "&nbsp;" + LocRM.GetString("tActive");
            EMailRouterPop3Box pop3Int = EMailRouterPop3Box.ListInternal();

            if (pop3Int != null)
            {
                secInternal.AddRightLink("<img align='absmiddle' border='0' src='" + ResolveClientUrl("~/layouts/images/edit.gif") + "' />&nbsp;" + LocRM.GetString("tEdit"),
                                         "javascript:OpenWindow('" + this.Page.ResolveUrl("~/Admin/EMailPop3BoxEdit.aspx") + "?BoxId=" + pop3Int.EMailRouterPop3BoxId + "', " + constString + ")");
            }
        }
Esempio n. 16
0
        protected string GetInternalBoxStatisticsButton()
        {
            if (InternalBoxId > 0)
            {
                EMailRouterPop3Box box = EMailRouterPop3Box.Load(InternalBoxId);
                if (box != null)
                {
                    string err = string.Empty;
                    if (box.HasProblem())
                    {
                        err = box.Activity.ErrorText;
                    }

                    return("<a class='text' href='#' onclick='javascript:ShowStatMenu(\"divEmailBox_" + InternalBoxId.ToString() + "\", event)'><img border='0' align='absmiddle' src='" + ResolveUrl("~/layouts/images/info.gif") + "' title='" + err + "'  />&nbsp;" + LocRM.GetString("tStatistics") + "</a>");
                }
            }
            return(string.Empty);
        }
Esempio n. 17
0
 protected string GetBoxStatisticsButton(int id)
 {
     if (id > 0)
     {
         EMailRouterPop3Box box = EMailRouterPop3Box.Load(id);
         if (box != null)
         {
             return(String.Format("<a href=\"javascript:OpenWindow('{3}', {2})\"><img border='0' align='absmiddle' src='{0}' title='{1}'/>&nbsp;{4}</a>",
                                  ResolveUrl("~/layouts/images/info.gif"),
                                  LocRM.GetString("tStatistics"), constStringStat,
                                  ResolveUrl("~/Admin/EMailPop3BoxStatistics.aspx") + "?BoxId=" + id.ToString(),
                                  LocRM.GetString("tStatistics")));
         }
         return(string.Empty);
     }
     else
     {
         return(string.Empty);
     }
 }
Esempio n. 18
0
        private void BindInternal()
        {
            EMailRouterPop3Box pop3Int = EMailRouterPop3Box.ListInternal();

            if (pop3Int != null)
            {
                intBox.Visible      = true;
                lblNoIntBox.Visible = false;
                lblIntName.Text     = pop3Int.Name;
                lblIntServer.Text   = pop3Int.Server;
                lblIntStatus.Text   = GetStatus((object)pop3Int.Activity.IsActive,
                                                (object)pop3Int.Activity.LastRequest, (object)pop3Int.Activity.LastSuccessfulRequest,
                                                (object)pop3Int.Activity.ErrorText);
                lbIntChangeStatus.Text = String.Format("(&nbsp;<img border='0' align='absmiddle' src='{0}' />&nbsp;{1}&nbsp;)",
                                                       (pop3Int.Activity.IsActive) ?
                                                       this.Page.ResolveUrl("~/layouts/images/icons/status_stopped.gif") :
                                                       this.Page.ResolveUrl("~/layouts/images/icons/status_active.gif"),
                                                       (pop3Int.Activity.IsActive) ?
                                                       LocRM.GetString("tChangeStatusStop") :
                                                       LocRM.GetString("tChangeStatusRun"));
                lblIntPort.Text     = pop3Int.Port.ToString();
                lblIntAddress.Text  = pop3Int.EMailAddress;
                lblLastReq.Text     = (pop3Int.Activity.LastRequest == DateTime.MinValue) ? "" : pop3Int.Activity.LastRequest.ToString("g");
                lblLastSuccReq.Text = (pop3Int.Activity.LastSuccessfulRequest == DateTime.MinValue) ? "" : pop3Int.Activity.LastSuccessfulRequest.ToString("g");

                lbMessageCount.Text = pop3Int.Activity.TotalMessageCount.ToString();
            }
            else
            {
                intBox.Visible      = false;
                lblNoIntBox.Visible = true;
                lblNoIntBox.Text    = LocRM.GetString("tNoIntBox");
                secInternal.AddRightLink(string.Format("<img align='absmiddle' border='0' src='{0}' />&nbsp;", this.Page.ResolveUrl("~/layouts/images/newitem.gif")) + LocRM.GetString("tAddBox"),
                                         "javascript:OpenWindow('" + this.Page.ResolveUrl("~/Admin/EMailPop3BoxEdit.aspx?IsInternal=1") + "', " + constStringNew + ")");
            }
        }
Esempio n. 19
0
        protected void BindExternal()
        {
            DataTable dt = new DataTable();

            dt.Columns.Add(new DataColumn("EMailRouterPop3BoxId", typeof(int)));
            dt.Columns.Add(new DataColumn("IsActive", typeof(bool)));
            dt.Columns.Add(new DataColumn("LastRequest", typeof(DateTime)));
            dt.Columns.Add(new DataColumn("LastSuccessfulRequest", typeof(DateTime)));
            dt.Columns.Add(new DataColumn("LastErrorText", typeof(string)));
            dt.Columns.Add(new DataColumn("Name", typeof(string)));
            dt.Columns.Add(new DataColumn("TotalMessageCount", typeof(int)));
            EMailRouterPop3Box[] listExt = EMailRouterPop3Box.ListExternal();
            DataRow dr;

            foreach (EMailRouterPop3Box ex in listExt)
            {
                dr = dt.NewRow();
                dr["EMailRouterPop3BoxId"] = ex.EMailRouterPop3BoxId;
                dr["Name"] = ex.Name;
                EMailRouterPop3BoxActivity act = ex.Activity;
                dr["IsActive"]              = act.IsActive;
                dr["LastRequest"]           = act.LastRequest;
                dr["LastSuccessfulRequest"] = act.LastSuccessfulRequest;
                if (ex.HasProblem())
                {
                    dr["LastErrorText"] = act.ErrorText;
                }
                else
                {
                    dr["LastErrorText"] = string.Empty;
                }
                dr["TotalMessageCount"] = act.TotalMessageCount;
                dt.Rows.Add(dr);
            }
            rpExtOnly.DataSource = rpExtInt.DataSource = dt;
            rpExtOnly.DataBind(); rpExtInt.DataBind();
            foreach (RepeaterItem ri in rpExtOnly.Items)
            {
                LinkButton lb = (LinkButton)ri.FindControl("ibDelete");
                if (lb != null)
                {
                    lb.Attributes.Add("onclick", "javascript:return confirm('" + LocRM.GetString("tDelete") + "'+'?')");
                }
            }
            foreach (RepeaterItem ri in rpExtInt.Items)
            {
                LinkButton lb = (LinkButton)ri.FindControl("ibDelete");
                if (lb != null)
                {
                    lb.Attributes.Add("onclick", "javascript:return confirm('" + LocRM.GetString("tDelete") + "'+'?')");
                }
            }

            if (PortalConfig.HasExternalEMailBox)
            {
                //if (PortalConfig.HasInternalEMailBox && PortalConfig.SmtpSettings.IsChecked)
                //{
                //    trExternalOnly.Visible = trNoInternal.Visible = trSmtpNotChecked.Visible = false;
                //    trExternalInternal.Visible = true;

                //}
                //if (PortalConfig.HasInternalEMailBox && !PortalConfig.SmtpSettings.IsChecked)
                //{
                //    trExternalOnly.Visible = trNoInternal.Visible = false;
                //    trExternalInternal.Visible = trSmtpNotChecked.Visible = true;
                //}
                //if (!PortalConfig.HasInternalEMailBox && PortalConfig.SmtpSettings.IsChecked)
                //{
                //    trExternalOnly.Visible = trNoInternal.Visible = true;
                //    trExternalInternal.Visible = trSmtpNotChecked.Visible = false;
                //}
                //if (!PortalConfig.HasInternalEMailBox && !PortalConfig.SmtpSettings.IsChecked)
                //{
                //    trExternalOnly.Visible = trNoInternal.Visible = trSmtpNotChecked.Visible = true;
                //    trExternalInternal.Visible = false;
                //}

                if (PortalConfig.HasInternalEMailBox)
                {
                    trExternalOnly.Visible     = trNoInternal.Visible = false;
                    trExternalInternal.Visible = true;
                }
                if (!PortalConfig.HasInternalEMailBox)
                {
                    trExternalOnly.Visible     = trNoInternal.Visible = true;
                    trExternalInternal.Visible = false;
                }
            }
        }
Esempio n. 20
0
        private void imbSave_ServerClick(object sender, EventArgs e)
        {
            if (BoxId > 0)
            {
                EMailRouterPop3Box box = EMailRouterPop3Box.Load(BoxId);
                if (box != null)
                {
                    box.Name         = txtName.Text;
                    box.Server       = tbServer.Text.Trim();
                    box.Port         = int.Parse(tbPort.Text.Trim());
                    box.Login        = tbLogin.Text;
                    box.Pass         = tbPassword.Text != string.Empty ? tbPassword.Text : ViewState["Pop3Box_Password"].ToString();
                    box.EMailAddress = tbInternalEmail.Text;
                    switch (rblSecureConnection.SelectedValue)
                    {
                    case "Never":
                        box.SecureConnectionType = Pop3SecureConnectionType.None;
                        break;

                    case "SSL":
                        box.SecureConnectionType = Pop3SecureConnectionType.Ssl;
                        break;

                    case "TLS":
                        box.SecureConnectionType = Pop3SecureConnectionType.Tls;
                        break;
                    }
                    EMailRouterPop3Box.Update(box);

                    if (int.Parse(ddSmtpBoxes.SelectedValue) > 0)
                    {
                        OutgoingEmailServiceConfig.AssignWithSmtpBox(OutgoingEmailServiceType.HelpDeskEmailBox, BoxId, int.Parse(ddSmtpBoxes.SelectedValue));
                    }
                    else
                    {
                        OutgoingEmailServiceConfig.AssignWithDefaultSmtpBox(OutgoingEmailServiceType.HelpDeskEmailBox, BoxId);
                    }
                }
            }
            else
            {
                Pop3SecureConnectionType sct = Pop3SecureConnectionType.None;
                switch (rblSecureConnection.SelectedValue)
                {
                case "Never":
                    sct = Pop3SecureConnectionType.None;
                    break;

                case "SSL":
                    sct = Pop3SecureConnectionType.Ssl;
                    break;

                case "TLS":
                    sct = Pop3SecureConnectionType.Tls;
                    break;
                }
                if (IsInternal)
                {
                    int boxId = EMailRouterPop3Box.CreateInternal(txtName.Text, tbInternalEmail.Text.Trim(), tbServer.Text.Trim(), int.Parse(tbPort.Text.Trim()), tbLogin.Text, tbPassword.Text != string.Empty ? tbPassword.Text : ViewState["Pop3Box_Password"].ToString(), sct);
                    if (int.Parse(ddSmtpBoxes.SelectedValue) > 0)
                    {
                        OutgoingEmailServiceConfig.AssignWithSmtpBox(OutgoingEmailServiceType.HelpDeskEmailBox, boxId, int.Parse(ddSmtpBoxes.SelectedValue));
                    }
                    else
                    {
                        OutgoingEmailServiceConfig.AssignWithDefaultSmtpBox(OutgoingEmailServiceType.HelpDeskEmailBox, boxId);
                    }
                }
                else
                {
                    int boxId = EMailRouterPop3Box.CreateExternal(txtName.Text, tbInternalEmail.Text, tbServer.Text.Trim(), int.Parse(tbPort.Text.Trim()), tbLogin.Text, tbPassword.Text != string.Empty ? tbPassword.Text : ViewState["Pop3Box_Password"].ToString(), sct);
                    if (int.Parse(ddSmtpBoxes.SelectedValue) > 0)
                    {
                        OutgoingEmailServiceConfig.AssignWithSmtpBox(OutgoingEmailServiceType.HelpDeskEmailBox, boxId, int.Parse(ddSmtpBoxes.SelectedValue));
                    }
                    else
                    {
                        OutgoingEmailServiceConfig.AssignWithDefaultSmtpBox(OutgoingEmailServiceType.HelpDeskEmailBox, boxId);
                    }
                }
            }

            Page.ClientScript.RegisterStartupScript(this.GetType(), Guid.NewGuid().ToString(),
                                                    "try {window.opener.location.href=window.opener.location.href;}" +
                                                    "catch (e){} window.close();", true);
        }
Esempio n. 21
0
        private void BindData()
        {
            ddSmtpBoxes.DataSource     = SmtpBox.List();
            ddSmtpBoxes.DataTextField  = "Name";
            ddSmtpBoxes.DataValueField = "SmtpBoxId";
            ddSmtpBoxes.DataBind();
            ddSmtpBoxes.Items.Insert(0, new ListItem(LocRM.GetString("tDefaultValue"), "-1"));
            if (BoxId > 0)
            {
                EMailRouterPop3Box box = EMailRouterPop3Box.Load(BoxId);
                if (box != null)
                {
                    txtName.Text         = box.Name;
                    tbInternalEmail.Text = box.EMailAddress;
                    tbServer.Text        = box.Server;
                    tbPort.Text          = box.Port.ToString();
                    tbLogin.Text         = box.Login;
                    //tbPassword.Text = box.Pass;
                    ViewState["Pop3Box_Password"] = box.Pass;
                    ListItem li = null;
                    switch (box.SecureConnectionType)
                    {
                    case Pop3SecureConnectionType.Ssl:
                        li = rblSecureConnection.Items.FindByValue("SSL");
                        if (li != null)
                        {
                            li.Selected = true;
                        }
                        break;

                    case Pop3SecureConnectionType.Tls:
                        li = rblSecureConnection.Items.FindByValue("TLS");
                        if (li != null)
                        {
                            li.Selected = true;
                        }
                        break;

                    default:
                        li = rblSecureConnection.Items.FindByValue("Never");
                        if (li != null)
                        {
                            li.Selected = true;
                        }
                        break;
                    }
                    SmtpBox smtp = OutgoingEmailServiceConfig.FindSmtpBox(OutgoingEmailServiceType.HelpDeskEmailBox, BoxId, false);
                    if (smtp != null)
                    {
                        CommonHelper.SafeSelect(ddSmtpBoxes, smtp.SmtpBoxId.ToString());
                    }
                }
                trConfirmPassword.Visible = false;
                rfvPassword.Enabled       = false;
            }
            else
            {
                trConfirmPassword.Visible = true;
                rfvPassword.Enabled       = true;
            }
        }
Esempio n. 22
0
        public static void SendMessage(string[] To, string Subject, string Body, Mediachase.IBN.Business.ControlSystem.DirectoryInfo Attachments, string Mode, NameValueCollection Params)
        {
            // Cleanup Temporary files
            DbEMailTempFile.CleanUp();

            #region Validate Arguments
            if (To == null)
            {
                throw new ArgumentNullException("To");
            }

            if (Subject == null)
            {
                throw new ArgumentNullException("Subject");
            }

            if (Body == null)
            {
                throw new ArgumentNullException("Body");
            }

            //if (To.Length == 0)
            //    throw new ArgumentOutOfRangeException("To", "Email recipient list is empty.");

            if (Mode == null)
            {
                Mode = string.Empty;
            }

            if (Params == null)
            {
                Params = new NameValueCollection();
            }
            #endregion

            string FromEmail = string.Empty;

            switch (Mode)
            {
            case EMailClient.IssueMode:
            case EMailClient.SmtpTestMode:
                FromEmail = Alerts2.AlertSenderEmail;
                break;

            default:
                FromEmail = Security.CurrentUser.Email;
                break;
            }

            string FullFromEmail = string.Format("\"{0} {1}\" <{2}>",
                                                 Security.CurrentUser.LastName,
                                                 Security.CurrentUser.FirstName,
                                                 FromEmail);

            using (DbTransaction tran = DbTransaction.Begin())
            {
                EMailMessageLogSetting EmailLogSettings = EMailMessageLogSetting.Current;
                if (EmailLogSettings.IsActive)
                {
                    EMailMessageLog.CleanUp(EmailLogSettings.Period);
                }
                else
                {
                    EmailLogSettings = null;
                }

                Mode = Mode.ToLower();

                #region Pre-format incoming arguments
                switch (Mode)
                {
                case EMailClient.IssueMode:
                    if (Params["IssueId"] == null)
                    {
                        throw new ArgumentNullException("Params[\"IssueId\"]");
                    }

                    int IssueId = int.Parse(Params["IssueId"]);

                    // TODO: Validate Subject & Ticket
                    if (TicketUidUtil.LoadFromString(Subject) == string.Empty)
                    {
                        IncidentBox incidentBox = IncidentBox.Load(Incident.GetIncidentBox(IssueId));

                        string IncidentTicket = Incident.GetIdentifier(IssueId);

                        if (incidentBox.Document.GeneralBlock.AllowOutgoingEmailFormat)
                        {
                            StringBuilder sb = new StringBuilder(incidentBox.Document.GeneralBlock.OutgoingEmailFormatSubject, 4096);

                            sb.Replace("[=Title=]", Subject);
                            sb.Replace("[=Ticket=]", IncidentTicket);
                            //sb.Replace("[=Text=]", Body);
                            sb.Replace("[=FirstName=]", Security.CurrentUser.FirstName);
                            sb.Replace("[=LastName=]", Security.CurrentUser.LastName);

                            Subject = sb.ToString();
                        }
                        else
                        {
                            Subject = string.Format("RE: [{0}] {1}",
                                                    IncidentTicket,
                                                    Subject);
                        }
                    }
                    break;

                default:
                    break;
                }

                #endregion

                Pop3Message msg = Create(FullFromEmail, To, Subject, Body, Attachments);

                switch (Mode)
                {
                case EMailClient.IssueMode:
                    #region Issue
                    int IssueId = int.Parse(Params["IssueId"]);

                    IncidentBox incidentBox = IncidentBox.Load(Incident.GetIncidentBox(IssueId));

                    bool AllowEMailRouting = true;

                    EMailRouterIncidentBoxBlock settings = IncidentBoxDocument.Load(incidentBox.IncidentBoxId).EMailRouterBlock;
                    if (!settings.AllowEMailRouting)
                    {
                        AllowEMailRouting = false;
                    }

                    EMailRouterPop3Box internalPop3Box = EMailRouterPop3Box.ListInternal();
                    if (internalPop3Box == null)
                    {
                        AllowEMailRouting = false;
                    }

                    // Register Email Message
                    // OZ: [2007--05-25] Fix Problem Object reference not set to an instance of an object If (internalPop3Box == NULL)
                    int EMailMessageId = EMailMessage.Create(internalPop3Box != null?
                                                             internalPop3Box.EMailRouterPop3BoxId : EMailRouterOutputMessage.FindEMailRouterPublicId(IssueId),
                                                             msg);

                    // Register Forume Node
                    int ThreadNodeId = EMailMessage.AddToIncidentMessage(true, IssueId, EMailMessageId, msg);

                    // Send Message

                    if (AllowEMailRouting)
                    {
                        ArrayList excludedUsers = EMailRouterOutputMessage.Send(IssueId, internalPop3Box, msg, To);
                        SystemEvents.AddSystemEvents(SystemEventTypes.Issue_Updated_Forum_MessageAdded, IssueId, -1, excludedUsers);
                    }
                    else
                    {
                        FromEmail     = EMailRouterOutputMessage.FindEMailRouterPublicEmail(IssueId);
                        FullFromEmail = string.Format("\"{0} {1}\" <{2}>",
                                                      Security.CurrentUser.LastName,
                                                      Security.CurrentUser.FirstName,
                                                      FromEmail);

                        // Create OutputMessageCreator
                        OutputMessageCreator issueOutput = new OutputMessageCreator(msg,
                                                                                    -1,
                                                                                    FromEmail,
                                                                                    FullFromEmail);

                        // Fill Recipent
                        foreach (string ToItem in To)
                        {
                            issueOutput.AddRecipient(ToItem);
                        }

                        foreach (EMailIssueExternalRecipient exRecipient in EMailIssueExternalRecipient.List(IssueId))
                        {
                            issueOutput.AddRecipient(exRecipient.EMail);
                        }

                        int emailBoxId = EMail.EMailRouterOutputMessage.FindEMailRouterPublicId(IssueId);

                        //Send Smtp Message
                        foreach (OutputMessage outputMsg in issueOutput.Create())
                        {
                            SmtpClientUtility.SendMessage(OutgoingEmailServiceType.HelpDeskEmailBox, emailBoxId, outputMsg.MailFrom, outputMsg.RcptTo, outputMsg.Subject, outputMsg.Data);
                        }

                        ArrayList excludedUsers = new ArrayList();

                        foreach (string ToItem in To)
                        {
                            int emailUserId = DBUser.GetUserByEmail(ToItem, false);
                            if (emailUserId > 0)
                            {
                                excludedUsers.Add(emailUserId);
                            }
                        }

                        SystemEvents.AddSystemEvents(SystemEventTypes.Issue_Updated_Forum_MessageAdded, IssueId, -1, excludedUsers);
                    }
                    #endregion
                    break;

                case EMailClient.SmtpTestMode:
                    throw new NotImplementedException();
                //OutputMessageCreator smtpTestOutput = new OutputMessageCreator(msg,
                //    -1,
                //    FromEmail,
                //    FullFromEmail);

                //// Fill Recipent
                //foreach (string ToItem in To)
                //{
                //    smtpTestOutput.AddRecipient(ToItem);
                //}

                ////Send Smtp Message
                //foreach (OutputMessage outputMsg in smtpTestOutput.Create())
                //{
                //    //SmtpClientUtility.DirectSendMessage(outputMsg.MailFrom, outputMsg.RcptTo, outputMsg.Subject, outputMsg.Data);
                //    //SmtpBox.SendTestEmail(
                //}
                //break;
                default:
                    #region Default
                    // Create OutputMessageCreator
                    OutputMessageCreator defaultOutput = new OutputMessageCreator(msg,
                                                                                  -1,
                                                                                  FromEmail,
                                                                                  FullFromEmail);

                    // Fill Recipent
                    foreach (string ToItem in To)
                    {
                        defaultOutput.AddRecipient(ToItem);
                    }

                    //Send Smtp Message
                    foreach (OutputMessage outputMsg in defaultOutput.Create())
                    {
                        SmtpClientUtility.SendMessage(OutgoingEmailServiceType.SendFile, null, outputMsg.MailFrom, outputMsg.RcptTo, outputMsg.Subject, outputMsg.Data);
                    }

                    #endregion
                    break;
                }

                if (Attachments != null)
                {
                    FileStorage.InnerDeleteFolder(Attachments.Id);
                }

                tran.Commit();
            }
        }
Esempio n. 23
0
        protected void btnCheck_Click(object sender, System.EventArgs e)
        {
            Page.ClientScript.RegisterStartupScript(this.GetType(), Guid.NewGuid().ToString(), "<script>EnableDisable();</script>");
            string sServer = txtServer.Value;
            int    iPort   = 0;

            try
            {
                iPort = int.Parse(txtPort.Value);
            }
            catch
            {
                lblCheck.Visible   = true;
                lblCheck.ForeColor = Color.Red;
                lblCheck.Text      = LocRM.GetString("tError") + "&nbsp;";
                return;
            }
            string sUser = txtUser.Value;
            string sPass = txtPass.Value;

            if (sPass.Length <= 0)
            {
                sPass = Password;
            }
            else
            {
                ViewState["_Pass"] = txtPass.Value;
            }

            //TEST Addon (OlegO):
            //Incident.CreateFromEMail();

            Pop3SettingsResult _sok = EMailRouterPop3Box.CheckSettings(sServer, iPort, sUser, sPass, Pop3SecureConnectionType.None);

            if (_sok == Pop3SettingsResult.AllOk)
            {
                lblCheck.Visible   = true;
                lblCheck.ForeColor = Color.Blue;
                lblCheck.Text      = LocRM.GetString("tOK") + "&nbsp;";
            }
            else if (_sok == Pop3SettingsResult.None)
            {
                lblCheck.Visible    = true;
                lblCheck.ForeColor  = Color.Red;
                lblCheck.Text       = LocRM.GetString("tError") + "&nbsp;";
                lblServerError.Text = "*";
                lblPortError.Text   = "*";
            }
            else if (_sok == Pop3SettingsResult.ServerName)
            {
                lblCheck.Visible   = true;
                lblCheck.ForeColor = Color.Red;
                lblCheck.Text      = LocRM.GetString("tError") + "&nbsp;";
                lblUserError.Text  = "*";
            }
            else if (_sok == (Pop3SettingsResult.ServerName | Pop3SettingsResult.Pop3User))
            {
                lblCheck.Visible   = true;
                lblCheck.ForeColor = Color.Red;
                lblCheck.Text      = LocRM.GetString("tError") + "&nbsp;";
                lblUserError.Text  = "*";
                lblPassError.Text  = "*";
            }
            foreach (ListItem liItem in ddFolder.Items)
            {
                if (liItem.Value.IndexOf("*") >= 0)
                {
                    liItem.Attributes.Add("style", "COLOR: gray;");
                }
            }
        }
Esempio n. 24
0
 void lbDeleteInternalBox_Click(object sender, EventArgs e)
 {
     EMailRouterPop3Box.Delete(InternalBoxId);
     Response.Redirect("~/Admin/HDMSettings.aspx");
 }