Skip to content

Commit 9d20f45

Browse files
authored
fix(addons): fix redirect addons terms button (#846)
1 parent abd563d commit 9d20f45

File tree

3 files changed

+36
-6
lines changed

3 files changed

+36
-6
lines changed

src/app/features/settings/settings-addons/components/connect-addon/connect-addon.component.html

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,24 @@ <h2>
3333
routerLink="/settings/addons"
3434
data-test-addon-cancel-button
3535
></p-button>
36-
<p-button
37-
[label]="'settings.addons.form.buttons.next' | translate"
38-
class="w-10rem btn-full-width"
39-
(onClick)="activateCallback(ProjectAddonsStepperValue.SETUP_NEW_ACCOUNT)"
40-
data-test-addon-terms-confirm-button
41-
></p-button>
36+
@if (addonTypeString() === AddonType.REDIRECT) {
37+
<p-button
38+
[label]="
39+
'settings.addons.connectAddon.redirectAddons.goToService'
40+
| translate: { serviceName: addon()?.displayName }
41+
"
42+
class="w-10rem btn-full-width"
43+
(onClick)="goToService()"
44+
data-test-addon-redirect-button
45+
/>
46+
} @else {
47+
<p-button
48+
[label]="'settings.addons.form.buttons.next' | translate"
49+
class="w-10rem btn-full-width"
50+
(onClick)="activateCallback(ProjectAddonsStepperValue.SETUP_NEW_ACCOUNT)"
51+
data-test-addon-terms-confirm-button
52+
></p-button>
53+
}
4254
</div>
4355
</section>
4456
</ng-template>

src/app/features/settings/settings-addons/components/connect-addon/connect-addon.component.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,22 @@ export class ConnectAddonComponent {
119119
});
120120
}
121121

122+
goToService() {
123+
if (!this.redirectUrl()) return;
124+
125+
const newWindow = window.open(
126+
this.redirectUrl()!.toString(),
127+
'_blank',
128+
'popup,width=600,height=600,scrollbars=yes,resizable=yes'
129+
);
130+
if (newWindow) {
131+
this.router.navigate([`${this.baseUrl()}/addons`]);
132+
newWindow.focus();
133+
} else {
134+
this.toastService.showError('addons.redirect.popUpError');
135+
}
136+
}
137+
122138
private startOauthFlow(createdAddon: AuthorizedAccountModel): void {
123139
this.addonAuthUrl.set(createdAddon.authUrl!);
124140
window.open(createdAddon.authUrl!, '_blank');

src/app/shared/helpers/addon-type.helper.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ export function getAddonTypeString(addon: AddonModel | AuthorizedAccountModel |
4848
return AddonType.STORAGE;
4949
} else if (isLinkAddon(addon)) {
5050
return AddonType.LINK;
51+
} else if (isRedirectAddon(addon)) {
52+
return AddonType.REDIRECT;
5153
} else {
5254
return AddonType.CITATION;
5355
}

0 commit comments

Comments
 (0)