Skip to content

Commit 04c610c

Browse files
committed
Shopify OAuth fixes
1 parent 4cbbf97 commit 04c610c

File tree

4 files changed

+22
-8
lines changed

4 files changed

+22
-8
lines changed

src/Umbraco.Cms.Integrations.Commerce.Shopify/App_Plugins/UmbracoCms.Integrations/Commerce/Shopify/js/productPickerSettings.controller.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,11 @@
6262

6363
function validateOAuthSetup() {
6464
umbracoCmsIntegrationsCommerceShopifyResource.validateAccessToken().then(function (response) {
65-
6665
vm.oauthSetup = {
67-
isConnected: response.isValid,
66+
isValid: response.isValid,
67+
isConnected: response.isConnected,
6868
isAccessTokenExpired: response.isExpired,
69-
isAccessTokenValid: response.isValid
69+
isAccessTokenValid: response.isConnected
7070
}
7171

7272
if (vm.oauthSetup.isConnected === true && vm.oauthSetup.isAccessTokenValid === true) {

src/Umbraco.Cms.Integrations.Commerce.Shopify/Models/EditorSettings.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ public EditorSettings()
1212
[JsonProperty("isValid")]
1313
public bool IsValid { get; set; }
1414

15+
[JsonProperty("isConnected")]
16+
public bool IsConnected { get; set; }
17+
1518
[JsonProperty("type")]
1619
public ConfigurationType Type { get; set; }
1720
}

src/Umbraco.Cms.Integrations.Commerce.Shopify/Services/BaseAuthorizationService.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@ public class BaseAuthorizationService
1616
protected const string ShopifyAuthorizationUrl = "https://{0}.myshopify.com/admin/oauth/authorize" +
1717
"?client_id={1}" +
1818
"&redirect_uri={2}" +
19-
"&scope=read_products" +
20-
"&grant_options[]=value";
19+
"&scope=read_products";
2120

2221
public BaseAuthorizationService(ITokenService tokenService)
2322
{

src/Umbraco.Cms.Integrations.Commerce.Shopify/Services/ShopifyService.cs

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,13 +106,25 @@ public EditorSettings GetApiConfiguration()
106106
// validate OAuth configuration if AuthorizationService is used.
107107
// if authorization is managed through UmbracoAuthorizationService, the properties client ID and proxy URL are set correctly.
108108
if (_settings.UseUmbracoAuthorization)
109-
return new EditorSettings { IsValid = true, Type = ConfigurationType.OAuth };
109+
{
110+
var editorSettings = new EditorSettings { IsValid = true, Type = ConfigurationType.OAuth };
111+
112+
editorSettings.IsConnected = ValidateAccessToken().ConfigureAwait(false).GetAwaiter().GetResult().IsValid;
113+
114+
return editorSettings;
115+
}
110116
else
117+
{
111118
return !string.IsNullOrEmpty(_oauthSettings.ClientId)
112119
&& !string.IsNullOrEmpty(_oauthSettings.ClientSecret)
113120
&& !string.IsNullOrEmpty(_oauthSettings.RedirectUri)
114-
? new EditorSettings { IsValid = true, Type = ConfigurationType.OAuth }
121+
? new EditorSettings {
122+
IsValid = true,
123+
IsConnected = ValidateAccessToken().ConfigureAwait(false).GetAwaiter().GetResult().IsValid,
124+
Type = ConfigurationType.OAuth
125+
}
115126
: new EditorSettings();
127+
}
116128
}
117129

118130
public async Task<ResponseDto<ProductsListDto>> ValidateAccessToken()
@@ -146,7 +158,7 @@ public async Task<ResponseDto<ProductsListDto>> ValidateAccessToken()
146158

147159
public void RevokeAccessToken()
148160
{
149-
_tokenService.RemoveParameters(Constants.Configuration.UmbracoCmsIntegrationsCommerceShopifyAccessToken);
161+
_tokenService.RemoveParameters(Constants.AccessTokenDbKey);
150162
}
151163

152164
public async Task<ResponseDto<ProductsListDto>> GetResults(string pageInfo)

0 commit comments

Comments
 (0)