Subversion Repositories eFlore/Applications.del

Compare Revisions

No changes between revisions

Ignore whitespace Rev 1688 → Rev 1689

/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/i18n/Vocabulary.properties
6,198 → 6,201
###########################################################################################
 
# COMMUN
lienAppliSaisie = http://www.tela-botanica.org/widget:cel:saisie?tag-img=aDeterminer&tag-obs=aDeterminer&titre=&titre=Ajouter%20une%20photo%20%26agrave%3B%20d%26eacute%3Bterminer
lienAppliSaisieProjetUrl = http://www.tela-botanica.org/widget:cel:saisie?tag-img={projet}&tag-obs={projet}
oui = oui
non = non
accepter = Valider
annuler = Annuler
chargement = Chargement
ok = ok
fermer = Fermer
vider = Vider
moyenne = Moyenne
nombreVotes = Nb votes
observateur = Observateur
nomRetenu = Nom retenu
date = Date
famille = Famille
metadonneeFamille = Famille
localite = Localite
nom = Nom
auteur = Publié par
protocole = Protocole
protocoleDefaut = Protocole par défaut
labelProtocole = Choisir un protocole
vous = Vous
contributeur= Contributeur
commentaire = Commentaire
commentaires= Commentaires
autre = Autre
nomCommun = Nom commun
lieuDit = Lieu-dit
station = Station
milieu = Milieu
dateReleve = Le
observeLe = Observée le
lieuDuReleve = Lieu du relevé
dateTransmission = Transmis le
motdepasse = Mot de passe :
login = Courriel :
texteConnexion = texte de connexion
titreSeConnecter = Identifiez-vous
titreEstIdentifie = Bienvenue
seDeconnecter = Se déconnecter
aucunResultat = Aucun resultat trouvé
par = par
publiee = Publiée le
supprimerVote = Supprimer votre vote
votePrisEnCompte = Vote pris en compte
voteModifie = Vote modifié
voteSupprime = Vote supprimé
ajouterObservation = Proposez une observation à déterminer
ajouterImage = Ajouter une image
legendeAjouterObservation = Soumettez au réseau une observation à déterminer \n Si vous avez déjà un carnet en ligne, ajoutez votre observation dans le projet "aDeterminer"
legendeAjouterImage = Ajoutez une image pour participer à ce projet
voirCommentaires = Voir tous les commentaires
titrePlateformeDetermination = Synthèse de l'observation et des images associées
imageNumero = Image n°
aideLiaisonMotCle = Aide liaison mot-clés
lienAppliSaisie = http://www.tela-botanica.org/widget:cel:saisie?tag-img=aDeterminer&tag-obs=aDeterminer&titre=&titre=Ajouter%20une%20photo%20%26agrave%3B%20d%26eacute%3Bterminer
lienAppliSaisieProjetUrl = http://www.tela-botanica.org/widget:cel:saisie?tag-img={projet}&tag-obs={projet}
oui = oui
non = non
accepter = Valider
annuler = Annuler
chargement = Chargement
ok = ok
fermer = Fermer
vider = Vider
moyenne = Moyenne
nombreVotes = Nb votes
observateur = Observateur
nomRetenu = Nom retenu
date = Date
famille = Famille
metadonneeFamille = Famille
localite = Localite
nom = Nom
auteur = Publié par
protocole = Protocole
protocoleDefaut = Protocole par défaut
labelProtocole = Choisir un protocole
vous = Vous
contributeur = Contributeur
commentaire = Commentaire
commentaires = Commentaires
autre = Autre
nomCommun = Nom commun
lieuDit = Lieu-dit
station = Station
milieu = Milieu
dateReleve = Le
observeLe = Observée le
lieuDuReleve = Lieu du relevé
dateTransmission = Transmis le
motdepasse = Mot de passe :
login = Courriel :
texteConnexion = texte de connexion
titreSeConnecter = Identifiez-vous
titreEstIdentifie = Bienvenue
seDeconnecter = Se déconnecter
aucunResultat = Aucun resultat trouvé
par = par
publiee = Publiée le
supprimerVote = Supprimer votre vote
votePrisEnCompte = Vote pris en compte
voteModifie = Vote modifié
voteSupprime = Vote supprimé
ajouterObservation = Proposez une observation à déterminer
ajouterImage = Ajouter une image
legendeAjouterObservation = Soumettez au réseau une observation à déterminer \n Si vous avez déjà un carnet en ligne, ajoutez votre observation dans le projet "aDeterminer"
legendeAjouterImage = Ajoutez une image pour participer à ce projet
voirCommentaires = Voir tous les commentaires
titrePlateformeDetermination = Synthèse de l'observation et des images associées
imageNumero = Image n°
aideLiaisonMotCle = Aide liaison mot-clés
 
#ecran recherche image
rechercherImage = Rechercher et voter
entrerMotClef = Recherchez par espèce, genre, famille, numéro ou nom de département, commune, auteur ou mot-clé.
rechercherTaxon = Rechercher le taxon
tri = Tri :
triParNbVotes = Votes
triParNbPoints = Points
triParDate = Date
triParNbTags = Tags
triParNbVotesAscendant = Tri par moyenne des votes du minimum au maximum
triParNbVotesDescendant = Tri par moyenne des votes du maximum au minimum
triParNbPointsAscendant = Tri par nombre de points croissant
triParNbPointsDescendant = Tri par nombre de points décroissant
triParDateAscendant = Tri par date du plus ancien au plus récent
triParDateDescendant = Tri par date du plus récent au plus ancien
triParNbTagsAscendant = Tri par nombre de tags croissant
triParNbTagsDescendant = Tri par nombre de tags décroissant
introRechercheImages = Cette galerie vous permet de rechercher les illustrations des membres du réseau issues du Carnet en ligne... et de voter pour la qualité des images selon un protocole défini.
indicationActionClicImage = Cliquez sur l'image pour l'agrandir ou sur le bandeau contenant le nom pour accéder à la fiche de l'observation
voirMetadonnees = Voir la date, le lieu et l'auteur de l'image
voirMotsCles = Voir et modifier les mots clés associés à l'image
motsCles = Mots Clés
aideSaisieMotCle = Saisissez des mots clés pour décrire l'image
aideLiaisonMotCle = Cliquez pour pour lier ou délier ce mot clé à l'image
indiceSupprimerMotCle = Supprimer ce mot clé
accesAide = Aide
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
rechercherImage = Rechercher et voter
entrerMotClef = Recherchez par espèce, genre, famille, numéro ou nom de département, commune, auteur ou mot-clé.
rechercherTaxon = Rechercher le taxon
tri = Tri :
triParNbVotes = Votes
triParNbPoints = Points
triParDate = Date
triParNbTags = Tags
triParNbVotesAscendant = Tri par moyenne des votes du minimum au maximum
triParNbVotesDescendant = Tri par moyenne des votes du maximum au minimum
triParNbPointsAscendant = Tri par nombre de points croissant
triParNbPointsDescendant = Tri par nombre de points décroissant
triParDateAscendant = Tri par date du plus ancien au plus récent
triParDateDescendant = Tri par date du plus récent au plus ancien
triParNbTagsAscendant = Tri par nombre de tags croissant
triParNbTagsDescendant = Tri par nombre de tags décroissant
introRechercheImages = Cette galerie vous permet de rechercher les illustrations des membres du réseau issues du Carnet en ligne... et de voter pour la qualité des images selon un protocole défini.
indicationActionClicImage = Cliquez sur l'image pour l'agrandir ou sur le bandeau contenant le nom pour accéder à la fiche de l'observation
voirMetadonnees = Voir la date, le lieu et l'auteur de l'image
voirMotsCles = Voir et modifier les mots clés associés à l'image
motsCles = Mots Clés
aideSaisieMotCle = Saisissez des mots clés pour décrire l'image
aideLiaisonMotCle = Cliquez pour pour lier ou délier ce mot clé à l'image
indiceSupprimerMotCle = Supprimer ce mot clé
accesAide = Aide
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
introRechercheObservations = Cet espace vous permet d'échanger sur la détermination d'espèces. <br />Vous ne parvenez pas à déterminer une plante ? Soumettez-la aux membres du réseau. <br /> Vous avez relevé des erreurs dans les images soumises par le réseau ? Postez un commentaire ou proposez une nouvelle détermination.
voirFicheIndividu = Voir la fiche
voirDetailVotes = Voir le détail des utilisateurs qui ont voté
voirDetailCommentaires = Voir les commentaires liés à cette proposition
rechercherObservation = Identifier une plante
introRechercheObservations = Cet espace vous permet d'échanger sur la détermination d'espèces. <br />Vous ne parvenez pas à déterminer une plante ? Soumettez-la aux membres du réseau. <br /> Vous avez relevé des erreurs dans les images soumises par le réseau ? Postez un commentaire ou proposez une nouvelle détermination.
voirFicheIndividu = Voir la fiche
voirDetailVotes = Voir le détail des utilisateurs qui ont voté
voirDetailCommentaires = Voir les commentaires liés à cette proposition
 
#ecran determination
proposerSaDetermination = Proposer une détermination
infoProposerDetermination = Pour proposer une détermination, remplissez les champs ci-dessous et cliquez sur le bouton Proposer !
infoProposerCommentaire = Pour proposer un commentaire, remplissez les champs ci-dessous et cliquez sur le bouton Valider !
boutonProposer = Valider
infoVous = Vos nom et prénom
infoProposerDetermination = Pour proposer une détermination, remplissez les champs ci-dessous et cliquez sur le bouton Proposer !
infoProposerCommentaire = Pour proposer un commentaire, remplissez les champs ci-dessous et cliquez sur le bouton Valider !
boutonProposer = Valider
infoVous = Vos nom et prénom
fiabilite = Fiabilité
infoFiabilite = Indiquez votre niveau de certitude vis-à-vis de votre proposition.
infoFiabilite = Indiquez votre niveau de certitude vis-à-vis de votre proposition.
autresInformations = Autres informations
choisirUnTaxon = Proposer un nom de plante
infoTaxon = Tapez les premières lettres d'un nom latin pour voir apparaître des propositions.
infoTaxon = Tapez les premières lettres d'un nom latin pour voir apparaître des propositions.
autreProposition = Autre Proposition
confianceSimpleSuggestion = Simple Suggestion
confianceProbable = Probable
confianceSurCent = Sûr à 100%
comparer = Comparer cette image
infoComparer = Saisissez un nom de plante à comparer avec l'image
comparer = Comparer cette image
infoComparer = Saisissez un nom de plante à comparer avec l'image
lesPropositions = Propositions
infoPropositions = D'autres utilisateurs ont laissé une détermination
infoPropositions = D'autres utilisateurs ont laissé une détermination
titreDetermination = Détermination / confirmation
metadonnees = Métadonnées
ajouterCommentaire = Ajouter un commentaire
determinationPlusProbable = Détermination la plus probable :
determinationPlusProbable = Détermination la plus probable :
proposePar = proposé par
EtesVousDaccord = Etes-vous d'accord ?
JeSuisDaccord = Je suis d'accord
JeNeSuisPasDaccord = Je ne suis pas d'accord
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 ?
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
taxonADeterminer = Taxon à déterminer
imageEflore = Photos du Carnet en Ligne
metadonneesPhoto = Meta-donnees de la photo
motsClefs = Mots-clés
validePar = Validé par
dateValidation = Date de dernière validation
transmisLe = Transmis le
dateObservation = Date de la prise de vue
taxonADeterminer = Taxon à déterminer
imageEflore = Photos du Carnet en Ligne
metadonneesPhoto = Meta-donnees de la photo
motsClefs = Mots-clés
validePar = Validé par
dateValidation = Date de dernière validation
transmisLe = Transmis le
 
#ecran votes protcoles
votes = Moyenne des votes
votesMoyennePrecise = Moyenne pondérée des votes :
infoVotes = Voici la moyenne des votes en fonction du protocole choisi :
protocoleEsthetisme = Esthétisme
protocoleIdentificationAuto = Identification automatique
monVote = Mon vote
nbVotes = vote
nbPoints = pt
votez = Votez
#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 :
protocoleEsthetisme = Esthétisme
protocoleIdentificationAuto = Identification automatique
monVote = Mon vote
nbVotes = vote
nbPoints = pt
votez = Votez
 
#ecran detail de votes détermination
aucunVoteEffectue = Aucun vote n'a été effectué sur cette détermination, soyez le premier a voter !
aucunCommentaireEffectue = Aucun commentaire n'a été effectué sur cette détermination
valeurVote = Vote
aucunVoteEffectue = Aucun vote n'a été effectué sur cette détermination, soyez le premier a voter !
aucunCommentaireEffectue = Aucun commentaire n'a été effectué sur cette détermination
valeurVote = Vote
 
#composant recherche simple
rechercher = Rechercher
rechercheLibre=Recherche libre
rechercher = Rechercher
rechercheLibre = Recherche libre
 
#composant recherche avancee
rechercheAvancee= Recherche avancée
contientMots = Contient les mots
departement = Département (numéro ou nom)
taxon = Espèce
genre = Genre
mot_clef= Mot-clé
date= Date
formatDate = (jj/mm/aaaa ou aaaa)
commune = Commune
famille = Famille (Latin)
tag = Tag
tagDel = Tag pictoflora
tagCel = Tag cel
referentiel = Référentiel
referentielTous = Tous les référentiels
referentielBdtfx = Trachéophytes de France métropolitaine
referentielBdtxa = Trachéophytes des Antilles françaises
referentielIsfan = Flore d'Afrique du Nord
referentielApd = Flore d'Afrique de l'Ouest et du Centre
rechercheAvancee = Recherche avancée
contientMots = Contient les mots
departement = Département (numéro ou nom)
taxon = Espèce
genre = Genre
mot_clef = Mot-clé
date = Date
formatDate = (jj/mm/aaaa ou aaaa)
commune = Commune
famille = Famille (Latin)
tag = Tag
tagDel = Tag pictoflora
tagCel = Tag cel
referentiel = Référentiel
referentielTous = Tous les référentiels
referentielBdtfx = Trachéophytes de France métropolitaine
referentielBdtxa = Trachéophytes des Antilles françaises
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
afficher = Afficher
elements_par_page = éléments par page
 
#utilisateur
nom = Nom
prenom = Prénom
courriel = Courriel
anonyme = Anonyme
identifie = Identifié
nom = Nom
prenom = Prénom
courriel = Courriel
anonyme = Anonyme
identifie = Identifié
 
#preferences utilisateur
messageTemporaireMails = Identiplante permettra bientôt de recevoir des courriels journaliers récapitulant les propositions, commentaires et observations nouvellement ajoutés. En cochant ces cases vous avez la possibilité de recevoir ces courriels dès qu'il seront mis en service (vous pouvez changer cela à tout moment en revenant sur cette interface)
recevoirMailsMesObs = Recevoir le mail récapitulant les commentaires et propositions faits sur mes observations (1 fois par jour)
recevoirMailsToutesObs = Recevoir le mail récapitulant les nouvelles observations proposées à la détermination (1 fois par jour)
sauvegarder = Sauvegarder
preferences = Préférences
messageTemporaireMails = Identiplante permettra bientôt de recevoir des courriels journaliers récapitulant les propositions, commentaires et observations nouvellement ajoutés. En cochant ces cases vous avez la possibilité de recevoir ces courriels dès qu'il seront mis en service (vous pouvez changer cela à tout moment en revenant sur cette interface)
recevoirMailsMesObs = Recevoir le mail récapitulant les commentaires et propositions faits sur mes observations (1 fois par jour)
recevoirMailsToutesObs = Recevoir le mail récapitulant les nouvelles observations proposées à la détermination (1 fois par jour)
sauvegarder = Sauvegarder
preferences = Préférences
/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,11 → 4,10
 
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) {
handler.onRechercheObservation(this);
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/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;
79,6 → 86,8
public Button getBoutonAjoutPropositionBas();
 
public Button getBoutonAjoutCommentaireBas();
public HasClickHandlers getBoutonDepublierObs();
 
public HasWidgets getMetadonnees();
 
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();
156,10 → 166,9
public void afficherRss(Observation observation) {
new RssPresenteur(new RssVue(), observation, "Suivre cette observation").go(vue.getZoneRss());
}
 
private void calculerEtAfficherVoteDeterminationPlusPopulaire() {
if(cache.getObservationCourante() != null) {
if (cache.getObservationCourante() != null) {
Observation observation = cache.getObservationCourante();
String nomTaxon = observation.getNomRetenuFormateReferentiel();
List<MoyenneVote> votesOrdonnes = CalculVoteDeterminationService.calculerVoteDeterminationPlusPopulaire(cache.getObservationCourante().getPropositionDeterminations());
167,12 → 176,12
nomTaxon = votesOrdonnes.get(0).getIntituleAssocie();
propositionPlusPopulaire = votesOrdonnes.get(0).getPropositionAssociee();
if(doitAfficherBoutonValidation(votesOrdonnes)) {
if (doitAfficherBoutonValidation(votesOrdonnes)) {
vue.afficherBoutonValidationTaxon();
} else {
vue.cacherBoutonValidationTaxon();
}
}
}
vue.afficherNomTaxonProbable(nomTaxon);
}
}
189,7 → 198,6
}
 
public void gererEvenements() {
BusEvenementiel.getInstance().addHandler(EvenementChangementEtatUtilisateur.TYPE, new GestionnaireEvenementChangementEtatUtilisateur() {
@Override
public void onModificationEtatUtilisateur(EvenementChangementEtatUtilisateur evenementChangementEtatUtilisateur) {
203,28 → 211,7
calculerEtAfficherVoteDeterminationPlusPopulaire();
}
});
 
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();
255,10 → 240,29
CacheClient.getInstance().getImageCourante()).go(vue.getDetailImageObservation());
}
});
 
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,14 → 295,33
});
vue.getBoutonValidationTaxon().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
if(Window.confirm(I18n.getVocabulary().confirmationValidationDetermination())) {
if (Window.confirm(I18n.getVocabulary().confirmationValidationDetermination())) {
validerPropositionPlusPopulaire();
}
}
});
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() {
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/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;
}
91,7 → 95,7
public HasClickHandlers getLienBonnier() {
return lienBonnier;
}
 
@Override
public HasClickHandlers getLienCles() {
return lienCles;
/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,20 → 80,17
.nomTaxonProbable {
padding-left:3px;
}
 
.taxonProbable {
background: none repeat scroll 0 0 #F8F8C3;
clear: left;
font-size: 15px;
margin-bottom: 5px;
padding: 13px 9px;
clear: left;
font-size: 15px;
margin-bottom: 5px;
padding: 13px 9px;
}
 
.voteProtocole div {
.voteProtocole div {
margin-bottom:10px;
}
 
.voteProtocole div div {
.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,47 → 8,50
<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 ui:field="metadonnees" styleName="{style.metadonnees}"/>
<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}"/>
<g:VerticalPanel ui:field="detailImageObservation" styleName="{style.zoneImage}" />
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.zoneVote}">
<g:HTMLPanel styleName="{style.zoneVote}">
<g:Label styleName="titre" text="{constants.titreDetermination}" />
<g:HTMLPanel styleName="nettoyage {style.boutons}">
<g:Button text="{constants.proposerSaDetermination}" ui:field="boutonAjoutProposition" styleName="bouton" />
<g:Button text="{constants.ajouterCommentaire}" ui:field="boutonAjoutCommentaire" styleName="bouton" />
<g:HTMLPanel ui:field="zoneRss" styleName="droite {style.zonerss}"></g:HTMLPanel>
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.taxonProbable}">
<g:Button text="{constants.proposerSaDetermination}" ui:field="boutonAjoutProposition" styleName="bouton" />
<g:Button text="{constants.ajouterCommentaire}" ui:field="boutonAjoutCommentaire" styleName="bouton" />
<g:HTMLPanel ui:field="zoneRss" styleName="droite {style.zonerss}"></g:HTMLPanel>
</g:HTMLPanel>
<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" />
<g:HTMLPanel styleName="nettoyage {style.boutons}">
<g:Button text="{constants.proposerSaDetermination}" ui:field="boutonAjoutPropositionBas" styleName="bouton" />
<g:Button text="{constants.ajouterCommentaire}" ui:field="boutonAjoutCommentaireBas" styleName="bouton" />
</g:HTMLPanel>
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.zoneOutils}">
<g:Label text="Pour vous aider : " styleName="titre3"></g:Label>
<g:VerticalPanel ui:field="formulaireRechercheEflore"/>
<g:Label styleName="{style.autreOutils} sousTitre">Vérifier sa détermination</g:Label>
<g:Label styleName="lienListe labelLien" ui:field="lienEflore">eFlore</g:Label>
<g:Label styleName="{style.autreOutils} sousTitre">Autres outils en ligne</g:Label>
<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:VerticalPanel ui:field="forum" />
<g:HTMLPanel styleName="nettoyage {style.boutons}">
<g:Button text="{constants.proposerSaDetermination}" ui:field="boutonAjoutPropositionBas" styleName="bouton" />
<g:Button text="{constants.ajouterCommentaire}" ui:field="boutonAjoutCommentaireBas" styleName="bouton" />
</g:HTMLPanel>
</g:HTMLPanel>
<g:HTMLPanel styleName="{style.zoneOutils}">
<g:Label text="Pour vous aider : " styleName="titre3"></g:Label>
<g:VerticalPanel ui:field="formulaireRechercheEflore"/>
<g:Label styleName="{style.autreOutils} sousTitre">Vérifier sa détermination</g:Label>
<g:Label styleName="lienListe labelLien" ui:field="lienEflore">eFlore</g:Label>
<g:Label styleName="{style.autreOutils} sousTitre">Autres outils en ligne</g:Label>
<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/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,7 → 243,9
public void onSuppressionImage(EvenementSupprimerImage event) {
GWT.log("Attraper evnt : EvenementSupprimerImage (img:"+image.getIdImage()+")");
if (event.getIdImage().equals(image.getIdImage())) {
supprimerImg();
if (Window.confirm(I18n.getVocabulary().confirmationSuppressionImg())) {
supprimerImg();
}
}
}
});
/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/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,8 → 137,9
 
.labelLien {
border-bottom: 1px dotted #95AE5D;
color: #598000;
cursor:pointer;
line-height: 18px;
color: #598000;
cursor:pointer;
}
.labelLien:hover {
border-bottom: 1px dotted #95AE5D;
315,13 → 335,13
border-radius: 10px 10px 10px 10px;
color: #6C6865;
font-size: 14px;
padding: 4px 10px 4px 30px;
padding: 4px 10px 4px 30px;
cursor: pointer;
display: inline-block;
}
 
.acceder-outil:hover {
color: #FD8C13;
color: #FD8C13;
}
 
#contenu a.acceder-aide {
329,19 → 349,19
}
.acceder-aide {
background: none repeat scroll 0 0 #3d5fbf;
border: medium none;
border-radius: 10px 10px 10px 10px;
color: white;
cursor: pointer;
display: inline-block;
font-size: 14px;
padding: 4px 10px;
text-decoration: none;
border: medium none;
border-radius: 10px 10px 10px 10px;
color: white;
cursor: pointer;
display: inline-block;
font-size: 14px;
padding: 4px 10px;
text-decoration: none;
}
 
.acceder-aide:hover {
border-bottom: 1px dotted #95AE5D;
color: #FD8C13;
border-bottom: 1px dotted #95AE5D;
color: #FD8C13;
}
 
.colonne {
369,7 → 389,7
}
 
.limiteMax {
max-width:1000px;
max-width:1150px;
margin:0 auto;
}
 
386,15 → 406,15
}
 
.bouton {
background: none repeat scroll 0 0 white;
border: 1px solid #99C242;
border-radius: 10px 10px 10px 10px;
box-shadow: 1px 2px 2px #AAAAAA;
color: #598000;
cursor: pointer;
font-size: 0.9em;
font-weight: bold;
padding: 5px;
background: none repeat scroll 0 0 white;
border: 1px solid #99C242;
border-radius: 10px 10px 10px 10px;
box-shadow: 1px 2px 2px #AAAAAA;
color: #598000;
cursor: pointer;
font-size: 0.9em;
font-weight: bold;
padding: 5px;
}
 
.bouton:hover {
404,15 → 424,15
 
.bouton-petit {
background: none repeat scroll 0 0 white;
border: 1px solid #99C242;
box-shadow: 1px 2px 2px #AAAAAA;
color: #598000;
cursor: pointer;
font-size: 11px;
font-weight: bold;
padding: 1px;
width:100px;
margin:0 5px;
border: 1px solid #99C242;
box-shadow: 1px 2px 2px #AAAAAA;
color: #598000;
cursor: pointer;
font-size: 11px;
font-weight: bold;
padding: 1px;
width:100px;
margin:0 5px;
}
 
.bouton-petit:hover {
452,13 → 472,13
 
.chapeau {
color: #6C6865;
font-family: arial;
font-size: 13px;
font-weight: bold;
letter-spacing: 0;
line-height: 18px;
text-transform: none;
font-style:italic;
font-family: arial;
font-size: 13px;
font-weight: bold;
letter-spacing: 0;
line-height: 18px;
text-transform: none;
font-style:italic;
}
 
.enfant {
490,10 → 510,10
}
 
.etoiles {
height: 26px;
margin-left: 38px;
margin-top: -2px;
width: 26px;
height: 26px;
margin-left: 38px;
margin-top: -2px;
width: 26px;
}
 
.etoiles_0 {
637,12 → 657,12
 
.traitTela li {
background: url("http://www.tela-botanica.org/sites/commun/generique/images/traitTela.jpg") no-repeat scroll 0 6px transparent;
font-family: arial;
font-size: 12px;
font-weight: bold;
color:#777;
list-style: none outside none;
padding: 10px 0 0 30px;
font-family: arial;
font-size: 12px;
font-weight: bold;
color:#777;
list-style: none outside none;
padding: 10px 0 0 30px;
}
.connect {
width:130px;
/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/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/.
Property changes:
Modified: svn:mergeinfo
Merged /branches/v1.2-lithium:r1631-1639