Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 977 → Rev 978

/trunk/src/org/tela_botanica/del/client/composants/formulaires/formulairecommentaire/FormulaireCommentairePresenteur.java
69,11 → 69,12
public FormulaireCommentairePresenteur(Observation observation, CommentaireService commentaireService, Vue vue) {
this.observation = observation;
this.vue = vue;
this.commentaireService=commentaireService;
this.commentaireService = commentaireService;
}
 
public FormulaireCommentairePresenteur(InterventionForum possesseurDeCommentaires, Vue vue) {
public FormulaireCommentairePresenteur(InterventionForum possesseurDeCommentaires, CommentaireService commentaireService, Vue vue) {
this.possesseurDeCommentaires = possesseurDeCommentaires;
this.commentaireService = commentaireService;
this.vue = vue;
}
 
123,7 → 124,7
commentaire.setObservation(CacheClient.getInstance().getObservationCourante());
commentaire.setParent(possesseurDeCommentaires);
}
 
commentaireService.ajouterCommentaire(commentaire, new AjoutCommentaireCallback() {
 
@Override
/trunk/src/org/tela_botanica/del/client/modeles/InterventionForum.java
12,7 → 12,8
private InterventionForum parent;
private Observation observation;
public List<Commentaire> listeCommentaires = new ArrayList<Commentaire>();
 
boolean estAffichee;
public void setId(String id) {
this.id = id;
}
25,6 → 26,14
return idParent;
}
 
public void afficher() {
this.estAffichee = true;
}
public boolean estAffichee() {
return this.estAffichee;
}
public void setIdParent(String idParent) {
this.idParent = idParent;
}
/trunk/src/org/tela_botanica/del/client/vues/plateformedetermination/forum/interventions/forumIntervention.css
1,6 → 1,8
.proposition {
width:550px;
padding:10px;
background:#EEE;
margin-bottom:5px;
}
.nom {
margin-right:5px
31,3 → 33,7
clear:left;
margin-right:5px;
}
.repondre {
text-align:right;
cursor:pointer;
}
/trunk/src/org/tela_botanica/del/client/vues/plateformedetermination/forum/interventions/ForumInterventionVue.ui.xml
20,6 → 20,9
</g:HTMLPanel>
<g:Label ui:field="commentaire" styleName="{style.commentaire}"/>
<g:Hyperlink text="RĂ©pondre" styleName="{style.repondre}" ui:field="repondre"/>
<g:HTMLPanel ui:field="zoneEnfants"></g:HTMLPanel>
</g:HTMLPanel>
</ui:UiBinder>
/trunk/src/org/tela_botanica/del/client/vues/plateformedetermination/forum/interventions/ForumInterventionPresenteur.java
1,5 → 1,9
package org.tela_botanica.del.client.vues.plateformedetermination.forum.interventions;
 
import org.tela_botanica.del.client.composants.fenetreoverlay.FenetreOverlayDefilanteVue;
import org.tela_botanica.del.client.composants.fenetreoverlay.FenetreOverlaySimplePresenteur;
import org.tela_botanica.del.client.composants.formulaires.formulairecommentaire.FormulaireCommentairePresenteur;
import org.tela_botanica.del.client.composants.formulaires.formulairecommentaire.FormulaireCommentaireVue;
import org.tela_botanica.del.client.composants.votes.barrerepartition.BarreRepartitionVotePresenteur;
import org.tela_botanica.del.client.composants.votes.barrerepartition.BarreRepartitionVoteVue;
import org.tela_botanica.del.client.modeles.Commentaire;
7,10 → 11,15
import org.tela_botanica.del.client.modeles.MoyenneVote;
import org.tela_botanica.del.client.modeles.PropositionDetermination;
import org.tela_botanica.del.client.services.CalculVoteDeterminationService;
import org.tela_botanica.del.client.services.rest.CommentaireServiceConcret;
import org.tela_botanica.del.client.services.rest.VoteDeterminationServiceConcret;
import org.tela_botanica.del.client.vues.plateformedetermination.forum.ArbreCommentairePresenteur;
import org.tela_botanica.del.client.vues.plateformedetermination.forum.ArbreCommentaireVue;
 
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
 
19,6 → 28,8
public interface Vue extends IsWidget {
void ajouterInterventionDetermination(PropositionDetermination determination, IsWidget barreRepartition, IsWidget arbreCommentaires);
void ajouterInterventionCommentaire(Commentaire commentaire, IsWidget arbreCommentaires);
HasClickHandlers getRepondre();
HasWidgets getEnfants();
}
 
private Vue vue;
33,7 → 44,12
public void go(HasWidgets composite) {
chargerIntervention();
composite.add(vue.asWidget());
gererEvenements();
}
public void addEnfant(ForumInterventionPresenteur presenteur) {
presenteur.go(vue.getEnfants());
}
 
private void chargerIntervention() {
if (interventionForum instanceof PropositionDetermination) {
60,4 → 76,15
MoyenneVote votes = CalculVoteDeterminationService.calculerVoteDetermination(propositionDetermination);
barreRepartitionVotePresenteur.afficherVotes(votes);
}
private void gererEvenements() {
vue.getRepondre().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
FormulaireCommentairePresenteur commentairePresenteur = new FormulaireCommentairePresenteur(interventionForum, new CommentaireServiceConcret(), new FormulaireCommentaireVue());
FenetreOverlaySimplePresenteur fenetreOverlaySimplePresenteur = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue());
fenetreOverlaySimplePresenteur.ouvrirFenetreModale(commentairePresenteur);
}
});
}
}
/trunk/src/org/tela_botanica/del/client/vues/plateformedetermination/forum/interventions/ForumInterventionVue.java
5,6 → 5,7
import org.tela_botanica.del.client.vues.plateformedetermination.forum.interventions.ForumInterventionPresenteur.Vue;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat;
import com.google.gwt.uibinder.client.UiBinder;
11,6 → 12,8
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HTMLPanel;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.Hyperlink;
import com.google.gwt.user.client.ui.IsWidget;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
29,8 → 32,11
Label nom, nomTaxon, date, commentaire;
@UiField
HTMLPanel voter, zoneVoter, zoneDetermination;
HTMLPanel voter, zoneVoter, zoneDetermination, zoneEnfants;
@UiField
Hyperlink repondre;
public ForumInterventionVue() {
initWidget(uiBinder.createAndBindUi(this));
}
67,5 → 73,16
proposition.setStyleName("enfant");
}
}
@Override
public HasClickHandlers getRepondre() {
return repondre;
}
 
@Override
public HasWidgets getEnfants() {
return zoneEnfants;
}
 
}
/trunk/src/org/tela_botanica/del/client/vues/plateformedetermination/forum/forum.css
1,0 → 0,0
.table {border:solid 1px #DDD}
.table {}
/trunk/src/org/tela_botanica/del/client/vues/plateformedetermination/forum/ForumPresenteur.java
1,5 → 1,6
package org.tela_botanica.del.client.vues.plateformedetermination.forum;
 
import java.util.ArrayList;
import java.util.List;
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.modeles.InterventionForum;
37,26 → 38,43
}
 
private void chargerDeterminations() {
//for (InterventionForum interventionForum : CacheClient.getInstance().getObservationCourante().getInterventionsForum()) {
List<InterventionForum> interventions = CacheClient.getInstance().getObservationCourante().getInterventionsForum();
while (interventions.size() > 0) {
interventions = afficherParent(interventions, interventions.get(0));
int i = 0;
while (interventions.size() > 0 && i < 10) {
i++;
InterventionForum interventionCourante = interventions.get(0);
ForumInterventionPresenteur presenteur = new ForumInterventionPresenteur(new ForumInterventionVue(), interventionCourante);
List<InterventionForum> fils = trouverFils(interventions, interventionCourante);
if (fils.size() > 0) {
for (InterventionForum interventionFille : fils) {
ForumInterventionPresenteur presenteurFille = new ForumInterventionPresenteur(new ForumInterventionVue(), interventionFille);
presenteur.addEnfant(presenteurFille);
//interventions.get(interventions.indexOf(interventionFille)).afficher();
interventions.remove(interventions.indexOf(interventionFille));
//Window.alert(String.valueOf(interventions.indexOf(interventionFille)));
}
}
presenteur.go(vue.getPanneauInterventions());
interventions.remove(interventions.indexOf(interventionCourante));
}
Window.alert("fin" + i);
}
private List<InterventionForum> afficherParent(List<InterventionForum> interventions, InterventionForum interventionForum) {
InterventionForum interventionParent = interventionForum.getParent();
if (interventionParent != null) {
interventions = afficherParent(interventions, interventionParent);
new ForumInterventionPresenteur(new ForumInterventionVue(), interventionForum).go(vue.getPanneauInterventions());
interventions.remove(interventionForum);
} else {
new ForumInterventionPresenteur(new ForumInterventionVue(), interventionForum).go(vue.getPanneauInterventions());
interventions.remove(interventionForum);
 
private List<InterventionForum> trouverFils(List<InterventionForum> interventions, InterventionForum parent) {
List<InterventionForum> fils = new ArrayList<InterventionForum>();
for (InterventionForum interventionCourante : interventions) {
InterventionForum parentCourant = interventionCourante.getParent();
if (parentCourant != null && interventionCourante.getIdParent().equals(parent.getId())) {
fils.add(interventionCourante);
}
}
return interventions;
return fils;
}
 
private void gererEvenements() {
BusEvenementiel.getInstance().addHandler(EvenementAjoutDetermination.TYPE, new GestionnaireEvenementAjoutDetermination() {
 
/trunk/src/org/tela_botanica/del/test/composants/formulaires/FormulaireCommentaireTest.java
43,7 → 43,7
Mockito.when(vue2.getPrenom()).thenReturn("Georges");
Mockito.when(vue2.getNom()).thenReturn("Abitbol");
 
presenteurFormulaireCommentairePourPossesseurCommentaire = new FormulaireCommentairePresenteur(comm, vue2);
presenteurFormulaireCommentairePourPossesseurCommentaire = new FormulaireCommentairePresenteur(comm, commentaireService, vue2);
}
 
@Test