/trunk/src/org/tela_botanica/client/i18n/Messages.java |
---|
2,6 → 2,7 |
import org.tela_botanica.client.modeles.objets.Configuration; |
import com.google.gwt.i18n.client.Dictionary; |
import com.google.gwt.user.client.Window.Location; |
/** |
* Gère l'internationalisation |
20,7 → 21,7 |
/** langues disponibles */ |
protected String languesDisponibles; |
public Messages getInstance() { |
public static Messages getInstance() { |
if (instance == null) { |
instance = new Messages(); |
} |
28,13 → 29,14 |
} |
private Messages() { |
//this.langues = new HashMap<String, Dictionary>(); |
// lire la config pour obtenir les langues |
languesDisponibles = "fr,en"; //Configuration.getLanguesDisponibles(); |
languesDisponibles = Configuration.getLanguesDisponibles(); |
// lire la config et charger la langue par défaut |
langueDefaut = "fr"; //Configuration.getLangueDefaut(); |
setLangue(langueDefaut); |
langueDefaut = Configuration.getLangueDefaut(); |
// Si la langue est précisée dans l'url on la prend, sinon on prend celle par défaut |
// @TODO: avertissement si la langue indiquée dans l'url n'est pas la bonne |
String langueActive = getLangueActiveParUrlOuDefaut(); |
setLangue(langueActive); |
} |
public void setLangue(String langue) { |
47,9 → 49,19 |
* @param cle |
* @return |
*/ |
public String getMessage(String cle) { |
return getMessage(cle, langue); |
public String get(String cle) { |
return get(cle, langue); |
} |
/** |
* Retourne un message paramétré dans la langue en cours |
* @param cle |
* @param[] params |
* @return |
*/ |
public String get(String cle, String[] params) { |
return get(cle, langue, params); |
} |
/** |
* Retourne un message dans la langue demandée; s'il n'est pas trouvé, le cherche |
58,7 → 70,7 |
* @param langue |
* @return |
*/ |
public String getMessage(String cle, String langue) { |
public String get(String cle, String langue) { |
String nomDictionnaire = "messages_" + langue; |
String message; |
try { |
72,4 → 84,25 |
} |
return message; |
} |
/** |
* Retourne un message paramétré dans la langue demandée |
* @param cle |
* @param langue |
* @param[] params |
* @return |
*/ |
public String get(String cle, String langue, String[] params) { |
String message = get(cle, langue); |
for (int i = 0; i < params.length; i++) { |
message = message.replace("{"+i+"}", params[i]); |
} |
return message; |
} |
public String getLangueActiveParUrlOuDefaut() { |
//TODO: déplacer ceci si on est une chouette ! |
return Location.getParameter("lang") == null ? langueDefaut : Location.getParameter("lang"); |
} |
} |
/trunk/src/org/tela_botanica/client/vues/EtatConnexionVue.java |
---|
16,6 → 16,7 |
package org.tela_botanica.client.vues; |
import org.tela_botanica.client.CarnetEnLigneMediateur; |
import org.tela_botanica.client.i18n.Messages; |
import org.tela_botanica.client.modeles.objets.Configuration; |
import com.google.gwt.http.client.URL; |
48,6 → 49,8 |
*/ |
private String labelEtatConnexion = null; |
private Messages msg = Messages.getInstance(); |
/** |
* Ouh c'est pas beau, ça ! Mais avec Google Web Toolshit, ça |
133,7 → 136,8 |
public void setEtat(String identifiant, boolean connecte) { |
if(connecte) { |
labelEtatConnexion = "<div id=\"etatConnexion\">Connecté en tant que "+identifiant+" <a id=\"lienDeconnexion\" href=\"#\">(deconnexion)</a>" ; |
String[] params = {identifiant}; |
labelEtatConnexion = "<div id=\"etatConnexion\">"+msg.get("connecte-en-tant-que", params)+" <a id=\"lienDeconnexion\" href=\"#\">("+msg.get("deconnexion")+")</a>" ; |
labelEtatConnexion += "</div>" ; |
176,7 → 180,7 |
} |
else |
{ |
labelEtatConnexion = "<div id=\"etatConnexion\"> Utilisez ce carnet en ligne pour saisir vos observations, <a id=\"lienConnexion\" href=\"#\">identifiez-vous</a> pour les transmettre à Tela Botanica</div>"; |
labelEtatConnexion = "<div id=\"etatConnexion\"> "+msg.get("cel-utilisation")+", <a id=\"lienConnexion\" href=\"#\">"+msg.get("identifiez-vous")+"</a> "+msg.get("pour-transmettre-tela")+"</div>"; |
labelEtatConnexion += liens ; |
setHtml(labelEtatConnexion); |
ExtElement lienCo = Ext.get("etatConnexion"); |
/trunk/src/org/tela_botanica/client/cel2.java |
---|
1,5 → 1,6 |
package org.tela_botanica.client; |
import org.tela_botanica.client.i18n.Messages; |
import org.tela_botanica.client.modeles.objets.Configuration; |
import com.google.gwt.ajaxloader.client.AjaxLoader; |
35,8 → 36,7 |
}); |
*/ |
// TODO: config devrait être un singleton |
Configuration config = new Configuration(); |
Configuration config = new Configuration(); |
Messages msg = Messages.getInstance(); |
// Chargement de l'api google maps v3 avant l'initialisation pour |
/trunk/src/org/tela_botanica/client/modeles/objets/Configuration.java |
---|
12,6 → 12,7 |
import com.google.gwt.json.client.JSONValue; |
import com.google.gwt.user.client.Window; |
import com.google.gwt.user.client.Window.Location; |
import com.sun.org.apache.bcel.internal.generic.RETURN; |
/** |
* Classe chargeant certains paramètres de configuration à partir d'un fichier |
74,6 → 75,10 |
private static String wikiDescriptionChampsEtendusRestUrlOptions = ""; |
private static String wikiDescriptionChampsEtendusUrlOptionsPageTpl = ""; |
private static String langueDefaut = ""; |
private static String languesDisponibles = ""; |
/** |
* Constructeur sans argument |
149,6 → 154,10 |
wikiDescriptionChampsEtendusUrlOptionsPageTpl = Dictionary.getDictionary("configuration").get( |
"wikiDescriptionChampsEtendusUrlOptionsPageTpl"); |
langueDefaut = Dictionary.getDictionary("configuration").get("langueDefaut"); |
languesDisponibles = Dictionary.getDictionary("configuration").get("languesDisponibles"); |
// Pour test, l'activation de l'ajout des champs étendus est activable ou désactivable par |
// l'url |
if(Location.getParameter("activerSaisieChampsEtendus") != null) { |
301,4 → 310,13 |
public static String getWikiDescriptionChampsEtendusUrlOptionsPageTpl() { |
return wikiDescriptionChampsEtendusUrlOptionsPageTpl; |
} |
public static String getLangueDefaut() { |
return langueDefaut; |
} |
public static String getLanguesDisponibles() { |
return languesDisponibles; |
} |
} |
/trunk/war/i18n/messages_en.js |
---|
1,3 → 1,8 |
var messages_en = { |
"chargement": "Loading page" |
"chargement": "Loading page", |
"cel-utilisation" : "Use the Carnet En Ligne to manage your observations", |
"identifiez-vous" : "log-in", |
"pour-transmettre-tela" : "to transmit them to the Tela Botanica network", |
"connecte-en-tant-que" : "Logged in as {0}", |
"deconnexion" : "logout" |
} |
/trunk/war/i18n/messages_fr.js |
---|
1,4 → 1,9 |
var messages_fr = { |
"chargement": "La page est en train de se charger", |
"chargement-fini": "Ça a fini de charger" |
"chargement-fini": "Ça a fini de charger", |
"cel-utilisation" : "Utilisez ce carnet en ligne pour saisir vos observations", |
"identifiez-vous" : "identifiez-vous", |
"pour-transmettre-tela" : "pour les transmettre à Tela Botanica", |
"connecte-en-tant-que" : "Connecté en tant que {0}", |
"deconnexion" : "deconnexion" |
} |
/trunk/war/config.defaut.js |
---|
22,5 → 22,7 |
wikiDescriptionChampsEtendusPageUrl: "http://localhost/yeswiki/wakka.php?wiki=", |
wikiDescriptionChampsEtendusRestUrl: "http://localhost/yeswiki/api/rest/0.5/pages/", |
wikiDescriptionChampsEtendusRestUrlOptions : "txt.format=text/plain&txt.section.titre=description courte", |
wikiDescriptionChampsEtendusUrlOptionsPageTpl : "&txt.template=tplChampEtendu" |
wikiDescriptionChampsEtendusUrlOptionsPageTpl : "&txt.template=tplChampEtendu", |
langueDefaut: "fr", |
languesDisponibles: "fr,en" |
}; |