public ActionResult Index() { ViewBag.Profile = "active"; var user = db.Users.Where(x => x.Email == User.Identity.Name).FirstOrDefault(); var userProfile = db.UserProfiles.FirstOrDefault(x => x.UserID == user.ID); AdminProfileModel admin = new AdminProfileModel(); admin.FirstName = user.FirstName; admin.LastName = user.LastName; admin.Email = user.Email; admin.PhoneCode = userProfile.PhoneNumberCountryCode; admin.Phone = userProfile.PhoneNumber; if (userProfile.SecondaryEmailAddress != null) { admin.SecondEmail = userProfile.SecondaryEmailAddress; } admin.CountryList = db.Countries.Where(x => x.IsActive == true).ToList(); return(View(admin)); }
public ActionResult Index(AdminProfileModel admin) { ViewBag.Profile = "active"; var user = db.Users.Where(x => x.Email == User.Identity.Name).FirstOrDefault(); var userProfile = db.UserProfiles.FirstOrDefault(x => x.UserID == user.ID); if (ModelState.IsValid) { user.FirstName = admin.FirstName; user.LastName = admin.LastName; db.Configuration.ValidateOnSaveEnabled = false; db.SaveChanges(); userProfile.PhoneNumberCountryCode = admin.PhoneCode; userProfile.PhoneNumber = admin.Phone; db.Configuration.ValidateOnSaveEnabled = false; db.SaveChanges(); if (admin.SecondEmail != null) { userProfile.SecondaryEmailAddress = admin.SecondEmail; db.Configuration.ValidateOnSaveEnabled = false; db.SaveChanges(); } if (admin.ProfilePicture != null) { string userprofilename = System.IO.Path.GetFileName(admin.ProfilePicture.FileName); string userprofileext = System.IO.Path.GetExtension(admin.ProfilePicture.FileName); string storeprofilepath = "~/Members/" + user.ID + "/"; CreateDirectoryIfMissing(storeprofilepath); userprofilename = "DP_" + DateTime.Now.ToString("ddMMyyyy") + userprofileext; string userprofilepath = Path.Combine(Server.MapPath(storeprofilepath), userprofilename); userProfile.ProfilePicture = storeprofilepath + userprofilename; admin.ProfilePicture.SaveAs(userprofilepath); db.Configuration.ValidateOnSaveEnabled = false; db.SaveChanges(); } return(RedirectToAction("Index", "AdminDashboard")); } else { AdminProfileModel admin1 = new AdminProfileModel(); admin1.CountryList = db.Countries.Where(x => x.IsActive == true).ToList(); return(View(admin1)); } }
public ActionResult UpdateUser(AdminProfileModel Model) { if (ModelState.IsValid) { User Data = _db.Users.FirstOrDefault(u => u.Id == Model.Id); Data.Name = Model.FullName; Data.Address = Model.Adddress; Data.CNP = Model.CNP; Data.Phone = Model.Phone; Data.Group = Model.Group; Data.Email = Model.Email; _db.SaveChanges(); TempData["success"] = "Updated personal information."; return(RedirectToAction("User", "ACP", new { id = Model.Id })); } return(RedirectToAction("Index", "ACP")); }
public ActionResult MyProfile() { // get logged in user var user = context.Users.Where(x => x.EmailID == User.Identity.Name).FirstOrDefault(); // get logged in user profile var userprofile = context.Admin.Where(x => x.AdminID == user.ID).FirstOrDefault(); // create AdminProfileViewModel AdminProfileModel adminProfileViewModel = new AdminProfileModel(); if (userprofile != null) { adminProfileViewModel.FirstName = user.FirstName; adminProfileViewModel.LastName = user.LastName; adminProfileViewModel.Email = user.EmailID; adminProfileViewModel.PhoneNumberCountryCode = userprofile.PhoneNumberCountryCode; adminProfileViewModel.PhoneNumber = userprofile.Phone_number; if (userprofile.SecondaryEmailID != null) { adminProfileViewModel.SecondaryEmail = userprofile.SecondaryEmailID; } if (userprofile.Profile_Picture != null) { adminProfileViewModel.ProfilePictureUrl = userprofile.Profile_Picture; } // get country code list adminProfileViewModel.CountryCodeList = context.Countries.Where(x => x.IsActive).OrderBy(x => x.CountryCode).Select(x => x.CountryCode).ToList(); } else { adminProfileViewModel.FirstName = user.FirstName; adminProfileViewModel.LastName = user.LastName; adminProfileViewModel.Email = user.EmailID; adminProfileViewModel.CountryCodeList = context.Countries.Where(x => x.IsActive).OrderBy(x => x.CountryCode).Select(x => x.CountryCode).ToList(); } return(View(adminProfileViewModel)); }
public ActionResult MyProfile(AdminProfileModel obj) { // get logged in user var user = context.Users.Where(x => x.EmailID == User.Identity.Name).FirstOrDefault(); if (ModelState.IsValid) { // get logged in user profile var userprofile = context.Admin.Where(x => x.AdminID == user.ID).FirstOrDefault(); if (userprofile != null) { // check if secondary email is already exists in User or UserProfile table or not // if email already exists then give error bool secondaryemailalreadyexistsinusers = context.Users.Where(x => x.EmailID == obj.SecondaryEmail).Any(); bool secondaryemailalreadyexistsinuserprofile = context.Admin.Where(x => x.SecondaryEmailID == obj.Email && x.ID != user.ID).Any(); if (secondaryemailalreadyexistsinusers || secondaryemailalreadyexistsinuserprofile) { ModelState.AddModelError("SecondaryEmail", "This email address is already exists"); obj.CountryCodeList = context.Countries.Where(x => x.IsActive).OrderBy(x => x.CountryCode).Select(x => x.CountryCode).ToList(); return(View(obj)); } // update user's data user.FirstName = obj.FirstName.Trim(); user.LastName = obj.LastName.Trim(); // update userprofile's data userprofile.SecondaryEmailID = obj.SecondaryEmail.Trim(); userprofile.PhoneNumberCountryCode = obj.PhoneNumberCountryCode.Trim(); userprofile.Phone_number = obj.PhoneNumber.Trim(); // user upploaded profile picture and there is also previous profile picture then delete previous profile picture if (userprofile.Profile_Picture != null && obj.ProfilePicture != null) { string path = Server.MapPath(userprofile.Profile_Picture); FileInfo file = new FileInfo(path); if (file.Exists) { file.Delete(); } } // save new profile picture and update data in userprofile table if (obj.ProfilePicture != null) { // get extension string fileextension = System.IO.Path.GetExtension(obj.ProfilePicture.FileName); // set new name of file string newfilename = "DP_" + DateTime.Now.ToString("ddMMyyyy_hhmmss") + fileextension; // set where to save picture string profilepicturepath = "~/Members/" + userprofile.ID + "/"; // create directory if not exists CreateDirectoryIfMissing(profilepicturepath); // get physical path and save profile picture there string path = Path.Combine(Server.MapPath(profilepicturepath), newfilename); obj.ProfilePicture.SaveAs(path); // save path in database userprofile.Profile_Picture = profilepicturepath + newfilename; } // update userprofile's data userprofile.ModifiedDate = DateTime.Now; userprofile.ModifiedBy = user.ID; // update data and save data in database context.Entry(user).State = EntityState.Modified; context.Entry(userprofile).State = EntityState.Modified; context.SaveChanges(); } else { Admin admin_profile = new Admin(); admin_profile.AdminID = user.ID; // check if secondary email is already exists in User or UserProfile table or not // if email already exists then give error bool secondaryemailalreadyexistsinusers = context.Users.Where(x => x.EmailID == obj.SecondaryEmail).Any(); bool secondaryemailalreadyexistsinuserprofile = context.Admin.Where(x => x.SecondaryEmailID == obj.Email && x.AdminID != user.ID).Any(); if (secondaryemailalreadyexistsinusers || secondaryemailalreadyexistsinuserprofile) { ModelState.AddModelError("SecondaryEmail", "This email address is already exists"); obj.CountryCodeList = context.Countries.Where(x => x.IsActive).OrderBy(x => x.CountryCode).Select(x => x.CountryCode).ToList(); return(View(obj)); } // update user's data user.FirstName = obj.FirstName.Trim(); user.LastName = obj.LastName.Trim(); admin_profile.FirstName = obj.FirstName.Trim(); admin_profile.LastName = obj.LastName.Trim(); admin_profile.EmailID = obj.Email.Trim(); // update userprofile's data admin_profile.SecondaryEmailID = obj.SecondaryEmail.Trim(); admin_profile.PhoneNumberCountryCode = obj.PhoneNumberCountryCode.Trim(); admin_profile.Phone_number = obj.PhoneNumber.Trim(); admin_profile.CreatedDate = DateTime.Now; admin_profile.CreatedBy = user.ID; // user upploaded profile picture and there is also previous profile picture then delete previous profile picture if (admin_profile.Profile_Picture != null && obj.ProfilePicture != null) { string path = Server.MapPath(admin_profile.Profile_Picture); FileInfo file = new FileInfo(path); if (file.Exists) { file.Delete(); } } // save new profile picture and update data in userprofile table if (obj.ProfilePicture != null) { // get extension string fileextension = System.IO.Path.GetExtension(obj.ProfilePicture.FileName); // set new name of file string newfilename = "DP_" + DateTime.Now.ToString("ddMMyyyy_hhmmss") + fileextension; // set where to save picture string profilepicturepath = "~/Members/" + admin_profile.ID + "/"; // create directory if not exists CreateDirectoryIfMissing(profilepicturepath); // get physical path and save profile picture there string path = Path.Combine(Server.MapPath(profilepicturepath), newfilename); obj.ProfilePicture.SaveAs(path); // save path in database admin_profile.Profile_Picture = profilepicturepath + newfilename; } context.Admin.Add(admin_profile); context.SaveChanges(); // update userprofile's data // update data and save data in database context.Entry(user).State = EntityState.Modified; // context.Entry(admin_profile).State = EntityState.Modified; context.SaveChanges(); } return(RedirectToAction("Dashboard", "Admin")); } else { obj.CountryCodeList = context.Countries.Where(x => x.IsActive).OrderBy(x => x.CountryCode).Select(x => x.CountryCode).ToList(); return(View(obj)); } }