Preview: AccessControlController.php
Size: 2.85 KB
/home/getspomw/royalsquad.us/app/Http/Controllers/AccessControlController.php
<?php
namespace App\Http\Controllers;
use App\Models\AccessControl;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class AccessControlController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index()
{
if (Auth::user()->role == 'super_admin') {
$accessControls = AccessControl::latest()->paginate(10);
return view('admin.access_controls.index', compact('accessControls'));
} else {
return redirect()->back()->with('error', 'Only Access super admin');
}
}
/**
* Show the form for creating a new resource.
*/
public function create()
{
if (Auth::user()->role == 'super_admin') {
return view('admin.access_controls.create');
} else {
return redirect()->back()->with('error', 'Only Access super admin');
}
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request)
{
$request->validate([
'type' => 'required|in:ip,country',
'value' => 'required|string|max:255',
'is_allowed' => 'required|boolean',
]);
AccessControl::create($request->all());
return redirect()->route('access-controls.index')
->with('success', 'Access rule created successfully.');
}
public function edit(string $id)
{
if (Auth::user()->role == 'super_admin') {
$accessControl = AccessControl::findOrFail($id);
return view('admin.access_controls.edit', compact('accessControl'));
} else {
return redirect()->back()->with('error', 'Only Access super admin');
}
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request, string $id)
{
$request->validate([
'type' => 'required|in:ip,country',
'value' => 'required|string|max:255',
'is_allowed' => 'required|boolean',
]);
$accessControl = AccessControl::findOrFail($id);
$accessControl->update($request->all());
return redirect()->route('access-controls.index')
->with('success', 'Access rule updated successfully.');
}
/**
* Remove the specified resource from storage.
*/
public function destroy(string $id)
{
if (Auth::user()->role == 'super_admin') {
$accessControl = AccessControl::findOrFail($id);
$accessControl = AccessControl::findOrFail($id);
$accessControl->delete();
return redirect()->route('access-controls.index')
->with('success', 'Access rule deleted successfully.');
} else {
return redirect()->back()->with('error', 'Only Access super admin');
}
}
}
Directory Contents
Dirs: 0 × Files: 12