Esempio n. 1
0
/**
 * Create / process releases for a groupID.
 *
 * @param Settings        $pdo
 * @param ProcessReleases $releases
 * @param int             $groupID
 */
function processReleases($pdo, $releases, $groupID)
{
    $releaseCreationLimit = $pdo->getSetting('maxnzbsprocessed') != '' ? (int) $pdo->getSetting('maxnzbsprocessed') : 1000;
    $releases->processIncompleteCollections($groupID);
    $releases->processCollectionSizes($groupID);
    $releases->deleteUnwantedCollections($groupID);
    do {
        $releasesCount = $releases->createReleases($groupID);
        $nzbFilesAdded = $releases->createNZBs($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 || $nzbFilesAdded >= $releaseCreationLimit);
    $releases->deleteCollections($groupID);
}