From e89c94fff1666c25529d3a3320a0ef1489f9da64 Mon Sep 17 00:00:00 2001 From: void Date: Fri, 28 Feb 2020 18:52:57 +0100 Subject: [PATCH] you can now set if the movie or tv show will be searched on sonarr/radarr upon request in the web config, default is false --- data/settings.json | 2 +- src/api/helpers/radarr.js | 4 ++-- src/api/helpers/sonarr.js | 4 ++-- src/bots/services/radarr.js | 2 +- src/bots/services/sonarr.js | 2 +- src/database/Database.js | 2 ++ src/database/settings_format.json | 6 ++++-- src/web/views/tabs/radarr.ejs | 7 +++++++ src/web/views/tabs/sonarr.ejs | 7 +++++++ 9 files changed, 27 insertions(+), 9 deletions(-) diff --git a/data/settings.json b/data/settings.json index 15d7297..cc3a08e 100644 --- a/data/settings.json +++ b/data/settings.json @@ -1 +1 @@ -{"general":{"username":"mellow","password":"$2a$10$hKxfwH5lKDxogjIPKR.9mOJi664EQ298OYiRt/HuqVjSHw8BRKEya"},"bot":{"token":"","ownerid":"","commandprefix":"","channelname":"","deletecommandmessages":"false","unknowncommandresponse":"false","defaultservice":"ombi","requesttv":"","requestmovie":"","admin":"","selection":"emoji"},"ombi":{"host":"","port":"","baseurl":"","apikey":"","ssl":"false","username":""},"tautulli":{"host":"","port":"","baseurl":"","apikey":"","ssl":"false"},"sonarr":{"host":"","port":"","baseurl":"","apikey":"","ssl":"false","profile":"0","profileanime":"0","rootfolder":"","rootfolderanime":"","languageprofile":"0","seasonfolders":"false","v3":"false"},"radarr":{"host":"","port":"","baseurl":"","apikey":"","ssl":"false","profile":"0","rootfolder":"","minimumavailability":"Announced"}} \ No newline at end of file +{"general":{"username":"mellow","password":"$2a$10$hKxfwH5lKDxogjIPKR.9mOJi664EQ298OYiRt/HuqVjSHw8BRKEya"},"bot":{"token":"","ownerid":"","commandprefix":"","channelname":"","deletecommandmessages":"false","unknowncommandresponse":"false","defaultservice":"ombi","requesttv":"","requestmovie":"","admin":"","selection":"emoji"},"ombi":{"host":"","port":"","baseurl":"","apikey":"","ssl":"false","username":""},"tautulli":{"host":"","port":"","baseurl":"","apikey":"","ssl":"false"},"sonarr":{"host":"","port":"","baseurl":"","apikey":"","ssl":"false","profile":"0","profileanime":"0","rootfolder":"","rootfolderanime":"","languageprofile":"0","seasonfolders":"false","v3":"false","searchonrequest":"false"},"radarr":{"host":"","port":"","baseurl":"","apikey":"","ssl":"false","profile":"0","rootfolder":"","minimumavailability":"Announced","searchonrequest":"false"}} \ No newline at end of file diff --git a/src/api/helpers/radarr.js b/src/api/helpers/radarr.js index 844b85f..920d5ac 100644 --- a/src/api/helpers/radarr.js +++ b/src/api/helpers/radarr.js @@ -1,4 +1,4 @@ -module.exports = buildRadarrMovie = (movie, radarr, searchNow = false) => { +module.exports = buildRadarrMovie = (movie, radarr) => { if (radarr.profile === "0" || radarr.rootfolder === "0" || radarr.rootfolder === "") { const errMsg = 'Please set quality profile and default root folder in radarr config!'; console.log(errMsg); @@ -20,7 +20,7 @@ module.exports = buildRadarrMovie = (movie, radarr, searchNow = false) => { Object.assign(newMovie, { addOptions: { - searchForMovie: searchNow + searchForMovie: (radarr.searchonrequest === "true") ? true : false } }); diff --git a/src/api/helpers/sonarr.js b/src/api/helpers/sonarr.js index 359369f..78f13ae 100644 --- a/src/api/helpers/sonarr.js +++ b/src/api/helpers/sonarr.js @@ -1,7 +1,7 @@ const TVMaze = require('../tvmaze.js'); const tvmaze = new TVMaze(); -module.exports = buildSonarrSeries = (series, sonarr, searchNow = false) => { +module.exports = buildSonarrSeries = (series, sonarr) => { if (sonarr.profile === "0" || sonarr.rootfolder === "0" || sonarr.rootfolder === "") { const errMsg = 'Please set quality profile and default root folder in sonarr config!'; console.log(errMsg); @@ -45,7 +45,7 @@ module.exports = buildSonarrSeries = (series, sonarr, searchNow = false) => { addOptions: { ignoreEpisodesWithFiles: true, ignoreEpisodesWithoutFiles: false, - searchForMissingEpisodes: searchNow + searchForMissingEpisodes: (sonarr.searchonrequest === "true") ? true : false } }); diff --git a/src/bots/services/radarr.js b/src/bots/services/radarr.js index 9042e98..7a6565f 100644 --- a/src/bots/services/radarr.js +++ b/src/bots/services/radarr.js @@ -60,7 +60,7 @@ module.exports = class SonarrService { } addMovie(msg, msgEmbed, movie) { - const newMovie = buildRadarrMovie(movie, this.client.db.config['radarr'], true); + const newMovie = buildRadarrMovie(movie, this.client.db.config['radarr']); if (typeof newMovie === "string") { return this.client.reply(msg, newMovie); } diff --git a/src/bots/services/sonarr.js b/src/bots/services/sonarr.js index 1aabaaa..1dae692 100644 --- a/src/bots/services/sonarr.js +++ b/src/bots/services/sonarr.js @@ -28,7 +28,7 @@ module.exports = class SonarrService { } addSeries(msg, msgEmbed, series) { - const newSeries = buildSonarrSeries(series, this.client.db.config['sonarr'], true); + const newSeries = buildSonarrSeries(series, this.client.db.config['sonarr']); if (typeof newSeries === "string") { return this.client.reply(msg, newSeries); } diff --git a/src/database/Database.js b/src/database/Database.js index 394178f..5608cb2 100644 --- a/src/database/Database.js +++ b/src/database/Database.js @@ -73,6 +73,7 @@ module.exports = class Database { newWebConfig.sonarr.languageprofile = request.body.languageprofile; newWebConfig.sonarr.seasonfolders = (request.body.seasonfolders) ? 'true' : 'false'; newWebConfig.sonarr.v3 = (request.body.v3) ? 'true' : 'false'; + newWebConfig.sonarr.searchonrequest = (request.body.searchonrequest) ? 'true' : 'false'; } else if (request.originalUrl == '/radarr' && request.body.apiKey != '' && request.body.host != '') { newWebConfig.radarr.host = request.body.host; newWebConfig.radarr.port = request.body.port; @@ -82,6 +83,7 @@ module.exports = class Database { newWebConfig.radarr.profile = request.body.profile; newWebConfig.radarr.rootfolder = request.body.rootfolder; newWebConfig.radarr.minimumavailability = request.body.minimumavailability; + newWebConfig.radarr.searchonrequest = (request.body.searchonrequest) ? 'true' : 'false'; } if (request.body) storeData(newWebConfig); diff --git a/src/database/settings_format.json b/src/database/settings_format.json index 6774b72..4bf6a0a 100644 --- a/src/database/settings_format.json +++ b/src/database/settings_format.json @@ -43,7 +43,8 @@ "rootfolderanime": "", "languageprofile": "0", "seasonfolders": "false", - "v3": "false" + "v3": "false", + "searchonrequest": "false" }, "radarr": { "host": "", @@ -53,6 +54,7 @@ "ssl": "false", "profile": "0", "rootfolder": "", - "minimumavailability": "Announced" + "minimumavailability": "Announced", + "searchonrequest": "false" } } \ No newline at end of file diff --git a/src/web/views/tabs/radarr.ejs b/src/web/views/tabs/radarr.ejs index 7930498..c321c61 100644 --- a/src/web/views/tabs/radarr.ejs +++ b/src/web/views/tabs/radarr.ejs @@ -87,6 +87,13 @@ + +
+ +
+ checked<% } %>> +
+
diff --git a/src/web/views/tabs/sonarr.ejs b/src/web/views/tabs/sonarr.ejs index 43c64b1..42babf2 100644 --- a/src/web/views/tabs/sonarr.ejs +++ b/src/web/views/tabs/sonarr.ejs @@ -131,6 +131,13 @@ checked<% } %>> + +
+ +
+ checked<% } %>> +
+