public ActionResult UserAdd(Users_Model users_, HttpPostedFileBase ImageString) { if (string.IsNullOrEmpty(users_.FullName) || string.IsNullOrEmpty(users_.Email) || users_.MobileNo <= 0 || users_.UserProfileID == null) { ViewBag.AddUserError = "Error"; return(View("Users")); } else { if (Users_Interface_.checkEmail(users_.Email) == false) { if (Users_Interface_.checkMobileNo(users_.MobileNo) == false) { var Datas = new Users_Model(); string GeneratedPassword = Users_Interface_.GeneratePassword(); string RandomNumber = Users_Interface_.GenerateRandomNumber(); var Salt = "SHA1" + users_.Email + "SalesTrackingSystem"; var UserPassword = Crypto.SHA1(Salt + GeneratedPassword); string Root = "~/UserInformation"; string Email = users_.Email; string FullName = users_.FullName; string RootDir = Server.MapPath(Root); string UserDirectory = Server.MapPath(Root + "/" + Email); string ImageDirectory = Server.MapPath(Root + "/" + Email + "/" + "Images"); string FileDirectory = Server.MapPath(Root + "/" + Email + "/" + "Documents"); var ImageName = ""; if (users_.ImageString != null) { ImageName = RandomNumber + Path.GetExtension(ImageString.FileName).ToString(); } Datas.DistrubitorID = users_.DistrubitorID; Datas.UserProfileID = users_.UserProfileID; Datas.FullName = users_.FullName; Datas.PasswordHash = UserPassword; Datas.Email = users_.Email; Datas.MobileNo = users_.MobileNo; Datas.UsersStatus = users_.UsersStatus; Datas.ImageString = "/UserInformation/" + Email + "/" + "Images/" + ImageName; if (Users_Interface_.SaveUserAccount(Datas)) { if (!Directory.Exists(RootDir)) { Directory.CreateDirectory(RootDir); } if (!Directory.Exists(UserDirectory)) { Directory.CreateDirectory(UserDirectory); if (Directory.Exists(UserDirectory)) { Directory.CreateDirectory(ImageDirectory); if (ImageString != null) { string imagePath = Path.Combine(Server.MapPath(Root + "/" + Email + "/" + "Images/" + ImageName)); ImageString.SaveAs(imagePath); } Directory.CreateDirectory(FileDirectory); } } } string subject = "Account Setup!"; string subjectTitle = "Account Setup"; string userName = FullName; string message = "Your account has been registered to our server. Please enter <b>" + GeneratedPassword + "</b> as your password on first Login."; string warningMessage = "If this wasn't you please ignore this email. Verifying the email will only activate your account."; string appLink = "https://" + Request.ServerVariables["HTTP_HOST"]; string copyrightDate = DateTime.Now.Year.ToString(); try { //Configuring webMail class to send emails //gmail smtp server WebMail.SmtpServer = "smtp.gmail.com"; //gmail port to send emails WebMail.SmtpPort = 587; WebMail.SmtpUseDefaultCredentials = true; //sending emails with secure protocol WebMail.EnableSsl = true; //EmailId used to send emails from application WebMail.UserName = "******"; WebMail.Password = "******"; //Sender email address. WebMail.From = "*****@*****.**"; //Send email WebMail.Send(to: Email, subject: subject, body: EmailBody(subjectTitle, subject, userName, message, warningMessage, appLink, copyrightDate), isBodyHtml: true); Session["Success"] = "An account has been created and email has been sent to " + Email + "."; return(RedirectToAction("Users")); } catch (Exception) { Session["Error"] = "Problem while sending email but account has been created."; return(View("Users")); } } else { ViewBag.AddUserError = "Error"; Session["Error"] = users_.MobileNo + " exists please try different mobile number!!"; return(View("Users")); } } else { ViewBag.AddUserError = "Error"; Session["Error"] = users_.Email + "exists please try different email !!"; return(View("Users")); } } }
public ActionResult UpdateProfile(Users_Model users_, HttpPostedFileBase ImageString) { if (!string.IsNullOrWhiteSpace(users_.FullName) || users_.MobileNo >= 0) { /*Update*/ var LoginSession = (Users_Model)Session["auth"]; if (LoginSession != null) { var Datas = new Users_Model(); string RandomNumber = Users.GenerateRandomNumber(); string Root = "~/UserInformation"; string Email = LoginSession.Email; string RootDir = Server.MapPath(Root); string UserDirectory = Server.MapPath(Root + "/" + Email); string ImageDirectory = Server.MapPath(Root + "/" + Email + "/" + "Images"); string FileDirectory = Server.MapPath(Root + "/" + Email + "/" + "Documents"); var ImageName = ""; if (users_.ImageString != null) { ImageName = RandomNumber + Path.GetExtension(ImageString.FileName).ToString(); Datas.ImageString = "/UserInformation/" + Email + "/" + "Images/" + ImageName; } Datas.UserID = LoginSession.UserID; Datas.FullName = users_.FullName; Datas.MobileNo = users_.MobileNo; if (Users.UpdateUserProfile(Datas)) { if (!Directory.Exists(RootDir)) { Directory.CreateDirectory(RootDir); } else { if (!Directory.Exists(UserDirectory)) { Directory.CreateDirectory(UserDirectory); } else { if (Directory.Exists(UserDirectory)) { Directory.CreateDirectory(ImageDirectory); if (ImageString != null) { string imagePath = Path.Combine(Server.MapPath(Root + "/" + Email + "/" + "Images/" + ImageName)); ImageString.SaveAs(imagePath); } Directory.CreateDirectory(FileDirectory); } } } } Session["Success"] = "Profile has been Updated successfully."; return(View("Setting")); } else { Session["Warning"] = "Unauthorized access!!"; return(RedirectToAction("Login", "Auth")); } } else { /*Throw error*/ Session["Error"] = "Full name or mobile number is not valid please try again!!"; return(View("Setting")); } }