web.php 6.68 KB
Newer Older
1
2
<?php

Your Name~'s avatar
Your Name~ committed
3

4
use App\Models\Faq;
5
use Illuminate\Support\Facades\Route;
Your Name~'s avatar
Your Name~ committed
6
use App\Http\Controllers\ProfileController;
7
use App\Http\Controllers\Admin\FaqController;
8
use App\Http\Controllers\DashboardController;
9
use App\Http\Controllers\Admin\TypeController;
10
11
use App\Http\Controllers\User\OrderController;
use App\Http\Controllers\User\CommentController;
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
12
use App\Http\Controllers\Admin\ProductController;
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
13
use App\Http\Controllers\Admin\GalleryController;
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
14
use App\Http\Controllers\Admin\GiftCardController;
15
use App\Http\Controllers\Admin\MaterialController;
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
16
use App\Http\Controllers\User\CustomOrderController;
17
18
use App\Http\Controllers\Admin\MaintenanceController;
use App\Http\Controllers\Auth\RegisteredUserController;
Your Name~'s avatar
Your Name~ committed
19
use App\Http\Controllers\Admin\DiscountController;
20
21
22
23
24
25
26

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
Your Name~'s avatar
Your Name~ committed
27
28
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
29
30
|
*/
31
32
33
34
35
Route::get('/', function () {
    return view('auth.login');
});


36

Your Name~'s avatar
Your Name~ committed
37
Route::middleware(['auth', 'verified'])->group(function () {
38
39
40
41
    Route::get('register', [RegisteredUserController::class, 'create'])
    ->name('register');
    Route::post('register', [RegisteredUserController::class, 'store']);

Your Name~'s avatar
Your Name~ committed
42
43
44
    Route::get('/dashboard', function () {
        return view('dashboard');
    })->name('dashboard');
45
46
47
48
49
50

    Route::get('/profile', [ProfileController::class, 'edit'])->name('profile.edit');
    Route::patch('/profile', [ProfileController::class, 'update'])->name('profile.update');
    Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy');
});

Your Name~'s avatar
Your Name~ committed
51
52
// Admin routes
Route::prefix('admin')->middleware('auth')->group(function () {
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
53
54

    // Types routes 
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
55
    Route::get('/types', [TypeController::class, 'index'])->name('types.index');
Aleksandar Kocev's avatar
Aleksandar Kocev committed
56
    Route::resource('/types', TypeController::class);
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
57
58
    Route::get('/types/{id}/edit', [TypeController::class, 'edit'])->name('types.edit');
    Route::put('/types/{id}', [TypeController::class, 'update'])->name('types.update');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
59

Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
60
    // Materials routes 
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
61
    Route::get('/materials', [MaterialController::class, 'index'])->name('materials.index');
62
63
    Route::get('/materials/create', [MaterialController::class, 'create'])->name('materials.create');
    Route::get('/materials/{id}/edit', [MaterialController::class, 'edit'])->name('materials.edit');
64
65
    Route::post('/materials', [MaterialController::class, 'store'])->name('materials.store');
    Route::put('/materials/{id}', [MaterialController::class, 'update'])->name('materials.update');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
66
    Route::delete('/materials/delete/{id}', [MaterialController::class, 'destroy'])->name('materials.destroy');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
67

Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
68
69
    // Products routes 
    Route::get('/products', [ProductController::class, 'index'])->name('products.index');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
70
    Route::post('/products', [ProductController::class, 'search'])->name('products.search');
Aleksandar Kocev's avatar
Aleksandar Kocev committed
71
    Route::get('/product/add', [ProductController::class, 'create'])->name('product.create');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
72
    Route::post('/product/store', [ProductController::class, 'store'])->name('product.store');
73
74
    Route::get('/product/edit/{id}', [ProductController::class, 'edit'])->name('product.edit');
    Route::post('/product/update', [ProductController::class, 'update'])->name('product.update');
75
    Route::delete('/product/delete/{id}', [ProductController::class, 'destroy'])->name('product.destroy');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
76
77
78
79
80

    // Maintenances routes 
    Route::get('/maintenances', [MaintenanceController::class, 'index'])->name('maintenances.index');
    Route::get('/maintenances/add', [MaintenanceController::class, 'create'])->name('maintenances.add');
    Route::post('/maintenances/store', [MaintenanceController::class, 'store'])->name('maintenances.store');
Aleksandar Kocev's avatar
Aleksandar Kocev committed
81
    Route::get('/maintenances/update/{id}', [MaintenanceController::class, 'edit'])->name('maintenances.edit');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
82
    Route::put('/maintenances/update/{id}', [MaintenanceController::class, 'update'])->name('maintenances.update');
Aleksandar Kocev's avatar
Aleksandar Kocev committed
83
    Route::delete('/maintenances/delete/{id}', [MaintenanceController::class, 'destroy'])->name('maintenances.delete');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
84
85

    // FAQ routes
86
87
88
89
90
91
    Route::get('/faq', [FaqController::class, 'index'])->name('faq.index');
    Route::get('/faq/create', [FaqController::class, 'create'])->name('faq.create');
    Route::get('/faq/{id}/edit', [FaqController::class, 'edit'])->name('faq.edit');
    Route::post('/faq', [FaqController::class, 'store'])->name('faq.store');
    Route::put('/faq/{id}', [FaqController::class, 'update'])->name('faq.update');
    Route::delete('/faq/delete/{id}', [FaqController::class, 'destroy'])->name('faq.delete');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
92
93
94
95
96
97
98

    // Gallery routes
    Route::get('/gallery', [GalleryController::class, 'index'])->name('gallery.index');
    Route::get('/gallery/add', [GalleryController::class, 'create'])->name('gallery.add');
    Route::post('/gallery/store', [GalleryController::class, 'store'])->name('gallery.store');
    Route::get('/galleries', [GalleryController::class, 'index'])->name('galleries.index');
    Route::delete('/galleries/delete/{id}', [GalleryController::class, 'destroy'])->name('gallery.delete');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
99

100
     // Coupon routes
Nikola Chuchukovski's avatar
fix    
Nikola Chuchukovski committed
101
    Route::resource('/discounts', DiscountController::class)->middleware('auth');
102

Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
103
104
105
106
107
108
109
110
    // Gift Cards routes
    Route::get('/gift-card', [GiftCardController::class, 'index'])->name('gift-card.index');
    Route::get('/gift-card/add', [GiftCardController::class, 'create'])->name('gift-card.add');
    Route::post('/gift-card/store', [GiftCardController::class, 'store'])->name('gift-card.store');
    Route::get('/gift-card/edit/{id}', [GiftCardController::class, 'edit'])->name('gift-card.edit');
    Route::put('/gift-card/update/{id}', [GiftCardController::class, 'update'])->name('gift-card.update');
    Route::delete('/gift-card/delete/{id}', [GiftCardController::class, 'destroy'])->name('gift-card.delete');

Your Name~'s avatar
Your Name~ committed
111
});
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
112

Your Name~'s avatar
Your Name~ committed
113

114
115
116
// Web routes for managing orders within the User namespace
Route::get('/user/orders', [OrderController::class, 'index'])->name('user.orders.index');
Route::post('/user/orders', [OrderController::class, 'store'])->name('user.orders.store');
Your Name~'s avatar
Your Name~ committed
117

118
119
120
121
Route::get('/custom-order', [CustomOrderController::class, 'index'])->name('custom_order.index');
Route::get('/custom-order/{id}', [CustomOrderController::class, 'show'])->name('custom_order.show');
Route::post('/custom-order/add', [CustomOrderController::class, 'store'])->name('custom_order.store');
Route::delete('/custom-order/delete/{id}', [CustomOrderController::class, 'destroy'])->name('custom_order.delete');
122
Route::post('/comments', [CommentController::class, 'store'])->middleware('auth')->name('comments.store');
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
123
124
125
126




Your Name~'s avatar
Your Name~ committed
127
// Auth routes
Nikola Chuchukovski's avatar
Nikola Chuchukovski committed
128
require __DIR__ . '/auth.php';