Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 2054 → Rev 2055

/trunk/jrest/services/ImportXLS.php
54,6 → 54,8
// lecture par morceaux
public $ligne_debut = 0;
public $ligne_fin = 0;
public static $gestion_mots_cles = null;
 
public function __construct() {}
public function def_interval($debut, $nb) {
644,19 → 646,14
$liste_mots_cle = $liste_mots_cle_recherche = array_map("trim", array_unique(array_filter(explode(",", $str))));
array_walk($liste_mots_cle_recherche, array(__CLASS__, '__anonyme_4'));
 
// TODO!!!! remplace > (pour les tests uniquement) par un = et supprimer le group by mot_cle
$requete = sprintf("SELECT id_mot_cle_obs, mot_cle FROM cel_mots_cles_obs WHERE id_utilisateur > %d ".
"AND mot_cle IN (%s) ".
"GROUP BY mot_cle",
$id_utilisateur,
implode(',', $liste_mots_cle_recherche));
if(self::$gestion_mots_cles == null) {
$gestion_mots_cles = new GestionMotsCles($this->config, 'obs');
}
$mots_cles_ids = $gestion_mots_cles->obtenirIdsMotClesPourMotsCles($liste_mots_cle, $id_utilisateur);
foreach($mots_cles_ids as $mot_cle) {
$resultat[$mot_cle['id_mot_cle']] = $mot_cle['mot_cle'];
}
 
$resultat_sql = Cel::db()->requeter($requete);
if(!$resultat_sql) return;
 
$resultat = array();
foreach($resultat_sql as $v) $resultat[$v['id_mot_cle_obs']] = $v['mot_cle'];
 
$enregistrement['mots_cles_texte'] = implode(',', $liste_mots_cle);
$enregistrement['_mots_cle'] = array("existing" => $resultat,
"to_insert" => array_diff($liste_mots_cle, $resultat));