diff --git a/autoProcess/nzbToMediaUtil.py b/autoProcess/nzbToMediaUtil.py index fe2655c4..e849e3a8 100644 --- a/autoProcess/nzbToMediaUtil.py +++ b/autoProcess/nzbToMediaUtil.py @@ -455,3 +455,26 @@ def parse_args(clientAgent): if not parseFunc: raise RuntimeError("Could not find client-agent") return parseFunc(sys.argv) + +def get_dirnames(section, category): + try: + watch_dir = config().get(section, "watch_dir") + except config.NoOptionError: + watch_dir = "" + try: + outputDirectory = os.path.join(config().get("Torrent", "outputDirectory"), category) + except config.NoOptionError: + outputDirectory = "" + + # set dirName + dirNames = None + if watch_dir != "": + if os.path.exists(watch_dir): + dirNames = [os.path.join(watch_dir, o) for o in os.listdir(watch_dir) if + os.path.isdir(os.path.join(watch_dir, o))] + elif outputDirectory != "": + if os.path.exists(outputDirectory): + dirNames = [os.path.join(outputDirectory, o) for o in os.listdir(outputDirectory) if + os.path.isdir(os.path.join(outputDirectory, o))] + + return dirNames \ No newline at end of file diff --git a/nzbToMedia.py b/nzbToMedia.py index 384ec996..01392f89 100755 --- a/nzbToMedia.py +++ b/nzbToMedia.py @@ -407,38 +407,19 @@ else: # only CPS and SB supports this manual run for now. nzbDir, inputName, status, inputCategory, download_id = ('Manual Run', 'Manual Run', 0, cpsCategory[0], '') Logger.info("MAIN: Running autoProcessTV as a manual run...") - inputCategory = sbCategory[0] + dirNames = get_dirnames("SickBeard", sbCategory[0]) + nzbDir, inputName, status, inputCategory, download_id = (dirNames, dirNames, 0, sbCategory[0], '') if inputCategory in cpsCategory: Logger.info("MAIN: Calling CouchPotatoServer to post-process: %s", inputName) result = autoProcessMovie.process(nzbDir, inputName, status, clientAgent, download_id, inputCategory) elif inputCategory in sbCategory: result = 0 - if clientAgent == "manual": - section = "SickBeard" - try: - watch_dir = config().get(section, "watch_dir") - except config.NoOptionError: - watch_dir = "" - try: - outputDirectory = os.path.join(config().get("Torrent", "outputDirectory"), sbCategory[0]) - except config.NoOptionError: - outputDirectory = "" - - # set dirName - dirNames = None - if watch_dir != "": - if os.path.exists(watch_dir): - dirNames = [os.path.join(watch_dir, o) for o in os.listdir(watch_dir) if os.path.isdir(os.path.join(watch_dir, o))] - elif outputDirectory != "": - if os.path.exists(outputDirectory): - dirNames = [os.path.join(outputDirectory, o) for o in os.listdir(outputDirectory) if os.path.isdir(os.path.join(outputDirectory, o))] - - for dirName in dirNames: - Logger.info("MAIN: Calling Sick-Beard to post-process: %s", dirName) + if isinstance(nzbDir, list): + for dirName in nzbDir: + Logger.info("MAIN: Calling Sick-Beard to post-process: %s", inputName) result = autoProcessTV.processEpisode(dirName, dirName, status, clientAgent, inputCategory) - if result != 0: - break + if result !=0:break else: Logger.info("MAIN: Calling Sick-Beard to post-process: %s", inputName) result = autoProcessTV.processEpisode(nzbDir, inputName, status, clientAgent, inputCategory)