Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 2142 → Rev 2143

/trunk/jrest/lib/GestionMotsClesChemin.php
54,7 → 54,7
"AND id_utilisateur = ".$idUtilisateurP." ".
' -- '.__FILE__.':'.__LINE__;
 
$ids_enfants = Cel::db()->executerRequete($requete);
$ids_enfants = Cel::db()->requeter($requete);
 
return $ids_enfants;
}
70,7 → 70,7
"AND id_utilisateur = $idUtilisateurP ".
' -- '.__FILE__.':'.__LINE__;
 
$infosMotCle = Cel::db()->executerRequete($requete);
$infosMotCle = Cel::db()->requeter($requete);
 
if (!empty($infosMotCle)) {
$idMotCle = $infosMotCle[0]['id_mot_cle'];
128,7 → 128,7
public function lierParId($id_mot_cle, $id_element_lie) {
$idElementLieP = Cel::db()->proteger($id_element_lie);
$idMotCleP = Cel::db()->proteger($id_mot_cle);
 
$requete = "INSERT INTO {$this->table_liaison} (id_element_lie, id_mot_cle) ".
"VALUES ($idElementLieP, $idMotCleP) ".
'ON DUPLICATE KEY UPDATE id_element_lie = id_element_lie '.
142,7 → 142,7
$cheminP = Cel::db()->proteger(self::harmoniserChemin($chemin));
$idElementLieP = Cel::db()->proteger($id_element_lie);
$idUtilisateurP = Cel::db()->proteger($id_utilisateur);
 
$sousRequete = '(SELECT id_mot_cle '.
"FROM {$this->table_mots_cles} ".
"WHERE chemin = $cheminP ".
187,19 → 187,19
}
}
$clauseWhere = implode(' OR ', $combinaisons);
 
$requete = "DELETE FROM {$this->table_liaison} ".
"WHERE $clauseWhere ".
' -- '.__FILE__.':'.__LINE__;
 
$suppression = Cel::db()->executer($requete);
return $suppression;
}
 
public function supprimerToutesLiaisonsPourIdsElementsLies($ids_elements_lies) {
$idsElementsLiesP = Cel::db()->protegerTableau($ids_elements_lies);
$idsElementsLiesP = Cel::db()->proteger($ids_elements_lies);
$listeIds = implode(',', $idsElementsLiesP);
 
$requete = "DELETE FROM {$this->table_liaison} ".
"WHERE id_element_lie IN ($listeIds) ".
' -- '.__FILE__.':'.__LINE__;
212,14 → 212,14
public function supprimerToutesLiaisonsIdsMotsCles($ids_mots_cles, $id_utilisateur) {
$suppression = true;
if (!empty($ids_mots_cles)) {
$idsMotsClesP = Cel::db()->protegerTableau($ids_mots_cles);
$idsMotsClesP = Cel::db()->proteger($ids_mots_cles);
$listeIds = implode(',', $idsMotsClesP);
 
$requete = "DELETE FROM {$this->table_liaison} ".
"WHERE id_mot_cle IN ($listeIds) ".
' -- '.__FILE__.':'.__LINE__;
 
$suppression = Cel::db()->executerRequeteSimple($requete);
$suppression = Cel::db()->executer($requete);
$suppression = ($suppression !== false) ? true : false;
}
return $suppression;
227,13 → 227,13
 
/**
* Supprime toutes les laisons pour un utilisateur et un mot clé (au sens textuel) donnés.
*
*
*/
public function supprimerLiaisonPourMotCleEtIdElementLie($mot_cle, $id_element_lie, $id_utilisateur) {
$idElementLieP = Cel::db()->proteger($id_element_lie);
$motCleP = Cel::db()->proteger($mot_cle);
$idUtilisateurP = Cel::db()->proteger($id_utilisateur);
 
$sousRequete = "SELECT id_mot_cle FROM {$this->table_mots_cles} ".
"WHERE mot_cle = $motCleP ".
"AND id_utilisateur = $idUtilisateurP ";
242,7 → 242,7
"AND id_mot_cle IN ($sousRequete) ".
' -- '.__FILE__.':'.__LINE__;
 
$suppression_liaison = Cel::db()->executerRequeteSimple($requete);
$suppression_liaison = Cel::db()->executer($requete);
$suppression_liaison = ($suppression_liaison !== false);
 
return $suppression_liaison;
284,7 → 284,7
return $renommage;
}
 
/**
/**
* Si aucun id_père n'est mentionné, c'est un déplacement vers la racine de l'arbre (qui n'existe pas).
*/
public function deplacerMotCle($id_mot_cle, $id_pere, $id_utilisateur) {
391,7 → 391,7
$chemin = $chemin[0]['chemin'];
$cheminP = Cel::db()->proteger($chemin.'%');
$idUtilisateurP = Cel::db()->proteger($id_utilisateur);
 
$requete = "DELETE FROM {$this->table_mots_cles} ".
"WHERE chemin LIKE $cheminP ".
"AND id_utilisateur = $idUtilisateurP ".
405,7 → 405,7
}
 
public function obtenirIdsMotClesPourMotsCles($mots_cles, $id_utilisateur) {
$motsClesP = Cel::db()->protegerTableau($mots_cles);
$motsClesP = Cel::db()->proteger($mots_cles);
$listeMotsClesP = implode(',', $motsClesP);
$idUtilisateurP = Cel::db()->proteger($id_utilisateur);
 
414,7 → 414,7
"WHERE mot_cle IN ($listeMotsClesP) ".
"AND id_utilisateur = $idUtilisateurP ".
' -- '.__FILE__.':'.__LINE__;
 
$resultat = Cel::db()->executer($requete);
return $resultat;
}
425,7 → 425,7
}
$listeChemins = implode(',', $chemin);
$idUtilisateurP = Cel::db()->proteger($id_utilisateur);
 
$requete = 'SELECT id_element_lie '.
"FROM {$this->table_liaison} AS cl INNER JOIN {$this->table_mots_cles} AS cm ".
"ON (".
443,16 → 443,16
public function obtenirIdElementsLiesPourIds($ids_mots_cles) {
$idsElementsLies = array();
if (!empty($ids_mots_cles)) {
$idsMotsClesP = Cel::db()->protegerTableau($ids_mots_cles);
$idsMotsClesP = Cel::db()->proteger($ids_mots_cles);
$listeIdsMotsCles = implode(',', $idsMotsClesP);
 
$requete = 'SELECT id_element_lie '.
"FROM {$this->table_liaison} ".
"WHERE id_mot_cle IN ($listeIdsMotsCles) ".
' -- '.__FILE__.':'.__LINE__;
 
$idsElementsLies = Cel::db()->executerRequete($requete);
 
$idsElementsLies = Cel::db()->requeter($requete);
}
return $idsElementsLies;
}
500,17 → 500,17
}
 
/**
* Renvoie un template de requete pour selectionner la concatenation de mots clé
* Renvoie un template de requete pour selectionner la concatenation de mots clé
* pour un element donné (utilisable avec sprintf)
*/
public static function obtenirTemplateRequeteMotsClesTexte($mode) {
list($table_liaison, $table_mots_cles) = self::getTablesMotsClesEtLiaisons($mode);
 
$requeteTpl = 'SELECT GROUP_CONCAT(mot_cle) '.
"FROM $table_mots_cles AS cm ".
"INNER JOIN $table_liaison AS cml ON cml.id_mot_cle = cm.id_mot_cle ".
'AND cml.id_element_lie = %s ';
 
return $requeteTpl;
}
/**
523,7 → 523,7
}
 
// Fonctions utilitaires
 
/**
* La profondeur d'un noeud est déterminée par le nombre de slashs
* qu'il contient (étant donné que ceux ci sont interdits dans le texte du mot clé.
552,9 → 552,9
return $chemin;
}
 
/**
/**
* Fonction de slugification du mot clé
*
*
* Ni slashes ou antislashes ou virgules (ce qui fausserait l'arbre ou bien les mots
* clés texte dans les tables obs ou image)
*/
565,7 → 565,7
return $text;
}
 
/**
/**
* Gardée pour compatibilité ancienne version (mais devrait être supprimée
* dans le futur
*/
603,12 → 603,12
list($table_liaisons, $table_mots_cles) = self::getTablesMotsClesEtLiaisons($mode);
$idUtilisateurP = Cel::db()->proteger($infos_utilisateur['id_utilisateur']);
$emailUtilisateurP = Cel::db()->proteger($email_utilisateur);
 
$requete_migration_mc = "UPDATE {$table_mots_cles} ".
"SET id_utilisateur = $idUtilisateurP ".
"WHERE id_utilisateur = $emailUtilisateurP ";
 
$migration = Cel::db()->executerRequeteSimple($requete_migration_mc);
$migration = Cel::db()->executer($requete_migration_mc);
$migration = ($migration !== false) ? true : false;
return $migration;
}