Changeset 86433 in spip-zone for _plugins_/fulltext


Ignore:
Timestamp:
Dec 3, 2014, 7:00:10 PM (5 years ago)
Author:
nicolas.dorigny@…
Message:

86148 corrigeait des erreurs de jointures pour spip 3, mais lister_tables_spip() n'existe pas pour spip 2.1
On revert à la version précédente, la nouvelle version trunk pour spip 3 est fonctionnelle et n'a plus ces erreurs.

Location:
_plugins_/fulltext/branches/v1
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/fulltext/branches/v1/inc/recherche_to_array.php

    r86148 r86433  
    153153                                        $subscore = "MATCH(".implode($mkeys,',').") AGAINST ($p".($boolean ? ' IN BOOLEAN MODE':'').")";
    154154
    155                                         if (in_array($jtable, $lesliens)) {
     155                                        if (in_array($jtable, $lesliens))
    156156                                                $join = "
    157157                                                LEFT JOIN (
     
    164164                                                 ) AS o$i ON o$i.id_objet=t.$_id_table
    165165                                                ";
    166                                         } else if(in_array("spip_${jtable}s_${table}s", array_keys(lister_tables_spip()))) {
     166                                        else
    167167                                                $join = "
    168168                                                LEFT JOIN (
     
    174174                                                 ) AS o$i ON o$i.$_id_table=t.$_id_table
    175175                                                ";
    176                                         } else {
    177                                                 $join = "
    178                                                 , (select 0 as score) AS o$i
    179                                                 ";
    180                                         }
    181176                                        #var_dump($join);
    182177                                        $from .= $join;
     
    315310                        $ij =  id_table_objet($jtable);
    316311                        $lesliens = recherche_tables_liens();
    317                         $s = null;
    318                         if (in_array($jtable, $lesliens)) {
    319                                 $s = sql_select("id_objet as $it", "spip_${jtable}s_liens", array("objet='$table'", sql_in('id_' . ${jtable}, array_keys($jj))), '', '', '', '', $serveur);
    320                         } else if(in_array("spip_${jtable}s_${table}s", array_keys(lister_tables_spip()))) {
    321                                 $s = sql_select("$it,$ij", "spip_${jtable}s_${table}s", sql_in('id_' . ${jtable}, array_keys($jj)), '', '', '', '', $serveur);
     312                        if (in_array($jtable, $lesliens))
     313                                $s = sql_select("id_objet as $it", "spip_${jtable}s_liens", array("objet='$table'",sql_in('id_'.${jtable}, array_keys($jj))), '','','','',$serveur);
     314                        else
     315                                $s = sql_select("$it,$ij", "spip_${jtable}s_${table}s", sql_in('id_'.${jtable}, array_keys($jj)), '','','','',$serveur);
     316                        while ($t = sql_fetch($s)) {
     317                                $id = $t[$it];
     318                                $joint = $jj[$t[$ij]];
     319                                if (!isset($r))
     320                                        $r = array();
     321                                if (!isset($r[$id]))
     322                                        $r[$id] = array();
     323                                if ($joint['score'])
     324                                        $r[$id]['score'] += $joint['score'];
     325                                if ($joint['champs'])
     326                                foreach($joint['champs'] as $c => $val)
     327                                        $r[$id]['champs'][$jtable.'.'.$c] = $val;
     328                                if ($joint['matches'])
     329                                foreach($joint['matches'] as $c => $val)
     330                                        $r[$id]['matches'][$jtable.'.'.$c] = $val;
    322331                        }
    323                         if($s) {
    324                                 while( $t = sql_fetch($s) ) {
    325                                         $id     = $t[$it];
    326                                         $joint = $jj[$t[$ij]];
    327                                         if( !isset($r) )
    328                                                 $r = array();
    329                                         if( !isset($r[$id]) )
    330                                                 $r[$id] = array();
    331                                         if( $joint['score'] )
    332                                                 $r[$id]['score'] += $joint['score'];
    333                                         if( $joint['champs'] )
    334                                                 foreach( $joint['champs'] as $c => $val )
    335                                                         $r[$id]['champs'][$jtable . '.' . $c] = $val;
    336                                         if( $joint['matches'] )
    337                                                 foreach( $joint['matches'] as $c => $val )
    338                                                         $r[$id]['matches'][$jtable . '.' . $c] = $val;
    339                                 }
    340                         }
    341                        
    342                                
    343332                }
    344333        }
  • _plugins_/fulltext/branches/v1/paquet.xml

    r86148 r86433  
    22        prefix="fulltext"
    33        categorie="navigation"
    4         version="0.8.3"
     4        version="0.8.4"
    55        etat="test"
    66        compatibilite="[2.0.0;3.0.*]"
  • _plugins_/fulltext/branches/v1/plugin.xml

    r86148 r86433  
    88        </slogan>
    99        <auteur>Fil, Gael Chareyre</auteur>
    10         <version>0.8.3</version>
     10        <version>0.8.4</version>
    1111        <version_base>0.2</version_base>
    1212        <etat>test</etat>
Note: See TracChangeset for help on using the changeset viewer.