From 4934776fea490a2f219a45234e774fb9a45e4dba Mon Sep 17 00:00:00 2001 From: Reinhard Pointner Date: Thu, 15 Aug 2013 17:41:21 +0000 Subject: [PATCH] * tvs/mov diff fix @see http://www.filebot.net/forums/viewtopic.php?f=6&p=5605#p5605 --- website/scripts/amc.groovy | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/website/scripts/amc.groovy b/website/scripts/amc.groovy index 73dfe157..587e339a 100644 --- a/website/scripts/amc.groovy +++ b/website/scripts/amc.groovy @@ -144,8 +144,19 @@ def groups = input.groupBy{ f -> def sn = norm(tvs) def mn = norm(mov.name) + /** + println '--- EPISODE FILTER (POS) ---' + println parseEpisodeNumber(fn, true) || parseDate(fn) + println ([dn, fn].find{ it =~ sn && matchMovie(it, true) == null } && (parseEpisodeNumber(fn.after(sn), false) || fn.after(sn) =~ /\d{1,2}\D+\d{1,2}/) && matchMovie(fn, true) == null) + println (fn.after(sn) ==~ /.{0,3} - .+/ && matchMovie(fn, true) == null) + println f.dir.listFiles{ it.isVideo() && (dn =~ sn || norm(it.name) =~ sn) && it.name =~ /\b\d{1,3}\b/}.size() >= 10 + println '--- EPISODE FILTER (NEG) ---' + println (mov.year >= 1950 && f.listPath().reverse().take(3).find{ it.name =~ mov.year }) + println (mn =~ sn && [dn, fn].find{ it =~ /(19|20)\d{2}/ }) + **/ + // S00E00 | 2012.07.21 | One Piece 217 | Firefly - Serenity | [Taken 1, Taken 2, Taken 3, Taken 4, ..., Taken 10] - if ((parseEpisodeNumber(fn, true) || parseDate(fn) || ([dn, fn].find{ it =~ sn && matchMovie(it, true) == null } && (parseEpisodeNumber(fn.after(sn), false) || fn.after(sn) =~ /\d{1,2}\D+\d{1,2}/) && matchMovie(fn, true) == null) || (fn.after(sn) ==~ /.{0,3} - .+/ && matchMovie(fn, true) == null) || f.dir.listFiles{ it.isVideo() && (dn =~ sn || norm(it.name) =~ sn) && it.name =~ /\b\d{1,3}\b/}.size() >= 10) && !(mov.year >= 1950 && f.listPath().reverse().take(3).find{ it.name =~ mov.year }) || mov.year < 1900) { + if ((parseEpisodeNumber(fn, true) || parseDate(fn) || ([dn, fn].find{ it =~ sn && matchMovie(it, true) == null } && (parseEpisodeNumber(fn.after(sn), false) || fn.after(sn) =~ /\d{1,2}\D+\d{1,2}/) && matchMovie(fn, true) == null) || (fn.after(sn) ==~ /.{0,3} - .+/ && matchMovie(fn, true) == null) || f.dir.listFiles{ it.isVideo() && (dn =~ sn || norm(it.name) =~ sn) && it.name =~ /\b\d{1,3}\b/}.size() >= 10 || mov.year < 1900) && !( (mov.year >= 1950 && f.listPath().reverse().take(3).find{ it.name =~ mov.year }) || (mn =~ sn && [dn, fn].find{ it =~ /(19|20)\d{2}/ }) ) ) { _log.fine("Exclude Movie: $mov") mov = null } else if (similarity(mn, fn) >= 0.8 || [dn, fn].find{ it =~ /\b/+mov.year+/\b/ } || [dn, fn].find{ it =~ mn && !(it.after(mn) =~ /\b\d{1,3}\b/) && !(it.before(mn).contains(sn)) } || (detectMovie(f, true) && [dn, fn].find{ it =~ /(19|20)\d{2}/ })) {