where('name', '=', $argv[1])->select(['id'])->first(); if ($group === null) { exit('No group with name '.$argv[1].' found in the database.'); } $releasesQuery = Release::query()->where('groups_id', $group->id); if ((int) $argv[4] !== 0 && is_numeric($argv[4])) { $releasesQuery->where('categories_id', '=', $argv[4]); } $releasesQuery->select(['name', 'searchname', 'fromname', 'size', 'id', 'postdate'])->orderBy('postdate')->limit($argv[2]); $releases = $releasesQuery->get(); if (\count($releases) === 0) { exit('No releases found in your database for group '.$argv[1].PHP_EOL); } $releaseCleaner = new ReleaseCleaning(); $sphinx = new SphinxSearch(); foreach ($releases as $release) { echo '.'; $newName = $releaseCleaner->releaseCleaner($release->name, $release->fromname, $argv[1]); if (is_array($newName)) { $newName = $newName['cleansubject']; } if ($newName !== $release['searchname']) { echo 'Old name: '.$release->searchname.PHP_EOL; echo 'New name: '.$newName.PHP_EOL.PHP_EOL; if ($rename === true) { Release::query()->where('id', '=', $release->id)->update(['searchname' => $newName]); $sphinx->updateRelease($release->id); } } }