예제 #1
0
/**
 * Create / process releases for a groupid.
 *
 * @param \Releases $releases
 * @param int             $groupID
 */
function processReleases($pdo, $releases, $groupID)
{
    $pdo = new Settings();
    $releaseCreationLimit = $pdo->getSetting('maxnzbsprocessed') != '' ? (int) $pdo->getSetting('maxnzbsprocessed') : 1000;
    $releases->checkRegexesUptoDate($pdo->getSetting('latestregexurl'), $pdo->getSetting('latestregexrevision'), $pdo->getSetting('newznabID'));
    $releases->applyRegex($groupID);
    $releases->processIncompleteBinaries($groupID);
    do {
        $releasesCount = $releases->createReleases($groupID);
        // This loops as long as the number of releases or nzbs added was >= the limit (meaning there are more waiting to be created)
    } while ($releasesCount['added'] + $releasesCount['dupes'] >= $releaseCreationLimit);
    $releases->deleteBinaries($groupID);
}