feat: manage series slideover added (and approve/decline/delete hooked up)

This commit is contained in:
sct
2020-11-18 11:48:29 +00:00
parent cb9ae25d94
commit 236c4e5e61
6 changed files with 257 additions and 82 deletions

View File

@@ -37,7 +37,7 @@ export class MediaRequest {
@ManyToOne(() => User, (user) => user.requests, { eager: true })
public requestedBy: User;
@ManyToOne(() => User, { nullable: true })
@ManyToOne(() => User, { nullable: true, cascade: true, eager: true })
public modifiedBy?: User;
@CreateDateColumn()
@@ -118,8 +118,11 @@ export class MediaRequest {
@AfterRemove()
private async handleRemoveParentUpdate() {
const mediaRepository = getRepository(Media);
if (!this.media.requests || this.media.requests.length === 0) {
this.media.status = MediaStatus.UNKNOWN;
const fullMedia = await mediaRepository.findOneOrFail({
where: { id: this.media.id },
});
if (!fullMedia.requests || fullMedia.requests.length === 0) {
fullMedia.status = MediaStatus.UNKNOWN;
mediaRepository.save(this.media);
}
}

View File

@@ -20,7 +20,9 @@ class SeasonRequest {
@Column({ type: 'int', default: MediaRequestStatus.PENDING })
public status: MediaRequestStatus;
@ManyToOne(() => MediaRequest, (request) => request.seasons)
@ManyToOne(() => MediaRequest, (request) => request.seasons, {
onDelete: 'CASCADE',
})
public request: MediaRequest;
@CreateDateColumn()