Saisie langue secondaire quand il n'y a rien nulle part

Quand il n'y a de valeur dans un champ particulier pour aucune langue encore, et qu'on la saisit... alors, selon la langue dans laquelle on saisit :

  • dans la langue principale seulement : ça enregistre la valeur sans multi. Ça va puisque c'est la langue par défaut.

  • dans la langue principale puis, sans enregistrer, une langue secondaire : là c'est un multi qui est créé, correctement, avec les 2 langues

  • si on fait la saisie dans une langue secondaire seulement : ça enregistre la valeur sans multi. Tout pareil comme dans le 1er cas. Et donc ça sera utilisé pour toutes les langues ensuite, alors que ç'a été saisi dans une langue secondaire.

Ce dernier point ne semble pas correct

  • car on perd l'information sur la langue de saisie alors qu'on l'a ici sous la main et par la suite on ne peut plus savoir quelle est la langue saisie.
  • Ça cause des problèmes comme #12 : « Perte de certaines traductions dans certains cas »
  • Ou alors c'est considérer que "quand ya aucune version, on ne peut saisir que la langue principale". Dans ce cas il faudrait interdire la saisie dans une langue secondaire mais ... bof, ça semble pas une bonne idée encore que ça puisse se discuter.

Il me semble donc que dans ce cas, ça devrait être enregistré dans un multi avec la langue secondaire choisie c'est tout.

Conditions de reproduction

Ça se produit sur un site avec 2 langues déclarées et qui apparaissent au menu_multilang.

Ça ne se produit pas sur un site où 3 langues sont déclarées et apparaissent dans le menu : FR EN DE.

Mais sur ce même site, si on supprime l'une des 3 langues de la config, il n'en reste plus que 2... et ça se produit à nouveau.

WIP Fix

Ça semble lié à la ligne 278 du js dans multilang_multi_recover()

this.value = (count > 1 ? "<multi>"+value+"</multi>" : value.replace(/^\[[a-z_]+\]/,''));
Modification effectuée par JLuc