5f3957dcdb0622f41d9a503f4585564f31ec2e76
[ldapsaisie.git] / doc / conf / LSobject / LSrelation.docbook
1 <sect2 id="config-LSobject-LSrelation">
2   <title>LSrelation</title>
3   <para>Cette section décrit la manière de configurer les relations entre les
4   &LSobjects; appelées &LSrelation;.</para>
5   
6 <programlisting>
7 <citetitle>Structure</citetitle>
8 <![CDATA[$GLOBALS['LSobjects']['[nom du type d'LSobject]']['LSrelation'] = array (
9   'relation1' => array(
10     'label' => '[label de la relation]',
11     'emptyText' => "[texte affiché si aucune relation avec d'autres objets 
12                      n'existe pour l'objet courant]",
13     'LSobject' => '[le type d'LSobjet en relation]',
14     'list_function' => '[méthode1]',
15     'getkeyvalue_function' => '[methode2]',
16     'update_function' => '[methode3]',
17     'remove_function' => '[methode4]',
18     'rename_function' => '[methode5]',
19     'canEdit_function' => '[methode6]',
20     'canEdit_attribute' => '[nom d'attribut]',
21     'rights' => array(
22       'LSprofile1' => 'r',
23       'LSprofile2' => 'w',
24       ...
25     )
26   )
27 );]]>
28 </programlisting>
29
30 <variablelist>
31 <title>Paramètres de configuration</title>
32
33 <varlistentry>
34   <term>label</term>
35   <listitem>
36     <simpara>Le label de la relation.</simpara>
37   </listitem>
38 </varlistentry>
39
40 <varlistentry>
41   <term>emptyText</term>
42   <listitem>
43     <simpara>Le texte à afficher pour décrire le fait que l'objet courant n'a
44     aucune relation d'établie avec d'autres &LSobjects;. Exemple (au sujet d'un
45     utilisateur) : <emphasis>N'appartient à aucun groupe.</emphasis></simpara>
46   </listitem>
47 </varlistentry>
48
49 <varlistentry>
50   <term>LSobject</term>
51   <listitem>
52     <simpara>Le type d'&LSobject; en relation avec le type courant.</simpara>
53   </listitem>
54 </varlistentry>
55
56 <varlistentry>
57   <term>list_function</term>
58   <listitem>
59     <simpara>La méthode de la classe du type d'&LSobject; en relation, permettant
60     de lister les objets de ce type en relation avec l'objet courant.</simpara>
61   </listitem>
62 </varlistentry>
63
64 <varlistentry>
65   <term>getkeyvalue_function</term>
66   <listitem>
67     <simpara>La méthode de la classe du type d'&LSobject; en relation, permettant
68     d'obtenir la valeur clé à stocker pour établir la relation entre l'objet
69     courant et d'autres objets du type concerné.</simpara>
70   </listitem>
71 </varlistentry>
72
73 <varlistentry>
74   <term>update_function</term>
75   <listitem>
76     <simpara>La méthode de la classe du type d'&LSobject; en relation, permettant
77     de mettre à jour les relations existantes entre l'objet courant et les objets
78     du type concerné. Cette liste d'objets en relation est établie par
79     l'utilisateur à travers l'interface.</simpara>
80   </listitem>
81 </varlistentry>
82
83 <varlistentry>
84   <term>remove_function</term>
85   <listitem>
86     <simpara>La méthode de la classe du type d'&LSobject; en relation permettant
87     de supprimer une relation existante entre l'objet courant et un objet du 
88     type concerné.</simpara>
89   </listitem>
90 </varlistentry>
91
92 <varlistentry>
93   <term>rename_function</term>
94   <listitem>
95     <simpara>La méthode de la classe du type d'&LSobject; en relation permettant
96     d'effectuer les actions nécessaires lorsque l'objet courant est renommé dans
97     le but de maintenir les valeurs clés permettant d'établir les relations entre
98     l'objet courant et les objets en relation avec lui.</simpara>
99   </listitem>
100 </varlistentry>
101
102 <varlistentry>
103   <term>canEdit_function</term>
104   <listitem>
105     <simpara>La méthode de la classe du type d'&LSobject; en relation permettant
106     de vérifier que l'utilisateur à le droit de modifier la relation avec un objet
107     en particulier.</simpara>
108   </listitem>
109 </varlistentry>
110
111 <varlistentry>
112   <term>canEdit_attribute</term>
113   <listitem>
114     <simpara>Le nom de l'attibut du type d'&LSobject; en relation devant être
115     éditable par l'utilisateur pour que celui-ci puisse modifier la relation.
116     </simpara>
117   </listitem>
118 </varlistentry>
119
120 <varlistentry>
121   <term>rights</term>
122   <listitem>
123     <simpara>Tableau associatif dont les clés sont les noms des &LSprofiles; ayant
124     des droits sur cette relation et dont les valeurs associées sont les droits
125     correspondants. La valeur des droits d'un &LSprofile; peut être
126     <literal>r</literal> pour le droit de lecture ou <literal>w</literal> pour
127     le droit de lecture-écriture.Par défaut, un &LSprofile; n'a aucun droit.</simpara>
128   </listitem>
129 </varlistentry>
130
131 </variablelist>
132
133 </sect2>