Example #1
0
 public IActionResult Register(RegisterFormErrorViewModel model)
 {
     if (model == null)
     {
         return(View(new RegisterFormErrorViewModel()
         {
             Errors = new List <string>(), Email = "", PrivKey = ""
         }));
     }
     return(View(model));
 }
Example #2
0
        public bool TryRegister(IFormCollection form, out RegisterFormErrorViewModel error)
        {
            var success         = true;
            var email           = form.ContainsKey("email") ? form["email"].ToString():"";
            var password        = form.ContainsKey("password") ? form["password"].ToString() : "";
            var confirmPassword = form.ContainsKey("confirmpassword") ? form["confirmpassword"].ToString() : "";
            var privkey         = form.ContainsKey("privkey") ? form["privkey"].ToString() : "";

            error = new RegisterFormErrorViewModel()
            {
                Errors  = new List <string>(),
                Email   = email,
                PrivKey = privkey
            };

            if (!(email.Length > 5 && email.Length <= 80) || !IsValidEmail(email))
            {
                success = false;
                error.Errors.Add("Please enter a real e-mail address!");
            }
            if (IsAlreadyRegisteredEmail(email))
            {
                success = false;
                error.Errors.Add("This email address is already registered!");
            }
            if (!(password.Length > 6 && password.Length <= 100))
            {
                success = false;
                error.Errors.Add("Passwords must be at least 6 characters and less than 100 characters.");
            }
            if (confirmPassword != password)
            {
                success = false;
                error.Errors.Add("Passwords do not match!");
            }
            if (!IsRsaStringValid(privkey) && privkey != "")
            {
                success = false;
                error.Errors.Add("Private key not valid!");
            }
            return(success);
        }