ldc-gen-game-web/routes/web.php
2021-07-22 10:32:47 +02:00

118 lines
6.7 KiB
PHP

<?php
use Illuminate\Support\Facades\Route;
/*
|--------------------------------------------------------------------------
| 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::group(['middleware' => ['game-date']], function () {
// Front
Route::get('/', 'HomeController@home')->name('home');
Route::get('/reglement', 'ViewContentController@reglement')->name('reglement');
Route::get('/charte', 'ViewContentController@charte')->name('charte');
Route::get('/mentions-legales', 'ViewContentController@legals')->name('legals');
Route::get('/faq', 'FAQController@index')->name('faq');
Route::get('/comment-jouer', 'HowToPlayController@index')->name('comment-jouer');
Route::get('/les-gains', 'GainsController@index')->name('les-gains');
Route::get('/produits-porteurs', 'ProduitsController@index')->name('produits-porteurs');
Route::get('/confirmation-email/{verifyToken}', 'LoginController@confirmEmail')->name('confirm-email');
Route::get('/mot-de-passe-oublie', 'LoginController@forgotPassword')->name('forgot-password');
Route::get('/mot-de-passe-oublie/reset/{token}', 'LoginController@forgotPasswordReset')->name('forgot-password-reset');
Route::put('/mail-mot-de-passe', 'LoginController@mailPassword')->name('mail-password');
Route::put('/change-mot-de-passe', 'LoginController@changePassword')->name('change-password');
// Front nécessitant d'être connecté
Route::get('/saisir-code', 'EnterCodeController@index')->name('saisir-code')->middleware('auth');
Route::post('/saisir-code', 'EnterCodeController@participate')->name('participate')->middleware('auth');
Route::put('/saisir-code', 'EnterCodeController@formWinningProof')->name('winning-proof')->middleware('auth');
Route::put('/rejouer', 'WinningProofController@sendWinningProof')->name('send-winning-proof')->middleware('auth');
// Authentification
Route::post('/logout', 'LoginController@logout')->name('logout')->middleware('auth');
Route::get('/inscription', 'RegisterController@index')->name('inscription');
Route::post('/inscription', 'RegisterController@register')->name('register');
});
// Login sans middleware pour la connexion admin, teaser et end pour ne pas redirigé en boucle
Route::get('/login', 'LoginController@index')->name('login');
Route::post('/login', 'LoginController@authenticate')->name('authenticate');
Route::get('/teaser', 'TeaserController@index')->name('teaser');
Route::get('/fin-du-jeu', 'EndPageController@index')->name('end');
// BO
Route::namespace('bo')
->prefix('bo')
->name('bo.')
->middleware(['auth', 'is-admin','is-super-admin'])
->group(function () {
Route::get('/', 'DashboardController@index')->name('dashboard')->withoutMiddleware('is-super-admin');
// Réglages
Route::match(['get', 'put'], '/settings', 'SettingsController@manage')->name('settings');
// Contenu
Route::match(['get', 'put'], '/content/{id}', 'ContentController@manage')->name('content');
// Pages liées au gains
Route::get('/gain-views', 'GainViewController@index')->name('gain-views');
Route::post('/ajax/delete-gain-views', 'GainViewController@destroy');
Route::post('/ajax/save-gain-views', 'GainViewController@saveDatas');
// Lots
Route::get('/prizes', 'PrizesController@index')->name('prizes');
Route::post('/ajax/delete-prize', 'PrizesController@destroy');
Route::post('/ajax/save-prizes', 'PrizesController@saveDatas');
// Instants gagnants
Route::get('/instant-win', 'InstantWinController@index')->name('instant-win');
Route::get('/ajax/instant-win-generate', 'InstantWinController@instantWinGenerate');
// Codes EAN
Route::get('/codes-ean', 'CodesEANController@index')->name('codes-ean')->withoutMiddleware('is-super-admin');;
Route::post('/ajax/delete-codes-ean', 'CodesEANController@destroy')->withoutMiddleware('is-super-admin');;
Route::post('/ajax/save-codes-ean', 'CodesEANController@saveDatas')->withoutMiddleware('is-super-admin');;
// IP Bannies
Route::get('/banned-ip', 'BannedIPController@index')->name('banned-ip');
Route::post('/ajax/delete-banned-ip', 'BannedIPController@destroy');
Route::post('/ajax/save-banned-ip', 'BannedIPController@saveDatas');
// FAQ - Thèmes
Route::get('/faq-themes', 'FaqThemesController@index')->name('faq-themes');
Route::post('/ajax/delete-faq-theme', 'FaqThemesController@destroy');
Route::post('/ajax/save-faq-theme', 'FaqThemesController@saveDatas');
// FAQ - Questions
Route::get('/faq-questions', 'FaqQuestionsController@index')->name('faq-questions');
Route::post('/ajax/delete-faq-question', 'FaqQuestionsController@destroy');
Route::post('/ajax/save-faq-question', 'FaqQuestionsController@saveDatas');
// Codes uniques
Route::get('/codes', 'CodesController@index')->name('codes');
Route::post('/codes', 'CodesController@generate')->name('generate-codes');
Route::post('/codes/export', 'CodesController@export')->name('export-codes');
// Liste des gagnants
Route::get('/winners-list', 'WinnersListController@index')->name('winners-list');
Route::get('/winners-list/arcadia/{id}', 'WinnersListController@courrierArcadia')->name('winners-arcadia');
Route::post('/winners-list/arcadia/{id}/send', 'WinnersListController@createCourrierArcadia')->name('courrier-arcadia');
//produits porteurs
Route::resource('products',ProductsController::class)->withoutMiddleware('is-super-admin');
// Route::get('/products', 'ProductsController@index')->name('products');
// Route::get('/products/{id}', 'ProductsController@edit')->name('products.edit');
// Route::post('/products/{id}', 'ProductsController@update')->name('products.update');
// Route::post('/ajax/delete-prize', 'PrizesController@destroy');
// Route::post('/ajax/save-prizes', 'PrizesController@saveDatas');
});
Route::prefix('re7')
->middleware(['re7'])
->group(function (){
Route::get('/', 're7Controller@index');
Route::get('/teaser', 're7Controller@teaser');
Route::get('/mail-gain', 're7Controller@prizeMail');
Route::get('/mail-reduction', 're7Controller@reductionMail');
Route::get('/br', 're7Controller@br');
// TODO : Rendre dynamique la partie gain par rapport au BO
Route::get('/gain1', 're7Controller@gain1');
Route::get('/gain2', 're7Controller@gain2');
});