<?php
namespace Modules\GlobalApplication\Controller;

use Entity\Model\Hastutil;
use Helpers\Outil\Roles;
use Skeleton\Controller\Controller;
use Helpers\Trad\Trad;
use Helpers\Ariane\Ariane;
use Helpers\Outil\Sql;

class CollecteDesBesoinsController extends Controller
{
    public function indexAction(): string
    {
        $trad = $this->getTranslationService();

        $droit = [
            'HA_CA_LIS' => Roles::droitsUtilisateur($this->pdo, 'HA_CA_LIS', $_SESSION["Session_Login"]),
            'HA_CA_IMP' => Roles::droitsUtilisateur($this->pdo, 'HA_CA_IMP', $_SESSION["Session_Login"]),
            'HA_CA_CMV' => Roles::droitsUtilisateur($this->pdo, 'HA_CA_CMV', $_SESSION["Session_Login"]),
            'HA_DA_VISU' => Roles::droitsUtilisateur($this->pdo, 'HA_DA_VISU', $_SESSION["Session_Login"]),
            'DEMANDEUR' => Sql::boolSql((new Hastutil($this->pdo))->find($_SESSION['Session_Login'])['DEMAND'])
        ];

        if ($droit['HA_DA_VISU']) {
            $listeMenu[] = [
                'route' => 'DemandeAchat.GestionDemandeAchat.index',
                'titre' => $trad->t('Gestion des Demandes d\'achat'),
            ];
        }

        if ($droit['HA_CA_LIS'] || $droit['HA_CA_IMP'] || $droit['HA_CA_CMV']) {
            $listeMenu[] = [
                'route' => 'Commande.GestionCommande.index',
                'titre' => $trad->t('Gestion des Commandes'),
            ];
        }

        Ariane::generate(0, '');

        return $this->renderer->render('@GlobalApplication/Index/menuIntermediaire', [
            'menuActive' => 'CollecteBesoins',
            'menuLeft' => '',
            'titre' => $trad->t('Collecte des besoins'),
            'menus' => [$listeMenu ?? []],
            'hideAriane' => true,
        ]);
    }
}
