You are here

private function FieldProvider::addToLdapProvisioningFields in Lightweight Directory Access Protocol (LDAP) 8.4

Add to LDAP Provisioning fields.

1 call to FieldProvider::addToLdapProvisioningFields()
FieldProvider::loadAttributes in ldap_user/src/FieldProvider.php
LDAP attributes to alter.

File

ldap_user/src/FieldProvider.php, line 351

Class

FieldProvider
Provides the basic and required fields needed for user mappings.

Namespace

Drupal\ldap_user

Code

private function addToLdapProvisioningFields() : void {
  if (isset($this->attributes['[property.name]'])) {
    $this->attributes['[property.name]']
      ->setConfigurationModule('ldap_user');
    $this->attributes['[property.name]']
      ->setConfigurable(TRUE);
  }
  $fields = [
    '[property.name]' => 'Property: Name',
    '[property.mail]' => 'Property: Email',
    '[property.picture]' => 'Property: Picture',
    '[property.uid]' => 'Property: Drupal User Id (uid)',
    '[password.random]' => 'Password: Random password',
    '[password.user-random]' => 'Password: Plain user password or random',
    '[password.user-only]' => 'Password: Plain user password',
  ];
  foreach ($fields as $key => $name) {
    if (isset($this->attributes[$key])) {
      $this->attributes[$key]
        ->setConfigurationModule('ldap_user');
      $this->attributes[$key]
        ->setConfigurable(TRUE);
    }
    else {
      $this->attributes[$key] = new Mapping($key, $name, TRUE, FALSE, [
        self::EVENT_CREATE_LDAP_ENTRY,
        self::EVENT_SYNC_TO_LDAP_ENTRY,
      ], 'ldap_user', 'ldap_user');
    }
  }
}