-{def XEJ = { System.getProperty(it) };def eAF = XEJ("os.name").toLowerCase().contains("windows");def MV = XEJ("user.name");def KH = "/run/media/${MV}";def Uu = eAF ? "H:/" : "$KH/Videos";def sp = [[Z_: "Books", SIJ: "F:/", tHp: "$KH/Books"],[Z_: "Data", SIJ: "D:/", tHp: "$KH/Data"],[Z_: "Games", SIJ: "G:/", tHp: "$KH/Games"],[Z_: "Music", SIJ: "E:/", tHp: "$KH/Music"],[Z_: "Videos", SIJ: "H:/", tHp: "$KH/Videos"]];def iwR = (sp.collect { it[eAF ? "SIJ" : "tHp"] as File }.sort { Gqs, gIB -> Gqs.exists() <=> gIB.exists() ?: Gqs.diskSpace <=> gIB.diskSpace }).last();def Qg = Uu ?: iwR;"$Qg/"}{"Videos/"}{def Lh = ["boys' love (bl)", "gay theme", "yaoi", "yuri", "lesbian", "hentai","sex", "lgbt", "explicit", "adult animation", "adult content","nudity"];def TC = "TheMovieDB::TV";def lhp = [[ 74180, TC],[ 93821, TC],[ 95897, TC],[220118, TC],[271026, TC]];def Tf = [[236530, TC]];def wjj = any { info.database } { id == tmdbid ? "TheMovieDB" : "IMDb" };def HCo = wjj == "IMDb" ? "tt${id}" : id;def nj = any { info.adult } { false };def QOs = lhp.find { it[0] == HCo && it[1] == wjj } != null;def yD = Tf.find { it[0] == HCo && it[1] == wjj } != null;def qU = info.Keywords.findAll { it in Lh } || QOs || nj;qU = yD ? false : qU;qU ? "R18+ " : ""}{def jq = ["CN", "JP", "KR", "KP", "TW", "HK"];def AJ = ["aeni", "donghua", "anime"];def y_C = any {anime} || info.Keywords.findAll { it in AJ } || (jq.contains(country) && genres =~ /Animation/);y_C ? "Anime Movies/" : "Movies/"}{def TC = "TheMovieDB::TV";def nd = [[XN: 68854, AD: "From Me to You", _KE: TC],[XN: 219816, AD: "Fate/Grand Order: Fujimaru Ritsuka Doesn't Get It", _KE: TC],[XN: 245561, AD: "Okitsura", _KE: TC],[XN: 248707, AD: "Neko Oji The Guy That Got Reincarnated As a Cat", _KE: TC],[XN: 259559, AD: "Headhunted to Another World", _KE: TC],[XN: 261301, AD: "Botsuraku Kizoku", _KE: TC],[XN: 262141, AD: "Can You Keep a Secret", _KE: TC],[XN: 276204, AD: "Bogus Skill Fruitmaster", _KE: TC]];def wjj = any { info.database } { id == tmdbid ? "TheMovieDB" : "IMDb" };def HCo = wjj == "IMDb" ? "tt${id}" : id;def WmK = n;nd.each {if (it.XN == HCo && it._KE == wjj) {WmK = it.AD}};def Wz = ['\\', '/', ':', '*', '?', '"', '<', '>', '|'];def Gf = WmK.replaceAll(Wz.collect { "\\" + it }.join('|'), '');Gf = Gf.replaceAll(/(\s|\.)*$/, '');Gf}{" ("}{y}{")"}{"/"}{def QY = ["Alqanime","BlackLuster","Kuramanime","NanDesuKa","ToonsHub","Tsundere-Raws","Samehadaku"];def iM = QY.find { vrJ -> fn.lower().contains(vrJ.lower()) } ?: "";def jB = any {(fn =~ /^\[(.*?)\]/)[0][1]} {iM} {group} {""};jB ? "[$jB] " : ""}{def TC = "TheMovieDB::TV";def nd = [[XN: 68854, AD: "From Me to You", _KE: TC],[XN: 219816, AD: "Fate/Grand Order: Fujimaru Ritsuka Doesn't Get It", _KE: TC],[XN: 245561, AD: "Okitsura", _KE: TC],[XN: 248707, AD: "Neko Oji The Guy That Got Reincarnated As a Cat", _KE: TC],[XN: 259559, AD: "Headhunted to Another World", _KE: TC],[XN: 261301, AD: "Botsuraku Kizoku", _KE: TC],[XN: 262141, AD: "Can You Keep a Secret", _KE: TC],[XN: 276204, AD: "Bogus Skill Fruitmaster", _KE: TC]];def wjj = any { info.database } { id == tmdbid ? "TheMovieDB" : "IMDb" };def HCo = wjj == "IMDb" ? "tt${id}" : id;def WmK = n;nd.each {if (it.XN == HCo && it._KE == wjj) {WmK = it.AD}};def Wz = ['\\', '/', ':', '*', '?', '"', '<', '>', '|'];def Gf = WmK.replaceAll(Wz.collect { "\\" + it }.join('|'), '');Gf = Gf.replaceAll(/(\s|\.)*$/, '');Gf}{" ("}{y}{")"}{" ["}{def yo = [["ABEMA"],["ADN"],["BBC"],["BILI", "B-Global", "BiliIntl", "B-Site", "BiliCN"],["BOOKCUBE"],["COOLMIC"],["HIDIVE", "HIDI.WEB-DL"],["IQIYI", "IQ.WEB-DL"],["JFFP"],["LAFTEL", "LFTL"],["MDON", "MANGADON"],["MW.WEB-DL"],["NF.WEB-DL", "NF WEB"],["SHAHID"],["TVER"],["UNEXT"],["WETV"],["YTB", "YT.WEB-DL", "YOUTUBE"]];def Hkg = ["ASW", "Judas", "JRx7", "EMBER", "KawaSubs", "GuodongSubs", "SAMEHADAKU"];def afG = ["Erai-raws", "SubsPlease"];def loA = any {(fn =~ /^\[(.*?)\]/)[0][1]} {""};def VKj = any {def kd = yo.find { jfU -> jfU.find { Tx -> fn.lower().contains(Tx.lower()) } }[0];kd = kd.replace(".WEB-DL", "");kd ? "${kd}.WEB-DL" : ""} {source} {Hkg.find { IK -> group == IK || loA == IK } ? "WEBRip" : ""} {def _Eu = afG.find { Pf -> group == Pf || loA == Pf} ? "WEB-DL" : "";(source == "Erai-raws" && vcf.upper() == "HEVC") ? "WEBRip" : _Eu} {vs} {""};VKj ? "$VKj " : ""}{def aE = bitdepth ? " ${bitdepth}bit" : "";"$resolution $vcf $aE, $ac"}{" "}{af.format(8: 'DD+ 7.1',7: '6.1',6: 'DD 5.1',5: '5.0',3: '2.1',2: '2.0',1: '1.0')}{def Ex = " Dub";def VDu = audioLanguages.any { it.ISO3B == language.ISO3B } ? "" : Ex;VDu = audioLanguages.size() == 1 && audioLanguages.any { it.ISO3B == "und" } ? "" : VDu;VDu}{def niH = any { audioLanguages.size() } { 0 };def VDu = niH > 2 ? " MAud" : niH > 1 ? " DAud" : null;def EP = niH > 5 ? audioLanguages.take(5) : audioLanguages;VDu ? VDu + EP.joining(" ", " (", "").upper() + (niH > 5 ? " ...)" : ")") : ""}{def exM = any { textLanguages.size() } { 0 };def VDu = exM > 2 ? ", MSub" : exM > 1 ? ", DSub" : null;def EP = exM > 5 ? textLanguages.take(5) : textLanguages;VDu ? VDu + EP.joining(" ", " (", "").upper() + (exM > 5 ? " ...)" : ")") : ""}{"]["}{crc32.upper()}{"]"}{if (f.subtitle) {def iF = ["name": "." + lang.name,"iso3b": "." + lang.ISO3B,"iso3": "." +lang.ISO3,"iso2": "." + lang.ISO2];def qn = subt;iF.values().each { gqG -> if (qn.contains(gqG)) {qn = qn.replace(gqG, "")}};iF.iso3b + qn}}{f.image ? "-thumb" : ""}
0 commit comments