ldc-boutique-cnc/routes/web.php
2021-03-25 17:59:02 +01:00

102 lines
5.7 KiB
PHP

<?php
use Illuminate\Support\Facades\Route;
// FRONT
use App\Http\Controllers\IndexController;
use App\Http\Controllers\BasketController;
use App\Http\Controllers\ProductsController;
use App\Http\Controllers\CustomerController;
// BO
use App\Http\Controllers\Bo\DashboardController;
use App\Http\Controllers\Bo\ContentController;
use App\Http\Controllers\Bo\FaqController;
use App\Http\Controllers\Bo\SettingsController;
// AUTH
use App\Http\Controllers\Auth\LoginController;
use App\Http\Controllers\Auth\RegisterController;
use App\Http\Controllers\Auth\ResetPasswordController;
use App\Http\Controllers\Bo\OrdersController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/', [IndexController::class, 'index'])->name('home');
Route::get('/contact', [IndexController::class, 'contact'])->name('contact');
Route::get('/mentions-legales', [IndexController::class, 'legalNotice'])->name('legal-notice');
Route::get('/cgv', [IndexController::class, 'terms'])->name('terms');
Route::get('/politique-de-confidentialite', [IndexController::class, 'privacy'])->name('privacy');
Route::get('/faq', [IndexController::class, 'faq'])->name('faq');
Route::get('/mon-panier', [BasketController::class, 'index'])->name('basket');
Route::get('/gammes-de-produits', [ProductsController::class, 'ranges'])->name('ranges');
Route::get('/gamme-de-produits/{rangeSlug}', [ProductsController::class, 'range'])->name('range')->middleware('redirect-slugs');
Route::get('/produits', [ProductsController::class, 'products'])->name('products');
Route::get('/produit/{productSlug}', [ProductsController::class, 'product'])->name('product')->middleware('redirect-slugs');
Route::prefix('ajax')
->name('ajx.')
->group(function () {
Route::post('/add-to-cart', [BasketController::class, 'addToCart'])->name('cart.add');
Route::post('/get-cart', [BasketController::class, 'getCart'])->name('cart.get');
Route::post('/remove-from-cart', [BasketController::class, 'removeFromCart'])->name('cart.remove');
Route::post('/empty-cart', [BasketController::class, 'emptyCart'])->name('cart.empty');
});
Route::namespace('Bo')
->prefix('bo')
->name('bo.')
->middleware(['auth', 'is-admin'])
->group(function () {
Route::get('/', [DashboardController::class, 'index'])->name('dashboard');
Route::match(['get', 'put'], '/content/{key}', [ContentController::class, 'manage'])->name('content');
Route::match(['get', 'put'], '/settings', [SettingsController::class, 'manage'])->name('settings');
// FAQ
Route::get('/faq', [FaqController::class, 'index'])->name('faq');
Route::post('/ajax/save-faq', [FaqController::class, 'saveDatas']);
Route::post('/ajax/delete-faq', [FaqController::class, 'destroy']);
// Produits
Route::resource('products', '\App\Http\Controllers\Bo\ProductsController')->except([
'create'
]);
Route::get('/products/create/{product_type}', [\App\Http\Controllers\Bo\ProductsController::class, 'create'])
->name('products.create');
Route::resource('ranges', '\App\Http\Controllers\Bo\RangesController');
// Commandes
Route::get('/orders', [OrdersController::class, 'index'])->name('orders');
Route::get('/orders/{reference}', [OrdersController::class, 'changeStatus'])->name('change-order-status');
Route::get('/orders/{reference}/cancel', [OrdersController::class, 'cancelOrder'])->name('cancel-order');
Route::post('/orders/add', [OrdersController::class, 'addProduct'])->name('order-add-product');
});
Route::namespace('Auth')
->name('auth.')
->group(function () {
Route::get('/se-connecter', [LoginController::class, 'index'])->name('login')->middleware('guest');
Route::post('/login', [LoginController::class, 'login'])->name('login.post')->middleware('guest');
Route::get('/se-deconnecter', [LoginController::class, 'logout'])->name('logout')->middleware('auth');
//Route::get('/inscription', [RegisterController::class, 'index'])->name('register')->middleware('guest');
//Route::post('/register', [RegisterController::class, 'register'])->name('register.post')->middleware('guest');
Route::get('/inscription', [CustomerController::class, 'registerForm'])->name('register')->middleware('guest');
Route::post('/register', [CustomerController::class, 'register'])->name('register.post')->middleware('guest');
Route::get('/mot-de-passe-oublie', [ResetPasswordController::class, 'index'])->name('reset-password')->middleware('guest');
});
/*
Route::get('/inscription', 'CustomerController@registerForm')->name('form-inscription');
Route::post('/inscription', 'CustomerController@register')->name('inscription');
Route::get('/activer/{hashcode}', 'CustomerController@activate')->name('activer');
Route::get('/connexion', 'CustomerController@authenticateForm')->name('form-connexion');
Route::post('/connexion', 'CustomerController@authenticate')->name('connexion');
Route::get('/deconnexion', 'CustomerController@logout')->name('deconnexion')->middleware('auth:customer');
Route::post('/reinitialiser-mdp', 'CustomerController@passwordReset')->name('reinit-mdp');
Route::get('/reinitialiser-mdp/{token}', 'CustomerController@viewChangePassword')->name('form-change-mdp');
Route::post('/reinitialiser-mdp/{token}', 'CustomerController@changePassword')->name('change-mdp');
*/