432 lines
13 KiB
PHP
432 lines
13 KiB
PHP
<?php
|
|
namespace nur\ldap;
|
|
|
|
/**
|
|
* Class PersonObject: une personne au sens inetOrg
|
|
*
|
|
* --autogen-properties-and-methods--
|
|
* @property string $dn
|
|
* @property string[] $sn
|
|
* @property string[] $cn
|
|
* @property string[] $objectClass
|
|
* @property string[] $audio
|
|
* @property string[] $businessCategory
|
|
* @property string[] $carLicense
|
|
* @property string[] $departmentNumber
|
|
* @property string $displayName
|
|
* @property string $employeeNumber
|
|
* @property string[] $employeeType
|
|
* @property string[] $givenName
|
|
* @property string[] $homePhone
|
|
* @property string[] $homePostalAddress
|
|
* @property string[] $initials
|
|
* @property string[] $jpegPhoto
|
|
* @property string[] $labeledURI
|
|
* @property string[] $mail
|
|
* @property string[] $manager
|
|
* @property string[] $mobile
|
|
* @property string[] $o
|
|
* @property string[] $pager
|
|
* @property string[] $photo
|
|
* @property string[] $roomNumber
|
|
* @property string[] $secretary
|
|
* @property string[] $uid
|
|
* @property string[] $userCertificate
|
|
* @property string[] $x500UniqueIdentifier
|
|
* @property string $preferredLanguage
|
|
* @property string[] $userSMIMECertificate
|
|
* @property string[] $userPKCS12
|
|
* @property string[] $title
|
|
* @property int[] $x121Address
|
|
* @property string[] $registeredAddress
|
|
* @property string[] $destinationIndicator
|
|
* @property string $preferredDeliveryMethod
|
|
* @property string[] $telexNumber
|
|
* @property string[] $teletexTerminalIdentifier
|
|
* @property string[] $telephoneNumber
|
|
* @property int[] $internationaliSDNNumber
|
|
* @property string[] $facsimileTelephoneNumber
|
|
* @property string[] $street
|
|
* @property string[] $postOfficeBox
|
|
* @property string[] $postalCode
|
|
* @property string[] $postalAddress
|
|
* @property string[] $physicalDeliveryOfficeName
|
|
* @property string[] $ou
|
|
* @property string[] $st
|
|
* @property string[] $l
|
|
* @property string[] $userPassword
|
|
* @property string[] $seeAlso
|
|
* @property string[] $description
|
|
* @property string[] $eduPersonAffiliation
|
|
* @property string[] $eduPersonNickname
|
|
* @property string $eduPersonOrgDN
|
|
* @property string[] $eduPersonOrgUnitDN
|
|
* @property string $eduPersonPrimaryAffiliation
|
|
* @property string $eduPersonPrincipalName
|
|
* @property string[] $eduPersonPrincipalNamePrior
|
|
* @property string[] $eduPersonEntitlement
|
|
* @property string $eduPersonPrimaryOrgUnitDN
|
|
* @property string[] $eduPersonScopedAffiliation
|
|
* @property string[] $eduPersonTargetedID
|
|
* @property string[] $eduPersonAssurance
|
|
* @property string[] $eduPersonUniqueId
|
|
* @property string[] $eduPersonOrcid
|
|
* @property string[] $eduPersonAnalyticsTag
|
|
* @property string $eduPersonDisplayPronouns
|
|
* @method \nur\ldap\LdapAttr dn()
|
|
* @method \nur\ldap\LdapAttr sn()
|
|
* @method \nur\ldap\LdapAttr cn()
|
|
* @method \nur\ldap\LdapAttr objectClass()
|
|
* @method \nur\ldap\LdapAttr audio()
|
|
* @method \nur\ldap\LdapAttr businessCategory()
|
|
* @method \nur\ldap\LdapAttr carLicense()
|
|
* @method \nur\ldap\LdapAttr departmentNumber()
|
|
* @method \nur\ldap\LdapAttr displayName()
|
|
* @method \nur\ldap\LdapAttr employeeNumber()
|
|
* @method \nur\ldap\LdapAttr employeeType()
|
|
* @method \nur\ldap\LdapAttr givenName()
|
|
* @method \nur\ldap\LdapAttr homePhone()
|
|
* @method \nur\ldap\LdapAttr homePostalAddress()
|
|
* @method \nur\ldap\LdapAttr initials()
|
|
* @method \nur\ldap\LdapAttr jpegPhoto()
|
|
* @method \nur\ldap\LdapAttr labeledURI()
|
|
* @method \nur\ldap\LdapAttr mail()
|
|
* @method \nur\ldap\LdapAttr manager()
|
|
* @method \nur\ldap\LdapAttr mobile()
|
|
* @method \nur\ldap\LdapAttr o()
|
|
* @method \nur\ldap\LdapAttr pager()
|
|
* @method \nur\ldap\LdapAttr photo()
|
|
* @method \nur\ldap\LdapAttr roomNumber()
|
|
* @method \nur\ldap\LdapAttr secretary()
|
|
* @method \nur\ldap\LdapAttr uid()
|
|
* @method \nur\ldap\LdapAttr userCertificate()
|
|
* @method \nur\ldap\LdapAttr x500UniqueIdentifier()
|
|
* @method \nur\ldap\LdapAttr preferredLanguage()
|
|
* @method \nur\ldap\LdapAttr userSMIMECertificate()
|
|
* @method \nur\ldap\LdapAttr userPKCS12()
|
|
* @method \nur\ldap\LdapAttr title()
|
|
* @method \nur\ldap\LdapAttr x121Address()
|
|
* @method \nur\ldap\LdapAttr registeredAddress()
|
|
* @method \nur\ldap\LdapAttr destinationIndicator()
|
|
* @method \nur\ldap\LdapAttr preferredDeliveryMethod()
|
|
* @method \nur\ldap\LdapAttr telexNumber()
|
|
* @method \nur\ldap\LdapAttr teletexTerminalIdentifier()
|
|
* @method \nur\ldap\LdapAttr telephoneNumber()
|
|
* @method \nur\ldap\LdapAttr internationaliSDNNumber()
|
|
* @method \nur\ldap\LdapAttr facsimileTelephoneNumber()
|
|
* @method \nur\ldap\LdapAttr street()
|
|
* @method \nur\ldap\LdapAttr postOfficeBox()
|
|
* @method \nur\ldap\LdapAttr postalCode()
|
|
* @method \nur\ldap\LdapAttr postalAddress()
|
|
* @method \nur\ldap\LdapAttr physicalDeliveryOfficeName()
|
|
* @method \nur\ldap\LdapAttr ou()
|
|
* @method \nur\ldap\LdapAttr st()
|
|
* @method \nur\ldap\LdapAttr l()
|
|
* @method \nur\ldap\LdapAttr userPassword()
|
|
* @method \nur\ldap\LdapAttr seeAlso()
|
|
* @method \nur\ldap\LdapAttr description()
|
|
* @method \nur\ldap\LdapAttr eduPersonAffiliation()
|
|
* @method \nur\ldap\LdapAttr eduPersonNickname()
|
|
* @method \nur\ldap\LdapAttr eduPersonOrgDN()
|
|
* @method \nur\ldap\LdapAttr eduPersonOrgUnitDN()
|
|
* @method \nur\ldap\LdapAttr eduPersonPrimaryAffiliation()
|
|
* @method \nur\ldap\LdapAttr eduPersonPrincipalName()
|
|
* @method \nur\ldap\LdapAttr eduPersonPrincipalNamePrior()
|
|
* @method \nur\ldap\LdapAttr eduPersonEntitlement()
|
|
* @method \nur\ldap\LdapAttr eduPersonPrimaryOrgUnitDN()
|
|
* @method \nur\ldap\LdapAttr eduPersonScopedAffiliation()
|
|
* @method \nur\ldap\LdapAttr eduPersonTargetedID()
|
|
* @method \nur\ldap\LdapAttr eduPersonAssurance()
|
|
* @method \nur\ldap\LdapAttr eduPersonUniqueId()
|
|
* @method \nur\ldap\LdapAttr eduPersonOrcid()
|
|
* @method \nur\ldap\LdapAttr eduPersonAnalyticsTag()
|
|
* @method \nur\ldap\LdapAttr eduPersonDisplayPronouns()
|
|
*/
|
|
class PersonObject extends LdapObject {
|
|
const OBJECT_CLASSES = [
|
|
"inetOrgPerson",
|
|
"eduPerson",
|
|
];
|
|
const PARENT_RDN = "ou=People";
|
|
const DN_NAMES = "uid";
|
|
|
|
#############################################################################
|
|
const _AUTOGEN_CONSTS = ["SCHEMA"];
|
|
const _AUTOGEN_PROPERTIES = [[self::class, "_AUTOGEN_PROPERTIES"]];
|
|
const _AUTOGEN_METHODS = [[self::class, "_AUTOGEN_METHODS"]];
|
|
const SCHEMA = /*autogen*/[
|
|
'dn' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'sn' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'cn' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'objectClass' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'audio' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\BinarySyntax',
|
|
'flags' => 8,
|
|
],
|
|
'businessCategory' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'carLicense' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'departmentNumber' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'displayName' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'employeeNumber' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'employeeType' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'givenName' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'homePhone' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\TelephoneSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'homePostalAddress' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\PostalAddressSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'initials' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'jpegPhoto' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\BinarySyntax',
|
|
'flags' => 8,
|
|
],
|
|
'labeledURI' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'mail' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'manager' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'mobile' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\TelephoneSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'o' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'pager' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\TelephoneSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'photo' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'roomNumber' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'secretary' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'uid' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'userCertificate' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\BinarySyntax',
|
|
'flags' => 10,
|
|
],
|
|
'x500UniqueIdentifier' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\BinarySyntax',
|
|
'flags' => 0,
|
|
],
|
|
'preferredLanguage' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'userSMIMECertificate' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\BinarySyntax',
|
|
'flags' => 8,
|
|
],
|
|
'userPKCS12' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\BinarySyntax',
|
|
'flags' => 8,
|
|
],
|
|
'title' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'x121Address' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\IntegerSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'registeredAddress' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\PostalAddressSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'destinationIndicator' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\PrintableSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'preferredDeliveryMethod' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'telexNumber' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\TelephoneSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'teletexTerminalIdentifier' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'telephoneNumber' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\TelephoneSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'internationaliSDNNumber' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\IntegerSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'facsimileTelephoneNumber' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\TelephoneSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'street' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'postOfficeBox' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'postalCode' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'postalAddress' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\PostalAddressSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'physicalDeliveryOfficeName' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'ou' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'st' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'l' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'userPassword' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'seeAlso' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'description' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonAffiliation' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonNickname' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonOrgDN' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'eduPersonOrgUnitDN' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonPrimaryAffiliation' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'eduPersonPrincipalName' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'eduPersonPrincipalNamePrior' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonEntitlement' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonPrimaryOrgUnitDN' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
'eduPersonScopedAffiliation' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonTargetedID' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonAssurance' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonUniqueId' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonOrcid' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonAnalyticsTag' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 0,
|
|
],
|
|
'eduPersonDisplayPronouns' => [
|
|
'class' => 'nur\\ldap\\syntaxes\\StringSyntax',
|
|
'flags' => 1,
|
|
],
|
|
];
|
|
}
|