public ActionResult Index(LoginFormViewModel model)
        {
            if (ModelState.IsValid)
            {
                model = this.Model.Authenticate(model, this.ControllerContext.HttpContext);

                if (!model.IncorrectCredentials && !string.IsNullOrWhiteSpace(model.RedirectUrlAfterLogin))
                {
                    return this.Redirect(model.RedirectUrlAfterLogin);
                }
                else if (!model.IncorrectCredentials && this.Request.UrlReferrer != null)
                {
                    var returnUrlFromQS = System.Web.HttpUtility.ParseQueryString(this.Request.UrlReferrer.Query)["ReturnUrl"];

                    if (!string.IsNullOrEmpty(returnUrlFromQS))
                        return this.Redirect(returnUrlFromQS);
                }
            }

            this.Model.InitializeLoginViewModel(model);

            var fullTemplateName = this.loginFormTemplatePrefix + this.LoginFormTemplate;
            return this.View(fullTemplateName, model);
        }
        public ActionResult Index(LoginFormViewModel model)
        {
            if (ModelState.IsValid)
            {
                model = this.Model.Authenticate(model, this.ControllerContext.HttpContext);

                if (!model.IncorrectCredentials && !string.IsNullOrWhiteSpace(model.RedirectUrlAfterLogin))
                    return this.Redirect(model.RedirectUrlAfterLogin);
            }

            this.Model.InitializeLoginViewModel(model);

            var fullTemplateName = this.loginFormTemplatePrefix + this.LoginFormTemplate;
            return this.View(fullTemplateName, model);
        }