21 |
aurelien |
1 |
package org.tela_botanica.del.client.gestionhistorique;
|
|
|
2 |
|
1092 |
gduche |
3 |
import org.tela_botanica.del.client.cache.CacheClient;
|
1549 |
jpm |
4 |
import org.tela_botanica.del.client.config.Config;
|
347 |
aurelien |
5 |
import org.tela_botanica.del.client.services.rest.ImageServiceConcret;
|
392 |
aurelien |
6 |
import org.tela_botanica.del.client.services.rest.ObservationServiceConcret;
|
959 |
benjamin |
7 |
import org.tela_botanica.del.client.services.rest.ProtocoleServiceConcret;
|
73 |
benjamin |
8 |
import org.tela_botanica.del.client.vues.comparaisoneflore.ComparaisonEflorePresenteur;
|
285 |
benjamin |
9 |
import org.tela_botanica.del.client.vues.comparaisoneflore.ComparaisonEfloreVue;
|
1206 |
gduche |
10 |
import org.tela_botanica.del.client.vues.entete.EntetePresenteur;
|
|
|
11 |
import org.tela_botanica.del.client.vues.entete.EnteteVue;
|
1196 |
gduche |
12 |
import org.tela_botanica.del.client.vues.identiplante.moteur.MoteurIdentiplantePresenteur;
|
|
|
13 |
import org.tela_botanica.del.client.vues.identiplante.moteur.MoteurIdentiplanteVue;
|
|
|
14 |
import org.tela_botanica.del.client.vues.identiplante.plateformedetermination.IdentiplanteDeterminationPresenteur;
|
|
|
15 |
import org.tela_botanica.del.client.vues.identiplante.plateformedetermination.IdentiplanteDeterminationVue;
|
|
|
16 |
import org.tela_botanica.del.client.vues.pictoflora.moteur.MoteurPictofloraPresenteur;
|
|
|
17 |
import org.tela_botanica.del.client.vues.pictoflora.moteur.MoteurPictofloraVue;
|
|
|
18 |
import org.tela_botanica.del.client.vues.pictoflora.plateformedetermination.PictofloraDeterminationPresenteur;
|
|
|
19 |
import org.tela_botanica.del.client.vues.pictoflora.plateformedetermination.PictofloraDeterminationVue;
|
21 |
aurelien |
20 |
|
1549 |
jpm |
21 |
import com.google.gwt.core.shared.GWT;
|
21 |
aurelien |
22 |
import com.google.gwt.event.logical.shared.ValueChangeEvent;
|
|
|
23 |
import com.google.gwt.event.logical.shared.ValueChangeHandler;
|
1549 |
jpm |
24 |
import com.google.gwt.user.client.Window;
|
1188 |
gduche |
25 |
import com.google.gwt.user.client.ui.HTML;
|
1183 |
gduche |
26 |
import com.google.gwt.user.client.ui.Panel;
|
21 |
aurelien |
27 |
import com.google.gwt.user.client.ui.RootPanel;
|
|
|
28 |
|
|
|
29 |
/**
|
|
|
30 |
* @author Benjamin
|
25 |
gduche |
31 |
*
|
21 |
aurelien |
32 |
*/
|
25 |
gduche |
33 |
public class GestionnaireHistorique implements ValueChangeHandler<String> {
|
21 |
aurelien |
34 |
|
25 |
gduche |
35 |
/**
|
|
|
36 |
* Évènement lorsque l'historique change. L'action par défaut affiche la
|
|
|
37 |
* page d'accueil.
|
|
|
38 |
* */
|
|
|
39 |
public void onValueChange(ValueChangeEvent<String> event) {
|
1196 |
gduche |
40 |
//1. définition des variables
|
1183 |
gduche |
41 |
String eventValue = event.getValue();
|
1549 |
jpm |
42 |
GWT.log("Historique -> eventValue:"+eventValue);
|
1183 |
gduche |
43 |
Panel contenu = RootPanel.get("contenu");
|
1549 |
jpm |
44 |
Panel zoneEntete = RootPanel.get("zoneEnteteContenu");
|
1183 |
gduche |
45 |
CacheClient cache = CacheClient.getInstance();
|
1206 |
gduche |
46 |
cache.setPageCourante(eventValue);
|
1183 |
gduche |
47 |
|
|
|
48 |
//2. nettoyer le contenu
|
|
|
49 |
contenu.clear();
|
1206 |
gduche |
50 |
zoneEntete.clear();
|
1183 |
gduche |
51 |
|
1206 |
gduche |
52 |
//3. gérer l'entete
|
1549 |
jpm |
53 |
EntetePresenteur entetePresenteur = new EntetePresenteur(new EnteteVue());
|
1206 |
gduche |
54 |
entetePresenteur.go(zoneEntete);
|
1467 |
aurelien |
55 |
|
1549 |
jpm |
56 |
//Actions en fonction de la valeur de l'évènement et de l'url
|
|
|
57 |
String urlCourante = Window.Location.getHref();
|
|
|
58 |
Config config = new Config();
|
|
|
59 |
String urlAppliObs = config.getUrl("identiplante");
|
|
|
60 |
String urlAppliImg = config.getUrl("pictoflora");
|
|
|
61 |
|
|
|
62 |
if (urlCourante.contains(urlAppliImg)) {
|
|
|
63 |
if (eventValue.startsWith(ConstantesNavigation.PAGE_DETAIL_IMG)) {
|
|
|
64 |
PictofloraDeterminationPresenteur presenteur = new PictofloraDeterminationPresenteur(
|
|
|
65 |
new PictofloraDeterminationVue(),
|
|
|
66 |
new ObservationServiceConcret(),
|
|
|
67 |
new ProtocoleServiceConcret()
|
|
|
68 |
);
|
|
|
69 |
presenteur.go(contenu);
|
|
|
70 |
} else {
|
1183 |
gduche |
71 |
lancerMoteurRechercheImages(contenu);
|
1549 |
jpm |
72 |
}
|
|
|
73 |
} else if (urlCourante.contains(urlAppliObs)) {
|
|
|
74 |
if (eventValue.startsWith(ConstantesNavigation.PAGE_DETAIL_OBS)) {
|
|
|
75 |
IdentiplanteDeterminationPresenteur presenteur = new IdentiplanteDeterminationPresenteur(
|
|
|
76 |
new IdentiplanteDeterminationVue(),
|
|
|
77 |
new ObservationServiceConcret()
|
|
|
78 |
);
|
|
|
79 |
presenteur.go(contenu);
|
|
|
80 |
} else if (eventValue.startsWith(ConstantesNavigation.PAGE_COMPARAISON_EFLORE)) {
|
|
|
81 |
ComparaisonEflorePresenteur presenteur = new ComparaisonEflorePresenteur(
|
|
|
82 |
new ComparaisonEfloreVue(),
|
|
|
83 |
new ImageServiceConcret()
|
|
|
84 |
);
|
|
|
85 |
presenteur.go(contenu);
|
1092 |
gduche |
86 |
} else {
|
1183 |
gduche |
87 |
lancerMoteurRechercheObservation(contenu);
|
1092 |
gduche |
88 |
}
|
1549 |
jpm |
89 |
} else {
|
1183 |
gduche |
90 |
lancerMoteurRechercheObservation(contenu);
|
1035 |
benjamin |
91 |
}
|
1549 |
jpm |
92 |
|
|
|
93 |
// Mise à jour de l'url courante (re-écriture)
|
1467 |
aurelien |
94 |
CacheClient.getInstance().mettreAjourUrlCourante();
|
25 |
gduche |
95 |
}
|
1183 |
gduche |
96 |
|
|
|
97 |
/**
|
|
|
98 |
* Générer la page de recherche observation et l'afficher dans panneau
|
|
|
99 |
* @param Panel panneau le panneau pour afficher le résultat
|
|
|
100 |
* */
|
|
|
101 |
public void lancerMoteurRechercheObservation(Panel panneau) {
|
1196 |
gduche |
102 |
MoteurIdentiplantePresenteur presenteur = new MoteurIdentiplantePresenteur(new ObservationServiceConcret(), new MoteurIdentiplanteVue());
|
1183 |
gduche |
103 |
presenteur.go(panneau);
|
|
|
104 |
}
|
|
|
105 |
|
|
|
106 |
/**
|
|
|
107 |
* Générer la page de recherche images et l'afficher dans panneau
|
|
|
108 |
* @param Panel panneau le panneau pour afficher le résultat
|
|
|
109 |
* */
|
|
|
110 |
public void lancerMoteurRechercheImages(Panel panneau) {
|
1196 |
gduche |
111 |
MoteurPictofloraPresenteur presenteur = new MoteurPictofloraPresenteur(new MoteurPictofloraVue(), new ProtocoleServiceConcret());
|
1183 |
gduche |
112 |
presenteur.go(panneau);
|
|
|
113 |
}
|
21 |
aurelien |
114 |
}
|