Improve creator studio browsing and versioning

This commit is contained in:
2026-04-16 15:01:15 +02:00
parent 56eaa3bcbf
commit cdd42a0186
12 changed files with 728 additions and 140 deletions

View File

@@ -9,6 +9,7 @@ use App\Models\Artwork;
use App\Models\Collection;
use App\Models\NovaCard;
use App\Models\Story;
use App\Services\Artworks\ArtworkPublicationService;
use App\Services\CollectionLifecycleService;
use App\Services\NovaCards\NovaCardPublishService;
use App\Services\StoryPublicationService;
@@ -20,6 +21,7 @@ final class StudioScheduleApiController extends Controller
{
public function __construct(
private readonly CreatorStudioContentService $content,
private readonly ArtworkPublicationService $artworkPublication,
private readonly NovaCardPublishService $cards,
private readonly CollectionLifecycleService $collections,
private readonly StoryPublicationService $stories,
@@ -68,13 +70,7 @@ final class StudioScheduleApiController extends Controller
->where('user_id', $userId)
->findOrFail($id);
$artwork->forceFill([
'artwork_status' => 'published',
'publish_at' => null,
'artwork_timezone' => null,
'published_at' => now(),
'is_public' => $artwork->visibility !== Artwork::VISIBILITY_PRIVATE,
])->save();
$this->artworkPublication->publishNow($artwork);
}
private function unscheduleArtwork(int $userId, int $id): void