From 483d7966842bd5b0524fe1172eb57976b6aa4f4e Mon Sep 17 00:00:00 2001 From: Brandon Wood Date: Wed, 15 Oct 2014 19:46:23 -0800 Subject: [PATCH] added redirectUri parameter to GetAuthorizationUrl --- TrelloNet/ITrello.cs | 1 + TrelloNet/Internal/TrelloRestClient.cs | 8 ++++++++ TrelloNet/Trello.cs | 5 +++++ 3 files changed, 14 insertions(+) diff --git a/TrelloNet/ITrello.cs b/TrelloNet/ITrello.cs index 319df15..f2906d9 100644 --- a/TrelloNet/ITrello.cs +++ b/TrelloNet/ITrello.cs @@ -21,5 +21,6 @@ public interface ITrello void Authorize(string token); void Deauthorize(); Uri GetAuthorizationUrl(string applicationName, Scope scope, Expiration expiration = Expiration.ThirtyDays); + Uri GetAuthorizationUrl(string applicationName, Scope scope, Uri redirectUri, Expiration expiration = Expiration.ThirtyDays); } } \ No newline at end of file diff --git a/TrelloNet/Internal/TrelloRestClient.cs b/TrelloNet/Internal/TrelloRestClient.cs index 718098c..08d149f 100644 --- a/TrelloNet/Internal/TrelloRestClient.cs +++ b/TrelloNet/Internal/TrelloRestClient.cs @@ -33,6 +33,14 @@ public Uri GetAuthorizationUrl(string applicationName, Scope scope, Expiration e BaseUrl, _applicationKey, applicationName, scope.ToScopeString(), expiration.ToExpirationString())); } + public Uri GetAuthorizationUrl(string applicationName, Scope scope, Expiration expiration, Uri redirectUri) + { + Guard.NotNullOrEmpty(applicationName, "applicationName"); + + return new Uri(string.Format("{0}/authorize?key={1}&name={2}&scope={3}&expiration={4}&callback_method=fragment&return_url={5}", + BaseUrl, _applicationKey, applicationName, scope.ToScopeString(), expiration.ToExpirationString(), Uri.EscapeUriString(redirectUri.ToString()))); + } + public void Request(IRestRequest request) { var response = Execute(request); diff --git a/TrelloNet/Trello.cs b/TrelloNet/Trello.cs index 403e57b..f32d64e 100644 --- a/TrelloNet/Trello.cs +++ b/TrelloNet/Trello.cs @@ -58,5 +58,10 @@ public Uri GetAuthorizationUrl(string applicationName, Scope scope, Expiration e { return _restClient.GetAuthorizationUrl(applicationName, scope, expiration); } + + public Uri GetAuthorizationUrl(string applicationName, Scope scope, Uri redirectUri, Expiration expiration = Expiration.ThirtyDays) + { + return _restClient.GetAuthorizationUrl(applicationName, scope, expiration, redirectUri); + } } } \ No newline at end of file