<br />
<b>Warning</b>:  Undefined variable $auth in <b>/home/pevo0181/public_html/pia-soft.com/cleania/routes/index.php</b> on line <b>542</b><br />
<br />
<b>Warning</b>:  Trying to access array offset on value of type null in <b>/home/pevo0181/public_html/pia-soft.com/cleania/routes/index.php</b> on line <b>542</b><br />
<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\backend\AuthController;
use App\Http\Controllers\backend\CardController;
use App\Http\Controllers\backend\PostController;
use App\Http\Controllers\backend\RoleController;
use App\Http\Controllers\backend\TypeController;
use App\Http\Controllers\backend\AdminController;
use App\Http\Controllers\backend\StaffController;
use App\Http\Controllers\backend\ProfilController;
use App\Http\Controllers\backend\RegionController;
use App\Http\Controllers\backend\AntennaController;
use App\Http\Controllers\backend\ServiceController;
use App\Http\Controllers\backend\PresenceController;
use App\Http\Controllers\backend\DashboardController;
use App\Http\Controllers\backend\AssignPostController;


/*
|--------------------------------------------------------------------------
| 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!
|
*/


/** ACTIONS AUTHENTIFICATION */
Route::get('/login',                     [AuthController::class, 'getLogin'])->name('get.backend.login');
Route::post('/check/post-login',            [AuthController::class, 'postLogin'])->name('post.backend.login');


Route::middleware(["auth"])->group(function() {

    Route::get('/logout',       [AuthController::class, 'logout'])->name('get.backend.logout');
    Route::get('/dashboard',    [DashboardController::class, 'getDashboard'])->name('get.backend.dashboard');


    /**ACTIONS ADMIN */
    Route::get('/admin/list',                       [AdminController::class, 'getListUser'])->name('get.backend.list.admin');
    Route::get('/admin/add',                        [AdminController::class, 'getAddUser'])->name('get.backend.add.admin');
    Route::get('/admin/{id}/edit',                  [AdminController::class, 'getEditUser'])->name('get.backend.edit.admin');
    Route::post('/add-info/admin',                  [AdminController::class, 'postAddUser'])->name('post.backend.add.admin');
    Route::post('/edit-info/admin/{id}',            [AdminController::class, 'postEditUser'])->name('post.backend.edit.admin');
    Route::post('/admin/{id}/change-status',        [AdminController::class, 'changeStatus'])->name('post.backend.change.status.admin');

    
    /** ACTIONS REGIONS */
    Route::get('/region/list',          [RegionController::class, 'getListRegion'])->name('get.backend.list.region');
    Route::post('/region/add',          [RegionController::class, 'postAddRegion'])->name('post.backend.add.region');
    Route::post('/region/{id}/edit',    [RegionController::class, 'postEditRegion'])->name('post.backend.edit.region');

    /** ACTIONS DEPARTEMENT */
    Route::get('/department/list',          [RegionController::class, 'getListDepartment'])->name('get.backend.list.department');
    Route::post('/department/add',          [RegionController::class, 'postAddDepartment'])->name('post.backend.add.department');
    Route::post('/department/{id}/edit',    [RegionController::class, 'postEditDepartment'])->name('post.backend.edit.department');

    /** ACTIONS ARRONDISSEMENT */
    Route::get('/arrondissement/list',          [RegionController::class, 'getListArr'])->name('get.backend.list.arr');
    Route::post('/arrondissement/add',          [RegionController::class, 'postAddArr'])->name('post.backend.add.arr');
    Route::post('/arrondissement/{id}/edit',    [RegionController::class, 'postEditArr'])->name('post.backend.edit.arr');
    
    /**** ACTIONS SERVICES*/
    Route::get('/services/list',             [ServiceController::class, 'getList'])->name('get.backend.list.service');
    Route::post('/services/add',             [ServiceController::class, 'postAdd'])->name('post.backend.add.service');
    Route::post('/services/{id}/edit',       [ServiceController::class, 'postEdit'])->name('post.backend.edit.service');
  
    /**** ACTIONS POSTES*/
    Route::get('/posts/list',             [PostController::class, 'getList'])->name('get.backend.list.post');
    Route::post('/posts/add',             [PostController::class, 'postAdd'])->name('post.backend.add.post');
    Route::post('/posts/{id}/edit',       [PostController::class, 'postEdit'])->name('post.backend.edit.post');

    /**** ACTIONS TYPES*/
    Route::get('/types/list',             [TypeController::class, 'getList'])->name('get.backend.list.type');
    Route::post('/types/add',             [TypeController::class, 'postAdd'])->name('post.backend.add.type');
    Route::post('/types/{id}/edit',       [TypeController::class, 'postEdit'])->name('post.backend.edit.type');

    /**PROFIL ADMIN */
    Route::get('/profile',                       [ProfilController::class, 'getProfil'])->name('get.backend.profile.admin');
    Route::post('profile/edit-profil/{id}',         [ProfilController::class, 'postEditProfil'])->name('post.backend.edit.profile');
    Route::post('/edit-password/{id}',              [ProfilController::class, 'postEditPassword'])->name('post.backend.edit.password');
    Route::get('/edit/urban',                       [ProfilController::class, 'getEditUrban'])->name('get.backend.edit.urban.me');
    Route::post('/edit-post/urban',                     [ProfilController::class, 'postEditUrban'])->name('get.backend.post.urban.me');
    Route::get('/edit/cabinet',                         [ProfilController::class, 'getEditCabinet'])->name('get.backend.edit.cabinet.me');
    Route::post('/edit-post/urcabinetban',              [ProfilController::class, 'postEditCabinet'])->name('post.backend.edit.cabinet.me');

    /** ACTIONS ROLE */
    Route::get('/list/role',            [RoleController::class, 'getListRole'])->name('get.backend.list.role');
    Route::post('/add/role',            [RoleController::class, 'postAddRole'])->name('post.backend.add.role');
    Route::post('/edit/role/{id}',      [RoleController::class, 'postEditRole'])->name('post.backend.edit.role');



    /*** ACTIONS PERSONNELS */
    Route::get('/staffs/list',                         [StaffController::class, 'getList'])->name('get.backend.list.staff');
    Route::get('/staffs/add',                                    [StaffController::class, 'getAdd'])->name('get.backend.add.staff');
    Route::post('/staffs/add',                                   [StaffController::class, 'postAdd'])->name('post.backend.add.staff');
    Route::get('/staffs/{id}/details',                           [StaffController::class, 'getDetails'])->name('get.backend.details.staff');
    Route::get('/staffs/{id}/presences',                           [StaffController::class, 'getPresences'])->name('get.backend.presence.staff');
    Route::post('/staffs/{id}/edit',                             [StaffController::class, 'postEdit'])->name('post.backend.edit.staff');
    Route::get('/get/all/staffs',                                [StaffController::class, 'getAllUsers'])->name('get.backend.all.staff');
    Route::get('/staffs/search',                                 [StaffController::class, 'search'])->name('get.backend.search.staff');
    Route::post('/staffs-all/active',                            [StaffController::class, 'activeAllUsers'])->name('post.backend.active.all.staff');
    Route::post('/staffs/{code}/change-status',                  [StaffController::class, 'changeStatus'])->name('post.backend.change.status.staff');
    Route::get('/staffs/export-pdf',                   [StaffController::class, 'exportAllPdf'])->name('get.backend.export.all.pdf.staff');
    Route::get('/staffs/export-excel',                 [StaffController::class, 'exportAllExcel'])->name('get.backend.export.all.excel.staff');
    Route::get('/staffs-all/api',                                [StaffController::class, 'getApiAllUsers'])->name('get.backend.api.all.staff');

    /***ACTIONS AFFECTATIONS */
    Route::get('/assignments/list',                                           [AssignPostController::class, 'getList'])->name('get.backend.list.assignment');
  
    /***ACTIONS PRESENCES */
    Route::get('/presences/list',                                           [PresenceController::class, 'getList'])->name('get.backend.list.presence');

    /***ACTIONS ANTENNES */
    Route::get('/antennas/list',                                           [AntennaController::class, 'getList'])->name('get.backend.list.antenna');
    Route::get('/antennas/{id}/staffs',                           [AntennaController::class, 'getAntennaStaffs'])->name('get.backend.staff.antenna');

    /***ACTIONS CARTES */
    Route::get('/cards/list',                                [CardController::class, 'getList'])->name('get.backend.list.card');
    Route::get('/cards/search',                               [CardController::class, 'getSearch'])->name('get.backend.search.card');

});


/** 404 PAGE ERROR  */
Route::fallback(function () {
    return view('errors.404');
});

/*********
 * ################
 * FRONTEND ROUTES
 * ###############
 */
Route::get('/', function() {
    return redirect()->