Bonjour,
 
J'ai un site en multi-langue (fr et en).
 
Lors d'un ajout d'un nouveau container, j'aimerais pré-remplir les champs du nouveau container par les valeurs du dernier container enregistré.
 
J'arrive à récupérer le dernier container enregistré.
J'arrive aussi à préremplir les champs du container qui est en cours de création.
 
Le problème est que je suis obligé de naviguer entre les 2 langues dans la popup de création du nouveau container, pour que les champs soient enregistrés.
 
Par exemple,
mon dernier container a un champ qui s'appelle testField et qui a comme valeur val_en pour la langue anglaise et val_fr pour la langue française.
Lors de l'ajout d'un nouveau container, j'ai mon champ testField qui est pré-rempli par val_en, et si je ne vais pas voir la valeur en francais et que je clique directement sur ok,
le nouveau container aura comme valeur pour le champ testField, val_en pour l'anglais et "" pour le francais.
 
Même si j'arrive à récupérer la valeur du dernier container dans les 2 langues, je n'arrive pas à spécifier la valeur du champ testField pour une langue X pour le container en cours de création.
 
Auriez-vous une idée ?
 
 
 
Le bout de code qui pré-rempli mon champ, dans eventlistener.jsp, est le suivant :
 
JahiaContainer dernierContainer = registry.getJahiaContainersService().loadContainer(dernierId, LoadFlags.ALL, jData.getProcessingContext(), jData.getProcessingContext().getEntryLoadRequest() );
 
JahiaField updateField = theContainer.getField("testField");
updateField.setValue(dernierContainer.getFieldValue("testField"));

 

 

Merci d'avance

 

Répondre à