table with hotels

This commit is contained in:
2026-01-18 18:03:20 +00:00
parent ea511a00e6
commit 18aad4749f
16 changed files with 276 additions and 233 deletions

View File

@@ -8,17 +8,11 @@ use Illuminate\Support\Facades\Auth;
class AuthController extends Controller
{
/**
* Показать форму входа.
*/
public function showLoginForm()
{
return view('admin.login');
}
/**
* Обработать вход пользователя.
*/
public function login(Request $request)
{
$credentials = $request->validate([
@@ -37,14 +31,14 @@ class AuthController extends Controller
}
/**
* Выход пользователя.
* Выход из системы.
*/
public function logout(Request $request)
{
Auth::logout();
$request->session()->invalidate();
$request->session()->regenerateToken();
Auth::logout();
$request->session()->invalidate();
$request->session()->regenerateToken();
return redirect()->route('admin.login.form');
return view('admin.logout');
}
}

View File

@@ -0,0 +1,11 @@
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class AvailabilityController extends Controller
{
//
}

View File

@@ -0,0 +1,11 @@
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class BookingController extends Controller
{
//
}

View File

@@ -8,70 +8,51 @@ use Illuminate\Http\Request;
class HotelController extends Controller
{
/**
* Показать список отелей.
*/
public function index()
{
$hotels = Hotel::all();
return response()->view('admin/hotels/index', compact('hotels'));
return view('admin.hotels.index', compact('hotels'));
}
/**
* Показать форму создания отеля.
*/
public function create()
{
return view('admin.hotels.create');
}
/**
* Сохранить новый отель.
*/
public function store(Request $request)
{
$validated = $request->validate([
'name' => 'required|string|max:255',
'address' => 'nullable|string',
'phone' => 'nullable|string',
'phone' => 'nullable|string|max:20',
]);
Hotel::create($validated);
return redirect()->route('admin.hotels.index')->with('success', 'Отель добавлен!');
return redirect()->route('admin.hotels.index')->with('success', 'Отель успешно добавлен!');
}
/**
* Показать форму редактирования отеля.
*/
public function edit(Hotel $hotel)
{
return view('admin.hotels.edit', compact('hotel'));
}
/**
* Обновить отель.
*/
public function update(Request $request, Hotel $hotel)
{
$validated = $request->validate([
'name' => 'required|string|max:255',
'address' => 'nullable|string',
'phone' => 'nullable|string',
'phone' => 'nullable|string|max:20',
]);
$hotel->update($validated);
return redirect()->route('admin.hotels.index')->with('success', 'Отель обновлён!');
return redirect()->route('admin.hotels.index')->with('success', 'Отель успешно обновлён!');
}
/**
* Удалить отель.
*/
public function destroy(Hotel $hotel)
{
$hotel->delete();
return redirect()->route('admin.hotels.index')->with('success', 'Отель удалён!');
return redirect()->route('admin.hotels.index')->with('success', 'Отель удалён.');
}
}
}

View File

@@ -0,0 +1,11 @@
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class RoomTypeController extends Controller
{
//
}

View File

@@ -1,39 +0,0 @@
<?php
namespace App\Http\Controllers;
use App\Models\Admin;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use Illuminate\Validation\ValidationException;
class AdminAuthController extends Controller
{
public function login(Request $request)
{
$request->validate([
'email' => 'required|email',
'password' => 'required',
]);
$admin = Admin::where('email', $request->email)->first();
if (!$admin || !Hash::check($request->password, $admin->password)) {
throw ValidationException::withMessages([
'email' => ['The provided credentials are incorrect.'],
]);
}
return response()->json([
'token' => $admin->createToken('admin-token')->plainTextToken,
'admin' => $admin,
]);
}
public function logout(Request $request)
{
$request->user()->currentAccessToken()->delete();
return response()->json(['message' => 'Logged out successfully']);
}
}