Browse Source

Feature/Improve subscription service (#3989)

* Various improvements
pull/3990/head
Thomas Kaul 3 months ago
committed by GitHub
parent
commit
4104fb2f8f
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 2
      apps/api/src/app/subscription/subscription.controller.ts
  2. 4
      apps/api/src/app/subscription/subscription.service.ts
  3. 3
      apps/client/src/app/components/header/header.component.html
  4. 3
      apps/client/src/app/components/user-account-membership/user-account-membership.html
  5. 3
      apps/client/src/app/pages/pricing/pricing-page.html
  6. 6
      libs/common/src/lib/types/subscription-offer.type.ts

2
apps/api/src/app/subscription/subscription.controller.ts

@ -113,7 +113,7 @@ export class SubscriptionController {
@Post('stripe/checkout-session')
@UseGuards(AuthGuard('jwt'), HasPermissionGuard)
public async createCheckoutSession(
@Body() { couponId, priceId }: { couponId: string; priceId: string }
@Body() { couponId, priceId }: { couponId?: string; priceId: string }
) {
try {
return this.subscriptionService.createCheckoutSession({

4
apps/api/src/app/subscription/subscription.service.ts

@ -124,7 +124,9 @@ export class SubscriptionService {
let offer: SubscriptionOffer = price ? 'renewal' : 'default';
if (isBefore(createdAt, parseDate('2023-01-01'))) {
offer = 'renewal-early-bird';
offer = 'renewal-early-bird-2023';
} else if (isBefore(createdAt, parseDate('2024-01-01'))) {
offer = 'renewal-early-bird-2024';
}
return {

3
apps/client/src/app/components/header/header.component.html

@ -180,7 +180,8 @@
<ng-container i18n>Upgrade Plan</ng-container>
} @else if (
user.subscription.offer === 'renewal' ||
user.subscription.offer === 'renewal-early-bird'
user.subscription.offer === 'renewal-early-bird-2023' ||
user.subscription.offer === 'renewal-early-bird-2024'
) {
<ng-container i18n>Renew Plan</ng-container>
}

3
apps/client/src/app/components/user-account-membership/user-account-membership.html

@ -16,7 +16,8 @@
<ng-container i18n>Upgrade Plan</ng-container>
} @else if (
user.subscription.offer === 'renewal' ||
user.subscription.offer === 'renewal-early-bird'
user.subscription.offer === 'renewal-early-bird-2023' ||
user.subscription.offer === 'renewal-early-bird-2024'
) {
<ng-container i18n>Renew Plan</ng-container>
}

3
apps/client/src/app/pages/pricing/pricing-page.html

@ -278,7 +278,8 @@
<ng-container i18n>Upgrade Plan</ng-container>
} @else if (
user.subscription.offer === 'renewal' ||
user.subscription.offer === 'renewal-early-bird'
user.subscription.offer === 'renewal-early-bird-2023' ||
user.subscription.offer === 'renewal-early-bird-2024'
) {
<ng-container i18n>Renew Plan</ng-container>
}

6
libs/common/src/lib/types/subscription-offer.type.ts

@ -1 +1,5 @@
export type SubscriptionOffer = 'default' | 'renewal' | 'renewal-early-bird';
export type SubscriptionOffer =
| 'default'
| 'renewal'
| 'renewal-early-bird-2023'
| 'renewal-early-bird-2024';

Loading…
Cancel
Save