Changeset 88403 in spip-zone


Ignore:
Timestamp:
Apr 1, 2015, 1:30:31 PM (4 years ago)
Author:
cedric@…
Message:

Le role vide est un role acceptable. Ne pas confondre avec le role non defini (null) qu'on traite alors soit comme tous '*' ou comme le role par defaut selon les cas

Location:
_plugins_/roles/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/roles/trunk/formulaires/editer_liens.php

    r88325 r88403  
    224224                                                list($objet_source, $ids, $objet_lie, $idl, $role) = $lien;
    225225                                                // appliquer une condition sur le rôle si défini ('*' pour tous les roles)
    226                                                 $cond = $role ? array('role' => $role) : array();
     226                                                $cond = (!is_null($role) ? array('role' => $role) : array());
    227227                                                if ($objet_lien==$objet_source){
    228228                                                        $oups = array_merge($oups, objet_trouver_liens(array($objet_source => $ids), array($objet_lie => $idl), $cond));
  • _plugins_/roles/trunk/inc/roles.php

    r64042 r88403  
    169169
    170170        // chercher d'eventuels rôles transmis
    171         $role = isset($cond['role']) ? $cond['role'] : ($tous_si_absent ? '' : $role_defaut);
     171        $role = (isset($cond['role']) ? $cond['role'] : ($tous_si_absent ? '*' : $role_defaut));
    172172        unset($cond['role']); // cette condition est particuliere...
    173173
    174         if ($colonne_role and $role) {
     174        if ($colonne_role) {
    175175                // on ajoute la condition du role aux autres conditions.
    176176                if ($role != '*') {
     
    278278
    279279        // stocker le résultat
    280         $hash = md5($objet_source . $objet . $id_objet . $objet_lien);
     280        $hash = "$objet_source-$objet-$id_objet-$objet_lien";
    281281        if (isset($done[$hash])) {
    282282                return $done[$hash];
     
    318318        );
    319319}
     320
Note: See TracChangeset for help on using the changeset viewer.