Changeset 53899 in spip-zone


Ignore:
Timestamp:
Oct 31, 2011, 12:02:41 PM (8 years ago)
Author:
rastapopoulos@…
Message:

Mon test était débile, c'est dès la requête SQL qu'on peut filtrer.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/polyhierarchie/branches/v2.0/inc/polyhier.php

    r53898 r53899  
    134134
    135135        $where = (is_array($id_parent) ? sql_in('id_parent',$id_parent) : ("id_parent=".intval($id_parent)));
     136        if ($objet){
     137                $where_objet = is_array($objet) ? sql_in('objet', $objet) : 'objet = '.sql_quote($objet);
     138                $where .= ' and '.$where_objet;
     139        }
    136140
    137141        // selectionner l'intersection entre base et tableau
     
    144148                $objets_tries = array();
    145149                foreach ($objets as $couple){
    146                         // On ajoute que s'il n'y a pas de filtre, ou bien si le filtre correspond
    147                         if (!$objet or (is_string($objet) and $couple['objet'] == $objet) or (is_array($objet) and in_array($couple['objet'], $objet))){
    148                                 if (isset($objets_tries[$couple['objet']])){
    149                                         $objets_tries[$couple['objet']][] = $couple['id_objet'];
    150                                 }
    151                                 else{
    152                                         $objets_tries[$couple['objet']] = array($couple['id_objet']);
    153                                 }
     150                        if (isset($objets_tries[$couple['objet']])){
     151                                $objets_tries[$couple['objet']][] = $couple['id_objet'];
     152                        }
     153                        else{
     154                                $objets_tries[$couple['objet']] = array($couple['id_objet']);
    154155                        }
    155156                }
Note: See TracChangeset for help on using the changeset viewer.