Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 2312 → Rev 2313

/branches/v2.4-fourche/jrest/services/InventoryKeyWordImageLink.php
28,7 → 28,7
 
$gestion_mots_cles = new GestionMotsClesChemin($this->config,'images');
$liaison = true;
$liaison = $gestion_mots_cles->modifierLiaisonParTableaux($ids_mots_cles, $ids_images);
$liaison = $gestion_mots_cles->modifierLiaisonParTableaux($ids_mots_cles, $ids_images, true);
foreach($ids_images as $id_element_lie) {
//TODO: que faire si la régénération d'index texte échoue ?
/branches/v2.4-fourche/jrest/services/InventoryKeyWordObsLink.php
25,7 → 25,7
$ids_mots_cles = explode(',',$pairs['mots_cles']);
$gestion_mots_cles = new GestionMotsClesChemin($this->config,'obs');
$liaison_mot_cle = $gestion_mots_cles->modifierLiaisonParTableaux($ids_mots_cles, $ids_obs);
$liaison_mot_cle = $gestion_mots_cles->modifierLiaisonParTableaux($ids_mots_cles, $ids_obs, false);
foreach($ids_obs as $id_element_lie) {
$r_index = GestionMotsClesChemin::regenererIndexTexteMotCle($id_element_lie, 'obs');
/branches/v2.4-fourche/jrest/lib/GestionMotsClesChemin.php
200,9 → 200,11
/**
* Modifie les liaisons aux mots clés pour chaque element lié, en supprimant et ajoutant seulement les
* mots clés qui ont changé, sans toucher à ceux qui sont conservés. Ça évite de tout supprimer avant,
* et ainsi de perdre la date de liaison des mots clés conservés.
* et ainsi de perdre la date de liaison des mots clés conservés.
* Si $supprimer est true, les mots clefs existant mais non spécifiés dans le POST seront supprimés,
* sinon ils seront laissés en l'état.
*/
public function modifierLiaisonParTableaux($ids_mots_cles, $ids_elements_lies) {
public function modifierLiaisonParTableaux($ids_mots_cles, $ids_elements_lies, $supprimer) {
$reussi = true;
 
foreach ($ids_elements_lies as $id_element_lie) {
221,7 → 223,9
 
// changements
$ids_mots_cles_ajoutes = array_diff($ids_mots_cles, $ids_mots_cles_actuels);
$ids_mots_cles_supprimes = array_diff($ids_mots_cles_actuels, $ids_mots_cles);
if ($supprimer === true) {
$ids_mots_cles_supprimes = array_diff($ids_mots_cles_actuels, $ids_mots_cles);
}
 
// insérer
if (count($ids_mots_cles_ajoutes) > 0) {
240,7 → 244,7
}
 
// supprimer
if (count($ids_mots_cles_supprimes) > 0) {
if ($supprimer === true && count($ids_mots_cles_supprimes) > 0) {
$clauses = array();
foreach ($ids_mots_cles_supprimes as $id_mot_cle) {
$idMotCleP = Cel::db()->proteger($id_mot_cle);