mirror of
https://github.com/OPSnet/Gazelle.git
synced 2026-01-16 18:04:34 -05:00
73 lines
3.0 KiB
PHP
73 lines
3.0 KiB
PHP
<?php
|
|
/** @phpstan-var \Gazelle\User $Viewer */
|
|
/** @phpstan-var \Twig\Environment $Twig */
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Gazelle;
|
|
|
|
$request = new Manager\Request()->findById((int)($_GET['id'] ?? 0));
|
|
if (is_null($request)) {
|
|
Error404::error();
|
|
}
|
|
if (!$request->canEdit($Viewer)) {
|
|
Error403::error("You do not have the necessary privileges to edit requests.");
|
|
}
|
|
$requestId = $request->id();
|
|
$ownRequest = $request->userId() == $Viewer->id();
|
|
// phpcs:disable Generic.CodeAnalysis.EmptyStatement.DetectedIf
|
|
if (isset($returnEdit)) {
|
|
// phpcs:enable Generic.CodeAnalysis.EmptyStatement.DetectedIf
|
|
// if we are coming back from an edit, these were already initialized in take_new_edit
|
|
/** @var string $categoryName */
|
|
/** @var array $artistRole */
|
|
/** @var Request\Encoding $encoding */
|
|
/** @var Request\Format $format */
|
|
/** @var Request\Media $media */
|
|
/** @var Request\LogCue $logCue */
|
|
} else {
|
|
$categoryId = $request->categoryId();
|
|
$categoryName = $request->categoryName();
|
|
|
|
$title = $request->title();
|
|
$description = $request->description();
|
|
$year = $request->year();
|
|
$image = $request->image();
|
|
$tags = implode(', ', $request->tagNameList());
|
|
$releaseType = $request->releaseType();
|
|
$catalogueNumber = $request->catalogueNumber();
|
|
$oclc = $request->oclc();
|
|
|
|
$encoding = $request->encoding();
|
|
$format = $request->format();
|
|
$media = $request->media();
|
|
$logCue = $request->logCue();
|
|
$artistRole = $categoryName == 'Music' ? $request->artistRole()->roleNameList() : [];
|
|
}
|
|
|
|
echo $Twig->render('request/request.twig', [
|
|
'action' => 'edit',
|
|
'error' => $error ?? null,
|
|
'request' => $request,
|
|
'category_name' => $categoryName,
|
|
'artist_role' => $artistRole,
|
|
'tgroup' => new Manager\TGroup()->findById((int)($groupId ?? $request->tgroupId())),
|
|
'release_list' => new ReleaseType()->list(),
|
|
'tag_list' => new Manager\Tag()->genreList(),
|
|
'catalogue_number' => $catalogueNumber ?? $request->catalogueNumber(),
|
|
'category_id' => $categoryId ?? $request->categoryId(),
|
|
'description' => new Util\Textarea('description', $description ?? $request->description(), 70, 7),
|
|
'encoding' => $encoding,
|
|
'format' => $format,
|
|
'log_cue' => $logCue,
|
|
'media' => $media,
|
|
'oclc' => $oclc ?? $request->oclc(),
|
|
'image' => $image ?? $request->image(),
|
|
'record_label' => $recordLabel ?? $request->recordLabel(),
|
|
'release_type' => $releaseType ?? $request->releaseType(),
|
|
'tags' => $tags ?? implode(', ', $request->tagNameList()),
|
|
'title' => $title ?? $request->title(),
|
|
'year' => $year ?? $request->year(),
|
|
'viewer' => $Viewer,
|
|
]);
|