diff --git a/app/Http/Controllers/Admin/AdminAjaxController.php b/app/Http/Controllers/Admin/AdminAjaxController.php index ef26c6ead..379250461 100644 --- a/app/Http/Controllers/Admin/AdminAjaxController.php +++ b/app/Http/Controllers/Admin/AdminAjaxController.php @@ -5,7 +5,7 @@ namespace App\Http\Controllers\Admin; use App\Http\Controllers\BasePageController; use App\Models\UsenetGroup; use App\Services\BlacklistService; -use Blacklight\Regexes; +use App\Services\RegexService; use Illuminate\Http\Request; class AdminAjaxController extends BasePageController @@ -29,19 +29,19 @@ class AdminAjaxController extends BasePageController case 'category_regex_delete': $id = (int) $request->input('row_id'); - (new Regexes(['Settings' => $this->settings, 'Table_Name' => 'category_regexes']))->deleteRegex($id); + (new RegexService('category_regexes'))->deleteRegex($id); echo "Regex $id deleted."; break; case 'collection_regex_delete': $id = (int) $request->input('row_id'); - (new Regexes(['Settings' => $this->settings, 'Table_Name' => 'collection_regexes']))->deleteRegex($id); + (new RegexService('collection_regexes'))->deleteRegex($id); echo "Regex $id deleted."; break; case 'release_naming_regex_delete': $id = (int) $request->input('row_id'); - (new Regexes(['Settings' => $this->settings, 'Table_Name' => 'release_naming_regexes']))->deleteRegex($id); + (new RegexService('release_naming_regexes'))->deleteRegex($id); echo "Regex $id deleted."; break; diff --git a/app/Http/Controllers/Admin/AdminCategoryRegexesController.php b/app/Http/Controllers/Admin/AdminCategoryRegexesController.php index d2570738e..c91d13fba 100644 --- a/app/Http/Controllers/Admin/AdminCategoryRegexesController.php +++ b/app/Http/Controllers/Admin/AdminCategoryRegexesController.php @@ -4,7 +4,7 @@ namespace App\Http\Controllers\Admin; use App\Http\Controllers\BasePageController; use App\Models\Category; -use Blacklight\Regexes; +use App\Services\RegexService; use Illuminate\Http\Request; class AdminCategoryRegexesController extends BasePageController @@ -15,7 +15,7 @@ class AdminCategoryRegexesController extends BasePageController public function index(Request $request) { $this->setAdminPrefs(); - $regexes = new Regexes(['Settings' => null, 'Table_Name' => 'category_regexes']); + $regexes = new RegexService('category_regexes'); $meta_title = $title = 'Category Regex List'; @@ -40,7 +40,7 @@ class AdminCategoryRegexesController extends BasePageController public function edit(Request $request) { $this->setAdminPrefs(); - $regexes = new Regexes(['Settings' => null, 'Table_Name' => 'category_regexes']); + $regexes = new RegexService('category_regexes'); // Set the current action. $action = $request->input('action') ?? 'view'; diff --git a/app/Http/Controllers/Admin/AdminCollectionRegexesController.php b/app/Http/Controllers/Admin/AdminCollectionRegexesController.php index 99d9e3e23..a6add816b 100644 --- a/app/Http/Controllers/Admin/AdminCollectionRegexesController.php +++ b/app/Http/Controllers/Admin/AdminCollectionRegexesController.php @@ -4,7 +4,7 @@ namespace App\Http\Controllers\Admin; use App\Http\Controllers\BasePageController; use App\Models\Category; -use Blacklight\Regexes; +use App\Services\RegexService; use Illuminate\Http\Request; class AdminCollectionRegexesController extends BasePageController @@ -40,7 +40,7 @@ class AdminCollectionRegexesController extends BasePageController public function edit(Request $request) { $this->setAdminPrefs(); - $regexes = new Regexes(['Settings' => null, 'Table_Name' => 'collection_regexes']); + $regexes = new RegexService('collection_regexes'); $error = ''; $regex = ['id' => '', 'regex' => '', 'description' => '', 'group_regex' => '', 'ordinal' => '', 'status' => 1]; $meta_title = $title = 'Collections Regex'; @@ -112,7 +112,7 @@ class AdminCollectionRegexesController extends BasePageController $data = null; if ($group && $regex) { - $data = (new Regexes(['Settings' => null, 'Table_Name' => 'collection_regexes']))->testCollectionRegex($group, $regex, $limit); + $data = (new RegexService('collection_regexes'))->testCollectionRegex($group, $regex, $limit); } $this->viewData = array_merge($this->viewData, [ diff --git a/app/Http/Controllers/Admin/AdminReleaseNamingRegexesController.php b/app/Http/Controllers/Admin/AdminReleaseNamingRegexesController.php index 0db2373c2..f95de5354 100644 --- a/app/Http/Controllers/Admin/AdminReleaseNamingRegexesController.php +++ b/app/Http/Controllers/Admin/AdminReleaseNamingRegexesController.php @@ -4,7 +4,7 @@ namespace App\Http\Controllers\Admin; use App\Http\Controllers\BasePageController; use App\Models\Category; -use Blacklight\Regexes; +use App\Services\RegexService; use Illuminate\Http\Request; class AdminReleaseNamingRegexesController extends BasePageController @@ -43,7 +43,7 @@ class AdminReleaseNamingRegexesController extends BasePageController public function edit(Request $request) { $this->setAdminPrefs(); - $regexes = new Regexes(['Settings' => null, 'Table_Name' => 'release_naming_regexes']); + $regexes = new RegexService('release_naming_regexes'); // Set the current action. $action = $request->input('action') ?? 'view'; @@ -120,7 +120,7 @@ class AdminReleaseNamingRegexesController extends BasePageController $data = null; if ($group && $regex) { - $data = (new Regexes(['Settings' => null, 'Table_Name' => 'release_naming_regexes']))->testReleaseNamingRegex($group, $regex, $showLimit, $queryLimit); + $data = (new RegexService('release_naming_regexes'))->testReleaseNamingRegex($group, $regex, $showLimit, $queryLimit); } $this->viewData = array_merge($this->viewData, [ diff --git a/app/Services/CollectionsCleaningService.php b/app/Services/CollectionsCleaningService.php index a68e4d542..cf331795c 100644 --- a/app/Services/CollectionsCleaningService.php +++ b/app/Services/CollectionsCleaningService.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace App\Services; -use Blacklight\Regexes; /** * Cleans names for collections/imports/namefixer. @@ -63,7 +62,7 @@ class CollectionsCleaningService /** * Regex handler for database-stored patterns */ - protected Regexes $_regexes; + protected RegexService $_regexes; /** * CollectionsCleaningService constructor. @@ -79,7 +78,7 @@ class CollectionsCleaningService $this->e1 = self::REGEX_FILE_EXTENSIONS.self::REGEX_END; $this->e2 = self::REGEX_FILE_EXTENSIONS.self::REGEX_SUBJECT_SIZE.self::REGEX_END; - $this->_regexes = new Regexes(['Table_Name' => 'collection_regexes']); + $this->_regexes = new RegexService('collection_regexes'); } /** diff --git a/Blacklight/Regexes.php b/app/Services/RegexService.php old mode 100755 new mode 100644 similarity index 88% rename from Blacklight/Regexes.php rename to app/Services/RegexService.php index b3f528887..df70e3449 --- a/Blacklight/Regexes.php +++ b/app/Services/RegexService.php @@ -1,6 +1,8 @@ null, - 'Table_Name' => '', - ]; - $options += $defaults; - - $this->tableName = $options['Table_Name']; + $this->tableName = $tableName; } /** @@ -79,8 +77,8 @@ class Regexes return (bool) DB::update( sprintf( 'UPDATE %s - SET group_regex = %s, regex = %s, status = %d, description = %s, ordinal = %d %s - WHERE id = %d', + SET group_regex = %s, regex = %s, status = %d, description = %s, ordinal = %d %s + WHERE id = %d', $this->tableName, trim(escapeString($data['group_regex'])), trim(escapeString($data['regex'])), @@ -102,6 +100,8 @@ class Regexes } /** + * Get paginated regex results. + * * @return mixed */ public function getRegex(string $group_regex = '') @@ -144,7 +144,6 @@ class Regexes /** * Delete a regex using its id. * - * * @throws \Throwable */ public function deleteRegex(int $id): void @@ -159,7 +158,6 @@ class Regexes * * Requires table per group to be on. * - * * @throws \Exception */ public function testCollectionRegex(string $groupName, string $regex, int $limit): array @@ -172,11 +170,10 @@ class Regexes $rows = DB::select( 'SELECT - b.name, b.totalparts, b.currentparts, HEX(b.binaryhash) AS binaryhash, - c.fromname, c.collectionhash - FROM binaries b - INNER JOIN collections c ON c.id = b.collections_id' - + b.name, b.totalparts, b.currentparts, HEX(b.binaryhash) AS binaryhash, + c.fromname, c.collectionhash + FROM binaries b + INNER JOIN collections c ON c.id = b.collections_id' ); $data = []; @@ -221,6 +218,8 @@ class Regexes } /** + * Test release naming regex against releases. + * * @throws \Exception */ public function testReleaseNamingRegex($groupName, $regex, $displayLimit, $queryLimit): array @@ -262,7 +261,6 @@ class Regexes /** * This will try to find regex in the DB for a group and a usenet subject, attempt to match them and return the matches. * - * * @throws \Exception */ public function tryRegex(string $subject, string $groupName): string @@ -319,7 +317,6 @@ class Regexes * * Requires at least 1 named captured group. * - * * @throws \Exception */ protected function _matchRegex(string $regex, string $subject): string @@ -339,7 +336,7 @@ class Regexes $returnString .= $value; // Concatenate the string to return. break; case 'category_regexes': - $returnString = $this->_categoriesID; // Regex matched, so return the category ID. + $returnString = (string) $this->_categoriesID; // Regex matched, so return the category ID. break 2; } } @@ -356,3 +353,4 @@ class Regexes return $group_regex ? ('WHERE group_regex LIKE '.escapeString('%'.$group_regex.'%')) : ''; } } + diff --git a/app/Services/ReleaseCleaningService.php b/app/Services/ReleaseCleaningService.php index 0a751ea95..c5f1165ec 100644 --- a/app/Services/ReleaseCleaningService.php +++ b/app/Services/ReleaseCleaningService.php @@ -5,7 +5,6 @@ declare(strict_types=1); namespace App\Services; use App\Models\Predb; -use Blacklight\Regexes; /** * Cleans names for releases/imports/namefixer. @@ -44,7 +43,7 @@ class ReleaseCleaningService public string $subject = ''; - protected Regexes $_regexes; + protected RegexService $_regexes; /** * ReleaseCleaningService constructor. @@ -57,7 +56,7 @@ class ReleaseCleaningService $this->e0 = CollectionsCleaningService::REGEX_FILE_EXTENSIONS; $this->e1 = CollectionsCleaningService::REGEX_FILE_EXTENSIONS.CollectionsCleaningService::REGEX_END; $this->e2 = CollectionsCleaningService::REGEX_FILE_EXTENSIONS.CollectionsCleaningService::REGEX_SUBJECT_SIZE.CollectionsCleaningService::REGEX_END; - $this->_regexes = new Regexes(['Settings' => null, 'Table_Name' => 'release_naming_regexes']); + $this->_regexes = new RegexService('release_naming_regexes'); } /** diff --git a/composer.json b/composer.json index 16cc73c03..3016a3bb9 100644 --- a/composer.json +++ b/composer.json @@ -141,7 +141,6 @@ "autoload": { "psr-4": { "App\\": "app/", - "Blacklight\\": "Blacklight/", "Database\\Factories\\": "database/factories/", "Database\\Seeders\\": "database/seeders/" },