Upload beautify

This commit is contained in:
2026-02-14 15:14:12 +01:00
parent e129618910
commit 79192345e3
249 changed files with 24436 additions and 1021 deletions

View File

@@ -0,0 +1,37 @@
<?php
declare(strict_types=1);
namespace App\Uploads\Services;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Str;
final class SlugService
{
public function makeSlug(string $title): string
{
$base = Str::slug($title);
if ($base === '') {
$base = 'artwork';
}
$candidate = $base;
$suffix = 2;
while ($this->publishedSlugExists($candidate)) {
$candidate = $base . '-' . $suffix;
$suffix++;
}
return $candidate;
}
private function publishedSlugExists(string $slug): bool
{
return DB::table('uploads')
->where('status', 'published')
->where('slug', $slug)
->exists();
}
}