Changeset 31630 in spip-zone


Ignore:
Timestamp:
Sep 17, 2009, 7:44:57 PM (10 years ago)
Author:
kent1@…
Message:

Améliorer les autorisations

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/tickets/inc/tickets_autoriser.php

    r31494 r31630  
    1212        $aut = null;
    1313
    14         switch(strtolower($action))
    15         {
     14        switch(strtolower($action)){
    1615                case 'ecrire':
    1716                        $define = (defined('_TICKETS_AUTORISATION_ECRIRE')) ? _TICKETS_AUTORISATION_ECRIRE : ($utiliser_defaut ? '0minirezo':'');
     
    3433        }
    3534
    36         $liste = explode(':', $define);
    37         if (in_array('webmestre', $liste))
    38                 $aut['auteur'] = explode(':', _ID_WEBMESTRES);
    39         else if (in_array('0minirezo', $liste))
    40                 $aut['statut'] = array('0minirezo');
    41         else if (in_array('1comite', $liste))
    42                 $aut['statut'] = array('0minirezo', '1comite');
    43         else
    44                 $aut['auteur'] = $liste;
     35        if($define){
     36                $liste = explode(':', $define);
     37                if (in_array('webmestre', $liste))
     38                        $aut['auteur'] = explode(':', _ID_WEBMESTRES);
     39                else if (in_array('0minirezo', $liste))
     40                        $aut['statut'] = array('0minirezo');
     41                else if (in_array('1comite', $liste))
     42                        $aut['statut'] = array('0minirezo', '1comite');
     43                else
     44                        $aut['auteur'] = $liste;
     45        }
    4546
    4647        return $aut;
     
    195196        // Si l'auteur en question est l'auteur assigné au ticket,
    196197        // il peut modifier le ticket
    197         $id_assigne = sql_getfetsel('id_assigne','spip_tickets','id_ticket='.intval($id));
    198         if($id_assigne=$qui['id_auteur']){
    199                 return true;
     198        if(intval($id)){
     199                $id_assigne = sql_getfetsel('id_assigne','spip_tickets','id_ticket='.intval($id));
     200                if($id_assigne && ($id_assigne == $qui['id_auteur'])){
     201                        return true;
     202                }
    200203        }
    201204        // Utilisation du CFG si possible
     
    237240        else if ($liste['auteur'])
    238241                $autorise = in_array($qui['id_auteur'], $liste['auteur']);
    239 
    240242        return $autorise;
    241243}
Note: See TracChangeset for help on using the changeset viewer.