Subversion Repositories eFlore/Applications.cel

Rev

Rev 2615 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
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;
5
 
6
import com.google.gwt.ajaxloader.client.AjaxLoader;
7
import com.google.gwt.ajaxloader.client.AjaxLoader.AjaxLoaderOptions;
2 aperonnet 8
import com.google.gwt.core.client.EntryPoint;
326 aurelien 9
import com.google.gwt.user.client.Timer;
2617 mathias 10
import com.google.gwt.user.client.Window.Location;
326 aurelien 11
import com.gwtext.client.core.Ext;
2 aperonnet 12
import com.gwtext.client.widgets.Viewport;
13
 
14
/**
15
 * Entry point classes define <code>onModuleLoad()</code>.
16
 */
17
public class cel2 implements EntryPoint {
18
 
7 aperonnet 19
	/**
20
	 * This is the entry point method.
21
	 */
1287 aurelien 22
	@Override
1542 aurelien 23
	public void onModuleLoad() {
12 david 24
 
2392 aurelien 25
		/*
1958 aurelien 26
		// A décommenter + compiler en detailed dans le cas d'une erreur
27
		// survernant uniquement sur le serveur
2392 aurelien 28
		GWT.setUncaughtExceptionHandler(null);
2033 aurelien 29
		GWT.setUncaughtExceptionHandler(new GWT.UncaughtExceptionHandler() {
30
			@Override
31
			public void onUncaughtException(Throwable e) {
32
					Window.alert("uncaught: " + e.getMessage());
33
					String s = buildStackTrace(e, "RuntimeException:\n");
34
					Window.alert(s);
35
					e.printStackTrace();
1958 aurelien 36
			}
2392 aurelien 37
		});
38
		*/
2033 aurelien 39
		// TODO: config devrait être un singleton
2614 aurelien 40
		Configuration config = new Configuration();
2617 mathias 41
		// Si la langue est précisée dans l'url on la prend, sinon on prend celle par défaut
42
		// @TODO: avertissement si la langue indiquée dans l'url n'est pas la bonne
43
		String langueURL = Location.getParameter("lang");
44
		if (! Msg.init()) {
45
			cel2.LogVersFirebug("La langue par défaut \"" + Msg.getLangueDefaut() + "\" n'a pas pu être chargée");
46
		}
47
		if (langueURL != null && ! langueURL.equals("")) {
48
			cel2.LogVersFirebug("Langue passée dans l'URL: " + langueURL);
49
			if (! Msg.setLangue(langueURL)) {
50
				cel2.LogVersFirebug("La langue demandée \"" + langueURL + "\" n'a pas pu être chargée");
51
			}
52
		}
53
 
2033 aurelien 54
		// Chargement de l'api google maps v3 avant l'initialisation pour
55
		// éviter des "complications"
56
		// TODO: fabriquer une classe qui cherche dans la config une liste d'api
57
		// à charger, les instancie et ensuite lance l'application
1958 aurelien 58
		AjaxLoaderOptions optAj = AjaxLoaderOptions.newInstance();
59
		optAj.setOtherParms("key="+Configuration.getCleGoogleMaps()+"&sensor=false");
60
 
61
		Runnable callback = new Runnable() {
62
			public void run() {
63
				initialiserCel();
64
			};
65
		};
66
		AjaxLoader.loadApi("maps", "3", callback, optAj);
67
	}
68
 
69
	private void initialiserCel() {
70
		CarnetEnLigneMediateur carnetEnLigneMediateur= CarnetEnLigneMediateur.Instance();
71
		new Viewport(carnetEnLigneMediateur.getPanneauPrincipalCarnetEnLigne()) ;
1542 aurelien 72
		carnetEnLigneMediateur.getEtatUtilisateur() ;
73
 
74
		Timer t = new Timer() {
75
			@Override
76
			public void run() {
77
				 Ext.get("loading").hide();
343 aurelien 78
			}
1542 aurelien 79
		};
80
 
81
		t.schedule(3000);
7 aperonnet 82
	}
1958 aurelien 83
 
2033 aurelien 84
	/*private String buildStackTrace(Throwable t, String log) {
1958 aurelien 85
	     if (t != null) {
86
		     log += t.getClass().toString();
87
		     log += t.getMessage();
88
		     //
89
		     StackTraceElement[] stackTrace = t.getStackTrace();
90
		     if (stackTrace != null) {
91
		    	 StringBuffer trace = new StringBuffer();
92
 
93
			     for (int i = 0; i < stackTrace.length; i++) {
94
			    	 trace.append(stackTrace[i].getClassName() + "." + stackTrace[i].getMethodName() + "("
95
			    			 + stackTrace[i].getFileName() + ":" + stackTrace[i].getLineNumber());
96
			     }
97
 
98
			     log += trace.toString();
99
		     }
100
		     //
101
		     Throwable cause = t.getCause();
102
		     if (cause != null && cause != t) {
103
		    	 log += buildStackTrace(cause, "CausedBy:\n");
104
		     }
105
	     }
106
	     return log;
2392 aurelien 107
	}*/
2617 mathias 108
 
2392 aurelien 109
	public static native void  LogVersFirebug(Object o) /*-{
110
		if (!!($wnd.console && $wnd.console.log)) {
111
			console.log(o);
112
		}
113
	}-*/;
2 aperonnet 114
}