Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 1256 → Rev 1257

/trunk/src/org/tela_botanica/del/client/vues/identiplante/plateformedetermination/determinationVue.css
61,6 → 61,10
margin-top:10px;
}
 
.boutonValiderTaxon {
margin-top: -7px;
}
 
.zoneOutils {
width: 15%;
padding-left:10px;
79,7 → 83,7
margin-top:10px;
margin-bottom:10px;
}
.nomTaxonProbable{
.nomTaxonProbable {
padding-left:3px;
}
 
/trunk/src/org/tela_botanica/del/client/vues/identiplante/plateformedetermination/IdentiplanteDeterminationVue.ui.xml
26,6 → 26,7
<g:HTMLPanel styleName="{style.taxonProbable}">
<g:Label styleName="gauche" text="{constants.determinationPlusProbable}" />
<g:Label ui:field="nomTaxonProbable" styleName="gauche gras {style.nomTaxonProbable}"/>
<g:Button ui:field="boutonValidationTaxon" text="{constants.accepter}" styleName="droite bouton {style.boutonValiderTaxon}"/>
<g:HTML><br /></g:HTML>
</g:HTMLPanel>
<g:VerticalPanel ui:field="forum" />
/trunk/src/org/tela_botanica/del/client/vues/identiplante/plateformedetermination/IdentiplanteDeterminationPresenteur.java
20,11 → 20,14
import org.tela_botanica.del.client.composants.rss.RssVue;
import org.tela_botanica.del.client.config.Config;
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
import org.tela_botanica.del.client.i18n.I18n;
import org.tela_botanica.del.client.modeles.Image;
import org.tela_botanica.del.client.modeles.ModeRecherche;
import org.tela_botanica.del.client.modeles.MoyenneVote;
import org.tela_botanica.del.client.modeles.Observation;
import org.tela_botanica.del.client.modeles.ObservationServiceResultat;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.modeles.Utilisateur;
import org.tela_botanica.del.client.modeles.VoteDetermination;
import org.tela_botanica.del.client.navigation.evenement.BusEvenementiel;
import org.tela_botanica.del.client.navigation.evenement.ajoutcommentaire.EvenementAjoutCommentaire;
33,6 → 36,8
import org.tela_botanica.del.client.navigation.evenement.ajoutdetermination.GestionnaireEvenementAjoutDetermination;
import org.tela_botanica.del.client.navigation.evenement.changementimagevalidation.EvenementChangementImageValidation;
import org.tela_botanica.del.client.navigation.evenement.changementimagevalidation.GestionnaireEvenementChangementImageValidation;
import org.tela_botanica.del.client.navigation.evenement.validationobservation.EvenementValidation;
import org.tela_botanica.del.client.navigation.evenement.validationobservationpictoflora.EvenementValidationPictoflora;
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.EvenementVoteDetermination;
import org.tela_botanica.del.client.navigation.evenement.voteDetermination.GestionnaireEvenementVoteDetermination;
import org.tela_botanica.del.client.services.CalculVoteDeterminationService;
40,6 → 45,7
import org.tela_botanica.del.client.services.rest.ObservationService;
import org.tela_botanica.del.client.services.rest.PropositionDeterminationServiceConcret;
import org.tela_botanica.del.client.services.rest.async.ObservationsCallback;
import org.tela_botanica.del.client.services.rest.async.ValidationPropositionCallback;
import org.tela_botanica.del.client.utils.URLUtils;
import org.tela_botanica.del.client.composants.formulairerechercheeflore.FormulaireRechercheEflorePresenteur;
import org.tela_botanica.del.client.composants.forum.ForumPresenteur;
87,6 → 93,14
public HasClickHandlers getLienEflore();
public HasWidgets getZoneRss();
 
HasClickHandlers getBoutonValidationTaxon();
 
void cacherBoutonValidationTaxon();
 
void afficherBoutonValidationTaxon();
 
public void viderMetadonnees();
}
 
private Vue vue;
96,6 → 110,8
private ObservationService observationService;
 
private CacheClient cache = CacheClient.getInstance();
private PropositionDetermination propositionPlusPopulaire;
 
public IdentiplanteDeterminationPresenteur(Vue vue, ObservationService observationService) {
this.vue = vue;
103,7 → 119,6
}
 
public void go(final HasWidgets composite) {
 
// TODO afficher une icone de chargement si le chargement devient trop
// long
// car tout l'écran est asynchrone ici
154,6 → 169,16
if (votesOrdonnes.size() > 0) {
nomTaxon = votesOrdonnes.get(0).getIntituleAssocie();
}
propositionPlusPopulaire = votesOrdonnes.get(0).getPropositionAssociee();
boolean estPropositionInitiale = votesOrdonnes.get(0).getPropositionAssociee().estPropositionInitiale();
Utilisateur utilisateur = CacheClient.getInstance().getUtilisateur();
boolean estAuteurObservation = utilisateur.estIdentifie() && utilisateur.getId().equals(cache.getObservationCourante().getIdAuteur());
if(!estAuteurObservation || estPropositionInitiale || nomTaxon.equals(observation.getNomRetenu())) {
vue.cacherBoutonValidationTaxon();
} else {
vue.afficherBoutonValidationTaxon();
}
 
vue.afficherNomTaxonProbable(nomTaxon);
}
252,5 → 277,39
Window.open(config.getUrl("eflore"), "eFlore", null);
}
});
vue.getBoutonValidationTaxon().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
if(Window.confirm(I18n.getVocabulary().confirmationValidationDetermination())) {
validerPropositionPlusPopulaire();
}
}
});
}
private void validerPropositionPlusPopulaire() {
PropositionDeterminationServiceConcret propositionService = new PropositionDeterminationServiceConcret();
propositionService.validerProposition(propositionPlusPopulaire, new ValidationPropositionCallback() {
@Override
public void surRetour(String objetRetour) {
String observationId = URLUtils.getURLSpecialParameterValue();
observationService.getObservation(observationId, new ObservationsCallback() {
 
@Override
public void surRetour(ObservationServiceResultat objetRetour) {
vue.viderMetadonnees();
new MetadonneesPresenteur(new MetadonneesEnLigneVue(), cache.getObservationCourante(), ModeRecherche.MODE_OBSERVATION, false).go(vue.getMetadonnees());
calculerEtAfficherVoteDeterminationPlusPopulaire();
}
 
@Override
public void surErreur(String messageErreur) {
Window.alert(messageErreur);
}
});
}
});
}
}
/trunk/src/org/tela_botanica/del/client/vues/identiplante/plateformedetermination/IdentiplanteDeterminationVue.java
24,6 → 24,9
Label nomTaxonProbable, lienOuvrages, lienEflore, lienBonnier, lienCles;
@UiField
Button boutonValidationTaxon;
@UiField
Hyperlink lienRetour;
@UiField
99,9 → 102,29
return lienEflore;
}
@Override
public HasWidgets getZoneRss() {
return zoneRss;
}
@Override
public HasClickHandlers getBoutonValidationTaxon() {
return boutonValidationTaxon;
}
@Override
public void cacherBoutonValidationTaxon() {
boutonValidationTaxon.setVisible(false);
}
@Override
public void afficherBoutonValidationTaxon() {
boutonValidationTaxon.setVisible(true);
}
 
@Override
public void viderMetadonnees() {
metadonnees.clear();
}
}