From fb344cf5cbd582b27fe1d09cdc53ee7db75260ce Mon Sep 17 00:00:00 2001 From: Darko Date: Mon, 23 Dec 2013 09:17:43 +0100 Subject: [PATCH] Updates to namecleaner and predb handling --- bin/monitor.php | 2 +- test/namecleaner.php | 99 ++++++++++++++++++++++++++++++++++-- test/postprocess_pre.php | 6 ++- test/prehash.php | 107 +++++++++++++++++++++++++-------------- 4 files changed, 171 insertions(+), 43 deletions(-) diff --git a/bin/monitor.php b/bin/monitor.php index 0088b3c4c..828ccd355 100644 --- a/bin/monitor.php +++ b/bin/monitor.php @@ -4,7 +4,7 @@ require(dirname(__FILE__)."/config.php"); require(WWW_DIR.'/lib/postprocess.php'); require_once (WWW_DIR.'/lib/site.php'); -$version="0.3r389"; +$version="0.3r393"; $db = new DB(); $s = new Sites(); diff --git a/test/namecleaner.php b/test/namecleaner.php index a126fd339..4c6aa3e3c 100755 --- a/test/namecleaner.php +++ b/test/namecleaner.php @@ -932,6 +932,9 @@ class nameCleaning //Patterson flood - Mobi - 15/45 "James Patterson - AC 13 - Double Cross.mobi" else if (preg_match('/(.+?)[-_ ]{0,3}\d+\/(\d+[-_ ]{0,3}".+?)\.(txt|pdf|mobi|epub|azw)"( \(\d+\/\d+\))?( )?$/', $subject, $match)) return $match[2]; + //04/63 Brave New World Revisited - Aldous Huxley.mobi yEnc + else if (preg_match('/\d+\/\d+[-_ ]{0,3}(.+)(\.part\d*|\.rar)?(\.vol.+?"|\.[A-Za-z0-9]{2,4})[-_ ]{0,3}yEnc$/', $subject, $match)) + return $match[1]; else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } @@ -977,10 +980,28 @@ class nameCleaning //New Scan "Herbert, James - Sepulchre (html).rar" yEnc else if (preg_match('/^(Attn:|Re: REQ:|New Scan).+?[-_ ]{0,3}"(.+)(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}")[-_ ]{0,3}(\d+[.,]\d+ [kKmMgG][bB](ytes)?)? yEnc$/i', $subject, $match)) return $match[2]; + //*FULL REPOST* New eBooks 26 Nov 2012 & 20% PAR2 Set - "Elisabeth Kyle - The Captain's House (siPDF).rar" + //*REPOST* New eBooks 23 Nov 2012 - "Charles Culver - [The 11th Floor 02] - Awakening (mobi).rar" + else if (preg_match('/^\*(FULL )?REPOST\* New eBooks.+[-_ ]{0,3}"(.+)(\.part\d*|\.rar)?(\.vol.+?"|\.[A-Za-z0-9]{2,4}")$/', $subject, $match)) + return $match[2]; + //1 - 5 July 2013 - Search for number at end of title - Bevin Alexander - How Hitler Could Have Won World War II- The Fatal Errors That Lead to Nazi Defeat (epub).rar - 14418-25255-6053.rar.txt yEnc + //10 July 2013 - Search 4 Numeric String at End of Subject - Andew Hodges - Alan Turing- The Enigma (Centenary Edition) (kf8 mobi).rar = 21317-25234-21710.rar.txt yEnc + else if (preg_match('/^.+?Search (for|4) (number|Numeric String) at end of (title|Subject)[-_ ]{0,3}(.+)(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4})[-\=_ ]{0,3}\d+[-_ ]{0,3}.+?yEnc$/i', $subject, $match)) + return $match[4]; //"Gabaldon, Diana - Outlander [5] The Fiery Cross.epub" yEnc //Kiny Friedman "Friedman, Kinky - Prisoner of Vandam Street_ A Novel, The.epub" yEnc else if (preg_match('/.*"(.+?)(\.part\d*|\.rar)?(\.vol.+?"|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) return $match[1]; + //"Back to Pakistan_ A Fifty-Year Journey - Leslie Noyes Mass.pdf" 2778K + else if (preg_match('/^"(.+)(\.part\d*|\.rar)?(\.vol.+?"|\.[A-Za-z0-9]{2,4}")[-_ ]{0,3}\d+[kKmMgG]$/', $subject, $match)) + return $match[1]; + //[002/182] A. E. Van Vogt - The Anarchistic Colossus.mobi mobi flood + //[002/115] Alan Dean Foster - Alien.mobi sf single author flood + else if (preg_match('/^\[\d+\/\d+\][-_ ]{0,3}(.+)\.(txt|pdf|mobi|epub|azw)[-_ ]{0,3}.+flood( )?$/', $subject, $match)) + return $match[1]; + //[2/4] Graham Masterton - Descendant.mobi + else if (preg_match('/^\[\d+\/(\d+\]) (.+?)\.(txt|pdf|mobi|epub|azw)/', $subject, $match)) + return $match[2]; else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } @@ -1041,6 +1062,9 @@ class nameCleaning //[158023]-[FULL]-[#a.b.erotica@EFNet]-[UHQ]-[www.usenet4all.eu]-[ Glamour.Girls.2.XXX.DVDRip.XviD-Pr0nStarS ]-[1/7] - #34;ps-gg2-sample-sample.par2#34; yEnc else if (preg_match('/^\[\d+\]-\[FULL\]-\[.+\]-\[UHQ\]-\[.+\]-\[ (.+) \][- ]\[\d+\/\d+\][ -]{0,3}("|#34;).+("|#34;) yEnc$/', $subject, $match)) return $match[1]; + //..::kleverig.eu::.. [001/141] - "ZYGBUTD5TPgMdjjxnvrl.par2" - 13,28 GB yEnc + else if (preg_match('/.+[-_ ]{0,3}[\(\[]\d+\/(\d+[\)\]][-_ ]{0,3}".+)(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) + return $match[1]; //"Babysitters_a_Slut_4_Scene_4.part01.rar"_SpotBots yEnc //- "JH2U0H5FIK8TO7YK3Q.part12.rar" yEnc //..::kleverig.eu::.. [001/141] - "ZYGBUTD5TPgMdjjxnvrl.par2" - 13,28 GB yEnc @@ -1435,7 +1459,7 @@ class nameCleaning else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } - else if ($groupName === 'alt.binaries.movies.x264') + else if ($groupName === "alt.binaries.movies.x264") { //http://nzbroyalty.com - House.of.The.Rising.sun.2011.BluRay.720p.DTS.x264-CHD - [00/48] - "House.of.The.Rising.sun.2011.BluRay.720p.DTS.x264-CHD.nzb" yEnc if (preg_match('/^http:\/\/nzbroyalty\.com - (.+?) - \[\d+\/(\d+\]) - ".+?" yEnc$/', $subject, $match)) @@ -1452,6 +1476,21 @@ class nameCleaning else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } + else if ($groupName === "alt.binaries.mp3") + { + //"The Absence - Riders Of The Plague" [00/14] - "the_absence-riders_of_the_plague.nzb" yEnc + if (preg_match('/"(.+)"[-_ ]{0,3}[\(\[]\d+\/(\d+[\)\]])[-_ ]{0,3}".+(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) + return $match[1]; + //( Albert Cummings Albums 6x By Dready Niek (1999-2012) ) ( ** By Dready Niek ** ) [11/20] - "Albert Cummings Albums 6x By Dready Niek (1999-2012).part10.rar" yEnc + //( Fat Freddy's Drop - Blackbird (2013) -- By Dready Niek ) -- By Dready Niek ) [01/15] - "Fat Freddy's Drop - Blackbird (2013) -- By Dready Niek.par2" yEnc + if (preg_match('/\( (.+?) \)[-_ ]{0,3}( |\().+\)[-_ ]{0,3}[\(\[]\d+\/(\d+[\)\]])[-_ ]{0,3}".+(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) + return $match[1]; + //Metallica - Ride The Lightning "01 - Fight Fire With Fire.mp3" yEnc + else if (preg_match('/^(.+?)[-_ ]{0,3}("|#34;)(.+?)(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}("|#34;))[-_ ]{0,3}yEnc$/', $subject, $match)) + return $match[3]; + else + return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); + } else if ($groupName === "alt.binaries.mp3.complete_cd") { //[052713]-[#eos@EFNet]-[All_Shall_Perish-Montreal_QUE_0628-2007-EOS]-[09/14] "06-all_shall_perish-deconstruction-eos.mp3" yEnc @@ -1472,6 +1511,9 @@ class nameCleaning //Handyman Shows-TOH-S32E10 - File 01 of 32 - yEnc else if (preg_match('/^Handyman Shows-(.+) - File \d+ of \d+ - yEnc$/', $subject, $match)) return $match[1]; + //- "Auction Hunters S04E04.HDTV.x264-StarryNights1.nzb" yEnc + else if (preg_match('/.*"(.+?)(\.part\d*|\.rar)?(\.vol.+?"|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) + return $match[1]; else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } @@ -1654,10 +1696,23 @@ class nameCleaning //<<>> <<< "Justin_Bieber-Believe_Acoustic-2013-pLAN9_usenet-space-cowbys.info.rar" >< 4/6 (78.65 MB) >< 60.84 MB > yEnc else if (preg_match('/^.+?usenet-space.+?Powered by.+? "(.+?)' . $this->e0 . '.+? \d+\/\d+ \(\d+[.,]\d+ [kKmMgG][bB]\) .+? \d+[.,]\d+ [kKmMgG][bB] .+?yEnc$/', $subject, $match)) return $match[1]; + //"The Absence - Riders Of The Plague" [00/14] - "the_absence-riders_of_the_plague.nzb" yEnc + if (preg_match('/"(.+)"[-_ ]{0,3}[\(\[]\d+\/(\d+[\)\]])[-_ ]{0,3}".+(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) + return $match[1]; + //( Albert Cummings Albums 6x By Dready Niek (1999-2012) ) ( ** By Dready Niek ** ) [11/20] - "Albert Cummings Albums 6x By Dready Niek (1999-2012).part10.rar" yEnc + //( Fat Freddy's Drop - Blackbird (2013) -- By Dready Niek ) -- By Dready Niek ) [01/15] - "Fat Freddy's Drop - Blackbird (2013) -- By Dready Niek.par2" yEnc + if (preg_match('/\( (.+?)\)[-_ ]{0,3}( |\().+\)[-_ ]{0,3}[\(\[]\d+\/(\d+[\)\]])[-_ ]{0,3}".+(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) + return $match[1]; + //( Addison_Road-Addison_Road-2008 ) [01/10] - "01. Addison Road - This Could Be Our Day.mp3" yEnc + if (preg_match('/\( (.+?) \)[-_ ]{0,3}[\(\[]\d+\/(\d+[\)\]])[-_ ]{0,3}".+(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) + return $match[1]; + //(????) [0/8] - Crionics Post - Alice In Chains - Dirt REPOST"Alice In Chains - Dirt.nzb" yEnc + if (preg_match('/^.+?\[\d+\/(\d+\][-_ ]{0,3}.+?)[-_ ]{0,3}("|#34;)(.+?)(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}("|#34;))[-_ ]{0,3}yEnc$/', $subject, $match)) + return $match[3]; else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } - else if ($groupName === 'alt.binaries.sounds.mp3.complete_cd') + else if ($groupName === "alt.binaries.sounds.mp3.complete_cd") { //The Refreshments - [1/9] - "The Refreshments - Rock´n Roll Christmas [2003].par2" yEnc if (preg_match('/(.+)[-_ ]{0,3}[\(\[]\d+\/\d+[\)\]][-_ ]{0,3}"(.+)(\.part\d*|\.rar)?(\.vol.+ \(\d+\/\d+\) "|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) @@ -2028,6 +2083,9 @@ class nameCleaning //[2103]-[abgx.net] Harvey_Birdman_Attorney_At_Law-USA-WII [000/104] - "Harvey_Birdman_Attorney_At_Law-USA-WII.nzb" yEnc else if (preg_match('/^\[\d+\]-\[abgx.net\] (.+) \[\d+\/\d+\] - ("|#34;).+("|#34;) yEnc$/', $subject, $match)) return $match[1]; + //(3790)-[abgx.net]-[Samurai_Warriors_Katana_USA-WII]-[000/105] - "3790.nzb" yEnc + else if (preg_match('/^\(\d+\)-\[abgx.net\]-(.+)-\[\d+\/\d+\] - ("|#34;).+("|#34;) yEnc$/', $subject, $match)) + return $match[1]; //[REQ# 7134] Full 105 Cocoto_Magic_Circus_PAL_Wii-OE PAL "oe-magic.r00" 4.57 GB yEnc else if (preg_match('/^\[REQ# \d+\] Full \d+ (.+) PAL ("|#34;).+("|#34;) \d+[.,]\d+ [kKmMgG][bB] yEnc$/', $subject, $match)) return $match[1]; @@ -2058,9 +2116,27 @@ class nameCleaning //[COMPRESSED] Family_Feud_2010_Edition_USA_Wii-QwiiF [01/26] - "Family_Feud_2010_Edition_USA_Wii-QwiiF.par2" yEnc else if (preg_match('/^\[COMPRESSED\] (.+) \[\d+\/\d+\] - ("|#34;).+("|#34;) yEnc$/', $subject, $match)) return $match[1]; + //[COMPRESSED] Rooms.The.Main.Building.USA.WII-SUSHi - su-rousa.par2 [01/18] (1/1) (1/1) yEnc + else if (preg_match('/^\[COMPRESSED\] (.+) - .+ \[\d+\/\d+\] .+ yEnc$/', $subject, $match)) + return $match[1]; //WII4U - thinkSMART.Family.USA.WII-dumpTruck - [01/15] - "dumptruck-tf.par2" yEnc else if (preg_match('/^WII4U - (.+) - \[\d+\/\d+\] - ("|#34;).+("|#34;) yEnc$/', $subject, $match)) return $match[1]; + //<<>> <<< >< >< "Rogue Trooper The Quartz Zone Massacre (2009)PAL Wii" >< 037/131 () >< > yEnc + else if (preg_match('/^<<>> <<< >< >< ("|#34;)(.+)("|#34;) >< \d+\/\d+ \(\) >< > yEnc$/', $subject, $match)) + return $match[2]; + //[6840]-[abgx@Efnet]-[My.Fitness.Coach.NTSC-WII-ProCiSiON] - (001/110) "xxx-mfc.par2" - 4.76 GB yEnc + else if (preg_match('/^\[\d+\]-\[abgx@Efnet\]-\[(.+)\] - \(\d+\/\d+\) ".+".+yEnc$/', $subject, $match)) + return $match[1]; + //[6820]-[abgx@Efnet]-[Full]-[Cotton_Fantastic_Night_Dreams_NTSC_RF_TG16-CD.iNJECT_iNTERNAL_VC_Wii-0RANGECHiCKEN]- [01/16] - 0c-cotton-rf.nfo (1/1) (1/1) yEnc + else if (preg_match('/^\[\d+\]-\[abgx@Efnet\]-\[Full\]-\[(.+)\][ -]+\[\d+\/\d+\] .+ yEnc$/', $subject, $match)) + return $match[1]; + //[3488] [#alt.binaries.games.wii@efnet] [Blades.Of.Steel.USA.VC.Wii-DiPLODOCUS] [0/8] 3488.nzb (1/1) (1/1) yEnc + else if (preg_match('/^\[\d+\] \[#alt\.binaries\.games\.wii@efnet\] \[(.+)\] \[\d+\/\d+\].+yEnc$/', $subject, $match)) + return $match[1]; + // [001/110] - "Little.League.World.Series.Double.Play.USA.WII-dumpTruck.par2" yEnc + else if (preg_match('/^<(.+)> \[\d+\/\d+\] - ".+" yEnc$/', $subject, $match)) + return $match[1]; else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } @@ -2139,6 +2215,23 @@ class nameCleaning //www.theplace4you.org - [066/104] - "1234 Star.Wars.The.Force.Unleashed.2.PAL.Wii.part065.rar" yEnc else if (preg_match('/^www\.theplace4you\.org.*"(.+?)(\.part\d*|\.rar)?(\.vol.+?"|\.[A-Za-z0-9]{2,4}").+?yEnc$/', $subject, $match)) return $match[1]; + //<>Super_Monkey_Ball_PAL_MULTi5_NGC_WORKING_iNTERNAL_For_Wii-SUNSHiNE>(01/35) "shine-gmbp.nfo" yEnc + else if (preg_match('/^<>(.+)>\(\d+\/\d+\) ".+" yEnc$/', $subject, $match)) + return $match[1]; + //(-= R-KNORLOADING POST =-: Super Paper MarioPAL FTD-NR: 874068 =- R-KNORLOADING -= ) [01/19] - "R-KNORLOADING POST super paper mario PAL.sfv" yEnc + else if (preg_match('/^\(-=\s+R-KNORLOADING POST\s+=-: (.+) FTD-NR: \d+\s+=-.+-= \) \[\d+\/\d+\] - ".+" yEnc$/', $subject, $match)) + return $match[1]; + //With Wii-Studio you can convert movie and music files easily so you can play it on Wii (2009) - "S.A.D.-Wii.Studio.v1.0.7.1127-incl.Patch.nfo" - (01/18) yEnc + else if (preg_match('/^.+"(.+)\.nfo" - \(\d+\/\d+\) yEnc$/', $subject, $match)) + return $match[1]; + else + return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); + } + else if ($groupName === "alt.binaries.wii.gamez") + { + //Wicked_Monster_Blast_USA_WII-ZRY - [1/105] - "Wicked_Monster_Blast_USA_WII-ZRY.par2" yEnc + if (preg_match('/^(\w.+) - \[\d+\/\d+\] - ".+" yEnc$/', $subject, $match)) + return $match[1]; else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } @@ -2184,7 +2277,7 @@ class nameCleaning else return array("cleansubject" => $this->releaseCleanerHelper($subject), "properlynamed" => false); } - + public function releaseCleanerHelper($subject) { $cleanerName = preg_replace('/(- )?yEnc$/', '', $subject); diff --git a/test/postprocess_pre.php b/test/postprocess_pre.php index e8f7f71df..81138ba23 100755 --- a/test/postprocess_pre.php +++ b/test/postprocess_pre.php @@ -13,5 +13,9 @@ if ($nntp->doConnect() === false) } $predb = new Predb (true); -$predb->combinePre($nntp); +$predb->updatePre(); +$predb->checkPre($nntp); +if ($titles > 0) { + echo $c->header('Fetched ' . $titles . ' new title(s) from predb sources.'); +} $nntp->doQuit(); diff --git a/test/prehash.php b/test/prehash.php index 01578699b..3318424ac 100755 --- a/test/prehash.php +++ b/test/prehash.php @@ -27,7 +27,7 @@ Class Predb // Retrieve pre info from predb sources and store them in the DB. // Returns the quantity of new titles retrieved. - public function combinePre($nntp) + public function updatePre() { $db = new DB(); $f = new Functions(); @@ -36,51 +36,77 @@ Class Predb if (strtotime($newestrel["adddate"]) < time()-600 || is_null($newestrel['adddate'])) { if ($this->echooutput) - echo "Retrieving titles from preDB sources.\n"; + { + echo $this->c->header("Retrieving titles from preDB sources."); + } $newwomble = $this->retrieveWomble(); if ($this->echooutput) - echo $newwomble." Retrieved from Womble.\n"; + { + echo $this->c->primary($newwomble . " \tRetrieved from Womble."); + } $newomgwtf = $this->retrieveOmgwtfnzbs(); if ($this->echooutput) - echo $newomgwtf." Retrieved from Omgwtfnzbs.\n"; + { + echo $this->c->primary($newomgwtf . " \tRetrieved from Omgwtfnzbs."); + } $newzenet = $this->retrieveZenet(); if ($this->echooutput) - echo $newzenet." Retrieved from Zenet.\n"; + { + echo $this->c->primary($newzenet . " \tRetrieved from Zenet."); + } $newprelist = $this->retrievePrelist(); if ($this->echooutput) - echo $newprelist." Retrieved from Prelist.\n"; + { + echo $this->c->primary($newprelist . " \tRetrieved from Prelist."); + } $neworly = $this->retrieveOrlydb(); if ($this->echooutput) - echo $neworly." Retrieved from Orlydb.\n"; + { + echo $this->c->primary($neworly . " \tRetrieved from Orlydb."); + } $newsrr = $this->retrieveSrr(); if ($this->echooutput) - echo $newsrr." Retrieved from Srrdb.\n"; + { + echo $this->c->primary($newsrr . " \tRetrieved from Srrdb."); + } $newpdme = $this->retrievePredbme(); if ($this->echooutput) - echo $newpdme." Retrieved from Predb.me.\n"; - $this->retrieveAllfilledMoovee(); + { + echo $this->c->primary($newpdme . " \tRetrieved from Predbme."); + } + $this->retrieveAllfilledMoovee(); $this->retrieveAllfilledTeevee(); $this->retrieveAllfilledErotica(); - $this->retrieveAllfilledForeign(); - $abgx = $this->retrieveAbgx(); + $this->retrieveAllfilledForeign(); + $abgx = $this->retrieveAbgx(); if ($this->echooutput) - echo $abgx." \tRetrieved from abgx.\n"; - $newnames = $newwomble+$newomgwtf+$newzenet+$newprelist+$neworly+$newsrr+$newpdme+$abgx; - if(count($newnames) > 0) + { + echo $this->c->primary($abgx . " \tRetrieved from abgx."); + } + $newnames = $newwomble + $newomgwtf + $newzenet + $newprelist + $neworly + $newsrr + $newpdme + $abgx; + if (count($newnames) > 0) + { $db->exec(sprintf("UPDATE prehash SET adddate = NOW() WHERE ID = %d", $newestrel["ID"])); - } - $matched = $this->matchPredb(); - if ($matched > 0 && $this->echooutput) - echo "\nMatched ".$matched." prehash titles to release search names.\n"; - else - echo "\nNo matches found.\n"; - $nfos = $this->matchNfo($nntp); - if ($nfos > 0 && $this->echooutput) - echo "\nAdded ".$nfos." missing NFOs from prehash sources.\n"; - else - echo "\nNo missing nfo matches found.Nothing added.\n"; + } + return $newnames; + } + } - return $newnames; + // Attempts to match predb to releases. + public function checkPre($nntp) + { + $matched = $this->matchPredb(); + if ($this->echooutput) + { + $count = ($matched > 0) ? $matched : 0; + echo $this->c->header('Matched ' . $count . ' predhash titles to release search names.'); + } + $nfos = $this->matchNfo($nntp); + if ($this->echooutput) + { + $count = ($nfos > 0) ? $nfos : 0; + echo $this->c->header('Added ' . $count . ' missing NFOs from prehash sources.'); + } } public function retrieveWomble() @@ -88,8 +114,9 @@ Class Predb $db = new DB(); $f = new Functions(); $newnames = $updated = 0; + $matches2 = $matches = $match = $m = ''; - $buffer = getUrl("http://www.newshost.co.za"); + $buffer = $this->fileContents('http://www.newshost.co.za'); if ($buffer !== false && strlen($buffer)) { if (preg_match_all('/.+?<\/tr>/s', $buffer, $matches)) @@ -149,8 +176,9 @@ Class Predb $db = new DB(); $f = new Functions(); $newnames = $updated = 0; + $matches2 = $matches = $match = $m = ''; - $buffer = getUrl("http://rss.omgwtfnzbs.org/rss-info.php"); + $buffer = $this->fileContents('http://rss.omgwtfnzbs.org/rss-info.php'); if ($buffer !== false && strlen($buffer)) { if (preg_match_all('/.+?<\/item>/s', $buffer, $matches)) @@ -196,8 +224,9 @@ Class Predb $db = new DB(); $f = new Functions(); $newnames = $updated = 0; + $matches2 = $matches = $match = $m = ''; - $buffer = getUrl("http://pre.zenet.org/live.php"); + $buffer = $this->fileContents('http://pre.zenet.org/live.php'); if ($buffer !== false && strlen($buffer)) { if (preg_match_all('/
((\s+\S+)?\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+(\S+\s+)?(\S+\s+)?(\S+\s+)?(\S+\s+)?(\S+\s+)?(\S+\s+)?(\S+\s+)?<\/div>\s+<\/div>)/s', $buffer, $matches)) @@ -243,8 +272,9 @@ Class Predb $db = new DB(); $f = new Functions(); $newnames = $updated = 0; + $matches2 = $matches = $match = $m = ''; - $buffer = getUrl("http://www.prelist.ws/"); + $buffer = $this->fileContents('http://www.prelist.ws/'); if ($buffer !== false && strlen($buffer)) { if (preg_match_all('/<\/small>/s', $buffer, $matches)) @@ -296,8 +326,9 @@ Class Predb $db = new DB(); $f = new Functions(); $newnames = $updated = 0; + $matches2 = $matches = $match = $m = ''; - $buffer = getUrl("http://www.orlydb.com/"); + $buffer = $this->fileContents('http://www.orlydb.com/'); if ($buffer !== false && strlen($buffer)) { if (preg_match('/
(.+)
/s', $buffer, $match)) @@ -350,7 +381,7 @@ Class Predb ); $context = stream_context_create($options); - $releases = @simplexml_load_string(@file_get_contents($url, false, $context)); + $releases = simplexml_load_string($this->fileContents($url, false, $context)); if ($releases !== false) { foreach ($releases->channel->item as $release) @@ -403,7 +434,7 @@ Class Predb $newnames = $updated = 0; $groups = new Groups(); $groupID = $functions->getIDByName('alt.binaries.moovee'); - $buffer = @file_get_contents('http://abmoovee.allfilled.com/reqs.php?fetch=posted&page=1'); + $buffer = $this->fileContents('http://abmoovee.allfilled.com/reqs.php?fetch=posted&page=1'); if ($buffer !== false && strlen($buffer)) { if (preg_match_all('//s', $buffer, $matches)) @@ -440,7 +471,7 @@ Class Predb $newnames = $updated = 0; $groups = new Groups(); $groupID = $functions->getIDByName('alt.binaries.teevee'); - $buffer = @file_get_contents('http://abteevee.allfilled.com/reqs.php?fetch=posted&page=1'); + $buffer = $this->fileContents('http://abteevee.allfilled.com/reqs.php?fetch=posted&page=1'); if ($buffer !== false && strlen($buffer)) { if (preg_match_all('//s', $buffer, $matches)) @@ -477,7 +508,7 @@ Class Predb $newnames = $updated = 0; $groups = new Groups(); $groupID = $functions->getIDByName('alt.binaries.erotica'); - $buffer = @file_get_contents('http://aberotica.allfilled.com/reqs.php?fetch=posted&page=1'); + $buffer = $this->fileContents('http://aberotica.allfilled.com/reqs.php?fetch=posted&page=1'); if ($buffer !== false && strlen($buffer)) { if (preg_match_all('//s', $buffer, $matches)) @@ -514,7 +545,7 @@ Class Predb $newnames = $updated = 0; $groups = new Groups(); $groupID = $functions->getIDByName('alt.binaries.mom'); - $buffer = @file_get_contents('http://abforeign.allfilled.com/reqs.php?fetch=posted&page=1'); + $buffer = $this->fileContents('http://abforeign.allfilled.com/reqs.php?fetch=posted&page=1'); if ($buffer !== false && strlen($buffer)) { if (preg_match_all('//s', $buffer, $matches)) @@ -564,7 +595,7 @@ Class Predb $arr = array('x360', 'abcp', 'abgw', 'abgwu', 'absp', 'abgn', 'spsv', 'n3ds', 'abgx', 'abg', 'x360'); foreach ($arr as &$value) { - $releases = @simplexml_load_string(@file_get_contents('http://www.abgx.net/rss/' . $value . '/posted.rss', false, $context)); + $releases = simplexml_load_string($this->fileContents('http://www.abgx.net/rss/' . $value . '/posted.rss', false, $context)); if ($releases !== false) { preg_match('/^Filled requests in #(\S+)/', $releases->channel->description, $groupname);