From 7683bceda33b530659fa17375401f90fe78d24e9 Mon Sep 17 00:00:00 2001 From: Reinhard Pointner Date: Thu, 9 Aug 2012 05:06:28 +0000 Subject: [PATCH] * only extract normal archives like zip/rar but not .iso etc --- website/scripts/utorrent-postprocess.groovy | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/website/scripts/utorrent-postprocess.groovy b/website/scripts/utorrent-postprocess.groovy index ea258fb3..308a0851 100644 --- a/website/scripts/utorrent-postprocess.groovy +++ b/website/scripts/utorrent-postprocess.groovy @@ -49,14 +49,17 @@ if (args.empty) { // extract archives (zip, rar, etc) that contain at least one video file -input += extract(file: input, output: null, conflict: 'override', filter: { it.isVideo() }, forceExtractAll: true) +input += extract(file: input.findAll{ it.isArchive() }, output: null, conflict: 'override', filter: { it.isVideo() }, forceExtractAll: true) // process only media files -input = input.unique().findAll{ it.isVideo() || it.isSubtitle() } +input = input.findAll{ it.isVideo() || it.isSubtitle() } // ignore clutter files input = input.findAll{ !(it.path =~ /\b(?i:sample|trailer|extras|deleted.scenes|music.video|scrapbook)\b/) } +// sanitize input +input = input.findAll{ it.exists() }.collect{ it.canonicalFile }.unique() + // print input fileset input.each{ f -> _log.finest("Input: $f") } @@ -69,11 +72,11 @@ def groups = input.groupBy{ f -> if (forceIgnore(f)) return [] if (forceMovie(f)) - return [mov: detectMovie(f, false)] + return [mov: detectMovie(f, false)] if (forceSeries(f)) - return [tvs: detectSeriesName(f)] + return [tvs: detectSeriesName(f) ?: detectSeriesName(f.dir.listFiles{ it.isVideo() })] if (forceAnime(f)) - return [anime: detectSeriesName(f)] + return [anime: detectSeriesName(f) ?: detectSeriesName(f.dir.listFiles{ it.isVideo() })] def tvs = detectSeriesName(f)