コード例 #1
0
        public List <EmailServerModel> GetEmailServerList()
        {
            EmailServerDAL          _dal       = new EmailServerDAL();
            List <EmailServerModel> serverList = null;

            DataTable dt = _dal.GetSystemEmailServer(userId);

            if (dt == null)
            {
                return(null);
            }

            serverList = new List <EmailServerModel>();
            EmailServerModel entity = null;

            foreach (DataRow row in dt.Rows)
            {
                entity = new EmailServerModel();

                entity.IsActive              = (Boolean)(row["IsActive"]);
                entity.EmailPort             = (int)(row["EmailPort"]);
                entity.EnableSSL             = (Boolean)(row["EnableSSL"]);
                entity.ServerId              = (Int64)(row["ServerId"]);
                entity.ServerIP              = (string)(row["ServerIP"]);
                entity.ServerName            = (string)(row["ServerName"]);
                entity.UseDefaultCredentials = (Boolean)(row["UseDefaultCredentials"]);
                entity.UserName              = Convert.ToString(row["UserName"]);
                entity.UserPswd              = Convert.ToString((row["UserPswd"]));
                entity.Priority              = Convert.ToByte((row["Priority"]));

                serverList.Add(entity);
            }

            return(serverList);
        }
コード例 #2
0
        public override async Task <IEmailServerModel> SelectByIDAsync(long id, long userId, CancellationToken cancellationToken)
        {
            DataTable dt = null;
            Dictionary <string, object> param = new Dictionary <string, object>();

            param.Add(DBObjects.SPParameter.ServerId, GetParameter(DBObjects.SPParameter.ServerId, ParameterDirection.Input, ((int)SqlDbType.BigInt), 8, id));
            param.Add(DBObjects.SPParameter.UserId, GetParameter(DBObjects.SPParameter.UserId, ParameterDirection.Input, ((int)SqlDbType.BigInt), 8, userId));
            dt = await this.GetSPDataTableAsync(DBObjects.StoredProcedures.pspEmailServerByID.ToString(), cancellationToken, param);

            IEmailServerModel model = new EmailServerModel();

            model.ServerId              = Convert.ToInt64(dt.Rows[0]["ServerId"]);
            model.ServerName            = dt.Rows[0]["ServerName"].ToString();
            model.ServerIP              = dt.Rows[0]["ServerIP"].ToString();
            model.EmailPort             = Convert.ToInt32(dt.Rows[0]["EmailPort"]);
            model.UserName              = dt.Rows[0]["UserName"].ToString();
            model.UserPswd              = dt.Rows[0]["UserPswd"].ToString();
            model.UseDefaultCredentials = Convert.ToBoolean(dt.Rows[0]["UseDefaultCredentials"]);
            model.EnableSSL             = Convert.ToBoolean(dt.Rows[0]["EnableSSL"]);
            model.IsActive              = Convert.ToBoolean(dt.Rows[0]["IsActive"]);
            model.UpdateDate            = Convert.ToDateTime(PublicFunctions.ConvertDBNullToNull(dt.Rows[0]["UpdateDate"]));
            model.UpdateUserID          = Convert.ToInt64(PublicFunctions.ConvertDBNullToNull(dt.Rows[0]["UpdateUserID"]));
            model.AddDate   = Convert.ToDateTime(PublicFunctions.ConvertDBNullToNull(dt.Rows[0]["AddDate"]));
            model.AddUserID = Convert.ToInt64(PublicFunctions.ConvertDBNullToNull(dt.Rows[0]["AddUserID"]));

            model.Priority = Convert.ToByte(PublicFunctions.ConvertDBNullToNull(dt.Rows[0]["Priority"]));

            return(model);
        }
コード例 #3
0
        public ActionResult Index()
        {
            EmailServerModel  emailServerModel  = new EmailServerModel();
            EmailServerHelper emailServerHelper = new EmailServerHelper();

            emailServerModel = emailServerHelper.GetEmailServerDetails(emailServerModel);
            return(View(emailServerModel));
        }
コード例 #4
0
 public EmailServerModel GetEmailServerDetails(EmailServerModel emailServerModel)
 {
     using (var db = new StratasFairDBEntities())
     {
         var emailServer = db.tblEmailServers.Where(m => m.Active == 1).SingleOrDefault();
         if (emailServer != null)
         {
             emailServerModel.Id                  = emailServer.Id;
             emailServerModel.EmailServer         = emailServer.EmailServer;
             emailServerModel.NetworkUserId       = emailServer.NetworkUserId;
             emailServerModel.NetworkUserPassword = emailServer.NetworkUserPassword;
             emailServerModel.SenderDisplayName   = emailServer.SenderDisplayName;
             emailServerModel.FromEmail           = emailServer.FromEmail;
             emailServerModel.Port                = (int)emailServer.Port;
         }
     }
     return(emailServerModel);
 }
コード例 #5
0
 public ActionResult Check(EmailServerModel emailServerModel)
 {
     if (ModelState.IsValid)
     {
         string mailSuccess = EmailSender.SendTestMailFromAdmin(emailServerModel.Email, "Test Mail", "Test Mail from StratasFair Admin");
         if (mailSuccess == "success")
         {
             TempData["CommonMessage"] = AppLogic.setMessage(0, "Email is tested successfully.");
             return(RedirectToAction("Index"));
         }
         else
         {
             TempData["CommonMessage"] = AppLogic.setMessage(-1, mailSuccess);
             return(RedirectToAction("Index"));
         }
     }
     return(View(emailServerModel));
 }
コード例 #6
0
        public int UpdateEmailServerSetting(EmailServerModel emailServerModel)
        {
            int result = -1;

            try
            {
                using (var db = new StratasFairDBEntities())
                {
                    if (emailServerModel.Id > 0)
                    {
                        // update the data
                        var emailServerdb = db.tblEmailServers.FirstOrDefault(m => m.Id == emailServerModel.Id);
                        emailServerdb.EmailServer         = emailServerModel.EmailServer;
                        emailServerdb.NetworkUserId       = emailServerModel.NetworkUserId;
                        emailServerdb.NetworkUserPassword = emailServerModel.NetworkUserPassword;
                        emailServerdb.SenderDisplayName   = emailServerModel.SenderDisplayName;
                        emailServerdb.FromEmail           = emailServerModel.FromEmail;
                        emailServerdb.Port            = emailServerModel.Port;
                        db.Entry(emailServerdb).State = EntityState.Modified;
                    }
                    else
                    {
                        // insert the new data
                        var emailServerdb = new tblEmailServer();
                        emailServerdb.EmailServer         = emailServerModel.EmailServer;
                        emailServerdb.NetworkUserId       = emailServerModel.NetworkUserId;
                        emailServerdb.NetworkUserPassword = emailServerModel.NetworkUserPassword;
                        emailServerdb.SenderDisplayName   = emailServerModel.SenderDisplayName;
                        emailServerdb.FromEmail           = emailServerModel.FromEmail;
                        emailServerdb.Port   = emailServerModel.Port;
                        emailServerdb.Active = 1;
                        db.tblEmailServers.Add(emailServerdb);
                    }
                    db.SaveChanges();
                    result = 1;
                }
                return(result);
            }
            catch
            {
            }
            return(result);
        }
コード例 #7
0
 public ActionResult Index(EmailServerModel emailServerModel)
 {
     ModelState.Remove("Email");
     if (ModelState.IsValid)
     {
         EmailServerHelper emailServerHelper = new EmailServerHelper();
         int result = emailServerHelper.UpdateEmailServerSetting(emailServerModel);
         if (result >= 1)
         {
             TempData["CommonMessage"] = AppLogic.setMessage(0, "Record updated successfully.");
             return(RedirectToAction("Index"));
         }
         else
         {
             TempData["CommonMessage"] = AppLogic.setMessage(result, "Error: Please try again.");
             return(RedirectToAction("Index"));
         }
     }
     return(View(emailServerModel));
 }
コード例 #8
0
        public async Task <ActionResult> Index(EmailServerModel model, CancellationToken cancellationToken)
        {
            if (!ModelState.IsValid)
            {
                ViewData[Constant.CustomSuccessMessage] = Constant.CustomValidationErrorMessage;
                ViewData[Constant.QuerySuccess]         = false;
                model = (EmailServerModel)await _service.IndexAsync(this.HttpContext.ApplicationInstance.Context, GetCanellationToken(cancellationToken));

                return(View(model));
            }
            ModelState.Clear();
            model = (EmailServerModel)await _service.SaveAsync(this.HttpContext.ApplicationInstance.Context, model, GetCanellationToken(cancellationToken));

            ViewData[Constant.QuerySuccess] = HttpContext.Items[Constant.QuerySuccess];
            ViewData[Constant.FormTitle]    = HttpContext.Items[Constant.FormTitle];
            if (System.Convert.ToBoolean(ViewData[Constant.QuerySuccess]))
            {
                ViewData[Constant.FormTitle] = "EDIT Email Server";
            }
            return(View(model));
        }
コード例 #9
0
        /// <summary>
        /// Converts to email server settings.
        /// </summary>
        /// <param name="settings">The settings.</param>
        /// <returns></returns>
        private EmailServerModel ConvertToEmailServerSettings(List <SettingModel> settings)
        {
            try
            {
                var emailServerDetails = new EmailServerModel();
                if (settings != null && settings.Count > 0)
                {
                    emailServerDetails.Host                  = settings.FirstOrDefault(host => host.Settings == ApplicationEmailSettings.Host).Value;
                    emailServerDetails.Port                  = Convert.ToInt32(settings.FirstOrDefault(port => port.Settings == ApplicationEmailSettings.Port).Value);
                    emailServerDetails.EnableSsl             = Convert.ToBoolean(settings.FirstOrDefault(enableSsl => enableSsl.Settings == ApplicationEmailSettings.EnableSsl).Value);
                    emailServerDetails.UseDefaultCredentials = Convert.ToBoolean(settings.FirstOrDefault(useDefaultCredentials => useDefaultCredentials.Settings == ApplicationEmailSettings.UseDefaultCredentials).Value);
                    emailServerDetails.Username              = settings.FirstOrDefault(username => username.Settings == ApplicationEmailSettings.Username).Value;
                    emailServerDetails.Password              = settings.FirstOrDefault(password => password.Settings == ApplicationEmailSettings.Password).Value;
                }

                return(emailServerDetails);
            }
            catch
            {
                return(null);
            }
        }
コード例 #10
0
        public async override Task <IEmailServerModel> IndexAsync(System.Web.HttpContext context, CancellationToken cancellationToken)
        {
            IEmailServerModel model = new EmailServerModel();

            return(model);
        }