diff --git a/app/Http/Controllers/RoleController.php b/app/Http/Controllers/RoleController.php
index f65a9f7..348a95e 100644
--- a/app/Http/Controllers/RoleController.php
+++ b/app/Http/Controllers/RoleController.php
@@ -3,6 +3,8 @@
namespace App\Http\Controllers;
use App\Models\Role;
+use Illuminate\Http\RedirectResponse;
+use Illuminate\Http\Request;
use Illuminate\View\View;
class RoleController extends Controller
@@ -13,4 +15,20 @@ class RoleController extends Controller
return view('roles.index', compact('roles'));
}
+
+ public function create(): View
+ {
+ return view('roles.create');
+ }
+
+ public function store(Request $request): RedirectResponse
+ {
+ $validated = $request->validate([
+ 'name' => ['required', 'string', 'max:255', 'unique:roles,name'],
+ ]);
+
+ Role::create($validated);
+
+ return redirect()->route('roles.index')->with('success', __('Role created successfully.'));
+ }
}
diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php
new file mode 100644
index 0000000..3201ed4
--- /dev/null
+++ b/app/Http/Controllers/UserController.php
@@ -0,0 +1,16 @@
+paginate(10);
+
+ return view('users.index', compact('users'));
+ }
+}
diff --git a/resources/views/roles/create.blade.php b/resources/views/roles/create.blade.php
new file mode 100644
index 0000000..a0fe162
--- /dev/null
+++ b/resources/views/roles/create.blade.php
@@ -0,0 +1,32 @@
+
+ {{ __('New Role') }}
+
+
| + {{ __('Name') }} + | ++ {{ __('Email') }} + | ++ {{ __('Joined') }} + | +
|---|---|---|
| + {{ $user->name }} + | ++ {{ $user->email }} + | ++ {{ $user->created_at->format('M j, Y') }} + | +
{{ __('No users found.') }}
+ @endif + + @if ($users->hasPages()) +