<?php
namespace Modules\Catalogue\MenuContextuel;

use Entity\Model\CFormats;
use Helpers\Ariane\Ariane;
use Helpers\Outil\MenuContextuel;
use Helpers\QueryBuilder\AbsRepository;
use Skeleton\Controller\Controller;

class FormatMenuContextuel extends MenuContextuel
{
    /**
     * @param array<mixed> $format
     * @return array<mixed>
     */
    public function generate($format)
    {
        $idFormat = $format['IDFORMAT'];

        $menuContextuel['listeSecondaire'][] = [
            'libelle' => $this->trad->t('Modifier'),
            'lien' => $this->router->generateUri('Catalogue.parametrageFormat.paramMappage', ['IdFormat' => $idFormat]),
        ];
        
        if ($format['formatUsed'] == 0) {
            $menuContextuel['listeSecondaire'][] = [
                'libelle' => $this->trad->t('Supprimer'),
                'lien' => '',
                'lienJs' => $this->popupConfirm(
                    false,
                    $this->router->generateUri('Catalogue.Format.delete', ['IdFormat' => $idFormat]),
                    $this->trad->t('Etes-vous sûr de vouloir supprimer le catalogue') . ' ' . $idFormat . ' ?',
                    true,
                    'listeFormat',
                    '',
                    false,
                    'filtre_format'
                ),
            ];
        }

        $menuContextuel['listeSecondaire'][] = [
            'libelle' => $this->trad->t('Exporter le format'),
            'lien' => $this->router->generateUri('Catalogue.Format.exportJson', ['IdFormat' => $idFormat]),
        ];

        return $menuContextuel;
    }
}
