diff --git a/server/subscriber/MediaRequestSubscriber.ts b/server/subscriber/MediaRequestSubscriber.ts index 708156cd..d5cf36dc 100644 --- a/server/subscriber/MediaRequestSubscriber.ts +++ b/server/subscriber/MediaRequestSubscriber.ts @@ -15,6 +15,7 @@ import { import { getRepository } from '@server/datasource'; import Media from '@server/entity/Media'; import { MediaRequest } from '@server/entity/MediaRequest'; +import Season from '@server/entity/Season'; import SeasonRequest from '@server/entity/SeasonRequest'; import notificationManager, { Notification } from '@server/lib/notifications'; import { getSettings } from '@server/lib/settings'; @@ -815,19 +816,6 @@ export class MediaRequestSubscriber implements EntitySubscriberInterface s.seasonNumber === seasonRequest.seasonNumber + ); + + if (season) { + season[statusKey] = MediaStatus.UNKNOWN; + await seasonRepository.save(season); + } + } + } + // Approve child seasons if parent is approved if ( media.mediaType === MediaType.TV && diff --git a/src/components/RequestModal/TvRequestModal.tsx b/src/components/RequestModal/TvRequestModal.tsx index ba718302..e42c3c22 100644 --- a/src/components/RequestModal/TvRequestModal.tsx +++ b/src/components/RequestModal/TvRequestModal.tsx @@ -360,7 +360,11 @@ const TvRequestModal = ({ ).length > 0 ) { data.mediaInfo.requests - .filter((request) => request.is4k === is4k) + .filter( + (request) => + request.is4k === is4k && + request.status !== MediaRequestStatus.DECLINED + ) .forEach((request) => { if (!seasonRequest) { seasonRequest = request.seasons.find(