Add project general settings danger zone
This commit is contained in:
@@ -12,6 +12,7 @@ use App\Models\User;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Validation\Rule;
|
||||
use Inertia\Inertia;
|
||||
use Inertia\Response;
|
||||
|
||||
@@ -44,6 +45,7 @@ class ProjectController extends Controller
|
||||
return Inertia::render('projects/Index', [
|
||||
'projects' => $projectQuery
|
||||
->get(),
|
||||
'status' => session('status'),
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -76,6 +78,14 @@ class ProjectController extends Controller
|
||||
]);
|
||||
}
|
||||
|
||||
public function general(Request $request, Project $project): Response
|
||||
{
|
||||
return Inertia::render('projects/settings/General', [
|
||||
'project' => $project,
|
||||
'status' => session('status'),
|
||||
]);
|
||||
}
|
||||
|
||||
public function access(Request $request, Project $project): Response
|
||||
{
|
||||
$user = $request->user();
|
||||
@@ -146,4 +156,24 @@ class ProjectController extends Controller
|
||||
return to_route('projects.access', $project)
|
||||
->with('status', "{$team->name} permissions were updated.");
|
||||
}
|
||||
|
||||
public function destroy(Request $request, Project $project): RedirectResponse
|
||||
{
|
||||
$request->validate([
|
||||
'confirmation_key' => [
|
||||
'required',
|
||||
'string',
|
||||
Rule::in([$project->key]),
|
||||
],
|
||||
], [
|
||||
'confirmation_key.in' => 'Enter the exact project key to confirm deletion.',
|
||||
]);
|
||||
|
||||
$projectName = $project->name;
|
||||
|
||||
$project->delete();
|
||||
|
||||
return to_route('projects.index')
|
||||
->with('status', "Project {$projectName} was deleted.");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user