DEleted function in request and changed the way the controller uses it,
linter / quality (pull_request) Successful in 1m13s
tests / ci (8.4) (pull_request) Failing after 1m15s

This commit is contained in:
Eric Peters
2026-04-03 16:50:00 +02:00
parent 2c1a0cbff3
commit 1c355c20b4
27 changed files with 285 additions and 263 deletions
@@ -16,6 +16,7 @@ use App\Models\TicketType;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Arr;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\DB;
use Inertia\Inertia;
@@ -54,10 +55,15 @@ class ProjectTicketMetadataSettingsController extends Controller
$this->abortUnlessCanManage($request, $project);
$this->initializeProjectTicketMetadata->handle($project);
$ticketType = DB::transaction(function () use ($project, $request): TicketType {
$validated = $request->validated();
$name = Arr::get($validated, 'name');
$position = Arr::get($validated, 'position');
$ticketType = DB::transaction(function () use ($project, $name, $position): TicketType {
$ticketType = $project->ticketTypes()->create([
'is_builtin' => false,
'name' => $request->validated('name'),
'name' => $name,
'position' => $project->ticketTypes()->count() + 1,
'system_key' => null,
]);
@@ -65,7 +71,7 @@ class ProjectTicketMetadataSettingsController extends Controller
$this->reorderModels(
$project->ticketTypes()->whereKeyNot($ticketType->id)->get()->values(),
$ticketType,
$request->position() ?? $project->ticketTypes()->count(),
$position ?? $project->ticketTypes()->count(),
);
return $ticketType;
@@ -83,15 +89,19 @@ class ProjectTicketMetadataSettingsController extends Controller
$this->abortUnlessCanManage($request, $project);
$this->initializeProjectTicketMetadata->handle($project);
DB::transaction(function () use ($project, $request, $ticketType): void {
$validated = $request->validated();
$name = Arr::get($validated, 'name');
$position = Arr::get($validated, 'position');
DB::transaction(function () use ($project, $name, $position, $ticketType): void {
$ticketType->update([
'name' => $request->validated('name'),
'name' => $name,
]);
$this->reorderModels(
$project->ticketTypes()->whereKeyNot($ticketType->id)->get()->values(),
$ticketType,
$request->position(),
$position,
);
});
@@ -121,16 +131,20 @@ class ProjectTicketMetadataSettingsController extends Controller
{
$this->abortUnlessCanManage($request, $project);
$ticketPriority = DB::transaction(function () use ($project, $request): TicketPriority {
$validated = $request->validated();
$name = Arr::get($validated, 'name');
$position = Arr::get($validated, 'position');
$ticketPriority = DB::transaction(function () use ($project, $name, $position): TicketPriority {
$ticketPriority = $project->ticketPriorities()->create([
'name' => $request->validated('name'),
'name' => $name,
'position' => $project->ticketPriorities()->count() + 1,
]);
$this->reorderModels(
$project->ticketPriorities()->whereKeyNot($ticketPriority->id)->get()->values(),
$ticketPriority,
$request->position() ?? $project->ticketPriorities()->count(),
$position ?? $project->ticketPriorities()->count(),
);
return $ticketPriority;
@@ -147,15 +161,19 @@ class ProjectTicketMetadataSettingsController extends Controller
): RedirectResponse {
$this->abortUnlessCanManage($request, $project);
DB::transaction(function () use ($project, $request, $ticketPriority): void {
$validated = $request->validated();
$name = Arr::get($validated, 'name');
$position = Arr::get($validated, 'position');
DB::transaction(function () use ($project, $name, $position, $ticketPriority): void {
$ticketPriority->update([
'name' => $request->validated('name'),
'name' => $name,
]);
$this->reorderModels(
$project->ticketPriorities()->whereKeyNot($ticketPriority->id)->get()->values(),
$ticketPriority,
$request->position(),
$position,
);
});
@@ -188,17 +206,22 @@ class ProjectTicketMetadataSettingsController extends Controller
): RedirectResponse {
$this->abortUnlessCanManage($request, $project);
$ticketFieldDefinition = DB::transaction(function () use ($project, $request): TicketFieldDefinition {
$validated = $request->validated();
$label = Arr::get($validated, 'label');
$fieldType = Arr::get($validated, 'field_type');
$position = Arr::get($validated, 'position');
$ticketFieldDefinition = DB::transaction(function () use ($project, $fieldType, $label): TicketFieldDefinition {
$ticketFieldDefinition = $project->ticketFieldDefinitions()->create([
'field_type' => $request->validated('field_type'),
'label' => $request->validated('label'),
'field_type' => $fieldType,
'label' => $label,
'position' => $project->ticketFieldDefinitions()->count() + 1,
]);
$this->reorderModels(
$project->ticketFieldDefinitions()->whereKeyNot($ticketFieldDefinition->id)->get()->values(),
$ticketFieldDefinition,
$request->position() ?? $project->ticketFieldDefinitions()->count(),
$position ?? $project->ticketFieldDefinitions()->count(),
);
return $ticketFieldDefinition;
@@ -215,16 +238,21 @@ class ProjectTicketMetadataSettingsController extends Controller
): RedirectResponse {
$this->abortUnlessCanManage($request, $project);
DB::transaction(function () use ($project, $request, $ticketFieldDefinition): void {
$validated = $request->validated();
$label = Arr::get($validated, 'label');
$fieldType = Arr::get($validated, 'field_type');
$position = Arr::get($validated, 'position');
DB::transaction(function () use ($project, $fieldType, $label, $ticketFieldDefinition, $position): void {
$ticketFieldDefinition->update([
'field_type' => $request->validated('field_type'),
'label' => $request->validated('label'),
'field_type' => $fieldType,
'label' => $label,
]);
$this->reorderModels(
$project->ticketFieldDefinitions()->whereKeyNot($ticketFieldDefinition->id)->get()->values(),
$ticketFieldDefinition,
$request->position(),
$position,
);
});
@@ -253,18 +281,22 @@ class ProjectTicketMetadataSettingsController extends Controller
public function storeLinkType(StoreProjectNamedSettingRequest $request, Project $project): RedirectResponse
{
$validated = $request->validated();
$name = Arr::get($validated, 'name');
$position = Arr::get($validated, 'position');
$this->abortUnlessCanManage($request, $project);
$ticketLinkType = DB::transaction(function () use ($project, $request): TicketLinkType {
$ticketLinkType = DB::transaction(function () use ($project, $position, $name): TicketLinkType {
$ticketLinkType = $project->ticketLinkTypes()->create([
'label' => $request->validated('name'),
'label' => $name,
'position' => $project->ticketLinkTypes()->count() + 1,
]);
$this->reorderModels(
$project->ticketLinkTypes()->whereKeyNot($ticketLinkType->id)->get()->values(),
$ticketLinkType,
$request->position() ?? $project->ticketLinkTypes()->count(),
$position ?? $project->ticketLinkTypes()->count(),
);
return $ticketLinkType;
@@ -279,17 +311,22 @@ class ProjectTicketMetadataSettingsController extends Controller
Project $project,
TicketLinkType $ticketLinkType,
): RedirectResponse {
$validated = $request->validated();
$name = Arr::get($validated, 'name');
$position = Arr::get($validated, 'position');
$this->abortUnlessCanManage($request, $project);
DB::transaction(function () use ($project, $request, $ticketLinkType): void {
DB::transaction(function () use ($project, $name, $position, $ticketLinkType): void {
$ticketLinkType->update([
'label' => $request->validated('name'),
'label' => $name,
]);
$this->reorderModels(
$project->ticketLinkTypes()->whereKeyNot($ticketLinkType->id)->get()->values(),
$ticketLinkType,
$request->position(),
$position,
);
});