예제 #1
0
 public FubuContinuation Login(LoginOutputModel model)
 {
     if (model.Login.Length > 2)
     {
         authenticationContext.ThisUserHasBeenAuthenticated(model.Login, false);
         if (!model.ReturnUrl.IsEmpty())
         {
             return FubuContinuation.RedirectTo(model.ReturnUrl);
         }
     }
     return FubuContinuation.RedirectTo<LoginController>(c => c.Index());
     //return string.Format("You entered {0} and {1}", model.Login, model.Password);
 }
        protected override DoNext performInvoke()
        {
            if (securityContext.IsAuthenticated())
            {
                return DoNext.Continue;
            }

            var loginModel = new LoginOutputModel();
            //if user didn't specifically type login url in a browser - it's a redirect
            if (httpRequest.RawUrl() != urlRegistry.UrlFor<LoginOutputModel>())
            {
                loginModel.ReturnUrl = httpRequest.RawUrl();
            }
            outputWriter.RedirectToUrl(urlRegistry.UrlFor(loginModel));
            return DoNext.Stop;
        }