diff --git a/src/UnicaenLdap/Entity/Base/People.php b/src/UnicaenLdap/Entity/Base/People.php index b16b4255464d0dca01abec8960fb363ee5622cd6..aa3282406e39cba9b6fe71575febee00d3891677 100644 --- a/src/UnicaenLdap/Entity/Base/People.php +++ b/src/UnicaenLdap/Entity/Base/People.php @@ -158,21 +158,8 @@ class People extends Entity 'ucbnStructureRecherche', 'uidNumber', 'unicaenMonEtupass', - 'unicaenServiceAnnuaire', - 'unicaenServiceControleAcces', - 'unicaenServiceEmploiDuTemps', - 'unicaenServiceEspaceStockage', - 'unicaenServiceImpression', - 'unicaenServiceIntranet', - 'unicaenServiceMessageAlerte', - 'unicaenServiceMessagerie', - 'unicaenServicePosteTravail', - 'unicaenServiceReinscription', - 'unicaenServiceRessourcesDocumentaires', - 'unicaenServiceRestauration', - 'unicaenServiceImpression', - 'unicaenServiceWifiCampus', - 'unicaenServiceWifiEduroam', + 'unicaenSecuriteCompte', + 'unicaenServiceEtat', 'unicaenTermsOfUse', 'userCertificate', 'userPassword', @@ -311,6 +298,7 @@ class People extends Entity '\[code=(?<code>[\w\-]+)\]' . '\[libelle=(?<libelle>.+)\]$/'; static protected $role_src_pattern = '/^(?<code>\d{4});(?<libelle>.+)$/'; + static protected $service_etat_pattern = '/^(?<etiquette>\{[\w\-]+\})(?<value>(A|I|S){1})$/'; /** @@ -1572,6 +1560,27 @@ class People extends Entity return $this; } + /** + * Attribut Ldap "unicaenServiceEtat" + * + * @param array|string|null $value + * @param bool $append + * @return $this + * @throws Exception + * @throws LdapException + */ + public function setUnicaenServiceEtat($value = null, $append = false) + { + $value = $this->preFormat($value); + $value = array_filter($value, function ($v) { + return preg_match(self::$service_etat_pattern, $v); + }); + + $this->appendOrNot('unicaenServiceEtat', $value, $append); + + return $this; + } + /** * Attribut Ldap "unicaenTermsOfUse" *