PhpLDAPAdmin Modèle Affichage

De EjnTricks

Lors de la création ou modification des entrées dans l'annuaire, PhpLDAPAdmin propose un ensemble de modèle pré configuré, présentant des attributs généralement standards en fonction de la classe utilisée. Cependant la modélisation mise en place ne reflète pas nécessairement le dictionnaire mis en place.

Lors de l'utilisation de l'application, le message d'erreur suivant peut être affiché.


Automatiquement supprimé l'objectClass du modèle
Thunderbird: Address Book Entry: mozillaOrgPerson removed from template as it is not defined in the schema
	Attribut automatiquement supprimé du modèle
Thunderbird: Address Book Entry: c removed from template as it is not defined by an ObjectClass
	Automatiquement supprimé l'objectClass du modèle
Samba: Account: sambaSAMAccount removed from template as it is not defined in the schema
	Automatiquement supprimé l'objectClass du modèle
Samba: Machine: sambaSAMAccount removed from template as it is not defined in the schema
	Automatiquement supprimé l'objectClass du modèle
Courier Mail: Alias: courierMailAlias removed from template as it is not defined in the schema
	Automatiquement supprimé l'objectClass du modèle
Samba: Group Mapping: sambaGroupMapping removed from template as it is not defined in the schema
	Attribut automatiquement supprimé du modèle
Samba: Group Mapping: displayName removed from template as it is not defined by an ObjectClass
	Automatiquement supprimé l'objectClass du modèle
Courier Mail: Account: courierMailAccount removed from template as it is not defined in the schema
	Attribut automatiquement supprimé du modèle
Courier Mail: Account: uidNumber removed from template as it is not defined by an ObjectClass
	Attribut automatiquement supprimé du modèle
Courier Mail: Account: gidNumber removed from template as it is not defined by an ObjectClass
	Attribut automatiquement supprimé du modèle
Courier Mail: Account: homeDirectory removed from template as it is not defined by an ObjectClass


Hand-icon.png Votre avis

Current user rating: 100/100 (1 votes)

 You need to enable JavaScript to vote


Configuration-icon.png Configuration

Dans le fichier de configuration, config.php, le paramètre hide_template_warning permet de masquer les messages. Il suffit de spécifier la valeur true.

/* Hide the warnings for invalid objectClasses/attributes in templates. */
// $config->custom->appearance['hide_template_warning'] = false;
$config->custom->appearance['hide_template_warning'] = true;


Delete-file-icon.png Suppression modèles

A noter, cette méthode est un peu plus intrusive et nécessite la manipulation de fichiers. L'utilisation du paramétrage reste la meilleure solution.

Les messages d'erreur nous permettent d'identifier les classes ou attributs problématiques. L'utilitaire grep (sous Linux) va permettre d'identifier les fichiers "fautifs".

La description suivante est faite sur l'installation décrite lors de la mise en place de la version 1.2.2.

#cd /etc/phpldapadmin-1.2.2/templates/creation
#grep mozillaOrgPerson *.xml
mozillaOrgPerson.xml:<objectClass id="mozillaOrgPerson"></objectClass>

#grep \"c\" *.xml
kolabPerson.xml:
posixAccount.xml:<attribute id="gidNumber">
posixAccount.xml:       
posixAccount.xml:       <value><![CDATA[=php.PickList(/;(&(objectClass=posixGroup));gidNumber;%cn%;;;;cn)]]></value>
posixGroup.xml:<attribute id="gidNumber">
posixGroup.xml: <value>=php.GetNextNumber(/;gidNumber)</value>
posixGroup.xml: 
sambaGroupMapping.xml:<attribute id="gidNumber">
sambaGroupMapping.xml:  <value><![CDATA[=php.GetNextNumber(/;gidNumber;true;(&(objectClass=sambaDomain)
(sambaDomainName=mysambadomain))]]></value>
sambaGroupMapping.xml:          <value><![CDATA[=php.GetNextNumber(/;gidNumber;false;(&(objectClass=sambaDomain)
(sambaDomainName=mysambadomain));*2,+1000)]]></value>
sambaMachine.xml:<attribute id="gidNumber">
sambaMachine.xml:       <value><![CDATA[=php.PickList(/;(&(objectClass=posixGroup));gidNumber;%cn%;;;;cn)]]></value>
sambaSamAccount.xml:<attribute id="gidNumber">
sambaSamAccount.xml:    <onchange>=autoFill(homeDirectory;/home/users/%gidNumber|0-0/T%/%uid|3-%)</onchange>
sambaSamAccount.xml:    <onchange>=autoFill(uid;%gidNumber|0-0/T%-%givenName|0-1/l%%sn/l%)</onchange>
sambaSamAccount.xml:    <value><![CDATA[=php.PickList(/;(&(objectClass=posixGroup));gidNumber;%cn%;;;;cn)]]></value>
sambaSamAccount.xml:    <onchange>=autoFill(homeDirectory;/home/users/%gidNumber|0-0/T%/%uid|3-%)</onchange>

#grep homeDirectory *.xml
courierMailAccount.xml: 
courierMailAccount.xml: <onchange>=autoFill(homeDirectory;/home/users/%gidNumber|0-0/T%/%uid|3-%)</onchange>
courierMailAccount.xml: <onchange>=autoFill(homeDirectory;/home/users/%gidNumber|0-0/T%/%uid|3-%)</onchange>
courierMailAccount.xml:<attribute id="homeDirectory">
posixAccount.xml:       
posixAccount.xml:       <onchange>=autoFill(homeDirectory;/home/users/%uid%)</onchange>
posixAccount.xml:<attribute id="homeDirectory">
posixAccount.xml:       
posixAccount.xml:       
sambaMachine.xml:<attribute id="homeDirectory">
sambaSamAccount.xml:    <onchange>=autoFill(homeDirectory;/home/users/%gidNumber|0-0/T%/%uid|3-%)</onchange>
sambaSamAccount.xml:    <onchange>=autoFill(homeDirectory;/home/users/%gidNumber|0-0/T%/%uid|3-%)</onchange>
sambaSamAccount.xml:<attribute id="homeDirectory">

Tous ne seront pas supprimés, comme posixAccount.xml, car réellement utilisés. Cependant, les fichiers peuvent être utiles à terme, et seront donc juste déplacés dans un répertoire de sauvegarde.

#sudo mkdir -p /etc/phpldapadmin-1.2.2/templates.sav/creation
#sudo chown www-data:www-data -R /etc/phpldapadmin-1.2.2/templates.sav
#sudo chmod -R 700 /etc/phpldapadmin-1.2.2/templates.sav
#sudo mv /etc/phpldapadmin-1.2.2/templates/creation/mozillaOrgPerson.xml /etc/phpldapadmin-1.2.2/templates.sav/creation
#sudo mv /etc/phpldapadmin-1.2.2/templates/creation/sambaMachine.xml /etc/phpldapadmin-1.2.2/templates.sav/creation
#sudo mv /etc/phpldapadmin-1.2.2/templates/creation/sambaSamAccount.xml /etc/phpldapadmin-1.2.2/templates.sav/creation
#sudo mv /etc/phpldapadmin-1.2.2/templates/creation/courierMailAlias.xml /etc/phpldapadmin-1.2.2/templates.sav/creation
#sudo mv /etc/phpldapadmin-1.2.2/templates/creation/courierMailAccount.xml /etc/phpldapadmin-1.2.2/templates.sav/creation
#sudo mv /etc/phpldapadmin-1.2.2/templates/creation/sambaGroupMapping.xml /etc/phpldapadmin-1.2.2/templates.sav/creation


Ces manipulations peuvent être à reproduire lors des montées de version de phpLDAPAdmin.