diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php
index d843b1d..c35127c 100644
--- a/app/Http/Controllers/UserController.php
+++ b/app/Http/Controllers/UserController.php
@@ -3,6 +3,10 @@
namespace App\Http\Controllers;
use Illuminate\Http\Request;
+use App\Models\User;
+use Illuminate\Support\Facades\Hash;
+use Illuminate\Validation\Rules;
+
class UserController extends Controller
{
@@ -13,7 +17,8 @@ class UserController extends Controller
*/
public function index()
{
- return view('admin.users.list');
+ $users = User::all();
+ return view('admin.users.list',['users'=>$users]);
//
}
@@ -24,7 +29,7 @@ class UserController extends Controller
*/
public function create()
{
- //
+ return view('admin.users.create');
}
/**
@@ -35,7 +40,23 @@ class UserController extends Controller
*/
public function store(Request $request)
{
- //
+ $request->validate([
+ 'username' => ['required', 'string', 'max:255'],
+ 'name' => ['required', 'string', 'max:255'],
+ 'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
+ 'password' => ['required', 'confirmed', Rules\Password::defaults()],
+ ]);
+
+ $user = User::create([
+ 'username' => $request->username,
+ 'name' => $request->name,
+ 'email' => $request->email,
+ 'is_admin' => false,
+ 'password' => Hash::make($request->password),
+ ]);
+
+ return redirect(route('users.index'));
+
}
/**
diff --git a/public/css/app.css b/public/css/app.css
index cf83d8a..c1b94bd 100644
--- a/public/css/app.css
+++ b/public/css/app.css
@@ -697,6 +697,9 @@ select {
.z-50 {
z-index: 50;
}
+.m-2 {
+ margin: 0.5rem;
+}
.mx-auto {
margin-left: auto;
margin-right: auto;
@@ -758,6 +761,9 @@ select {
.inline-flex {
display: inline-flex;
}
+.table {
+ display: table;
+}
.grid {
display: grid;
}
diff --git a/resources/lang/ru.json b/resources/lang/ru.json
index 1442c6c..a035805 100644
--- a/resources/lang/ru.json
+++ b/resources/lang/ru.json
@@ -748,5 +748,8 @@
"Zimbabwe": "Зимбабве",
"Zip / Postal Code": "Индекс",
"Åland Islands": "Аландские острова",
- "User name": "Имя пользователя"
+ "User name": "Имя пользователя",
+ "Users": "Пользователи",
+ "User list": "Список пользователей",
+ "Create user": "Создать пользователя"
}
\ No newline at end of file
diff --git a/resources/views/admin/users/create.blade.php b/resources/views/admin/users/create.blade.php
new file mode 100644
index 0000000..0f008a7
--- /dev/null
+++ b/resources/views/admin/users/create.blade.php
@@ -0,0 +1,67 @@
+
+ {{ __('Create user') }}
+
+
- {{ __('Users') }}
+ {{ __('User list') }}
+
+
+
+ @foreach ( $users as $user)
+
+ {{ __('User name')}}
+
+
+ {{ __('Email')}}
+
+
+ {{ __('Actions')}}
+
+
+
+
+ @endforeach
+ {{ $user->username }}
+ {{ $user->email }}
+
+