252,10 → 252,6 |
$ids_elements_lies = $this->obtenirIdElementsLiesPourIds($ids_a_delier); |
$suppression_liaison = $this->supprimerToutesLiaisonsIdsMotsCles($ids_a_delier, $user_id); |
|
foreach ($ids_elements_lies as $id_element_lie) { |
self::regenererIndexTexteMotCle($id_element_lie['id_element_lie'], $this->mode); |
} |
|
// suppression du mot clé proprement dit ainsi que de ses enfants |
$suppression = $this->supprimerMotCleEtEnfantsParId($id_mot_cle, $user_id); |
|
356,25 → 352,7 |
$requeteTpl = "SELECT $id_element_lie FROM $table_liaison WHERE $id_mot_cle IN (%s) "; |
return $requeteTpl; |
} |
/** |
* Régénère le champ "mots_cles_texte" l'entité liée (image ou obs) |
* et met à jour sa date de modification |
*/ |
public static function regenererIndexTexteMotCle($id_element_lie, $mode) { |
$idElementLieP = Cel::db()->proteger($id_element_lie); |
$sqlTpl = self::obtenirTemplateRequeteMotsClesTexte($mode); |
$sousRequete = sprintf($sqlTpl, $idElementLieP); |
|
list($table, $champId) = self::getNomTablesEtChampsElementsLies($mode); |
$requete = "UPDATE $table ". |
"SET mots_cles_texte = ($sousRequete) ". |
", date_modification = NOW() ". |
"WHERE $champId = $idElementLieP ". |
' -- '.__FILE__.':'.__LINE__; |
|
return Cel::db()->executer($requete); |
} |
|
private static function getNomTablesEtChampsElementsLies($mode) { |
$tables = array(); |
if ($mode == 'obs') { |