Changeset 114363 in spip-zone


Ignore:
Timestamp:
Mar 6, 2019, 3:29:10 PM (4 months ago)
Author:
real3t@…
Message:

[Critère {mots}] Compatibilité avec le plugin Mots arborescents (https://contrib.spip.net/4726) : on considère que les objets recherchés pour un mot clef ont le mot clef en question ou au moins un des mots clefs de la branche du mot.

PS : je me suis demandé si faire un pipeline n'aurait pas été aussi une méthode pour résoudre la question (pour rajouter au mots en cours les autres mots de la branche, mais ça m'a semblé plus simple dans la mesure où le besoin ne doit pas concerner d'autres usages).

Location:
_plugins_/critere_mots/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/critere_mots/trunk/critere_mots_fonctions.php

    r104950 r114363  
    117117          else
    118118              $id_mot = sql_getfetsel('id_mot', 'spip_mots', 'titre='.sql_quote($mot));
    119           $where[] = 'id_mot='.sql_quote($id_mot).' and objet='.sql_quote($objet_delatable);
     119          if (function_exists('calcul_branche_mot_in')) {
     120                          $where[] = sql_in('id_mot',calcul_branche_mot_in($id_mot)).' and objet='.sql_quote($objet_delatable);
     121                  } else {
     122                        $where[] = 'id_mot='.sql_quote($id_mot).' and objet='.sql_quote($objet_delatable);
     123                  }               
    120124      }
    121125  }
    122126        elseif($id_ou_titre == 'id'){
    123            foreach($mots as $mot) {
    124                $where[] = 'id_mot='.sql_quote($mot).' and objet='.sql_quote($objet_delatable);
     127           foreach($mots as $id_mot) {
     128          if (function_exists('calcul_branche_mot_in')) {
     129                        $where[] = sql_in('id_mot',calcul_branche_mot_in($id_mot)).' and objet='.sql_quote($objet_delatable);
     130                  } else {
     131                        $where[] = 'id_mot='.sql_quote($id_mot).' and objet='.sql_quote($objet_delatable);
     132                  }
    125133           }
    126134        }
     
    128136           foreach($mots as $mot) {
    129137                $id_mot = sql_getfetsel('id_mot', 'spip_mots', 'titre='.sql_quote($mot));
    130             $where[] = 'id_mot='.sql_quote($id_mot) .' and objet='.sql_quote($objet_delatable);
     138                    if (function_exists('calcul_branche_mot_in')) {
     139                          $where[] = sql_in('id_mot',calcul_branche_mot_in($id_mot)).' and objet='.sql_quote($objet_delatable);
     140                    } else {
     141                          $where[] = 'id_mot='.sql_quote($id_mot).' and objet='.sql_quote($objet_delatable);
     142                    }
    131143           }
    132144        }
  • _plugins_/critere_mots/trunk/paquet.xml

    r114127 r114363  
    22        prefix="critere_mots"
    33        categorie="navigation"
    4         version="4.2.0"
     4        version="4.3.0"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.2.*]"
Note: See TracChangeset for help on using the changeset viewer.