Пример #1
0
    private void Save()
    {
        string validationResult = new Validator()
                                  .NotEmpty(txtServerName.Text, rfvServerName.ErrorMessage)
                                  .Result;

        if (!string.IsNullOrEmpty(validationResult))
        {
            ShowError(validationResult);
            return;
        }

        try
        {
            SMTPServerPriorityEnum priority = (SMTPServerPriorityEnum)Enum.Parse(typeof(SMTPServerPriorityEnum), ddlPriorities.SelectedValue);

            SMTPServerInfo smtpServer =
                SMTPServerInfoProvider.CreateSMTPServer(txtServerName.Text, txtUserName.Text, txtPassword.Text, chkUseSSL.Checked, priority);

            if (chkAssign.Checked && currentSite != null)
            {
                SMTPServerSiteInfoProvider.AddSMTPServerToSite(smtpServer.ServerID, currentSite.SiteID);
            }

            URLHelper.Redirect(string.Format("Frameset.aspx?smtpserverid={0}&saved=1", smtpServer.ServerID));
        }
        catch (Exception e)
        {
            ShowError(e.Message);
            return;
        }
    }
    /// <summary>
    /// Loads current sites from DB.
    /// </summary>
    private void GetCurrentSites()
    {
        DataSet serverSites = SMTPServerSiteInfoProvider.GetSMTPServerSites().WhereEquals("ServerID", smtpServer.ServerID).OrderBy("SiteID");

        if (!DataHelper.DataSourceIsEmpty(serverSites))
        {
            currentValues = TextHelper.Join(";", DataHelper.GetStringValues(serverSites.Tables[0], "SiteID"));
        }
        else
        {
            currentValues = string.Empty;
        }
    }
    /// <summary>
    /// Loads current sites from DB.
    /// </summary>
    private void GetCurrentSites()
    {
        string where = string.Format("ServerID = {0}", smtpServer.ServerID);
        serverSites  = SMTPServerSiteInfoProvider.GetSMTPServerSites(where, "SiteID");

        if (!DataHelper.DataSourceIsEmpty(serverSites))
        {
            currentValues = TextHelper.Join(";", SystemDataHelper.GetStringValues(serverSites.Tables[0], "SiteID"));
        }
        else
        {
            currentValues = string.Empty;
        }
    }
    /// <summary>
    /// Add sites to SMTP server.
    /// </summary>
    private void AddNewRecords(string newValues, string currentValues)
    {
        string items = DataHelper.GetNewItemsInList(currentValues, newValues);

        if (!String.IsNullOrEmpty(items))
        {
            string[] modifiedItems = items.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
            if (modifiedItems != null)
            {
                foreach (string item in modifiedItems)
                {
                    SMTPServerSiteInfoProvider.AddSMTPServerToSite(smtpServerId, ValidationHelper.GetInteger(item, 0));
                }
            }
        }
    }