Commit b9ff5bd7 authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Formulaire individu : modification limitée en cas d'individu importé.

parent c338f7be
Loading
Loading
Loading
Loading
+1 −0
Changes for CHANGELOG.md: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@ Journal des modifications
- Menu principal : menus déroulants plus compacts ; amélioration du menu Administration ; 'charte.scss' avant 'app.scss'.
- Module Substitutions : possibilité de créer une substitution manuellement à partir de la fiche individu/structure.
- Recherche d'individus : affichage du nom patronymique ; affichage des 2e et 3e prénoms dans une colonne dédiée.
- Formulaire individu : modification limitée en cas d'individu importé.
- [FIX] Liste/recherche des utilisateurs : dysfonctionnement des filtres à cocher qui s'appliquait quelle qu'était leur valeur.
- [FIX] Ajout d'une mission d'enseignement : le bouton ne fonctionnait plus à cause d'une erreur de config de la route.
- [FIX] Proposition de soutenance > Fichiers associés > Téléversement d'un justificatif : la liste des membres était toujours vide.
+26 −6
Changes for module/Individu/src/Individu/Form/IndividuForm.php: 26 added lines, 6 removed lines.
Original line number Diff line number Diff line
@@ -114,14 +114,34 @@ class IndividuForm extends Form implements InputFilterProviderInterface
        );
    }

    /**
     * @return array
     */
    public function prepare(): self
    {
        /** @var \Individu\Entity\Db\Individu $individu */
        $individu = $this->getObject();

        $estModifiable = ! $individu->getSource()->getImportable();

        $this->get('civilite')->setAttribute('disabled', !$estModifiable);
        $this->get('nomUsuel')->setAttribute('disabled', !$estModifiable);
        $this->get('nomPatronymique')->setAttribute('disabled', !$estModifiable);
        $this->get('prenom1')->setAttribute('disabled', !$estModifiable);
        $this->get('prenom2')->setAttribute('disabled', !$estModifiable);
        $this->get('email')->setAttribute('disabled', !$estModifiable);
        $this->get('dateNaissance')->setAttribute('disabled', !$estModifiable);
        $this->get('paysNationalite')->setAttribute('disabled', !$estModifiable);
        $this->get('supannId')->setAttribute('disabled', !$estModifiable);

        return parent::prepare();

    }

    public function getInputFilterSpecification(): array
    {
        /** @var \Individu\Entity\Db\Individu $individu */
        $individu = $this->getObject();

        $estModifiable = ! $individu->getSource()->getImportable();

        $emailValidators = [];
        $emailValidators[] = [
            'name' => EmailAddress::class,
@@ -140,15 +160,15 @@ class IndividuForm extends Form implements InputFilterProviderInterface
            ],
            'nomUsuel' => [
                'name' => 'nomUsuel',
                'required' => true,
                'required' => $estModifiable,
            ],
            'nomPatronymique' => [
                'name' => 'nomPatronymique',
                'required' => false,
                'required' => $estModifiable,
            ],
            'prenom1' => [
                'name' => 'prenom1',
                'required' => true,
                'required' => $estModifiable,
            ],
            'prenom2' => [
                'name' => 'prenom2',