Merge branch 'main' into codex/0.1-kanban-foundation/05-ticket-types-priorities-and-custom-fields
This commit is contained in:
@@ -9,6 +9,7 @@ use App\Models\BoardColumn;
|
||||
use App\Models\Project;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Collection;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Inertia\Inertia;
|
||||
@@ -42,12 +43,13 @@ class ProjectBoardSettingsController extends Controller
|
||||
$this->projectPermissionService->userCanManageProjectAccess($request->user(), $project),
|
||||
403,
|
||||
);
|
||||
$validated = $request->validated();
|
||||
|
||||
$desiredPosition = $request->position() ?? $project->boardColumns()->count() + 1;
|
||||
$desiredPosition = Arr::get($validated, 'position') ?? $project->boardColumns()->count() + 1;
|
||||
|
||||
$boardColumn = DB::transaction(function () use ($project, $request, $desiredPosition): BoardColumn {
|
||||
$boardColumn = DB::transaction(function () use ($project, $validated, $desiredPosition): BoardColumn {
|
||||
$boardColumn = $project->boardColumns()->create([
|
||||
'name' => $request->validated('name'),
|
||||
'name' => Arr::get($validated, 'name'),
|
||||
'position' => $project->boardColumns()->count() + 1,
|
||||
]);
|
||||
|
||||
@@ -69,13 +71,14 @@ class ProjectBoardSettingsController extends Controller
|
||||
$this->projectPermissionService->userCanManageProjectAccess($request->user(), $project),
|
||||
403,
|
||||
);
|
||||
$validated = $request->validated();
|
||||
|
||||
DB::transaction(function () use ($boardColumn, $project, $request): void {
|
||||
DB::transaction(function () use ($boardColumn, $project, $validated): void {
|
||||
$boardColumn->update([
|
||||
'name' => $request->validated('name'),
|
||||
'name' => Arr::get($validated, 'name'),
|
||||
]);
|
||||
|
||||
$this->reorderColumns($project, $boardColumn, $request->position());
|
||||
$this->reorderColumns($project, $boardColumn, Arr::get($validated, 'position'));
|
||||
});
|
||||
|
||||
return to_route('projects.settings.board', $project)
|
||||
|
||||
@@ -12,7 +12,7 @@ class UpdateUserAdminStatusRequest extends FormRequest
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return $this->user()?->is_admin === true;
|
||||
return $this->user()?->can('access-admin') ?? false;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -27,15 +27,4 @@ class StoreBoardColumnRequest extends FormRequest
|
||||
'position' => ['nullable', 'integer', 'min:1'],
|
||||
];
|
||||
}
|
||||
|
||||
public function position(): ?int
|
||||
{
|
||||
$position = $this->validated('position');
|
||||
|
||||
if ($position === null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return (int) $position;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,9 +27,4 @@ class UpdateBoardColumnRequest extends FormRequest
|
||||
'position' => ['required', 'integer', 'min:1'],
|
||||
];
|
||||
}
|
||||
|
||||
public function position(): int
|
||||
{
|
||||
return (int) $this->validated('position');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user