//////////////////////////////////////////////////////////////////////////////////////////////// /*--------------------------------------------------------------------------------------------*/ public virtual string GetGrantCodeUrl(bool pSwitchUser = false) { OauthLoginGetOperation op = (OauthLoginGetOperation)ClientOauth.Login; FabricRequest <FabOauthLogin> req = op.Request("code", Config.AppId + "", OAuthRedirectUri, null, SessionId, (pSwitchUser ? "1" : "0")); return(Config.ApiPath + req.Path + "?" + req.Query); }
public void SetUp() { vMockData = new Mock <IOperationData>(MockBehavior.Strict); vMockOpCtx = new Mock <IOperationContext>(MockBehavior.Strict); vMockOpCtx.SetupGet(x => x.Data).Returns(vMockData.Object); vMockTasks = new Mock <IOauthLoginTasks>(MockBehavior.Strict); vClientId = "12345"; vRedirUri = "http://redirect.to.this.com/test"; vRespType = "code"; vSwitchMode = "0"; vOper = new OauthLoginGetOperation(); }
//////////////////////////////////////////////////////////////////////////////////////////////// /*--------------------------------------------------------------------------------------------*/ private static IApiResponse GetLogin(IApiRequest pApiReq) { string incomingError = pApiReq.GetQueryValue("error", false); if (incomingError != null) { string errDesc = pApiReq.GetQueryValue("error_description", false); return(new ApiResponse { Html = new LoginErrorView(incomingError, errDesc).ToHtml() }); } //// Action <IApiResponse> getResp = (apiResp => { string respType = pApiReq.GetQueryValue(LoginResponseTypeParam, false); string clientId = pApiReq.GetQueryValue(LoginClientIdParam, false); string redirUri = pApiReq.GetQueryValue(LoginRedirectUriParam, false); string switchMode = pApiReq.GetQueryValue(LoginSwitchModeParam, false); var op = new OauthLoginGetOperation(); OauthLoginResult result = op.Execute(pApiReq.OpCtx, new OauthLoginTasks(), clientId, redirUri, respType, switchMode); if (result.ShowLoginPage) { apiResp.Html = new LoginPageView(result).ToHtml(); return; } if (result.Code != null) { apiResp.RedirectUrl = BuildRedirectUri(result.Redirect, result.Code, pApiReq.GetQueryValue(LoginStateParam, false)); return; } apiResp.Html = new LoginScopeView(result).ToHtml(); }); var exec = new CustomExecutor(pApiReq, getResp, OnLoginException); return(exec.Execute()); }
/*--------------------------------------------------------------------------------------------*/ private OauthLoginResult ExecuteOperation() { var op = new OauthLoginGetOperation(); return(op.Execute(OpCtx, vTasks, vClientId, vRedirUri, vRespType, vSwitchMode)); }