https://dev-eole.ac-dijon.fr/https://dev-eole.ac-dijon.fr/favicon.ico2017-03-30T12:22:33ZEnsemble Ouvert Libre ÉvolutifownCloud - Evolution #19598: Plugin CAS: La base des users ne contient pas de displayNamehttps://dev-eole.ac-dijon.fr/issues/19598?journal_id=926412017-03-30T12:22:33ZChristophe LEONchristophe.leon@ac-reunion.fr
<ul></ul><p><strong>MAJ DU mail</strong>:</p>
<p>dans <strong>envole_cas/envole_cas.php</strong> , mettre une valeur par défaut pour l'attribut mail</p>
<pre><code><code>$this->mailMapping = OCP\Config::getAppValue('user_cas', 'cas_email_mapping', 'email');</code></code></pre>
<p>dans <strong>apps/envole_cas/lib/hooks.php</strong></p>
<p>idem que pour le displayName prendre le premier élément du tableau CAS</p>
<pre><code><code>if (array_key_exists($casBackend->mailMapping, $cas_attributes))<br /> $attributes['cas_email'] = $cas_attributes[$casBackend->mailMapping][0];</code></code></pre>
<p>l'appel a <code>update_mail</code> provoque</p>
<pre><code><code> PHP Fatal error: Class 'OC_Preferences' not found in /var/www/html/owncloud/apps/envole_cas/lib/hooks.php on line 157 </code></code></pre>
<p>OC_Preferences n'est pas déclaré</p>
<p>je propose le code suivant</p>
<pre><code><code>function update_mail($uid, $email) {<br /> $ocConfig = \OC::$server->getConfig();<br /> $ocConfig->setUserValue($uid, 'user_ldap', "email", $email);<br />}</code></code></pre>
<p>et je propose que le displayName contienne le mail entre parenthèse pour que le mail apparaisse lors de la recherche d'un user </p>
<pre><code><code>static public function update_user($uid, $attributes) {<br /> $casBackend = OC_USER_CAS::getInstance();<br /> $mail="";<br /> if(isset($attributes['cas_email'])) {<br /> update_mail($uid, $attributes['cas_email']);<br /> $mail=" (" . $attributes['cas_email'] . ")";<br /> }<br /> if (isset($attributes['cas_name'])) {<br /> update_name($uid, $attributes['cas_name'] . $mail);<br /> }<br /> if (isset($attributes['cas_groups'])) {<br /> update_groups($uid, $attributes['cas_groups'], $casBackend->protectedGroups, false);<br /> }<br /> }</code></code></pre> ownCloud - Evolution #19598: Plugin CAS: La base des users ne contient pas de displayNamehttps://dev-eole.ac-dijon.fr/issues/19598?journal_id=926922017-03-30T14:42:41ZArnaud FORNEROTafornerot@cadoles.com
<ul></ul><p>Alors quasi pareil<br />Je n'ai pas ajouté le mail dans le displayname par contre<br />J'ai modifié la fonction update_mail pour qu'elle fonctionne correctement<br />J'ai compilé un paquet de dev pour test.</p> ownCloud - Evolution #19598: Plugin CAS: La base des users ne contient pas de displayNamehttps://dev-eole.ac-dijon.fr/issues/19598?journal_id=930162017-04-04T12:28:45ZArnaud FORNEROTafornerot@cadoles.com
<ul><li><strong>Statut</strong> changé de <i>Nouveau</i> à <i>Résolu</i></li><li><strong>Version cible</strong> mis à <i>Envole 5.5</i></li></ul> ownCloud - Evolution #19598: Plugin CAS: La base des users ne contient pas de displayNamehttps://dev-eole.ac-dijon.fr/issues/19598?journal_id=963932017-05-22T12:34:25ZArnaud FORNEROTafornerot@cadoles.com
<ul><li><strong>Statut</strong> changé de <i>Résolu</i> à <i>Fermé</i></li></ul>