- Added attributes and also Group[C

This commit is contained in:
Dave Mc Nicoll committed 2023-09-26 11:25:19 -04:00
1 parent bced56ba77
commit 7a06f5fd64
7 files changed
+141 -190

No files matched your search

+46 -134
View File
@@ -4,223 +4,135 @@ namespace Ulmus\Ldap\Entity;
use Ulmus\Ldap\Entity\Field\{ Datetime, LdapDatetime };
/**
* @ObjectClass('user')
*/
use Ulmus\Attribute\Property\{Field, Relation\Ignore, Virtual};
use Ulmus\Ldap\Attribute\Obj\ObjectClass;
#[ObjectClass("user")]
class User
{
use \Ulmus\Ldap\EntityTrait;
/**
* @Field
*/
#[Field]
public string $samaccountname;
/**
* @Field
*/
#[Field]
public string $mail;
/**
* @Field
*/
#[Field]
public string $mailNickname;
/**
* @Field('name' => 'givenname')
*/
#[Field(name: "givenname")]
public string $firstname;
/**
* @Field('name' => 'sn')
*/
#[Field(name: "sn")]
public string $lastname;
/**
* @Field
*/
#[Field]
public string $displayName;
/**
* @Field
*/
#[Field]
public string $name;
/**
* @Field
*/
#[Field]
public string $canonicalName;
/**
* @Field
*/
#[Field]
public string $userPrincipalName;
/**
* @Field
*/
#[Field]
public string $description;
/**
* @Field('name' => "st")
*/
#[Field(name: "st")]
public string $state;
/**
* @Field('name' => 'physicalDeliveryOfficeName')
*/
#[Field(name: "physicalDeliveryOfficeName")]
public string $officeName;
/**
* @Field
*/
#[Field]
public string $company;
/**
* @Field
*/
#[Field]
public string $department;
/**
* @Field
*/
#[Field]
public string $telephoneNumber;
/**
* @Field
*/
#[Field]
public string $title;
/**
* @Virtual
*/
##[Virtual]
# public ? array $memberOf;
/**
* @Field
*/
#[Field]
public int $userAccountControl;
/**
* @Field
*/
#[Field]
public string $extensionAttribute1;
/**
* @Field
*/
#[Field]
public string $extensionAttribute2;
/**
* @Field
*/
#[Field]
public string $extensionAttribute3;
/**
* @Field
*/
#[Field]
public string $extensionAttribute4;
/**
* @Field
*/
#[Field]
public string $extensionAttribute5;
/**
* @Field
*/
#[Field]
public string $extensionAttribute6;
/**
* @Field
*/
#[Field]
public string $extensionAttribute7;
/**
* @Field
*/
#[Field]
public string $extensionAttribute8;
/**
* @Field
*/
#[Field]
public string $extensionAttribute9;
/**
* @Field
*/
#[Field]
public string $extensionAttribute10;
/**
* @Field
*/
#[Field]
public string $extensionAttribute11;
/**
* @Field
*/
#[Field]
public string $extensionAttribute12;
/**
* @Field
*/
#[Field]
public string $extensionAttribute13;
/**
* @Field
*/
#[Field]
public string $extensionAttribute14;
/**
* @Field
*/
#[Field]
public string $extensionAttribute15;
/**
* @Field
*/
#[Field]
public int $logonCount;
/**
* @Field('name' => 'unicodePwd')
*/
#[Field(name: "unicodePwd")]
public string $unicodePassword;
/**
* @Field
*/
#[Field]
public string $userPassword;
/**
* @Field
*/
#[Field]
public string $scriptPath;
/**
* @Field
*/
#[Field]
public string $sid;
/**
* @Field
*/
#[Field]
public string $targetAddress;
/**
* @Field('name' => "lastLogon", 'readonly' => true)
*/
#[Field(name: "lastLogon", readonly: true)]
public LdapDatetime $lastLogon;
/**
* @Field('name' => "whenChanged", 'readonly' => true)
* /
public LdapDatetime $updatedAt;
/**
* @Field('name' => "whenCreated", 'readonly' => true)
* /
public LdapDatetime $createdAt; */
public function __toString() : string
{
return implode(' ', array_filter([ $this->firstname ?? "", $this->lastname ?? "" ])) ?: ( $this->displayName ?? "" );