Пример #1
0
        public ActionResult Register(AppUser appUser, HttpPostedFileBase ImagePath)
        {
            //validation (doğrulama) kuralları yerine getirilmişse aşağıdaki karar yapısı içerisine girecektir.
            if (ModelState.IsValid)
            {
                if (appUserService.CheckUserName(appUser.Name))
                {
                    ViewBag.Exists = "Üye adı daha önce alınmış";
                    return(View());
                }
                else if (appUserService.CheckEmail(appUser.Email))
                {
                    ViewBag.Exists = "Email adresi zaten kayıtlı!";
                    return(View());
                }
                else
                {
                    appUser.ID             = Guid.NewGuid();
                    appUser.Role           = Role.member;
                    appUser.ActivationCode = Guid.NewGuid();
                    appUser.ImagePath      = ImageUploader.UploadImage("~/Content/images", ImagePath);
                    appUserService.Add(appUser);
                    string message = $"Hoşgeldin {appUser.Name},\nKayıt işlemini tamamlamak için lütfen aşağıdaki bağlantıya tıklayın.\n{Request.Url.Scheme}{System.Uri.SchemeDelimiter}{Request.Url.Authority}/AppUser/Complete/{appUser.ActivationCode}";

                    MailSender.SendEmail(appUser.Email, "Kayıt talebiniz alındı!", message);
                    return(RedirectToAction("Success", appUser));
                }
            }
            else
            {
                return(View());
            }
        }