@@ -171,6 +171,7 @@ export class MediaRequest {
171171 . leftJoin ( 'request.media' , 'media' )
172172 . leftJoinAndSelect ( 'request.requestedBy' , 'user' )
173173 . where ( 'request.is4k = :is4k' , { is4k : requestBody . is4k } )
174+ . andWhere ( 'request.isAnime = :isAnime' , { isAnime : requestBody . isAnime } )
174175 . andWhere ( 'media.tmdbId = :tmdbId' , { tmdbId : tmdbMedia . id } )
175176 . andWhere ( 'media.mediaType = :mediaType' , {
176177 mediaType : requestBody . mediaType ,
@@ -187,6 +188,7 @@ export class MediaRequest {
187188 tmdbId : tmdbMedia . id ,
188189 mediaType : requestBody . mediaType ,
189190 is4k : requestBody . is4k ,
191+ isAnime : requestBody . isAnime ,
190192 label : 'Media Request' ,
191193 } ) ;
192194
@@ -373,6 +375,7 @@ export class MediaRequest {
373375 ? user
374376 : undefined ,
375377 is4k : requestBody . is4k ,
378+ isAnime : requestBody . isAnime ,
376379 serverId : requestBody . serverId ,
377380 profileId : profileId ,
378381 rootFolder : rootFolder ,
@@ -404,6 +407,7 @@ export class MediaRequest {
404407 . filter (
405408 ( request ) =>
406409 request . is4k === requestBody . is4k &&
410+ request . isAnime === requestBody . isAnime &&
407411 request . status !== MediaRequestStatus . DECLINED
408412 )
409413 . reduce ( ( seasons , request ) => {
@@ -478,6 +482,7 @@ export class MediaRequest {
478482 ? user
479483 : undefined ,
480484 is4k : requestBody . is4k ,
485+ isAnime : requestBody . isAnime ,
481486 serverId : requestBody . serverId ,
482487 profileId : profileId ,
483488 rootFolder : rootFolder ,
@@ -558,6 +563,9 @@ export class MediaRequest {
558563 @Column ( { default : false } )
559564 public is4k : boolean ;
560565
566+ @Column ( { default : false } )
567+ public isAnime : boolean ;
568+
561569 @Column ( { nullable : true } )
562570 public serverId : number ;
563571
@@ -820,7 +828,10 @@ export class MediaRequest {
820828 }
821829
822830 let radarrSettings = settings . radarr . find (
823- ( radarr ) => radarr . isDefault && radarr . is4k === this . is4k
831+ ( radarr ) =>
832+ radarr . isDefault &&
833+ radarr . is4k === this . is4k &&
834+ radarr . isAnime === this . isAnime
824835 ) ;
825836
826837 // Fallback for requesting anime if there is no default anime server
@@ -852,9 +863,9 @@ export class MediaRequest {
852863 if ( ! radarrSettings ) {
853864 logger . warn (
854865 `There is no default ${
855- this . is4k ? '4K ' : ''
866+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
856867 } Radarr server configured. Did you set any of your ${
857- this . is4k ? '4K ' : ''
868+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
858869 } Radarr servers as default?`,
859870 {
860871 label : 'Media Request' ,
@@ -1077,7 +1088,10 @@ export class MediaRequest {
10771088 }
10781089
10791090 let sonarrSettings = settings . sonarr . find (
1080- ( sonarr ) => sonarr . isDefault && sonarr . is4k === this . is4k
1091+ ( sonarr ) =>
1092+ sonarr . isDefault &&
1093+ sonarr . is4k === this . is4k &&
1094+ sonarr . isAnime == this . isAnime
10811095 ) ;
10821096
10831097 // Fallback for requesting anime if there is no default anime server
@@ -1109,9 +1123,9 @@ export class MediaRequest {
11091123 if ( ! sonarrSettings ) {
11101124 logger . warn (
11111125 `There is no default ${
1112- this . is4k ? '4K ' : ''
1126+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
11131127 } Sonarr server configured. Did you set any of your ${
1114- this . is4k ? '4K ' : ''
1128+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
11151129 } Sonarr servers as default?`,
11161130 {
11171131 label : 'Media Request' ,
@@ -1165,11 +1179,7 @@ export class MediaRequest {
11651179 let seriesType : SonarrSeries [ 'seriesType' ] = 'standard' ;
11661180
11671181 // Change series type to anime if the anime keyword is present on tmdb
1168- if (
1169- series . keywords . results . some (
1170- ( keyword ) => keyword . id === ANIME_KEYWORD_ID
1171- )
1172- ) {
1182+ if ( this . isAnime ) {
11731183 seriesType = sonarrSettings . animeSeriesType ?? 'anime' ;
11741184 }
11751185
@@ -1371,30 +1381,38 @@ export class MediaRequest {
13711381
13721382 switch ( type ) {
13731383 case Notification . MEDIA_APPROVED :
1374- event = `${ this . is4k ? '4K ' : '' } ${ mediaType } Request Approved` ;
1384+ event = `${
1385+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
1386+ } ${ mediaType } Request Approved`;
13751387 notifyAdmin = false ;
13761388 break ;
13771389 case Notification . MEDIA_DECLINED :
1378- event = `${ this . is4k ? '4K ' : '' } ${ mediaType } Request Declined` ;
1390+ event = `${
1391+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
1392+ } ${ mediaType } Request Declined`;
13791393 notifyAdmin = false ;
13801394 break ;
13811395 case Notification . MEDIA_PENDING :
1382- event = `New ${ this . is4k ? '4K ' : '' } ${ mediaType } Request` ;
1396+ event = `New ${
1397+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
1398+ } ${ mediaType } Request`;
13831399 break ;
13841400 case Notification . MEDIA_AUTO_REQUESTED :
13851401 event = `${
1386- this . is4k ? '4K ' : ''
1402+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
13871403 } ${ mediaType } Request Automatically Submitted`;
13881404 notifyAdmin = false ;
13891405 notifySystem = false ;
13901406 break ;
13911407 case Notification . MEDIA_AUTO_APPROVED :
13921408 event = `${
1393- this . is4k ? '4K ' : ''
1409+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
13941410 } ${ mediaType } Request Automatically Approved`;
13951411 break ;
13961412 case Notification . MEDIA_FAILED :
1397- event = `${ this . is4k ? '4K ' : '' } ${ mediaType } Request Failed` ;
1413+ event = `${
1414+ this . isAnime ? 'Anime ' : this . is4k ? '4K ' : ''
1415+ } ${ mediaType } Request Failed`;
13981416 break ;
13991417 }
14001418
0 commit comments