Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] Gestion des locales dans les validations de forms

Posted by yan_vn on 06/21/2011 04:47

Bonjour à tous,

Je me heurte à un petit problème pour gérer un formulaire dans une locale es_ES. C'est pour un champ "date". Le formulaire s'affiche bien, le datepicker me retourne une date au bon format (le même que le format français en fait). Par contre la validation des champs en javascript me retourne une erreur en me disant que le format de date est invalide (ce qui est faux), alors que si j'écris à la main un format de date anglais (MM-DD-YYYY) là ça marche.

J'ai cherché un peu, et j'ai vu que dans ./jelix/lib-1.2.1.1/jelix-www/js/jforms_jquery.js , en fait seule la locale fr_* était gérée. Toutes les autres passent par défaut en format anglais. Je vais donc me heurter au même problème quand je vais écrire le site en vietnamien avec la locale vn_VN (le format est aussi le même que le format français).

Quelque chose de "marrant" : j'ai essayé de remplacer fr_ par es_ dans jforms_jquery.js et le problème s'inverse!!! La validation de date est correcte, mais celle retournée par le datepicker est fausse!

Comment corriger ce problème proprement ?

Merci pour votre aide. Cordialement, Yannick.


Yannick DEVOS - http://www.nature-mekong.com/

  [Opened] Gestion des locales dans les validations de forms

Reply #1 Posted by laurentj on 06/21/2011 10:57

Bonjour,

Comment corriger ce problème proprement ?

En contribuant ;-)

Tu nous fait un patch qui permet d'apporter le support multilingue de manière propre et extensible :-)

En tout cas, il n'y a pas d'autres solutions que d'améliorer jforms_jquery.

  [Opened] Gestion des locales dans les validations de forms

Reply #2 Posted by yan_vn on 06/27/2011 09:21

Bonjour Laurent,

Désolé pour ma réponse tardive, je n'ai pas reçu de notification du forum et j'étais pris par mes obligations familiales...

Oui, je veux bien contribuer, c'est justement pour ça que j'écris (sinon j'aurais déjà bricolé un truc et je n'aurais rien dit à personne). Ma question c'est "quelles sont vos recommandations pour écrire un code propre ?". Dans quel fichier vaut-il mieux que je fasse les modifs? vaut-il mieux gérer par cas généraux ou par cas particuliers?... Aussi, quand j'ouvre jforms_jquery.js j'ai un texte écrit au kilomètre. Il y a un truc ou c'est mon éditeur qui déconne ?

Cordialement, Yannick.


Yannick DEVOS - http://www.nature-mekong.com/

  [Opened] Gestion des locales dans les validations de forms

Reply #3 Posted by laurentj on 06/27/2011 10:49

Bonjour,

Déjà, pour contribuer, il y a quelques recommendations.

Ensuite, je pense qu'il faut un fichier par lang, qui redefinisse simplement les methodes check, comme par exemple, dans un fichier js/jforms/lang/es_ES.js, on aurait entre autre :

jFormsJQControlLocaleDate.prototype.check = function(val,jfrm) {
<code>
  // ici code pour checker une date en espagnol

}

</code>

La version originale (dans jforms_jquery.js) implémentant la version en_US.

Il faut ensuite faire en sorte que ce fichier puisse être chargé après jforms_jquery.js. Soit dynamiquement par jforms_jquery (un include()), soit en modifiant le builder html qui génèrerait le <script> qu'il faut.

Pour ton histoire d'éditeur, oui c'est ton éditeur qui déconne. Tu utilises Notepad ? :-)

Soit tu le configures pour qu'il sache ouvrir les fichiers qui ont des sauts de lignes en \n (et pas seulement en \r\n). Soit tu changes d'éditeur. Mais à mon avis, vu comment il réagit, je te recommande de changer, parce que si il ne fait pas ça "de base", c'est louche et probablement qu'il ne doit pas être terrible pour développer (c'est une fonctionnalité de base qu'ont tout bon éditeur pour développeur).

 

  [Opened] Gestion des locales dans les validations de forms

Reply #4 Posted by yan_vn on 06/27/2011 15:40

Ok pour les recommandations, je vais voir pour m'y coller dans la semaine. Je vais essayer de finir les traductions de locales en espagnol pour jforms et les textes les plus visibles pour l'utilisateur aussi.

Pour ton histoire d'éditeur, oui c'est ton éditeur qui déconne. Tu utilises Notepad ?

J'utilise TextWrangler sous OS X, et DashCode accessoirement. Quand je lis le fichier avec "less" dans la console ça me sort la même bouillie... Tu avais ressorti Wordstar pour l'écrire ce fichier là ? ;-)

Merci pour les conseils, Yannick.


Yannick DEVOS - http://www.nature-mekong.com/

  [Opened] Gestion des locales dans les validations de forms

Reply #5 Posted by laurentj on 06/27/2011 18:40

Bah écoute, je suis sous mac aussi. less m'affiche le fichier proprement, n'importe quel éditeur m'affiche le fichier proprement, même textedit et dashcode. Les sauts de lignes, ce sont des \n, ce qui ne doit pas poser de souci (sauf à des trucs aussi con que Notepad sous windows, qui ne cherchent que des \r\n). Donc le problème vient de toi à priori. fichier mal récupéré ?

 
Page
  1. Gestion des locales dans les validations de forms