| 2 |
aperonnet |
1 |
package org.tela_botanica.client;
|
|
|
2 |
|
| 2615 |
aurelien |
3 |
import org.tela_botanica.client.i18n.Msg;
|
| 1958 |
aurelien |
4 |
import org.tela_botanica.client.modeles.objets.Configuration;
|
| 2649 |
aurelien |
5 |
import org.tela_botanica.client.util.Util;
|
| 2846 |
mathias |
6 |
import org.tela_botanica.client.util.Analytics;
|
| 1958 |
aurelien |
7 |
|
|
|
8 |
import com.google.gwt.ajaxloader.client.AjaxLoader;
|
|
|
9 |
import com.google.gwt.ajaxloader.client.AjaxLoader.AjaxLoaderOptions;
|
| 2 |
aperonnet |
10 |
import com.google.gwt.core.client.EntryPoint;
|
| 2649 |
aurelien |
11 |
import com.google.gwt.dom.client.Element;
|
|
|
12 |
import com.google.gwt.user.client.DOM;
|
| 326 |
aurelien |
13 |
import com.google.gwt.user.client.Timer;
|
| 2617 |
mathias |
14 |
import com.google.gwt.user.client.Window.Location;
|
| 326 |
aurelien |
15 |
import com.gwtext.client.core.Ext;
|
| 2 |
aperonnet |
16 |
import com.gwtext.client.widgets.Viewport;
|
|
|
17 |
|
|
|
18 |
/**
|
|
|
19 |
* Entry point classes define <code>onModuleLoad()</code>.
|
|
|
20 |
*/
|
|
|
21 |
public class cel2 implements EntryPoint {
|
|
|
22 |
|
| 7 |
aperonnet |
23 |
/**
|
|
|
24 |
* This is the entry point method.
|
|
|
25 |
*/
|
| 1287 |
aurelien |
26 |
@Override
|
| 1542 |
aurelien |
27 |
public void onModuleLoad() {
|
| 12 |
david |
28 |
|
| 2392 |
aurelien |
29 |
/*
|
| 1958 |
aurelien |
30 |
// A décommenter + compiler en detailed dans le cas d'une erreur
|
|
|
31 |
// survernant uniquement sur le serveur
|
| 2392 |
aurelien |
32 |
GWT.setUncaughtExceptionHandler(null);
|
| 2033 |
aurelien |
33 |
GWT.setUncaughtExceptionHandler(new GWT.UncaughtExceptionHandler() {
|
|
|
34 |
@Override
|
|
|
35 |
public void onUncaughtException(Throwable e) {
|
|
|
36 |
Window.alert("uncaught: " + e.getMessage());
|
|
|
37 |
String s = buildStackTrace(e, "RuntimeException:\n");
|
|
|
38 |
Window.alert(s);
|
|
|
39 |
e.printStackTrace();
|
| 1958 |
aurelien |
40 |
}
|
| 2392 |
aurelien |
41 |
});
|
|
|
42 |
*/
|
| 2649 |
aurelien |
43 |
|
| 2033 |
aurelien |
44 |
// TODO: config devrait être un singleton
|
| 2614 |
aurelien |
45 |
Configuration config = new Configuration();
|
| 2649 |
aurelien |
46 |
|
| 2653 |
aurelien |
47 |
initialiserLangue();
|
| 2846 |
mathias |
48 |
|
|
|
49 |
// stats
|
|
|
50 |
Analytics.pageVisitee();
|
| 2653 |
aurelien |
51 |
|
| 2649 |
aurelien |
52 |
Element elem = DOM.getElementById("texte_chargement");
|
|
|
53 |
elem.setInnerText(Msg.get("chargement"));
|
| 2617 |
mathias |
54 |
|
| 2033 |
aurelien |
55 |
// Chargement de l'api google maps v3 avant l'initialisation pour
|
|
|
56 |
// éviter des "complications"
|
|
|
57 |
// TODO: fabriquer une classe qui cherche dans la config une liste d'api
|
|
|
58 |
// à charger, les instancie et ensuite lance l'application
|
| 1958 |
aurelien |
59 |
AjaxLoaderOptions optAj = AjaxLoaderOptions.newInstance();
|
|
|
60 |
optAj.setOtherParms("key="+Configuration.getCleGoogleMaps()+"&sensor=false");
|
|
|
61 |
|
|
|
62 |
Runnable callback = new Runnable() {
|
|
|
63 |
public void run() {
|
|
|
64 |
initialiserCel();
|
|
|
65 |
};
|
|
|
66 |
};
|
|
|
67 |
AjaxLoader.loadApi("maps", "3", callback, optAj);
|
|
|
68 |
}
|
|
|
69 |
|
|
|
70 |
private void initialiserCel() {
|
|
|
71 |
CarnetEnLigneMediateur carnetEnLigneMediateur= CarnetEnLigneMediateur.Instance();
|
|
|
72 |
new Viewport(carnetEnLigneMediateur.getPanneauPrincipalCarnetEnLigne()) ;
|
| 1542 |
aurelien |
73 |
carnetEnLigneMediateur.getEtatUtilisateur() ;
|
|
|
74 |
|
|
|
75 |
Timer t = new Timer() {
|
|
|
76 |
@Override
|
|
|
77 |
public void run() {
|
| 2649 |
aurelien |
78 |
Ext.get("loading").hide();
|
| 343 |
aurelien |
79 |
}
|
| 1542 |
aurelien |
80 |
};
|
|
|
81 |
|
| 2649 |
aurelien |
82 |
t.schedule(1500);
|
| 7 |
aperonnet |
83 |
}
|
| 2653 |
aurelien |
84 |
|
|
|
85 |
private void initialiserLangue() {
|
|
|
86 |
// Si la langue est précisée dans l'url on la prend,
|
|
|
87 |
// Sinon on tente de prendre celle du systeme si elle est supportée
|
|
|
88 |
// Sinon on prend celle par défaut
|
|
|
89 |
// @TODO: avertissement si la langue indiquée dans l'url n'est pas la bonne
|
|
|
90 |
String langueURL = Location.getParameter("lang");
|
|
|
91 |
String langueSysteme = Util.obtenirCodeLangueSysteme();
|
|
|
92 |
|
|
|
93 |
if (! Msg.init()) {
|
|
|
94 |
Util.LogVersFirebug("La langue par défaut \"" + Msg.getLangueDefaut() + "\" n'a pas pu être chargée");
|
|
|
95 |
}
|
|
|
96 |
|
|
|
97 |
if(langueSysteme != null && !langueSysteme.equals("")) {
|
|
|
98 |
if(Msg.langueEstDisponible(langueSysteme)) {
|
|
|
99 |
Msg.setLangue(langueSysteme);
|
|
|
100 |
}
|
|
|
101 |
}
|
|
|
102 |
|
|
|
103 |
if (langueURL != null && ! langueURL.equals("")) {
|
|
|
104 |
Util.LogVersFirebug("Langue passée dans l'URL: " + langueURL);
|
|
|
105 |
if (! Msg.setLangue(langueURL)) {
|
|
|
106 |
Util.LogVersFirebug("La langue demandée \"" + langueURL + "\" n'a pas pu être chargée");
|
|
|
107 |
}
|
|
|
108 |
}
|
|
|
109 |
}
|
| 2 |
aperonnet |
110 |
}
|