Commit 712cd6dc authored by David Surville's avatar David Surville
Browse files

[Evo] Ajout de l'attribut "schacPersonalUniqueCode"

parent ad8f5627
Loading
Loading
Loading
Loading
+23 −0
Original line number Diff line number Diff line
@@ -102,6 +102,7 @@ class People extends Entity
        'sambaSID',
        'schacDateOfBirth',
        'schacExpiryDate',
        'schacPersonalUniqueCode',
        'sexe',
        'sn',
        'supannActivite',
@@ -305,6 +306,7 @@ class People extends Entity
        '\[libelle=(?<libelle>.+)\]$/';
    static protected $role_src_pattern = '/^(?<code>\d{4});(?<libelle>.+)$/';
    static protected $service_etat_pattern = '/^(?<etiquette>\{[\w\-]+\})(?<value>(A|I|S){1})$/';
    static protected $personal_unique_code_pattern = '/^urn:schac:personalUniqueCode:(int:esi:)*(?<country_code>[\w]{2}):(?<code>.+)$/';


    /**
@@ -434,6 +436,27 @@ class People extends Entity
        return $this;
    }

    /**
     * Attribut Ldap "schacPersonalUniqueCode"
     *
     * @param array|string|null $value
     * @param bool $append
     * @return $this
     * @throws Exception
     * @throws LdapException
     */
    public function setSchacPersonalUniqueCode($value = null, $append = false)
    {
        $value = $this->preFormat($value);
        $value = array_filter($value, function ($v) {
            return preg_match(self::$personal_unique_code_pattern, $v);
        });

        $this->appendOrNot('schacPersonalUniqueCode', $value, $append);

        return $this;
    }

    /**
     * Attribut Ldap "dateFinInscription"
     *