Nouvelles:

SMF - Just Installed!

Menu principal

Evènements (AC3U)

Démarré par jlsviro, Mai 14, 2022, 12:04 PM

« précédent - suivant »

jlsviro

Message de trussant 03 Sep 2011, 17:09
Sur internet, j'ai écrit 3 actualités et ça apparaît bien en haut de la page d'accueil, Mais lors de la mise à jour (import Gedcom) les commentaires liés à ces actualités sont effacés. J'ai essayé de ne pas vider la base, et naturellement ils sont conservés, mais alors, tout le fichier des individus est doublé ...  Merci de vos conseils.

Message de jlsviro 03 Sep 2011, 18:10
Il faudrait que l'import Gedcom ne supprime pas les évènements non Gedcom, sinon, de façon automatique, et sans "bricolage",je ne vois pas de solution.

A priori, cela ne devrait pas être trop compliqué à mettre en place.

jean-Luc

Message de jlsviro 04 Sep 2011, 16:04
J'étais allé un peu vite dans ma réponse car je n'avais pas bien lu.

Le commentaire général du site ou les commentaires sur les actualités ne seront plus supprimés dans la prochaine version.

jean-Luc

Message de trussant 04 Sep 2011, 22:08
Merci de cette prise en compte. En attendant j'ai trouvé une solution qui ne brille guère par son élégance mais est efficace. (En d'autres termes c'est un bricolage) Comme on n'affiche que les trois dernières actualités, j'ai pris le parti de me servir toujours des mêmes enregistrements : j'ai affecté aux titres (table 'evenements', champ 'Reference') les clés 100001, 100002, 100003 et dans le script Import_Gedcom.php, j'ai mis une condition pour ne pas effacer les commentaires dont le champ 'Reference_Objet' dans la table 'commentaires' est supérieur à 100000.
J'ai pris des clés numériquement élevées (100001, etc..) pour éviter les télescopages. J'ai vu large !

Message de jlsviro 05 Sep 2011, 14:44
Bonjour,

Voici la correction officielle  :)

Vers la ligne 620 (car il y a d'autres corrections / améliorations), j'ai remplacé :
$req = 'delete from '.$n_commentaires;
par
$req = 'delete from '.$n_commentaires.
         ' where (Type_Objet <> \'G\' and Type_Objet <> \'E\')'.
         ' or (Type_Objet = \'E\' and Reference_Objet not in (select Reference from '.$n_evenements.' where Code_Type = \'AC3U\'))';

Bonne journée.

jean-Luc

Message de trussant 07 Sep 2011, 20:56
Mais c'est bien sûr !
Merci pour tout.