diff --git a/libs/server/api/src/lib/user/user.controller.ts b/libs/server/api/src/lib/user/user.controller.ts index 79bee178..7e5636d3 100644 --- a/libs/server/api/src/lib/user/user.controller.ts +++ b/libs/server/api/src/lib/user/user.controller.ts @@ -191,6 +191,14 @@ export class UserController { return this.user.finishJoyride(token); } + @Post('viewedAccountSetupPage') + async viewedAccountSetupPage( + @Body(QUERY_KEY, new QueryValidationPipe({})) _: IQuery<{}>, + @Headers(TOKEN_KEY) token: string + ) { + return this.user.viewedAccountSetupPage(token); + } + @Post('adminUserSearch') async adminUserSearch( @Body(QUERY_KEY, new QueryValidationPipe(UserQuery)) query: IQuery, diff --git a/libs/server/core/application-services/src/lib/user/user.service.ts b/libs/server/core/application-services/src/lib/user/user.service.ts index 4a8f8898..8e900ecb 100644 --- a/libs/server/core/application-services/src/lib/user/user.service.ts +++ b/libs/server/core/application-services/src/lib/user/user.service.ts @@ -453,6 +453,12 @@ export class UserService { return this.userRepo.update(user.id, { joyride: false }); } + + async viewedAccountSetupPage(token: string) { + const user = await this.auth.validateUserToken(token); + return this.userRepo.update(user.id, { actionedOnAccountSetup: true }); + } + private addUserToMailChimpGeneralAudience(email: string) { // User must update their email preferences with MailChimp profile information const mailchimpInstance = 'The Instance'; diff --git a/libs/server/core/domain-services/src/lib/user/user.entity.ts b/libs/server/core/domain-services/src/lib/user/user.entity.ts index f9c629a0..5b8aff69 100644 --- a/libs/server/core/domain-services/src/lib/user/user.entity.ts +++ b/libs/server/core/domain-services/src/lib/user/user.entity.ts @@ -39,6 +39,9 @@ export class UserEntity implements Required { @Column({ default: false }) baAdmin!: boolean; + @Column({ default: false }) + actionedOnAccountSetup!: boolean; + @OneToOne(() => ChangeMakerEntity, (e) => e.user, { nullable: true }) @JoinColumn() changeMaker!: ChangeMakerEntity;