Пример #1
0
        public ActionResult EditProfile(Users model, HttpPostedFileBase ProfileImage)
        {
            ModelState.Remove("ModifiedUsername");

            if (ModelState.IsValid)
            {
                if (ProfileImage != null &&
                    (ProfileImage.ContentType == "image/jpeg" ||
                     ProfileImage.ContentType == "image/jpg" ||
                     ProfileImage.ContentType == "image/png"))
                {
                    string filename = $"user_{model.Id}.{ProfileImage.ContentType.Split('/')[1]}";

                    ProfileImage.SaveAs(Server.MapPath($"~/Content/img/{filename}"));
                    model.ProfileImageFilename = filename;
                }
                RepositoryLayerResult <Users> re = ur.UpdateProfile(model);

                if (re.Errors.Count > 0)
                {
                    ErrorViewModel errorNotifyObj = new ErrorViewModel()
                    {
                        Items         = re.Errors,
                        Title         = "Failed to update profile.",
                        RedirectinUrl = "/Home/EditProfile"
                    };

                    return(View("Error", errorNotifyObj));
                }
                MySession.Set <Users>("User", re.Result);
                return(RedirectToAction("ShowProfile"));
            }

            return(View(model));
        }
Пример #2
0
        public ActionResult Login(LoginViewModel model)
        {
            if (ModelState.IsValid)
            {
                RepositoryLayerResult <Users> re = ur.LoginUser(model);

                if (re.Errors.Count > 0)
                {
                    if (re.Errors.Find(x => x.Code == ErrorMessageCode.UserIsNotActive) != null)
                    {
                        ViewBag.SetLink = "http://Home/Activate/123-123-123";
                    }

                    re.Errors.ForEach(x => ModelState.AddModelError("", x.Message));



                    return(View(model));
                }

                MySession.Set <Users>("User", re.Result);
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }
Пример #3
0
        public ActionResult EditProfile()
        {
            RepositoryLayerResult <Users> re = ur.GetUserById(MySession.CurrentUser.Id);

            if (re.Errors.Count > 0)
            {
                ErrorViewModel erModel = new ErrorViewModel()
                {
                    Title = "An error occurred",
                    Items = re.Errors,
                    RedirectingTimeout = 15
                };
                return(View("Error", erModel));
            }
            return(View(re.Result));
        }
Пример #4
0
        public ActionResult Edit(Users users)
        {
            ModelState.Remove("CreatedOn");
            ModelState.Remove("ModifiedOn");
            ModelState.Remove("ModifiedUsername");

            if (ModelState.IsValid)
            {
                RepositoryLayerResult <Users> re = ur.Update(users);
                if (re.Errors.Count > 0)
                {
                    re.Errors.ForEach(x => ModelState.AddModelError("", x.Message));
                    return(View(users));
                }

                return(RedirectToAction("Index"));
            }
            return(View(users));
        }
Пример #5
0
        public ActionResult UserActivate(Guid id)
        {
            RepositoryLayerResult <Users> user = ur.ActivateUser(id);

            if (user.Errors.Count > 0)
            {
                ErrorViewModel erModel = new ErrorViewModel()
                {
                    Title = "Account not valid.",
                    Items = user.Errors
                };
                return(View("Error", erModel));
            }

            OkViewModel okModel = new OkViewModel()
            {
                Title         = "Account Activation Successful",
                RedirectinUrl = "/Home/Login"
            };

            return(View("Ok", okModel));
        }
Пример #6
0
        public ActionResult Edit(Note note, HttpPostedFileBase ProfileImage)
        {
            ModelState.Remove("CreatedOn");
            ModelState.Remove("ModifiedOn");
            ModelState.Remove("ModifiedUsername");

            if (ModelState.IsValid)
            {
                if (ProfileImage != null &&
                    (ProfileImage.ContentType == "image/jpeg" ||
                     ProfileImage.ContentType == "image/jpg" ||
                     ProfileImage.ContentType == "image/png"))
                {
                    string filename = $"user_{note.Id}.{ProfileImage.ContentType.Split('/')[1]}";

                    ProfileImage.SaveAs(Server.MapPath($"~/Content/img/{filename}"));
                    note.NoteImageFilename = filename;
                }

                RepositoryLayerResult <Note> re = nr.Updatee(note);

                if (re.Errors.Count > 0)
                {
                    ErrorViewModel errorNotifyObj = new ErrorViewModel()
                    {
                        Items         = re.Errors,
                        Title         = "Failed to update note.",
                        RedirectinUrl = "/Note/Index"
                    };

                    return(View("Error", errorNotifyObj));
                }

                return(RedirectToAction("Index"));
            }
            ViewBag.CategoryId = new SelectList(cr.List(), "Id", "Title", note.CategoryId);
            return(View(note));
        }
Пример #7
0
        public ActionResult Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                RepositoryLayerResult <Users> re = ur.RegisterUser(model);

                if (re.Errors.Count > 0)
                {
                    re.Errors.ForEach(x => ModelState.AddModelError("", x.Message));
                    return(View(model));
                }

                OkViewModel okModel = new OkViewModel()
                {
                    Title         = "Registration Successful",
                    RedirectinUrl = "/Home/Login",
                };
                okModel.Items.Add("Please activate your account by clicking on the activation link we sent to your email address. If you don't activate your account, you won't be able to add notes and make ratings.");

                return(View("Ok", okModel));
            }

            return(View(model));
        }