54 lines
1.8 KiB
PHP
54 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace App\Admin;
|
|
|
|
use App\Admin\Table\UserTable;
|
|
use Framework\Auth;
|
|
use Framework\Module;
|
|
use Framework\Renderer\RendererInterface;
|
|
use Framework\Renderer\TwigRenderer;
|
|
use Framework\Router;
|
|
|
|
class AdminModule extends Module
|
|
{
|
|
|
|
const DEFINITIONS = __DIR__ . '/config.php';
|
|
/**
|
|
* @var Auth
|
|
*/
|
|
private $auth;
|
|
|
|
public function __construct(
|
|
RendererInterface $renderer,
|
|
Router $router,
|
|
AdminTwigExtension $adminTwigExtension,
|
|
UserTable $userTable,
|
|
Auth $auth,
|
|
string $prefix
|
|
)
|
|
{
|
|
$this->userTable = $userTable;
|
|
$this->auth = $auth;
|
|
$renderer->addPath('admin', __DIR__ . '/views');
|
|
$name_user = $this->auth->getUser()->username;
|
|
//$role = $user->getRoles();
|
|
$role = $_SESSION['role'];
|
|
$page = $params['p'] ?? 1; // Si la page n'est pas définie, on l'initialise à 1
|
|
//$liste_users = $this->userTable->findAll()->paginate(25, $page);
|
|
$liste_adminGeneral = $this->userTable->findAdminUsers('1');
|
|
$liste_adminAntenne = $this->userTable->findAdminUsers('2');
|
|
$liste_users = $this->userTable->findAdminUsers('3');
|
|
|
|
$router->get($prefix, DashboardAction::class, 'admin');
|
|
$router->post($prefix, DashboardAction::class);
|
|
if ($renderer instanceof TwigRenderer) {
|
|
$renderer->getTwig()->addExtension($adminTwigExtension);
|
|
$renderer->getTwig()->addGlobal('role',$role);
|
|
$renderer->getTwig()->addGlobal('name_user',$name_user);
|
|
$renderer->getTwig()->addGlobal('liste_adminGeneral',$liste_adminGeneral);
|
|
$renderer->getTwig()->addGlobal('liste_adminAntenne',$liste_adminAntenne);
|
|
$renderer->getTwig()->addGlobal('liste_users',$liste_users);
|
|
}
|
|
}
|
|
}
|