diff --git a/src/Admin/AdminModule.php b/src/Admin/AdminModule.php index b8cdc0a..5690162 100644 --- a/src/Admin/AdminModule.php +++ b/src/Admin/AdminModule.php @@ -5,7 +5,8 @@ namespace App\Admin; use App\Account\Action\AccountUserAction; use App\Account\Action\AccountUserEditAction; use App\Account\Action\ActiveAction; -use App\Auth\Action\PasswordForgetAction; +use App\Antenne\Actions\AntenneEditAction; +use App\Antenne\Actions\AntenneCrudAction; use Framework\Auth\LoggedInMiddleware; use Framework\Module; use Framework\Renderer\RendererInterface; @@ -23,13 +24,18 @@ class AdminModule extends Module string $prefix ) { + $chemin = str_replace('Admin','antenne',__DIR__); + //var_dump($chemin); + //die(); + $renderer->addPath('antenne', $chemin . '/views'); $router->get('/dashboard/{user:[a-zA-Z\-0-9]+}', [LoggedInMiddleware::class, DashboardAction::class], 'dashboard'); $router->get('/dashboard/details/{user:[a-zA-Z\-0-9]+}', [LoggedInMiddleware::class, DashboardUserAction::class], 'dashboard.user'); $router->get('/activation', [LoggedInMiddleware::class, ActiveAction::class], 'account.active'); $router->post('/activation', ActiveAction::class); $router->get('/profil-user', [LoggedInMiddleware::class, AccountUserEditAction::class], 'account.user'); $router->post('/profil-user', [LoggedInMiddleware::class, AccountUserEditAction::class]); - //$router->any('/password_reinit', PasswordForgetAction::class, 'auth.password'); + $router->get('/antenne/create', [LoggedInMiddleware::class, AntenneCrudAction::class], 'antenne.create'); + $router->get('/antenne/edit', [LoggedInMiddleware::class, AntenneEditAction::class], 'antenne.edit'); if ($renderer instanceof TwigRenderer) { $renderer->getTwig()->addExtension($adminTwigExtension); // $renderer->getTwig()->addExtension($variableExtension); diff --git a/src/Admin/views/dashboard.twig b/src/Admin/views/dashboard.twig index 148525e..68f6124 100644 --- a/src/Admin/views/dashboard.twig +++ b/src/Admin/views/dashboard.twig @@ -41,9 +41,19 @@ {% endif %}
{% if affiche_role()==0 or affiche_role()==1 or affiche_role()==2 %} +"; - var_dump($request); - echo ""; - die();*/ unset($_SESSION['user']); $_SESSION['connecte']='---'; $_SESSION['logout']=true; diff --git a/src/Framework/Auth/LoggedInMiddleware.php b/src/Framework/Auth/LoggedInMiddleware.php index 5f7c329..92aa70f 100644 --- a/src/Framework/Auth/LoggedInMiddleware.php +++ b/src/Framework/Auth/LoggedInMiddleware.php @@ -41,21 +41,33 @@ class LoggedInMiddleware implements MiddlewareInterface public function process(ServerRequestInterface $request, DelegateInterface $delegate): ResponseInterface { + // echo "
"; + // var_dump($request); + // var_dump($_SESSION); + // echo ""; + // die(); $user = $request->getAttribute('user'); - if ($user != '' && $user != '---') { + if ($user != '' && $user != '---' && $_SESSION['connecte'] != '---') { $_SESSION['connecte']=$user; } else { - $url_part = explode('/', $request->getServerParams()['HTTP_REFERER'] ?? '/'); - $username = $url_part[5]; - + if ($_SESSION['connecte'] != '---') { + $username = $_SESSION['connecte']; + } else { + $url_part = explode('/', $request->getServerParams()['HTTP_REFERER'] ?? '/'); + $username = $url_part[5]; + } if (!$_SESSION['logout']) { if (is_null($username)) { - $user = $this->auth->getUser() ?: $this->userTable->findBy('username', $request->getAttribute('user')); + if (is_null($user)) { + $user = $this->auth->getUser(); + } else { + $user = $this->userTable->findBy('username', $user); + } } else { $user = $this->auth->getUser() ?: $this->userTable->findBy('username', $username); } } - if (is_null($user) or $_SESSION['logout']) { + if (is_null($user) or $_SESSION['logout'] or $_SESSION['connecte'] == '---') { (new FlashService($this->session))->error('Vous devez vous connecter pour accéder à cette page'); return new RedirectResponse($this->router->generateUri('auth.login')); } diff --git a/src/Gmarche/Table/AntenneTable.php b/src/Gmarche/Table/AntenneTable.php index 67d81b2..2e14bd3 100644 --- a/src/Gmarche/Table/AntenneTable.php +++ b/src/Gmarche/Table/AntenneTable.php @@ -26,7 +26,7 @@ class AntenneTable extends Table $region = new RegionTable($this->pdo); return $this->makeQuery() ->join($region->getTable() . ' as r', 'a.region_id = r.id') - ->select('a.id, r.name as regionName, a.name as antenneName') + ->select('a.id, r.name as regionName, a.name as antenneName, r.slug as regionSlug, a.slug as antenneSlug') ->order('r.name, a.name ASC'); } } diff --git a/src/Product/Actions/ProductIndexAction.php b/src/Product/Actions/ProductIndexAction.php index 55acaf8..bec6a0e 100644 --- a/src/Product/Actions/ProductIndexAction.php +++ b/src/Product/Actions/ProductIndexAction.php @@ -49,7 +49,6 @@ class ProductIndexAction $gmarchePrefix = $this->container->get('gmarche.prefix'); $antenne_slug = $request->getAttribute('slug'); $region_slug = $request->getAttribute('region'); - //$listeAntennes = $this->antenneTable->findAllAntennes(); $requete = $this->antenneTable->findBy('slug', $antenne_slug); $antenne_name = $requete->name; $antenne_id = $requete->id;