/trunk/services/modules/0.1/observations/Observation.php |
---|
363,7 → 363,7 |
* |
* @param array $ressources tableau des informations contenues dans l'url après le nom du service |
* @param array $parametres contenu du post |
* @return mixed Chaine "OK" en cas de succès, booléen "false" en cas d'échec |
* @return mixed Chaine "OK" (en majuscule) en cas de succès, booléen "false" en cas d'échec |
*/ |
public function modifier($ressources, $parametres) { |
$retour = false; |
372,7 → 372,8 |
$clientRest = $this->conteneur->getRestClient(); |
$urlTpl = $this->conteneur->getParametre('urlServiceCelObs'); |
$url = $urlTpl.$idObs; |
$retour = $clientRest->modifier($url, $parametres); |
$retourCel = $clientRest->modifier($url, $parametres); |
$retour = preg_match('/^OK$/i', $retourCel) ? 'OK' : false; |
} |
return $retour; |
} |
/trunk/src/org/tela_botanica/del/client/vues/identiplante/plateformedetermination/IdentiplanteDeterminationVue.java |
---|
8,7 → 8,6 |
import com.google.gwt.uibinder.client.UiField; |
import com.google.gwt.user.client.ui.Button; |
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.Label; |
30,7 → 29,7 |
Hyperlink lienRetour; |
@UiField |
Button boutonAjoutProposition, boutonAjoutPropositionBas, boutonAjoutCommentaire, boutonAjoutCommentaireBas; |
Button btnDepublierObs, boutonAjoutProposition, boutonAjoutPropositionBas, boutonAjoutCommentaire, boutonAjoutCommentaireBas; |
@UiField |
Panel metadonnees; |
65,6 → 64,11 |
return boutonAjoutPropositionBas; |
} |
@Override |
public HasClickHandlers getBoutonDepublierObs() { |
return btnDepublierObs; |
} |
public Panel getMetadonnees() { |
return metadonnees; |
} |
/trunk/src/org/tela_botanica/del/client/vues/identiplante/plateformedetermination/determinationVue.css |
---|
5,6 → 5,13 |
margin-top:10px; |
display:inline-block; |
} |
.limiteZoneMenu { |
max-width:840px; |
margin-bottom:10px; |
} |
.limiteZoneMetadonnees { |
width:840px; |
} |
.zoneVote { |
margin-left: 5px; |
height: 100%; |
16,17 → 23,13 |
padding-right:10px; |
text-align:left; |
} |
.taxonPlusProbable { |
float: left; |
} |
.zoneBarreRepartition { |
border: solid 1px #DDD; |
padding: 15px; |
} |
.zoneDetailImage { |
height: 100%; |
width: 255px; |
35,22 → 38,18 |
text-align:left; |
clear: left; |
} |
.zoneImage { |
margin-bottom: 10px; |
margin-right: 15px |
} |
.zoneImage div { |
clear: left; |
padding-top: 5px; |
} |
.zoneImage div img { |
float: left; |
padding: 0 5px 5px 0; |
} |
.boutonProposer { |
float: left; |
padding: 5px; |
60,11 → 59,9 |
margin-right:10px; |
margin-top:10px; |
} |
.boutonValiderTaxon { |
margin-top: -7px; |
} |
.zoneOutils { |
width: 15%; |
padding-left:10px; |
72,12 → 69,9 |
vertical-align:top; |
text-align:left; |
} |
.boutons { |
margin-bottom:15px; |
} |
.lienProposerObservation { |
margin-left:65px; |
margin-top:10px; |
86,7 → 80,6 |
.nomTaxonProbable { |
padding-left:3px; |
} |
.taxonProbable { |
background: none repeat scroll 0 0 #F8F8C3; |
clear: left; |
94,11 → 87,9 |
margin-bottom: 5px; |
padding: 13px 9px; |
} |
.voteProtocole div { |
margin-bottom:10px; |
} |
.voteProtocole div div { |
margin-bottom:0px; |
border:solid 0px red |
106,18 → 97,14 |
.autreOutils { |
margin-top:15px; |
} |
.zonerss { |
margin-top:5px; |
} |
.lienProposerImage { |
margin-top:20px; |
margin-left:70px; |
margin-bottom:10px; |
} |
.lienAide { |
margin-right:70px; |
padding:4px 15px; |
124,4 → 111,10 |
margin-top:10px; |
float:right; |
color:white; |
} |
} |
.btnDepublierObs { |
background:url("./img/16x16/depublier.png") 5px 5px no-repeat; |
padding: 5px 5px 5px 23px; |
} |
.btnDepublierObs:hover { |
background:#8EB533 url("./img/16x16/depublier_actif.png") 5px 5px no-repeat; |
/trunk/src/org/tela_botanica/del/client/vues/identiplante/plateformedetermination/IdentiplanteDeterminationVue.ui.xml |
---|
8,9 → 8,14 |
<ui:style src="determinationVue.css" /> |
<g:HTMLPanel styleName="{style.pageDetermination}"> |
<g:HTMLPanel styleName="limiteMax"> |
<g:Hyperlink ui:field="lienRetour" styleName="lien">Retour</g:Hyperlink> |
<g:HTMLPanel styleName="{style.limiteZoneMenu}"> |
<g:Hyperlink ui:field="lienRetour" styleName="lienRetour">Retour</g:Hyperlink> |
<g:Button ui:field="btnDepublierObs" text="{constants.depublierObs}" styleName="droite bouton {style.btnDepublierObs}" /> |
</g:HTMLPanel> |
<g:HTMLPanel styleName="{style.limiteZoneMetadonnees}"> |
<g:HTMLPanel ui:field="metadonnees" styleName="{style.metadonnees}"/> |
</g:HTMLPanel> |
</g:HTMLPanel> |
<g:HTMLPanel styleName="contenuCentre"> |
<g:HTMLPanel styleName="{style.zoneDetailImage}"> |
<g:VerticalPanel ui:field="detailImageObservation" styleName="{style.zoneImage}"/> |
46,9 → 51,7 |
<g:Label styleName="lienListe labelLien" ui:field="lienOuvrages">Flores numérisées</g:Label> |
<g:Label styleName="lienListe labelLien" ui:field="lienBonnier">Flore Bonnier interactive</g:Label> |
<g:Label styleName="lienListe labelLien" ui:field="lienCles">Clés de détermination</g:Label> |
</g:HTMLPanel> |
</g:HTMLPanel> |
</g:HTMLPanel> |
</ui:UiBinder> |
/trunk/src/org/tela_botanica/del/client/vues/identiplante/plateformedetermination/IdentiplanteDeterminationPresenteur.java |
---|
38,6 → 38,9 |
import org.tela_botanica.del.client.navigation.evenement.changementEtatUtilisateur.GestionnaireEvenementChangementEtatUtilisateur; |
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.depublierObs.EvenementDepublierObs; |
import org.tela_botanica.del.client.navigation.evenement.depublierObs.GestionnaireEvenementDepublierObs; |
import org.tela_botanica.del.client.navigation.evenement.supprimerImage.EvenementSupprimerImage; |
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; |
44,13 → 47,17 |
import org.tela_botanica.del.client.services.rest.CommentaireServiceConcret; |
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.DepublicationObservationCallBack; |
import org.tela_botanica.del.client.services.rest.async.ObservationsCallback; |
import org.tela_botanica.del.client.services.rest.async.SuppressionImageCallback; |
import org.tela_botanica.del.client.services.rest.async.ValidationPropositionCallback; |
import org.tela_botanica.del.client.utils.URLUtils; |
import org.tela_botanica.del.client.navigation.evenement.rechercheobservation.EvenementRechercheObservation; |
import org.tela_botanica.del.client.composants.formulairerechercheeflore.FormulaireRechercheEflorePresenteur; |
import org.tela_botanica.del.client.composants.forum.ForumPresenteur; |
import org.tela_botanica.del.client.composants.forum.ForumVue; |
import com.google.gwt.core.shared.GWT; |
import com.google.gwt.event.dom.client.ClickEvent; |
import com.google.gwt.event.dom.client.ClickHandler; |
import com.google.gwt.event.dom.client.HasClickHandlers; |
80,6 → 87,8 |
public Button getBoutonAjoutCommentaireBas(); |
public HasClickHandlers getBoutonDepublierObs(); |
public HasWidgets getMetadonnees(); |
public void afficherNomTaxonProbable(String nomTaxon); |
103,6 → 112,7 |
public void viderMetadonnees(); |
} |
private Observation observation; |
private Vue vue; |
private FenetreOverlaySimplePresenteur fenetreOverlaySimplePresenteur; |
124,9 → 134,9 |
// car tout l'écran est asynchrone ici |
String observationId = URLUtils.getURLSpecialParameterValue(); |
observationService.getObservation(observationId, new ObservationsCallback() { |
@Override |
public void surRetour(ObservationServiceResultat objetRetour) { |
observation = cache.getObservationCourante(); |
afficherRss(cache.getObservationCourante()); |
// trouve l'image courante si elle n'est pas deja en cache |
List<Image> listeImages = cache.getObservationCourante().getImages(); |
157,7 → 167,6 |
new RssPresenteur(new RssVue(), observation, "Suivre cette observation").go(vue.getZoneRss()); |
} |
private void calculerEtAfficherVoteDeterminationPlusPopulaire() { |
if(cache.getObservationCourante() != null) { |
Observation observation = cache.getObservationCourante(); |
189,7 → 198,6 |
} |
public void gererEvenements() { |
BusEvenementiel.getInstance().addHandler(EvenementChangementEtatUtilisateur.TYPE, new GestionnaireEvenementChangementEtatUtilisateur() { |
@Override |
public void onModificationEtatUtilisateur(EvenementChangementEtatUtilisateur evenementChangementEtatUtilisateur) { |
204,27 → 212,6 |
} |
}); |
ClickHandler clicAjoutProposition = new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
fenetreOverlaySimplePresenteur = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue()); |
fenetreOverlaySimplePresenteur.ouvrirFenetreModale(new FormulairePropositionPresenteur(new FormulairePropositionVue(), new PropositionDeterminationServiceConcret())); |
} |
}; |
vue.getBoutonAjoutProposition().addClickHandler(clicAjoutProposition); |
vue.getBoutonAjoutPropositionBas().addClickHandler(clicAjoutProposition); |
ClickHandler clicAjoutCommentaire = new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
FormulaireCommentairePresenteur commentairePresenteur = new FormulaireCommentairePresenteur(cache.getObservationCourante(), new CommentaireServiceConcret(), new FormulaireCommentaireVue()); |
fenetreOverlaySimplePresenteur = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue()); |
fenetreOverlaySimplePresenteur.ouvrirFenetreModale(commentairePresenteur); |
} |
}; |
vue.getBoutonAjoutCommentaire().addClickHandler(clicAjoutCommentaire); |
vue.getBoutonAjoutCommentaireBas().addClickHandler(clicAjoutCommentaire); |
BusEvenementiel.getInstance().addHandler(EvenementAjoutDetermination.TYPE, new GestionnaireEvenementAjoutDetermination() { |
@Override |
public void onAjoutDetermination(EvenementAjoutDetermination event) { |
235,7 → 222,6 |
}); |
BusEvenementiel.getInstance().addHandler(EvenementAjoutCommentaire.TYPE, new GestionnaireEvenementAjoutCommentaire() { |
@Override |
public void onAjoutCommentaire(EvenementAjoutCommentaire event) { |
if (fenetreOverlaySimplePresenteur != null && fenetreOverlaySimplePresenteur.fenetreModaleEstOuverte()) { |
245,7 → 231,6 |
}); |
BusEvenementiel.getInstance().addHandler(EvenementChangementImageValidation.TYPE, new GestionnaireEvenementChangementImageValidation() { |
@Override |
public void onChangementImage(EvenementChangementImageValidation event) { |
vue.getDetailImageObservation().clear(); |
256,9 → 241,28 |
} |
}); |
ClickHandler clicAjoutProposition = new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
fenetreOverlaySimplePresenteur = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue()); |
fenetreOverlaySimplePresenteur.ouvrirFenetreModale(new FormulairePropositionPresenteur(new FormulairePropositionVue(), new PropositionDeterminationServiceConcret())); |
} |
}; |
vue.getBoutonAjoutProposition().addClickHandler(clicAjoutProposition); |
vue.getBoutonAjoutPropositionBas().addClickHandler(clicAjoutProposition); |
ClickHandler clicAjoutCommentaire = new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
FormulaireCommentairePresenteur commentairePresenteur = new FormulaireCommentairePresenteur(cache.getObservationCourante(), new CommentaireServiceConcret(), new FormulaireCommentaireVue()); |
fenetreOverlaySimplePresenteur = new FenetreOverlaySimplePresenteur(new FenetreOverlayDefilanteVue()); |
fenetreOverlaySimplePresenteur.ouvrirFenetreModale(commentairePresenteur); |
} |
}; |
vue.getBoutonAjoutCommentaire().addClickHandler(clicAjoutCommentaire); |
vue.getBoutonAjoutCommentaireBas().addClickHandler(clicAjoutCommentaire); |
vue.getLienOuvrages().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
Config config = new Config(); |
267,7 → 271,6 |
}); |
vue.getLienBonnier().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
Config config = new Config(); |
276,7 → 279,6 |
}); |
vue.getLienCles().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
Config config = new Config(); |
285,7 → 287,6 |
}); |
vue.getLienEflore().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
Config config = new Config(); |
294,7 → 295,6 |
}); |
vue.getBoutonValidationTaxon().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
if(Window.confirm(I18n.getVocabulary().confirmationValidationDetermination())) { |
302,8 → 302,28 |
} |
} |
}); |
vue.getBoutonDepublierObs().addClickHandler(new ClickHandler() { |
@Override |
public void onClick(ClickEvent event) { |
GWT.log("Lancer evnt : EvenementDepublierObs"); |
BusEvenementiel.getInstance().fireEvent(new EvenementDepublierObs(observation.getId())); |
} |
}); |
BusEvenementiel.getInstance().addHandler(EvenementDepublierObs.TYPE, new GestionnaireEvenementDepublierObs() { |
@Override |
public void onDepublicationObs(EvenementDepublierObs event) { |
GWT.log("Attraper evnt : EvenementDepublierObs (obs:"+event.getIdObs()+")"); |
if (event.getIdObs().equals(observation.getId())) { |
if (Window.confirm(I18n.getVocabulary().confirmationDepublicationObs())) { |
depublierObs(); |
} |
} |
} |
}); |
} |
private void validerPropositionPlusPopulaire() { |
PropositionDeterminationServiceConcret propositionService = new PropositionDeterminationServiceConcret(); |
propositionService.validerProposition(propositionPlusPopulaire, new ValidationPropositionCallback() { |
327,4 → 347,18 |
} |
}); |
} |
private void depublierObs() { |
GWT.log("depublierObs :"+observation.getId()); |
observationService.depublier(observation, new DepublicationObservationCallBack() { |
@Override |
public void surRetour(String depublicationOk) { |
GWT.log("Dépublication obs "+observation.getId()+" "+depublicationOk); |
if (depublicationOk.equals("OK")) { |
BusEvenementiel.getInstance().fireEvent(new EvenementRechercheObservation()); |
} |
} |
}); |
} |
} |
/trunk/src/org/tela_botanica/del/client/vues/pictoflora/resultats/images/ImagePresenteur.java |
---|
17,6 → 17,7 |
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVotePresenteur; |
import org.tela_botanica.del.client.composants.votes.moyennevotes.MoyenneVoteVue; |
import org.tela_botanica.del.client.config.Config; |
import org.tela_botanica.del.client.i18n.I18n; |
import org.tela_botanica.del.client.modeles.Commentaire; |
import org.tela_botanica.del.client.modeles.Image; |
import org.tela_botanica.del.client.modeles.ModeRecherche; |
242,9 → 243,11 |
public void onSuppressionImage(EvenementSupprimerImage event) { |
GWT.log("Attraper evnt : EvenementSupprimerImage (img:"+image.getIdImage()+")"); |
if (event.getIdImage().equals(image.getIdImage())) { |
if (Window.confirm(I18n.getVocabulary().confirmationSuppressionImg())) { |
supprimerImg(); |
} |
} |
} |
}); |
vue.getBoutonSupprimerImage().addClickHandler(new ClickHandler() { |
@Override |
/trunk/src/org/tela_botanica/del/client/services/rest/ObservationService.java |
---|
1,13 → 1,18 |
package org.tela_botanica.del.client.services.rest; |
import org.tela_botanica.del.client.modeles.InformationsRecherche; |
import org.tela_botanica.del.client.modeles.Observation; |
import org.tela_botanica.del.client.modeles.PropositionDetermination; |
import org.tela_botanica.del.client.services.rest.async.DepublicationObservationCallBack; |
import org.tela_botanica.del.client.services.rest.async.ObservationsCallback; |
import org.tela_botanica.del.client.services.rest.async.PropositionDeterminationCallBack; |
public interface ObservationService { |
public void getObservations(InformationsRecherche informationsRecherche, int debut, int fin, String statut, ObservationsCallback callback); |
public void getObservation(String idObservation, |
ObservationsCallback observationsCallback); |
public void getObservation(String idObservation, ObservationsCallback observationsCallback); |
public void depublier(Observation observation, DepublicationObservationCallBack callback); |
} |
/trunk/src/org/tela_botanica/del/client/services/rest/ObservationServiceConcret.java |
---|
2,9 → 2,11 |
import org.tela_botanica.del.client.config.Config; |
import org.tela_botanica.del.client.modeles.InformationsRecherche; |
import org.tela_botanica.del.client.modeles.Observation; |
import org.tela_botanica.del.client.modeles.VoteDetermination; |
import org.tela_botanica.del.client.services.rest.async.DepublicationObservationCallBack; |
import org.tela_botanica.del.client.services.rest.async.ObservationsCallback; |
import org.tela_botanica.del.client.services.rest.async.PHPCallback.ModeRequete; |
import org.tela_botanica.del.client.services.RequestBuilderWithCredentials; |
public class ObservationServiceConcret implements ObservationService { |
32,7 → 34,6 |
} |
private String assemblerChaineRequete(InformationsRecherche infos, int debut, int fin, String statut) { |
String chaineRequete = "?navigation.depart=" + debut + "&navigation.limite=" + (fin - debut); |
if (statut != null && !statut.equals("tous")) { |
chaineRequete += "&masque.type=" + statut; |
43,8 → 44,7 |
} |
@Override |
public void getObservation(String idObservation, |
ObservationsCallback callback) { |
public void getObservation(String idObservation, ObservationsCallback callback) { |
RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.GET, baseUrl + "observations/"+idObservation); |
callback.setMode(ModeRequete.LECTURE); |
try { |
53,4 → 53,17 |
// TODO: handle exception |
} |
} |
public void depublier(Observation observation, DepublicationObservationCallBack callback) { |
String urlService = baseUrl+"observations/"+observation.getId(); |
RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.POST, urlService); |
callback.setMode(ModeRequete.MODIFICATION); |
String chainePost = "transmission=0"; |
try { |
rb.sendRequest(chainePost, callback); |
} catch (Exception e) { |
//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ? |
} |
} |
} |
/trunk/src/org/tela_botanica/del/client/services/rest/async/DepublicationObservationCallBack.java |
---|
New file |
0,0 → 1,13 |
package org.tela_botanica.del.client.services.rest.async; |
import com.google.gwt.json.client.JSONParser; |
public abstract class DepublicationObservationCallBack extends PHPCallback<String> { |
@Override |
public String parserJSON(String retourService) { |
String reponse = JSONParser.parseStrict(retourService).isString().stringValue(); |
return reponse; |
} |
} |
/trunk/src/org/tela_botanica/del/client/composants/metadonnees/MetadonneesEnLigneVue.java |
---|
145,10 → 145,10 |
@Override |
public void masquerChampsVides() { |
HasText[] champs = {nomRetenu, nomCommun, famille, localite, auteur, courrielAuteur, motsClefs, commentaire, lieuDit, station, milieu, dateReleve, dateTransmission}; |
HasText[] champs = {nomRetenu, referentiel, nomCommun, famille, localite, auteur, courrielAuteur, motsClefs, commentaire, lieuDit, station, milieu, dateReleve, dateTransmission}; |
for (int i = 0; i < champs.length; i ++) { |
HasText champ = champs[i]; |
if ("".equals(champ.getText())) { |
if ("".equals(champ.getText().trim())) { |
Widget widget = (Widget) champ; |
widget.getParent().setVisible(false); |
} |
/trunk/src/org/tela_botanica/del/client/composants/metadonnees/metadonneesEnLigne.css |
---|
20,15 → 20,18 |
content:")"; |
} |
.metaPart1 { |
line-height:20px; |
clear:both; |
font-size:15px; |
} |
.metaPart2 { |
line-height:20px; |
clear:both; |
color:#777; |
max-width:850px; |
} |
.metaPart3 { |
line-height:20px; |
display:none; |
max-width:850px; |
} |
36,10 → 39,19 |
} |
.zoneLieu { |
} |
.zoneStation { |
padding-left: 5px; |
} |
.zoneMilieu { |
padding-left: 5px; |
} |
.labelGeo { |
font-weight:bold; |
} |
.espece { |
color:#454341; |
font-size:18px; |
margin-top:-3px; |
margin-top:-2px; |
} |
.label { |
font-size:12px; |
/trunk/src/org/tela_botanica/del/client/composants/metadonnees/MetadonneesEnLigneVue.ui.xml |
---|
26,6 → 26,11 |
<g:Label ui:field="localite" /> |
</g:HTMLPanel> |
<g:HTMLPanel> |
<g:Label text="le" styleName="{style.label}" /> |
<g:InlineLabel ui:field="dateReleve" /> |
</g:HTMLPanel> |
<br/> |
<g:HTMLPanel> |
<g:Label text="par" styleName="{style.label}" /> |
<g:Label ui:field="auteur" title="Voir le profil" /> |
</g:HTMLPanel> |
32,24 → 37,18 |
<g:HTMLPanel> |
(<g:Anchor ui:field="courrielAuteur" />) |
</g:HTMLPanel> |
<g:HTMLPanel> |
<g:Label text="le" styleName="{style.label}" /> |
<g:InlineLabel ui:field="dateReleve" /> |
</g:HTMLPanel> |
</g:HTMLPanel> |
<g:HTMLPanel styleName="{style.metaPart2}"> |
<g:HTMLPanel styleName="{style.zoneLieu}"> |
<g:Label text="Lieu :" /> |
<g:Label text="Lieu :" styleName="{style.labelGeo}"/> |
<g:HTML ui:field="lieuDit" styleName="{style.lieuDit}" title="{constants.lieuDit}" /> |
/ |
</g:HTMLPanel> |
<g:HTMLPanel> |
<g:Label text="Station :" /> |
<g:HTMLPanel styleName="{style.zoneStation}"> |
<g:Label text="Station :" styleName="{style.labelGeo}"/> |
<g:Label ui:field="station" title="{constants.station}" /> |
/ |
</g:HTMLPanel> |
<g:HTMLPanel> |
<g:Label text="Milieu :" /> |
<g:HTMLPanel styleName="{style.zoneMilieu}"> |
<g:Label text="Milieu :" styleName="{style.labelGeo}"/> |
<g:Label ui:field="milieu" /> |
</g:HTMLPanel> |
</g:HTMLPanel> |
/trunk/src/org/tela_botanica/del/client/i18n/Vocabulary.properties |
---|
93,6 → 93,8 |
lienAidePictoflora = http://www.tela-botanica.org/page:liste_projets?id_projet=112&act=wikini |
lienAideIdentiplante = http://www.tela-botanica.org/page:liste_projets?id_projet=95&act=wikini |
signalerIdentification = Signaler une mauvaise identification |
supprimerImage = Supprimer l'image définitivement |
confirmationSuppressionImg = Êtes-vous certain de vouloir supprimer l'image DÉFINITIVEMENT ? L'image est-elle réellement inutilisable ? Avez-vous contacté son auteur au préalable ? |
#ecran recherche observation |
rechercherObservation = Identifier une plante |
131,6 → 133,8 |
confirmationSuppressionCommentaire = Êtes vous sur de vouloir supprimer ce commentaire ? |
confirmationSuppressionDetermination = Êtes vous sur de vouloir supprimer cette détermination ? |
confirmationValidationDetermination = Êtes vous sur de vouloir modifier votre observation pour le nom indiqué par cette proposition ? |
depublierObs = Dépublier |
confirmationDepublicationObs = Avez-vous contacté l'auteur de l'observation ? Êtes-vous vraiment certain de vouloir dépublier le travail de cette personne ? |
#ecran comparaison |
dateObservation = Date de la prise de vue |
142,7 → 146,7 |
dateValidation = Date de dernière validation |
transmisLe = Transmis le |
#ecran votes protcoles |
#ecran votes protocoles |
votes = Moyenne des votes |
votesMoyennePrecise = Moyenne pondérée des votes : |
infoVotes = Voici la moyenne des votes en fonction du protocole choisi : |
183,7 → 187,6 |
referentielIsfan = Flore d'Afrique du Nord |
referentielApd = Flore d'Afrique de l'Ouest et du Centre |
#composant pagination |
afficher = Afficher |
elements_par_page = éléments par page |
/trunk/src/org/tela_botanica/del/client/i18n/Vocabulary.java |
---|
1519,11 → 1519,38 |
String vous(); |
/** |
* Translated "Vous". |
* Translated "Supprimer l'image définitivement". |
* |
* @return translated "Vous" |
* @return translated "Supprimer l'image définitivement" |
*/ |
@DefaultStringValue("Supprimer l'image définitivement") |
@Key("supprimerImage") |
String supprimerImage(); |
/** |
* Translated "Êtes-vous certain de vouloir supprimer l'image DÉFINITIVEMENT ? L'image est-elle réellement inutilisable ? Avez-vous contacté son auteur au préalable ?". |
* |
* @return translated "Êtes-vous certain de vouloir supprimer l'image DÉFINITIVEMENT ? L'image est-elle réellement inutilisable ? Avez-vous contacté son auteur au préalable ?" |
*/ |
@DefaultStringValue("Êtes-vous certain de vouloir supprimer l'image DÉFINITIVEMENT ? L'image est-elle réellement inutilisable ? Avez-vous contacté son auteur au préalable ?") |
@Key("confirmationSuppressionImg") |
String confirmationSuppressionImg(); |
/** |
* Translated "Dépublier". |
* |
* @return translated "Dépublier" |
*/ |
@DefaultStringValue("Dépublier") |
@Key("depublierObs") |
String depublierObs(); |
/** |
* Translated "Avez-vous contacté l'auteur de l'observation ? Êtes-vous vraiment certain de vouloir dépublier le travail de cette personne ?". |
* |
* @return translated "Avez-vous contacté l'auteur de l'observation ? Êtes-vous vraiment certain de vouloir dépublier le travail de cette personne ?" |
*/ |
@DefaultStringValue("Avez-vous contacté l'auteur de l'observation ? Êtes-vous vraiment certain de vouloir dépublier le travail de cette personne ?") |
@Key("confirmationDepublicationObs") |
String confirmationDepublicationObs(); |
} |
/trunk/src/org/tela_botanica/del/client/navigation/evenement/rechercheobservation/EvenementRechercheObservation.java |
---|
4,10 → 4,9 |
public class EvenementRechercheObservation extends GwtEvent<GestionnaireEvenementRechercheObservation> { |
public static com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementRechercheObservation> TYPE = new com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementRechercheObservation>(); |
public static Type<GestionnaireEvenementRechercheObservation> TYPE = new Type<GestionnaireEvenementRechercheObservation>(); |
public EvenementRechercheObservation() { |
} |
public EvenementRechercheObservation() {} |
@Override |
protected void dispatch(GestionnaireEvenementRechercheObservation handler) { |
15,7 → 14,7 |
} |
@Override |
public com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementRechercheObservation> getAssociatedType() { |
public Type<GestionnaireEvenementRechercheObservation> getAssociatedType() { |
return TYPE; |
} |
/trunk/src/org/tela_botanica/del/client/navigation/evenement/depublierObs/GestionnaireEvenementDepublierObs.java |
---|
New file |
0,0 → 1,7 |
package org.tela_botanica.del.client.navigation.evenement.depublierObs; |
import com.google.gwt.event.shared.EventHandler; |
public interface GestionnaireEvenementDepublierObs extends EventHandler { |
public void onDepublicationObs(EvenementDepublierObs event); |
} |
/trunk/src/org/tela_botanica/del/client/navigation/evenement/depublierObs/EvenementDepublierObs.java |
---|
New file |
0,0 → 1,27 |
package org.tela_botanica.del.client.navigation.evenement.depublierObs; |
import org.tela_botanica.del.client.navigation.evenement.depublierObs.GestionnaireEvenementDepublierObs; |
import com.google.gwt.event.shared.GwtEvent; |
public class EvenementDepublierObs extends GwtEvent<GestionnaireEvenementDepublierObs>{ |
public static com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementDepublierObs> TYPE = new com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementDepublierObs>(); |
private String idObs; |
public EvenementDepublierObs(String idObs) { |
this.idObs = idObs; |
} |
@Override |
protected void dispatch(GestionnaireEvenementDepublierObs handler) { |
handler.onDepublicationObs(this); |
} |
public String getIdObs() { |
return idObs; |
} |
@Override |
public com.google.gwt.event.shared.GwtEvent.Type<GestionnaireEvenementDepublierObs> getAssociatedType() { |
return TYPE; |
} |
} |
/trunk/war/del.css |
---|
88,6 → 88,25 |
height: 16px; |
cursor: pointer; |
} |
.lienRetour { |
display:inline-block; |
} |
.lienRetour a { |
border: 1px solid #99C242 !important; |
border-radius: 10px; |
box-shadow: 1px 2px 2px #AAAAAA; |
padding: 5px 5px 5px 23px; |
background: url("./img/16x16/retour.png") no-repeat 5px 5px; |
color: #598000; |
cursor: pointer; |
font-weight: bold; |
text-decoration: none; |
} |
.lienRetour a:hover { |
color:white !important; |
background-color:#8EB533; |
background: #8EB533 url("./img/16x16/retour_actif.png") no-repeat 3px 3px; |
} |
#navigation { |
} |
118,6 → 137,7 |
.labelLien { |
border-bottom: 1px dotted #95AE5D; |
line-height: 18px; |
color: #598000; |
cursor:pointer; |
} |
369,7 → 389,7 |
} |
.limiteMax { |
max-width:1000px; |
max-width:1150px; |
margin:0 auto; |
} |
/trunk/war/img/16x16/retour.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = image/png |
/trunk/war/img/16x16/retour.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+image/png |
\ No newline at end of property |
/trunk/war/img/16x16/depublier_actif.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = image/png |
/trunk/war/img/16x16/depublier_actif.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+image/png |
\ No newline at end of property |
/trunk/war/img/16x16/retour_actif.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = image/png |
/trunk/war/img/16x16/retour_actif.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+image/png |
\ No newline at end of property |
/trunk/war/img/16x16/depublier.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = image/png |
/trunk/war/img/16x16/depublier.png |
---|
New file |
Property changes: |
Added: svn:mime-type |
+image/png |
\ No newline at end of property |
/trunk/. |
---|
Property changes: |
Modified: svn:mergeinfo |
Merged /branches/v1.2-lithium:r1631-1639 |