Changeset 70113 in spip-zone


Ignore:
Timestamp:
Feb 22, 2013, 5:25:36 PM (8 years ago)
Author:
real3t@…
Message:

Critère {archive} qui ne crie plus sous SPIP 3
Todo : le tester !!!!!!

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _squelettes_/soyezcreateurs_net/plugins_2.1/plugins/soyezcreateurs/soyezcreateurs_fonctions.php

    r69599 r70113  
    2020 * http://www.spip-contrib.net/spip.php?article76
    2121*/
     22
     23if (spip_version_compare($GLOBALS['spip_version_branche'], '3.0.0', '>='))
     24        if (!defined('_SPIP3')) define('_SPIP3', true);                 
     25
    2226function sc_sommaire_article($texte,$istxt=0)
    2327{
     
    806810        if ($boucle->type_requete == 'articles') {
    807811                $art = $boucle->id_table . '.id_article';
    808                 $boucle->from['zzzma'] =  'spip_mots_articles';
     812                if (defined('_SPIP3')) {
     813                        $boucle->from['zzzma'] =  'spip_mots_liens';
     814                } else {
     815                        $boucle->from['zzzma'] =  'spip_mots_articles';
     816                }
    809817                $boucle->from['zzzm'] =  'spip_mots';
    810                 $boucle->join['zzzma'] = array("'articles'","'id_article'");
    811818                $boucle->join['zzzm'] = array("'zzzma'","'id_mot'");
    812819                if ($not) {
     
    836843function masquer_rubriques_where($primary, $_publique=''){
    837844        # hack : on utilise zzz pour eviter que l'optimiseur ne confonde avec un morceau de la requete principale
    838         return "array('NOT IN','$primary','('.sql_get_select('zzzr.id_rubrique','spip_mots_rubriques as zzzr, spip_mots as zzzm',\"zzzr.id_mot=zzzm.id_mot AND zzzm.titre=".sql_quote(_MOT_MASQUER)."\",'','','','',\$connect).')')";
     845        if (defined('_SPIP3')) {
     846                return "array('NOT IN','$primary','('.sql_get_select('zzzr.id_objet','spip_mots_liens as zzzr, spip_mots as zzzm',\"zzzr.id_mot=zzzm.id_mot AND zzzr.objet='rubrique' AND zzzm.titre=".sql_quote(_MOT_MASQUER)."\",'','','','',\$connect).')')";
     847        } else {
     848                return "array('NOT IN','$primary','('.sql_get_select('zzzr.id_rubrique','spip_mots_rubriques as zzzr, spip_mots as zzzm',\"zzzr.id_mot=zzzm.id_mot AND zzzm.titre=".sql_quote(_MOT_MASQUER)."\",'','','','',\$connect).')')";
     849        }
    839850}
    840851
     
    879890        $where = array();
    880891        include_spip('base/abstract_sql');
    881         $liste_rubriques = sql_allfetsel('id_rubrique','spip_mots_rubriques AS mr INNER JOIN spip_mots AS m ON mr.id_mot=m.id_mot','m.titre='.sql_quote(_MOT_MASQUER));
     892        if (defined('_SPIP3')) {
     893                $liste_rubriques = sql_allfetsel('id_objet','spip_mots_liens AS mr INNER JOIN spip_mots AS m ON mr.id_mot=m.id_mot',array('m.titre='.sql_quote(_MOT_MASQUER),'mr.objet="rubrique"'));
     894        } else {
     895                $liste_rubriques = sql_allfetsel('id_rubrique','spip_mots_rubriques AS mr INNER JOIN spip_mots AS m ON mr.id_mot=m.id_mot','m.titre='.sql_quote(_MOT_MASQUER));
     896        }
    882897        $liste_rubriques = array_map('reset',$liste_rubriques);
    883898        $liste_rubriques = array_unique($liste_rubriques);
     
    904919function masquer_articles_where($primary, $_publique=''){
    905920        # hack : on utilise zzz pour eviter que l'optimiseur ne confonde avec un morceau de la requete principale
    906         return "array('<>','$primary','('.sql_get_select('zzza.id_article','spip_articles as zzza, spip_mots_articles as sma',".masquer_rubriques_accessibles_where('zzza.id_rubrique','',$_publique).",'','','','',\$connect).')')";
     921        if (defined('_SPIP3')) {
     922                return "array('<>','$primary','('.sql_get_select('zzza.id_article','spip_articles as zzza, spip_mots_liens as sma',".masquer_rubriques_accessibles_where('zzza.id_rubrique','',$_publique).",'','','','',\$connect).')')";
     923        } else {
     924                return "array('<>','$primary','('.sql_get_select('zzza.id_article','spip_articles as zzza, spip_mots_articles as sma',".masquer_rubriques_accessibles_where('zzza.id_rubrique','',$_publique).",'','','','',\$connect).')')";
     925        }
    907926}
    908927
Note: See TracChangeset for help on using the changeset viewer.