コード例 #1
0
        public ActionResult Login(LoginModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                var loginResult = _studentRegistrationService.ValidateStudent(model.Username, model.Password);
                switch (loginResult)
                {
                case StudentLoginResults.Successful:
                {
                    var student = _studentService.GetStudentByUsername(model.Username);

                    //sign in new student
                    _authenticationService.SignIn(student, model.RememberMe);

                    //activity log
                    _studentActivityService.InsertActivity("Game.Login", "ActivityLog.Game.Login", student);

                    if (String.IsNullOrEmpty(returnUrl) || !Url.IsLocalUrl(returnUrl))
                    {
                        return(RedirectToAction("Index", "Home"));
                    }

                    return(Redirect(returnUrl));
                }

                case StudentLoginResults.StudentNotExist:
                    ModelState.AddModelError("", "Student Does Not Exist");
                    break;

                case StudentLoginResults.Deleted:
                    ModelState.AddModelError("", "Deleted");
                    break;

                case StudentLoginResults.NotActive:
                    ModelState.AddModelError("", "NotActive");
                    break;

                case StudentLoginResults.NotRegistered:
                    ModelState.AddModelError("", "Not Registered");
                    break;

                default:
                    ModelState.AddModelError("", "Wrong Credentials");
                    break;
                }
            }

            //If we got this far, something failed, redisplay form
            return(View(model));
        }
コード例 #2
0
        public virtual ActionResult Login(LoginModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                var loginResult = studentRegistrationService
                                  .ValidateStudent(model.Username, model.Password);

                switch (loginResult)
                {
                case StudentLoginResults.Successful:
                    var student = studentService.GetStudentByUsername(model.Username);
                    authenticationService.SignIn(student, model.RememberMe);

                    if (string.IsNullOrEmpty(returnUrl) || !Url.IsLocalUrl(returnUrl))
                    {
                        return(RedirectToAction("Index", "Home"));
                    }

                    return(Redirect(returnUrl));
                }
            }

            return(View());
        }