mirror of
https://github.com/CaramelFur/Picsur.git
synced 2025-10-26 15:06:07 +01:00
32 lines
1020 B
TypeScript
32 lines
1020 B
TypeScript
import { Injectable, Logger } from '@nestjs/common';
|
|
import { ImageDBService } from '../../collections/image-db/image-db.service';
|
|
import { RolesService } from '../../collections/role-db/role-db.service';
|
|
import { Permission } from '../../models/constants/permissions.const';
|
|
|
|
@Injectable()
|
|
export class DemoManagerService {
|
|
private readonly logger = new Logger('DemoManagerService');
|
|
|
|
constructor(
|
|
private readonly imagesService: ImageDBService,
|
|
private readonly rolesService: RolesService,
|
|
) {}
|
|
|
|
public async setupRoles() {
|
|
this.logger.warn(
|
|
'Modifying roles for demo mode, this will have to be reverted manually',
|
|
);
|
|
// Could be done manually, but this makes settup up a demo instance quicker
|
|
this.rolesService.addPermissions('guest', [Permission.ImageUpload]);
|
|
}
|
|
|
|
public execute() {
|
|
this.executeAsync().catch(this.logger.error);
|
|
}
|
|
|
|
private async executeAsync() {
|
|
this.logger.verbose('Executing demo cleanup');
|
|
await this.imagesService.deleteAll(true);
|
|
}
|
|
}
|