dn = $dn; $this->username = $username; $this->name = $name; $this->email = $email; $this->role = $role; $this->groupIds = $groupIds; $this->photo = $photo; $this->language = $language; } /** * Return true to allow automatic user creation * * @access public * @return boolean */ public function isUserCreationAllowed() { return LDAP_USER_CREATION; } /** * Get internal id * * @access public * @return string */ public function getInternalId() { return ''; } /** * Get external id column name * * @access public * @return string */ public function getExternalIdColumn() { return 'username'; } /** * Get external id * * @access public * @return string */ public function getExternalId() { return $this->getUsername(); } /** * Get user role * * @access public * @return string */ public function getRole() { return $this->role; } /** * Get username * * @access public * @return string */ public function getUsername() { return LDAP_USERNAME_CASE_SENSITIVE ? $this->username : strtolower($this->username); } /** * Get full name * * @access public * @return string */ public function getName() { return $this->name; } /** * Get user email * * @access public * @return string */ public function getEmail() { return $this->email; } /** * Get groups DN * * @access public * @return string[] */ public function getExternalGroupIds() { return $this->groupIds; } /** * Get extra user attributes * * @access public * @return array */ public function getExtraAttributes() { $attributes = array('is_ldap_user' => 1); if (! empty($this->language)) { $attributes['language'] = LanguageModel::findCode($this->language); } return $attributes; } /** * Get User DN * * @access public * @return string */ public function getDn() { return $this->dn; } /** * Get user photo * * @access public * @return string */ public function getPhoto() { return $this->photo; } }