Skip to content

Commit 431e909

Browse files
Resolved issue where non-provider user couldn't access subscription page of managed organization (#9137)
(cherry picked from commit 1a32963)
1 parent 36ae3d0 commit 431e909

File tree

1 file changed

+6
-8
lines changed

1 file changed

+6
-8
lines changed

apps/web/src/app/billing/organizations/organization-subscription-cloud.component.ts

+6-8
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ import { concatMap, firstValueFrom, lastValueFrom, Observable, Subject, takeUnti
55
import { ApiService } from "@bitwarden/common/abstractions/api.service";
66
import { OrganizationApiServiceAbstraction } from "@bitwarden/common/admin-console/abstractions/organization/organization-api.service.abstraction";
77
import { OrganizationService } from "@bitwarden/common/admin-console/abstractions/organization/organization.service.abstraction";
8-
import { ProviderApiServiceAbstraction } from "@bitwarden/common/admin-console/abstractions/provider/provider-api.service.abstraction";
9-
import { OrganizationApiKeyType, ProviderType } from "@bitwarden/common/admin-console/enums";
8+
import { OrganizationApiKeyType } from "@bitwarden/common/admin-console/enums";
109
import { Organization } from "@bitwarden/common/admin-console/models/domain/organization";
1110
import { PlanType } from "@bitwarden/common/billing/enums";
1211
import { OrganizationSubscriptionResponse } from "@bitwarden/common/billing/models/response/organization-subscription.response";
@@ -70,7 +69,6 @@ export class OrganizationSubscriptionCloudComponent implements OnInit, OnDestroy
7069
private route: ActivatedRoute,
7170
private dialogService: DialogService,
7271
private configService: ConfigService,
73-
private providerService: ProviderApiServiceAbstraction,
7472
) {}
7573

7674
async ngOnInit() {
@@ -108,15 +106,15 @@ export class OrganizationSubscriptionCloudComponent implements OnInit, OnDestroy
108106
this.loading = true;
109107
this.locale = await firstValueFrom(this.i18nService.locale$);
110108
this.userOrg = await this.organizationService.get(this.organizationId);
111-
if (this.userOrg.hasProvider) {
112-
const provider = await this.providerService.getProvider(this.userOrg.providerId);
113-
const enableConsolidatedBilling = await firstValueFrom(this.enableConsolidatedBilling$);
114-
this.isProviderManaged = provider.type == ProviderType.Msp && enableConsolidatedBilling;
115-
}
116109

117110
if (this.userOrg.canViewSubscription) {
111+
const enableConsolidatedBilling = await firstValueFrom(this.enableConsolidatedBilling$);
112+
113+
this.isProviderManaged = enableConsolidatedBilling && this.userOrg.hasProvider;
114+
118115
this.sub = await this.organizationApiService.getSubscription(this.organizationId);
119116
this.lineItems = this.sub?.subscription?.items;
117+
120118
if (this.lineItems && this.lineItems.length) {
121119
this.lineItems = this.lineItems
122120
.map((item) => {

0 commit comments

Comments
 (0)