Commit de1015f4 authored by Jean-Philippe Metivier's avatar Jean-Philippe Metivier
Browse files

utilisation du bloc de compétences pour les fiches metiers

parent da47d1ca
Loading
Loading
Loading
Loading
+0 −12
Changes for module/Application/config/merged/fiche-metier.config.php: 0 added lines, 12 removed lines.
Original line number Diff line number Diff line
@@ -74,7 +74,6 @@ return [
                        'changer-etat',
                        'modifier-application',
                        'modifier-formation',
                        'gerer-competences',
                    ],
                    'privileges' => [
                        FicheMetierPrivileges::FICHEMETIER_MODIFIER,
@@ -268,17 +267,6 @@ return [
                        ],
                        'may_terminate' => true,
                    ],
                    'gerer-competences' => [
                        'type'  => Segment::class,
                        'options' => [
                            'route'    => '/gerer-competences/:fiche',
                            'defaults' => [
                                'controller' => FicheMetierController::class,
                                'action'     => 'gerer-competences',
                            ],
                        ],
                        'may_terminate' => true,
                    ],
                    'editer' => [
                        'type'  => Segment::class,
                        'options' => [
+0 −51
Changes for module/Application/src/Application/Controller/FicheMetierController.php: 0 added lines, 51 removed lines.
Original line number Diff line number Diff line
@@ -374,57 +374,6 @@ class FicheMetierController extends AbstractActionController
        return $vm;
    }

    public function gererCompetencesAction()
    {
        $fiche = $this->getFicheMetierService()->getRequestedFicheMetier($this);

        /** @var SelectionCompetenceForm $form */
        $form = $this->getSelectionCompetenceForm();
        $form->setAttribute('action', $this->url()->fromRoute('fiche-metier-type/gerer-competences', ['fiche' => $fiche->getId()], [], true));
        $form->bind($fiche);

        /**  @var Request $request */
        $request = $this->getRequest();
        if ($request->isPost()) {
            $data = $request->getPost();
            $this->getHasCompetenceCollectionService()->updateCompetences($fiche, $data);
        }

        $vm = new ViewModel();
        $vm->setTemplate('application/default/default-form');
        $vm->setVariables([
            'title' => "Gestion des compétences de la fiche métier " . $fiche->getMetier()->getLibelle(),
            'form' => $form,
        ]);
        return $vm;
    }

    public function modifierFormationAction()
    {
        $fiche = $this->getFicheMetierService()->getRequestedFicheMetier($this, 'id');

        /** @var SelectionFormationForm $form */
        $form = $this->getSelectionFormationForm();
        $form->setAttribute('action', $this->url()->fromRoute('fiche-metier-type/modifier-formation', ['id' => $fiche->getId()], [], true));
        $form->bind($fiche);

        /** @var Request $request */
        $request = $this->getRequest();
        if ($request->isPost()) {
            $data = $request->getPost();
            $this->getFicheMetierService()->updateFormations($fiche, $data);
        }

        $vm = new ViewModel();
        $vm->setTemplate('application/default/default-form');
        $vm->setVariables([
            'title' => 'Modification des formations',
            'form' => $form,
        ]);
        return $vm;
    }


    public function changerExpertiseAction()
    {
        $fiche = $this->getFicheMetierService()->getRequestedFicheMetier($this);
+6 −0
Changes for module/Application/src/Application/View/Helper/CompetenceBlocViewHelper.php: 6 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -54,4 +54,10 @@ class CompetenceBlocViewHelper extends AbstractHelper
    }



    public static function isDisplayed(array $options, string $key)
    {
        return (!isset($options['display']) OR !isset($options['display'][$key]) OR $options['display'][$key] !== false);
    }

}
 No newline at end of file
+5 −1
Changes for module/Application/src/Application/View/Helper/partial/competence-bloc.phtml: 5 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -36,7 +36,8 @@ $canModifier = (CompetenceBlocViewHelper::isActionActivee($options, 'modifier
$canSupprimer       = (CompetenceBlocViewHelper::isActionActivee($options, 'supprimer') AND true);
$canValider         = (CompetenceBlocViewHelper::isActionActivee($options, 'valider') AND true);

$displayTitre   = true;
$displayTitre       = CompetenceBlocViewHelper::isDisplayed($options,'titre');
$displayValidation  = CompetenceBlocViewHelper::isDisplayed($options,'validation');

$groupes = [];
$sansGroupe = "zzz";
@@ -68,6 +69,7 @@ ksort($groupes);
                <br/>
                <a
                    <?php /** @see \Application\Controller\CompetenceController::ajouterCompetenceElementAction() */?>
                        <?php //todo ... Agent::class => get_class($objet) ... ?>
                        href="<?php echo $this->url('competence/ajouter-competence-element', ['type' => Agent::class, 'id' => $objet->getId()], [], true); ?>"
                        class="ajax-modal btn btn-primary action"
                        data-event="modification"
@@ -109,11 +111,13 @@ ksort($groupes);
                            <?php echo ($entite->getNiveauMaitrise())?$entite->getNiveauMaitrise()->getLibelle():"Niveau non précisé"; ?>
                        <?php endif; ?>
                    </td>
                    <?php if ($displayValidation) : ?>
                        <td class="validation">
                            <?php if ($entite instanceof CompetenceElement) : ?>
                                <?php echo $this->validationBadge($entite->getValidation(),$options); ?>
                            <?php endif; ?>
                        </td>
                    <?php endif; ?>
                    <td class="action">
                        <?php if ($entite instanceof CompetenceElement) : ?>
                            <?php if ($canAfficher) : ?>
+4 −4
Changes for module/Application/src/Application/View/Helper/partial/fiche-metier.phtml: 4 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -221,13 +221,13 @@ $mode = $options['mode'];
                    </div>
                    <div class="pull-right" style="margin-right:1rem;">
                    <?php if (isset($options['mode']) AND $options['mode'] === 'edition-fiche-metier') : ?>
                            <?php /** @see FicheMetierController::gererCompetencesAction() */ ?>
                            <a href="<?php echo $this->url('fiche-metier-type/gerer-competences', ['fiche' => $fichemetier->getId()], [], true); ?>"
                            <?php /** @see \Application\Controller\CompetenceController::afficherCompetenceElementAction() */ ?>
                            <a href="<?php echo $this->url('competence/ajouter-competence-element', ['type' => FicheMetier::class, 'id' => $fichemetier->getId()], [], true); ?>"
                               class="btn btn-primary action ajax-modal"
                               data-event="modification"
                            >
                                <span class="icon ajouter"></span>
                                Gérer les compétences
                                Ajouter une compétence
                            </a>
                    <?php endif; ?>
                        <?php /** @see FicheMetierController::graphiqueCompetencesAction() */ ?>
@@ -242,7 +242,7 @@ $mode = $options['mode'];
            </div>
            <div class="panel-body">
                <div class="col-md-1"></div>
                <div class="col-md-10"><?php echo $this->competenceBloc($dictionnaireCompetence); ?></div>
                <div class="col-md-10"><?php echo $this->competenceBloc($dictionnaireCompetence, $fichemetier, ['display' => ['titre' => false, 'validation' => false], 'actions' => ['valider' => false]]); ?></div>
            </div>
        </div>
        <?php endif; ?>