Author: bpoussin Date: 2013-02-12 16:39:48 +0100 (Tue, 12 Feb 2013) New Revision: 94 Url: http://forge.codelutin.com/projects/cantharella/repository/revisions/94 Log: fixes #1985: Change configuration: use config file to replace maven profile Added: trunk/cantharella.data/src/main/resources/META-INF/ trunk/cantharella.data/src/main/resources/ValidationMessages_fr.properties trunk/cantharella.data/src/main/resources/c3p0.properties trunk/cantharella.data/src/main/resources/cantharella.conf trunk/cantharella.data/src/main/resources/dataContext.xml trunk/cantharella.data/src/main/resources/data_en.properties trunk/cantharella.data/src/main/resources/data_fr.properties trunk/cantharella.data/src/main/resources/ehcache.xml trunk/cantharella.data/src/main/resources/sql/ trunk/cantharella.service/src/main/resources/cantharella.conf trunk/cantharella.service/src/main/resources/serviceContext.xml trunk/cantharella.service/src/main/resources/service_en.properties trunk/cantharella.service/src/main/resources/service_fr.properties trunk/cantharella.utils/src/main/java/nc/ird/module/utils/CantharellaConfig.java trunk/cantharella.web/src/main/resources/cantharella.conf trunk/cantharella.web/src/main/resources/log4j.xml trunk/cantharella.web/src/main/resources/webContext.xml trunk/cantharella.web/src/main/resources/web_en.properties trunk/cantharella.web/src/main/resources/web_fr.properties trunk/src/site/rst/configuration.rst Removed: trunk/cantharella.data/src/main/resources/commons/ trunk/cantharella.data/src/main/resources/development/ trunk/cantharella.data/src/main/resources/integration/ trunk/cantharella.data/src/main/resources/production/ trunk/cantharella.service/src/main/resources/commons/ trunk/cantharella.service/src/main/resources/development/ trunk/cantharella.service/src/main/resources/integration/ trunk/cantharella.service/src/main/resources/production/ trunk/cantharella.web/src/main/resources/commons/ trunk/cantharella.web/src/main/resources/development/ trunk/cantharella.web/src/main/resources/integration/ trunk/cantharella.web/src/main/resources/production/ Modified: trunk/cantharella.data/pom.xml trunk/cantharella.service/pom.xml trunk/cantharella.utils/pom.xml trunk/cantharella.web/pom.xml trunk/pom.xml trunk/src/site/rst/index.rst trunk/src/site/site_en.xml Modified: trunk/cantharella.data/pom.xml =================================================================== --- trunk/cantharella.data/pom.xml 2013-02-11 16:46:50 UTC (rev 93) +++ trunk/cantharella.data/pom.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -13,12 +13,6 @@ <name>Cantharella :: Data</name> <build> - <resources> - <!-- Default resources for the data layer --> - <resource> - <directory>src/main/resources/commons</directory> - </resource> - </resources> <plugins> <!-- Plugins for the data layer --> <plugin> @@ -50,42 +44,6 @@ </plugins> </build> - <profiles> - <profile> - <id>development</id> - <build> - <resources> - <!-- Development resources for the data layer --> - <resource> - <directory>src/main/resources/development</directory> - </resource> - </resources> - </build> - </profile> - <profile> - <id>integration</id> - <build> - <resources> - <!-- Integration resources for the data layer --> - <resource> - <directory>src/main/resources/integration</directory> - </resource> - </resources> - </build> - </profile> - <profile> - <id>production</id> - <build> - <resources> - <!-- Production resources for the data layer --> - <resource> - <directory>src/main/resources/production</directory> - </resource> - </resources> - </build> - </profile> - </profiles> - <dependencies> <dependency> Copied: trunk/cantharella.data/src/main/resources/ValidationMessages_fr.properties (from rev 93, trunk/cantharella.data/src/main/resources/commons/ValidationMessages_fr.properties) =================================================================== --- trunk/cantharella.data/src/main/resources/ValidationMessages_fr.properties (rev 0) +++ trunk/cantharella.data/src/main/resources/ValidationMessages_fr.properties 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,37 @@ +### +# #%L +# Cantharella :: Data +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### +#TODO : d�clarer en UTF8 + +javax.validation.constraints.Max.message=doit �tre plus petit ou �gal � {value} +javax.validation.constraints.Min.message=doit �tre plus grand ou �gal � {value} +javax.validation.constraints.DecimalMax.message=doit �tre plus petit ou �gal � {value} +javax.validation.constraints.DecimalMin.message=doit �tre plus grand ou �gal � {value} + +nc.ird.cantharella.data.validation.CountryCode.message=est invalide +nc.ird.cantharella.data.validation.Latitude.message=est invalide +nc.ird.cantharella.data.validation.Longitude.message=est invalide +nc.ird.cantharella.data.validation.Referentiel.message=est invalide +nc.ird.cantharella.data.validation.LatitudeOrientation.message=est invalide +nc.ird.cantharella.data.validation.LongitudeOrientation.message=est invalide + +nc.ird.cantharella.data.validation.UniqueFieldList.message=existe d�j� \ No newline at end of file Copied: trunk/cantharella.data/src/main/resources/c3p0.properties (from rev 93, trunk/cantharella.data/src/main/resources/commons/c3p0.properties) =================================================================== --- trunk/cantharella.data/src/main/resources/c3p0.properties (rev 0) +++ trunk/cantharella.data/src/main/resources/c3p0.properties 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,24 @@ +### +# #%L +# Cantharella :: Data +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### +#Disable JMX management +com.mchange.v2.c3p0.management.ManagementCoordinator=com.mchange.v2.c3p0.management.NullManagementCoordinator \ No newline at end of file Added: trunk/cantharella.data/src/main/resources/cantharella.conf =================================================================== --- trunk/cantharella.data/src/main/resources/cantharella.conf (rev 0) +++ trunk/cantharella.data/src/main/resources/cantharella.conf 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,31 @@ +### +# #%L +# Cantharella :: Data +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### + +# +# DATABASE CONFIGURATION +# +db.url=jdbc:postgresql:cantharella +db.user=cantharella +db.password=cantharella +db.debug=true +db.hbm2ddl=validate Copied: trunk/cantharella.data/src/main/resources/dataContext.xml (from rev 93, trunk/cantharella.data/src/main/resources/commons/dataContext.xml) =================================================================== --- trunk/cantharella.data/src/main/resources/dataContext.xml (rev 0) +++ trunk/cantharella.data/src/main/resources/dataContext.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Cantharella :: Data + $Id:$ + $HeadURL:$ + %% + Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + #L% + --> + +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:aop="http://www.springframework.org/schema/aop" + xmlns:tx="http://www.springframework.org/schema/tx" + xmlns:context="http://www.springframework.org/schema/context" + xmlns:p="http://www.springframework.org/schema/p" + xsi:schemaLocation="http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans-3.0.xsd + http://www.springframework.org/schema/tx + http://www.springframework.org/schema/tx/spring-tx-3.0.xsd + http://www.springframework.org/schema/aop + http://www.springframework.org/schema/aop/spring-aop-3.0.xsd + http://www.springframework.org/schema/context + http://www.springframework.org/schema/context/spring-context-2.5.xsd"> + + <bean id="propertiesConfig" + class="nc.ird.module.utils.CantharellaConfig" factory-method="getProperties"/> + + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="properties" ref="propertiesConfig" /> + <!-- set on except on the last file to allow multiple files to load --> + <property name="ignoreUnresolvablePlaceholders" value="true"/> + </bean> + + <!-- Enable @Transactional support --> + <tx:annotation-driven/> + + <!-- Enable @AspectJ support --> + <aop:aspectj-autoproxy/> + +</beans> \ No newline at end of file Copied: trunk/cantharella.data/src/main/resources/data_en.properties (from rev 93, trunk/cantharella.data/src/main/resources/commons/data_en.properties) =================================================================== --- trunk/cantharella.data/src/main/resources/data_en.properties (rev 0) +++ trunk/cantharella.data/src/main/resources/data_en.properties 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,268 @@ +### +# #%L +# Cantharella :: Data +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### +Campagne=Campaign +Campagne.codePays=Country +Campagne.mentionLegale=Legal notice +Campagne.complement=Comments +Campagne.createur=Creator +Campagne.dateDeb=Start date +Campagne.dateFin=End date +Campagne.nom=Name +Campagne.participants=Attendees +Campagne.stations=Explored locations +Campagne.programme=Program + +CampagnePersonneParticipant.complement=Comments + +Groupe.description=Description +Groupe.nom=Name +Groupe.personnes=Persons + +Lot=Sample +Lot.dateRecolte=Harvest date +Lot.dateRecolte2=Harv. date +Lot.ref=Reference +Lot.createur=Creator +Lot.specimenRef=Voucher specimen +Lot.specimenRef2=Vou. specimen +Lot.station=Location +Lot.campagne=Campaign +Lot.partie=Part +Lot.masseFraiche=Fresh mass (g) +Lot.masseFraiche2=Fresh m. +Lot.masseSeche=Dry mass (g) +Lot.masseSeche2=Dry m. +Lot.echantillonColl=Collection sample +Lot.echantillonIdent=Identification sample +Lot.echantillonPhylo=Phylogeny sample +Lot.complement=Comments + +Partie.nom=Name + +Personne=Person +Personne.adressePostale=Postal address +Personne.codePostal=Zip code +Personne.courriel=Email +Personne.fax=Fax +Personne.fonction=Profession/Title +Personne.nom=Last Name +Personne.organisme=Organization +Personne.codePays=Country +Personne.prenom=First Name +Personne.stations=Locations +Personne.tel=Phone number +Personne.ville=City +Personne.lotsDroits=Rights over samples +Personne.campagnesDroits=Rights over campaigns + +Utilisateur=User +Utilisateur.adressePostale=Postal address +Utilisateur.codePostal=Zip code +Utilisateur.courriel=Email +Utilisateur.fax=Fax +Utilisateur.fonction= Profession/Title +Utilisateur.nom=Name +Utilisateur.organisme=Organization +Utilisateur.codePays=Country +Utilisateur.prenom=First Name +Utilisateur.tel=Phone number +Utilisateur.ville=City +Utilisateur.dateValiditeCompte=Validity date +Utilisateur.estValide=Valid ? +Utilisateur.groupe=Group +Utilisateur.passwordHash=Crypted password +Utilisateur.typeDroit=Type of right + +Station=Location +Station.nom=Name +Station.codePays=Country +Station.localite=Locality +Station.latitude=Latitude +Station.longitude=Longitude +Station.referentiel=Repository +Station.complement=Comments +Station.createur=Creator + +Specimen=Specimen +Specimen.ref=Reference +Specimen.embranchement=Phylum +Specimen.famille=Family +Specimen.genre=Genus +Specimen.espece=Species +Specimen.sousEspece=Subspecies +Specimen.variete=Variety +Specimen.typeOrganisme=Organism type +Specimen.identificateur=Identified by +Specimen.depot=Deposit +Specimen.numDepot=Number +Specimen.dateDepot=Date +Specimen.lieuDepot=Place +Specimen.station=Origin location +Specimen.station2=Origin +Specimen.complement=Comments +Specimen.createur=Creator + +MethodeExtraction.nom=Name +MethodeExtraction.description=Description +MethodeExtraction.typesEnSortie=Types of extracts +TypeExtrait.initiales=Initials +TypeExtrait.description=Description +# pour UniqueFieldValidator +TypeExtrait=Initials + +Extraction=Extraction +Extraction.ref=Extraction ref. +Extraction.manipulateur=Operator +Extraction.date=Date +Extraction.lot=Sample ref. +Extraction.masseDepart=Mass to be extract (g) +Extraction.masseDepart2=Extracted mass +Extraction.complement=Comments +Extraction.createur=Creator +Extraction.methode=Extraction method +Extraction.methode2=Method +Extraction.methode.nom=Name +Extraction.methode.description=Description +Extraction.extraits=Extracts +Extrait.ref=Extract ref. +Extrait.typeExtrait=Type of extract +Extrait.typeExtrait2=Type of extract +Extrait.masseObtenue=Resultant mass (g) +Extrait.rendement=Yield +# pour UniqueFieldValidator +Extrait=Extract ref. + +Purification=Purification +Purification.ref=Purification ref. +Purification.manipulateur=Operator +Purification.date=Date +Purification.produit=Product ref. +Purification.masseDepart=Mass to be purify (g) +Purification.complement=Comments +Purification.createur=Creator +Purification.methode=Purification method +Purification.methode2=Method +Purification.fractions=Fractions +Fraction.indice=Fraction index +Fraction.ref=Fraction ref. +Fraction.masseObtenue=Resultant mass (g) +Fraction.rendement=Yield +# pour UniqueFieldValidator +Fraction=Fraction ref. + +MethodePurification.nom=Name +MethodePurification.description=Description +MethodePurification.parametres=Parameters +ParamMethoPuri.index=Index +ParamMethoPuri.nom=Parameter +ParamMethoPuri.description=Description +# pour UniqueFieldValidator +ParamMethoPuri=Parameter +ParamMethoPuriEffect.valeur=Value + + +Molecule.idMolecule=Id +Molecule.nomCommun=Common name +Molecule.familleChimique=Chemical Family +Molecule.formuleDevMol=Developed formula +Molecule.nomIupca=IUPAC name +Molecule.formuleBrute=Formula +Molecule.masseMolaire=Molar mass (g/mol) +Molecule.nouvMolecul=New molecule ? +Molecule.campagne=In the campaign +Molecule.identifieePar=Identified by +Molecule.publiOrigine=Original publication +Molecule.complement=Complement +Molecule.createur=Creator +Molecule.provenance=Origin +Molecule.provenance.produit.ref=Product ref. +Molecule.provenance.presence=% +Molecule.provenance.lot.ref=Lot ref. +Molecule.provenance.embranchement=Phylum +Molecule.provenance.genre=Gender +Molecule.provenance.espece=Species +Molecule.provenance.campagne=Campaign +Molecule.provenance.programme=Program + + +TestBio.ref=Test ref. +TestBio.manipulateur=Operator +TestBio.organismeTesteur=Test organization +TestBio.date=Date +TestBio.methode=Test method +TestBio.concMasseDefaut=Default Conc./Mass +TestBio.uniteConcMasse=Conc./Masse unit +TestBio.uniteConcMasse2=Unit +TestBio.stadeDefaut=Default stage +TestBio.complement=Comments +TestBio.createur=Creator +TestBio.resultats=Results + +ResultatTestBio.repere=Mark +ResultatTestBio.typeResultat=Type +ResultatTestBio.produit=Product ref. +ResultatTestBio.produitTemoin=Control prod. +ResultatTestBio.concMasse=Conc./Mass +ResultatTestBio.concMasse2=Conc +ResultatTestBio.stade=Stage +ResultatTestBio.valeur=Value +ResultatTestBio.actif=Active +ResultatTestBio.erreur=Error +# pour UniqueFieldValidator +ResultatTestBio=Mark + +MethodeTestBio.nom=Name +MethodeTestBio.cible=Target (acronym) +MethodeTestBio.cible2=Target +MethodeTestBio.domaine=Field +MethodeTestBio.description=Description +MethodeTestBio.valeurMesuree=Measured +MethodeTestBio.critereActivite=Activity criteria +MethodeTestBio.uniteResultat=Result unit +MethodeTestBio.uniteResultat2=Unit + +ErreurTestBio.nom=Name +ErreurTestBio.description=Description + +#Internationalisation des enums# +TypeDroit.ADMINISTRATEUR=Administrator +TypeDroit.UTILISATEUR=User +TypeOrganisme.PLANTE=Plant +TypeOrganisme.ORGANISME_MARIN=Marine organism +TypeOrganisme.MICROORGANISME=Microorganism +TypeOrganisme.INSECTE=Insect +TypeOrganisme.CHAMPIGNON=Mushroom +TypeOrganisme.LICHEN=Lichen +TypeOrganisme.AUTRE=Other +Stade.DETECTION=Detection +Stade.CONFIRMATION=Confirmation +Stade.FRACTIONNEMENT=Fractionation +TypeResultat.BLANC=Blank +TypeResultat.TEMOIN=Control +TypeResultat.PRODUIT=Product +UniteConcMasse.MG=mg +UniteConcMasse.MICROG=μg +UniteConcMasse.NG=ng +UniteConcMasse.MG_ML=mg/ml +UniteConcMasse.MICROG_ML=μg/ml +UniteConcMasse.NG_ML=ng/ml Copied: trunk/cantharella.data/src/main/resources/data_fr.properties (from rev 93, trunk/cantharella.data/src/main/resources/commons/data_fr.properties) =================================================================== --- trunk/cantharella.data/src/main/resources/data_fr.properties (rev 0) +++ trunk/cantharella.data/src/main/resources/data_fr.properties 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,267 @@ +### +# #%L +# Cantharella :: Data +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### +Campagne=Campagne +Campagne.codePays=Pays +Campagne.mentionLegale=Mention légale +Campagne.complement=Complément +Campagne.createur=Créateur +Campagne.dateDeb=Date de début +Campagne.dateFin=Date de fin +Campagne.nom=Nom +Campagne.participants=Participants +Campagne.stations=Stations prospectées +Campagne.programme=Programme + +CampagnePersonneParticipant.complement=Complément + +Groupe.description=Description +Groupe.nom=Nom +Groupe.personnes=Personnes + +Lot=Lot +Lot.dateRecolte=Date de récolte +Lot.dateRecolte2=Date récolte +Lot.ref=Référence +Lot.createur=Créateur +Lot.specimenRef=Spécimen de référence +Lot.specimenRef2=Spécimen réf. +Lot.station=Station +Lot.campagne=Campagne +Lot.partie=Partie +Lot.masseFraiche=Masse fraîche (g) +Lot.masseFraiche2=m fraîche +Lot.masseSeche=Masse sèche (g) +Lot.masseSeche2=m sèche +Lot.echantillonColl=Échantillon collection +Lot.echantillonIdent=Échantillon identification +Lot.echantillonPhylo=Échantillon phylogénie +Lot.complement=Complément + +Partie.nom=Nom + +Personne=Personne +Personne.adressePostale=Adresse postale +Personne.codePostal=Code postal +Personne.courriel=Courriel +Personne.fax=Fax +Personne.fonction=Fonction +Personne.nom=Nom +Personne.organisme=Organisme +Personne.codePays=Pays +Personne.prenom=Prénom +Personne.stations=Stations +Personne.tel=Téléphone +Personne.ville=Ville +Personne.lotsDroits=Droits sur les lots +Personne.campagnesDroits=Droits sur les campagnes + +Utilisateur=Utilisateur +Utilisateur.adressePostale=Adresse postale +Utilisateur.codePostal=Code postal +Utilisateur.courriel=Courriel +Utilisateur.fax=Fax +Utilisateur.fonction=Fonction +Utilisateur.nom=Nom +Utilisateur.organisme=Organisme +Utilisateur.codePays=Pays +Utilisateur.prenom=Prénom +Utilisateur.tel=Téléphone +Utilisateur.ville=Ville +Utilisateur.dateValiditeCompte=Date de validité +Utilisateur.estValide=Valide ? +Utilisateur.groupe=Groupe +Utilisateur.passwordHash=Mot de passe crypté +Utilisateur.typeDroit=Type droit + +Station=Station +Station.nom=Nom +Station.codePays=Pays +Station.localite=Localité +Station.latitude=Latitude +Station.longitude=Longitude +Station.referentiel=Référentiel +Station.complement=Complément +Station.createur=Créateur + +Specimen=Spécimen +Specimen.ref=Référence +Specimen.embranchement=Embranchement +Specimen.famille=Famille +Specimen.genre=Genre +Specimen.espece=Espèce +Specimen.sousEspece=Sous-espèce +Specimen.variete=Variété +Specimen.typeOrganisme=Type d'organisme +Specimen.identificateur=Identifié par +Specimen.depot=Dépôt +Specimen.numDepot=Numéro +Specimen.dateDepot=Date +Specimen.lieuDepot=Lieu +Specimen.station=Station de provenance +Specimen.station2=Provenance +Specimen.complement=Complément +Specimen.createur=Créateur + +MethodeExtraction.nom=Nom +MethodeExtraction.description=Description +MethodeExtraction.typesEnSortie=Types extraits en sortie +TypeExtrait.initiales=Initiales +TypeExtrait.description=Description +# pour UniqueFieldValidator +TypeExtrait=Initiales + +Extraction=Extraction +Extraction.ref=Réf. extraction +Extraction.manipulateur=Manipulateur +Extraction.date=Date +Extraction.lot=Réf. lot +Extraction.masseDepart=Masse à extraire (en g) +Extraction.masseDepart2=Masse extraite +Extraction.complement=Complément +Extraction.createur=Créateur +Extraction.methode=Méthode d'extraction +Extraction.methode2=Méthode +Extraction.methode.nom=Nom +Extraction.methode.description=Description +Extraction.extraits=Extraits +Extrait.ref=Réf. extrait +Extrait.typeExtrait=Type d'extrait +Extrait.typeExtrait2=Type extrait +Extrait.masseObtenue=Masse obtenue (en g) +Extrait.rendement=Rendement +# pour UniqueFieldValidator +Extrait=Réf. extrait + +Purification=Purification +Purification.ref=Réf. purification +Purification.manipulateur=Manipulateur +Purification.date=Date +Purification.produit=Réf. produit +Purification.masseDepart=Masse à purifier (en g) +Purification.complement=Complément +Purification.createur=Créateur +Purification.methode=Méthode de purification +Purification.methode2=Méthode +Purification.fractions=Fractions +Fraction.indice=N° de fraction +Fraction.ref=Réf. fraction +Fraction.masseObtenue=Masse obtenue (en g) +Fraction.rendement=Rendement +# pour UniqueFieldValidator +Fraction=Réf. fraction + +MethodePurification.nom=Nom +MethodePurification.description=Description +MethodePurification.parametres=Paramètres +ParamMethoPuri.index=Index +ParamMethoPuri.nom=Paramètre +ParamMethoPuri.description=Description +# pour UniqueFieldValidator +ParamMethoPuri=Paramètre +ParamMethoPuriEffect.valeur=Valeur + + +Molecule.idMolecule=N° +Molecule.nomCommun=Nom commun +Molecule.familleChimique=Famille Chimique +Molecule.formuleDevMol=Formule développée +Molecule.nomIupca=Nom IUPAC +Molecule.formuleBrute=Formule brute +Molecule.masseMolaire=Masse molaire (g/mol) +Molecule.nouvMolecul=Nouvelle molécule ? +Molecule.campagne=Dans la campagne +Molecule.identifieePar=Identifiée par +Molecule.publiOrigine=Publication d'origine +Molecule.complement=Complément +Molecule.createur=Créateur de la fiche +Molecule.provenance=Provenance +Molecule.provenance.produit.ref=Réf. Produit +Molecule.provenance.presence=% +Molecule.provenance.lot.ref=Réf. Lot +Molecule.provenance.embranchement=Embranchement +Molecule.provenance.genre=Genre +Molecule.provenance.espece=Espèce +Molecule.provenance.campagne=Campagne +Molecule.provenance.programme=Programme + +TestBio.ref=Réf. test +TestBio.manipulateur=Manipulateur +TestBio.organismeTesteur=Organisme testeur +TestBio.date=Date +TestBio.methode=Méthode de test +TestBio.concMasseDefaut=Conc./Masse par défaut +TestBio.uniteConcMasse=Unité Conc./Masse +TestBio.uniteConcMasse2=Unité +TestBio.stadeDefaut=Stade par défaut +TestBio.complement=Complément +TestBio.createur=Créateur +TestBio.resultats=Résultats + +ResultatTestBio.repere=Repère +ResultatTestBio.typeResultat=Type +ResultatTestBio.produit=Réf. produit +ResultatTestBio.produitTemoin=Prod. témoin +ResultatTestBio.concMasse=Conc./Masse +ResultatTestBio.concMasse2=Conc +ResultatTestBio.stade=Stade +ResultatTestBio.valeur=Valeur +ResultatTestBio.actif=Actif +ResultatTestBio.erreur=Erreur +# pour UniqueFieldValidator +ResultatTestBio=Repère + +MethodeTestBio.nom=Nom +MethodeTestBio.cible=Cible (acronyme) +MethodeTestBio.cible2=Cible +MethodeTestBio.domaine=Domaine +MethodeTestBio.description=Description +MethodeTestBio.valeurMesuree=Valeur mesurée +MethodeTestBio.critereActivite=Critère d'activité +MethodeTestBio.uniteResultat=Unité du résultat +MethodeTestBio.uniteResultat2=Unité + +ErreurTestBio.nom=Nom +ErreurTestBio.description=Description + +#Internationalisation des enums# +TypeDroit.ADMINISTRATEUR=Administrateur +TypeDroit.UTILISATEUR=Utilisateur +TypeOrganisme.PLANTE=Plante +TypeOrganisme.ORGANISME_MARIN=Organisme marin +TypeOrganisme.MICROORGANISME=Microorganisme +TypeOrganisme.INSECTE=Insecte +TypeOrganisme.CHAMPIGNON=Champignon +TypeOrganisme.LICHEN=Lichen +TypeOrganisme.AUTRE=Autre +Stade.DETECTION=Détection +Stade.CONFIRMATION=Confirmation +Stade.FRACTIONNEMENT=Fractionnement +TypeResultat.BLANC=Blanc +TypeResultat.TEMOIN=Témoin +TypeResultat.PRODUIT=Produit +UniteConcMasse.MG=mg +UniteConcMasse.MICROG=μg +UniteConcMasse.NG=ng +UniteConcMasse.MG_ML=mg/ml +UniteConcMasse.MICROG_ML=μg/ml +UniteConcMasse.NG_ML=ng/ml \ No newline at end of file Copied: trunk/cantharella.data/src/main/resources/ehcache.xml (from rev 93, trunk/cantharella.data/src/main/resources/commons/ehcache.xml) =================================================================== --- trunk/cantharella.data/src/main/resources/ehcache.xml (rev 0) +++ trunk/cantharella.data/src/main/resources/ehcache.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,331 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Cantharella :: Data + $Id:$ + $HeadURL:$ + %% + Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + #L% + --> + +<ehcache + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"> + + <!-- + Sets the path to the directory where cache files are created. + + If the path is a Java System Property it is replaced by its value in the + running VM. + + The following properties are translated: + * user.home - User's home directory + * user.dir - User's current working directory + * java.io.tmpdir - Default temp file path + + Subdirectories can be specified below the property e.g. java.io.tmpdir/one + --> + <diskStore path="java.io.tmpdir"/> + + <!-- + Specifies a CacheManagerEventListenerFactory, be used to create a CacheManagerPeerProvider, + which is notified when Caches are added or removed from the CacheManager. + + The attributes of CacheManagerEventListenerFactory are: + * class - a fully qualified factory class name + * properties - comma separated properties having meaning only to the factory. + + Sets the fully qualified class name to be registered as the CacheManager event listener. + + The events include: + * adding a Cache + * removing a Cache + + Callbacks to listener methods are synchronous and unsynchronized. It is the responsibility + of the implementer to safely handle the potential performance and thread safety issues + depending on what their listener is doing. + + If no class is specified, no listener is created. There is no default. + + <cacheManagerEventListenerFactory class="" properties=""/> + --> + + <!-- + (Enable for distributed operation) + + Specifies a CacheManagerPeerProviderFactory which will be used to create a + CacheManagerPeerProvider, which discovers other CacheManagers in the cluster. + + The attributes of cacheManagerPeerProviderFactory are: + * class - a fully qualified factory class name + * properties - comma separated properties having meaning only to the factory. + + Ehcache comes with a built-in RMI-based distribution system with two means of discovery of + CacheManager peers participating in the cluster: + * automatic, using a multicast group. This one automatically discovers peers and detects + changes such as peers entering and leaving the group + * manual, using manual rmiURL configuration. A hardcoded list of peers is provided at + configuration time. + + Configuring Automatic Discovery: + Automatic discovery is configured as per the following example: + <cacheManagerPeerProviderFactory + class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory" + properties="peerDiscovery=automatic, multicastGroupAddress=230.0.0.1, + multicastGroupPort=4446"/> + + Valid properties are: + * peerDiscovery (mandatory) - specify "automatic" + * multicastGroupAddress (mandatory) - specify a valid multicast group address + * multicastGroupPort (mandatory) - specify a dedicated port for the multicast heartbeat + traffic + + Configuring Manual Discovery: + Manual discovery is configured as per the following example: + <cacheManagerPeerProviderFactory class= + "net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory" + properties="peerDiscovery=manual, + rmiUrls=//server1:40000/sampleCache1|//server2:40000/sampleCache1 + | //server1:40000/sampleCache2|//server2:40000/sampleCache2"/> + + Valid properties are: + * peerDiscovery (mandatory) - specify "manual" + * rmiUrls (mandatory) - specify a pipe separated list of rmiUrls, in the form + //hostname:port + + The hostname is the hostname of the remote CacheManager peer. The port is the listening + port of the RMICacheManagerPeerListener of the remote CacheManager peer. + + An alternate CacheManagerPeerProviderFactory can be used for JNDI discovery of other + CacheManagers in the cluster. Only manual discovery is supported. + + For cacheManagerPeerProviderFactory specify class + net.sf.ehcache.distribution.JNDIManualRMICacheManagerPeerProviderFactoryerFactory. + + Correspondingly for cacheManagerPeerListenerFactory specify class + net.sf.ehcache.distribution.JNDIRMICacheManagerPeerListenerFactoryory. + + Configuring JNDI Manual Discovery: + Manual JNDI discovery is configured as per the following example: + <cacheManagerPeerProviderFactory class= + "net.sf.ehcache.distribution.JNDIManualRMICacheManagerPeerProviderFactoryerFactory" + properties="peerDiscovery=manual, stashContexts=true, stashRemoteCachePeers=true, + jndiUrls=t3//server1:40000/sampleCache1|t3//server2:40000/sampleCache1 + |t3//server1:40000/sampleCache2|t3//server2:40000/sampleCache2"/> + + Valid properties are: + * peerDiscovery (mandatory) - specify "manual" + * stashContexts (optional) - specify "true" or "false". Defaults to true. + java.naming.Context objects are stashed for performance. + * stashRemoteCachePeers (optional) - specify "true" or "false". Defaults to true. + CachePeer objects are stashed for performance. + * jndiUrls (mandatory) - specify a pipe separated list of jndiUrls, + in the form protocol//hostname:port + + <cacheManagerPeerProviderFactory + class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory" + properties="peerDiscovery=automatic, + multicastGroupAddress=230.0.0.1, + multicastGroupPort=4446"/> + --> + + <!-- + (Enable for distributed operation) + + Specifies a CacheManagerPeerListenerFactory which will be used to create a + CacheManagerPeerListener, which + listens for messages from cache replicators participating in the cluster. + + The attributes of cacheManagerPeerListenerFactory are: + class - a fully qualified factory class name + properties - comma separated properties having meaning only to the factory. + + Ehcache comes with a built-in RMI-based distribution system. The listener component is + RMICacheManagerPeerListener which is configured using + RMICacheManagerPeerListenerFactory. It is configured as per the following example: + + <cacheManagerPeerListenerFactory + class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" + properties="hostName=fully_qualified_hostname_or_ip, + port=40001, + socketTimeoutMillis=120000"/> + + All properties are optional. They are: + * hostName - the hostName of the host the listener is running on. Specify + where the host is multihomed and you want to control the interface over which cluster + messages are received. Defaults to the host name of the default interface if not + specified. + * port - the port the listener listens on. This defaults to a free port if not specified. + * socketTimeoutMillis - the number of ms client sockets will stay open when sending + messages to the listener. This should be long enough for the slowest message. + If not specified it defaults 120000ms. + + + An alternate CacheManagerPeerListenerFactory can be also be used for JNDI binding of + listeners for messages from cache replicators participating in the cluster. For + cacheManagerPeerListenerFactory specify + class net.sf.ehcache.distribution.JNDIRMICacheManagerPeerListenerFactory. + Correspondingly for cacheManagerPeerProviderFactory specify class + net.sf.ehcache.distribution.JNDIManualRMICacheManagerPeerProviderFactoryerFactory. + Properties for JNDIRMICacheManagerPeerListenerFactory are the same as + RMICacheManagerPeerListenerFactory. + + + <cacheManagerPeerListenerFactory + class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"/> + --> + <!-- Cache configuration. + + The following attributes are required. + + name: + Sets the name of the cache. This is used to identify the cache. It must be unique. + + maxElementsInMemory: + Sets the maximum number of objects that will be created in memory + + eternal: + Sets whether elements are eternal. If eternal, timeouts are ignored and the + element is never expired. + + overflowToDisk: + Sets whether elements can overflow to disk when the in-memory cache + has reached the maxInMemory limit. + + The following attributes are optional. + + timeToIdleSeconds: + Sets the time to idle for an element before it expires. + i.e. The maximum amount of time between accesses before an element expires + Is only used if the element is not eternal. + Optional attribute. A value of 0 means that an Element can idle for infinity. + The default value is 0. + + timeToLiveSeconds: + Sets the time to live for an element before it expires. + i.e. The maximum time between creation time and when an element expires. + Is only used if the element is not eternal. + Optional attribute. A value of 0 means that and Element can live for infinity. + The default value is 0. + + diskPersistent: + Whether the disk store persists between restarts of the Virtual Machine. + The default value is false. + + diskExpiryThreadIntervalSeconds: + The number of seconds between runs of the disk expiry thread. The default value + is 120 seconds. + + memoryStoreEvictionPolicy: + Policy would be enforced upon reaching the maxElementsInMemory limit. Default + policy is Least Recently Used (specified as LRU). Other policies available - + First In First Out (specified as FIFO) and Less Frequently Used + (specified as LFU) + + Cache elements can also contain sub elements which take the same format of a factory class + and properties. Defined sub-elements are: + + * cacheEventListenerFactory - Enables registration of listeners for cache events, such as + put, remove, update, and expire. + + * bootstrapCacheLoaderFactory - Specifies a BootstrapCacheLoader, which is called by a + cache on initialisation to prepopulate itself. + + Each cache that will be distributed needs to set a cache event listener which replicates + messages to the other CacheManager peers. For the built-in RMI implementation this is done + by adding a cacheEventListenerFactory element of type RMICacheReplicatorFactory to each + distributed cache's configuration as per the following example: + + <cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory" + properties="replicateAsynchronously=true, + replicatePuts=true, + replicateUpdates=true, + replicateUpdatesViaCopy=true, + replicateRemovals=true "/> + + The RMICacheReplicatorFactory recognises the following properties: + + * replicatePuts=true|false - whether new elements placed in a cache are + replicated to others. Defaults to true. + + * replicateUpdates=true|false - whether new elements which override an + element already existing with the same key are replicated. Defaults to true. + + * replicateRemovals=true - whether element removals are replicated. Defaults to true. + + * replicateAsynchronously=true | false - whether replications are + asynchronous (true) or synchronous (false). Defaults to true. + + * replicateUpdatesViaCopy=true | false - whether the new elements are + copied to other caches (true), or whether a remove message is sent. Defaults to true. + + + * asynchronousReplicationIntervalMillis=<number of milliseconds> - The asynchronous + replicator runs at a set interval of milliseconds. The default is 1000. The minimum + is 10. This property is only applicable if replicateAsynchronously=true + + + The RMIBootstrapCacheLoader bootstraps caches in clusters where RMICacheReplicators are + used. It is configured as per the following example: + + <bootstrapCacheLoaderFactory + class="net.sf.ehcache.distribution.RMIBootstrapCacheLoaderFactory" + properties="bootstrapAsynchronously=true, maximumChunkSizeBytes=5000000"/> + + The RMIBootstrapCacheLoaderFactory recognises the following optional properties: + + * bootstrapAsynchronously=true|false - whether the bootstrap happens in the background + after the cache has started. If false, bootstrapping must complete before the cache is + made available. The default value is true. + + * maximumChunkSizeBytes=<integer> - Caches can potentially be very large, larger than the + memory limits of the VM. This property allows the bootstraper to fetched elements in + chunks. The default chunk size is 5000000 (5MB). + + --> + + <!-- + Mandatory Default Cache configuration. These settings will be applied to caches + created programmtically using CacheManager.add(String cacheName) + --> + <defaultCache + maxElementsInMemory="10000" + eternal="false" + timeToIdleSeconds="120" + timeToLiveSeconds="120" + overflowToDisk="true" + diskPersistent="false" + diskExpiryThreadIntervalSeconds="120" + memoryStoreEvictionPolicy="LRU" + /> + + <!-- Default recommanded values for Hibernate --> + <cache + name="org.hibernate.cache.StandardQueryCache" + maxElementsInMemory="5" + eternal="false" + timeToLiveSeconds="120" + overflowToDisk="true" /> + + <!-- Default recommanded values for Hibernate --> + <cache + name="org.hibernate.cache.UpdateTimestampsCache" + maxElementsInMemory="5000" + eternal="true" + overflowToDisk="true" /> + +</ehcache> \ No newline at end of file Modified: trunk/cantharella.service/pom.xml =================================================================== --- trunk/cantharella.service/pom.xml 2013-02-11 16:46:50 UTC (rev 93) +++ trunk/cantharella.service/pom.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -12,50 +12,6 @@ <artifactId>cantharella.service</artifactId> <name>Cantharella :: Service</name> - <build> - <resources> - <!-- Default resources for the service layer --> - <resource> - <directory>src/main/resources/commons</directory> - </resource> - </resources> - </build> - <profiles> - <profile> - <id>development</id> - <build> - <resources> - <!-- Development resources for the service layer --> - <resource> - <directory>src/main/resources/development</directory> - </resource> - </resources> - </build> - </profile> - <profile> - <id>integration</id> - <build> - <resources> - <!-- Integration resources for the service layer --> - <resource> - <directory>src/main/resources/integration</directory> - </resource> - </resources> - </build> - </profile> - <profile> - <id>production</id> - <build> - <resources> - <!-- Production resources for the service layer --> - <resource> - <directory>src/main/resources/production</directory> - </resource> - </resources> - </build> - </profile> - </profiles> - <dependencies> <dependency> Added: trunk/cantharella.service/src/main/resources/cantharella.conf =================================================================== --- trunk/cantharella.service/src/main/resources/cantharella.conf (rev 0) +++ trunk/cantharella.service/src/main/resources/cantharella.conf 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,32 @@ +### +# #%L +# Cantharella :: Service +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### + +# +# SERVICE CONFIGURATION +# +mail.debug=true +mail.from=no-reply@ird.fr +mail.host=smtp + +admin.courriel=ISlog@ird.fr +admin.password=password Copied: trunk/cantharella.service/src/main/resources/serviceContext.xml (from rev 93, trunk/cantharella.service/src/main/resources/commons/serviceContext.xml) =================================================================== --- trunk/cantharella.service/src/main/resources/serviceContext.xml (rev 0) +++ trunk/cantharella.service/src/main/resources/serviceContext.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Cantharella :: Service + $Id:$ + $HeadURL:$ + %% + Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + #L% + --> + +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:aop="http://www.springframework.org/schema/aop" + xmlns:tx="http://www.springframework.org/schema/tx" + xmlns:context="http://www.springframework.org/schema/context" + xmlns:p="http://www.springframework.org/schema/p" + xsi:schemaLocation="http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans-3.0.xsd + http://www.springframework.org/schema/tx + http://www.springframework.org/schema/tx/spring-tx-3.0.xsd + http://www.springframework.org/schema/aop + http://www.springframework.org/schema/aop/spring-aop-3.0.xsd + http://www.springframework.org/schema/context + http://www.springframework.org/schema/context/spring-context-2.5.xsd"> + + <bean id="propertiesConfig" + class="nc.ird.module.utils.CantharellaConfig" factory-method="getProperties"/> + + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="properties" ref="propertiesConfig" /> + <!-- set on except on the last file to allow multiple files to load --> + <property name="ignoreUnresolvablePlaceholders" value="true"/> + </bean> + +</beans> \ No newline at end of file Copied: trunk/cantharella.service/src/main/resources/service_en.properties (from rev 93, trunk/cantharella.service/src/main/resources/commons/service_en.properties) =================================================================== --- trunk/cantharella.service/src/main/resources/service_en.properties (rev 0) +++ trunk/cantharella.service/src/main/resources/service_en.properties 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,48 @@ +### +# #%L +# Cantharella :: Service +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### +updatePassword.subject=Cantharella – New password +updatePassword.text=Your password was regenerated : {0} + +register.subject=Cantharella – Account creation request +register.text=We have received your request for an account creation. + +register.subject.admin=Cantharella – New account creation request +register.text.admin=New account creation request : {0} {1} ({2}) + +reject.subject=Cantharella - Account creation request rejected +reject.text=Your account creation request was rejected. + +valid.subject=Cantharella - Account creation request validated +valid.text= Your account creation request was validated. + +delete.subject=Cantharella – Account deleted +delete.text=Your Cantharella account was deleted. + +create.subject=Cantharella – Account created +create.text=A Cantharella account has been created for you with the following password : {0} + +update.subject=Cantharella – Account modified +update.text=Your Cantharella account has been modified by an administrator. + +contact.subject=Cantharella - Contact Form - {0} +contact.body=Message sent from {0}:\n\n{1} Copied: trunk/cantharella.service/src/main/resources/service_fr.properties (from rev 93, trunk/cantharella.service/src/main/resources/commons/service_fr.properties) =================================================================== --- trunk/cantharella.service/src/main/resources/service_fr.properties (rev 0) +++ trunk/cantharella.service/src/main/resources/service_fr.properties 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,48 @@ +### +# #%L +# Cantharella :: Service +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### +updatePassword.subject=Cantharella - Nouveau mot de passe +updatePassword.text=Vote mot de passe Cantharella a été regénéré : {0} + +register.subject=Cantharella - Demande de création de compte +register.text=Nous avons bien reçu votre demande de création de compte Cantharella. + +register.subject.admin=Cantharella - Nouvelle demande de création de compte +register.text.admin=Nouvelle demande création de compte : {0} {1} ({2}) + +reject.subject=Cantharella - Demande de création de compte rejetée +reject.text=Votre demande de création de compte Cantharella a été rejetée. + +valid.subject=Cantharella - Demande de création de compte validée +valid.text=Votre demande de création de compte Cantharella a été validée. + +delete.subject=Cantharella - Compte supprimé +delete.text=Votre compte Cantharella a été supprimé. + +create.subject=Cantharella - Compte créé +create.text=Un compte Cantharella vous a été créé avec le mot de passe : {0} + +update.subject=Cantharella - Compte modifié +update.text=Votre compte Cantharella a été modifié par un administrateur. + +contact.subject=Cantharella - Formulaire Contact - {0} +contact.body=Message envoyé de {0} :\n\n{1} \ No newline at end of file Modified: trunk/cantharella.utils/pom.xml =================================================================== --- trunk/cantharella.utils/pom.xml 2013-02-11 16:46:50 UTC (rev 93) +++ trunk/cantharella.utils/pom.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -36,6 +36,11 @@ <artifactId>opencsv</artifactId> </dependency> + <dependency> + <groupId>org.nuiton</groupId> + <artifactId>nuiton-utils</artifactId> + </dependency> + <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> Added: trunk/cantharella.utils/src/main/java/nc/ird/module/utils/CantharellaConfig.java =================================================================== --- trunk/cantharella.utils/src/main/java/nc/ird/module/utils/CantharellaConfig.java (rev 0) +++ trunk/cantharella.utils/src/main/java/nc/ird/module/utils/CantharellaConfig.java 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,43 @@ +package nc.ird.module.utils; + +import java.util.Properties; +import org.nuiton.util.ApplicationConfig; +import org.nuiton.util.ArgumentsParserException; + + +/** + * Used as factory in spring configuration to get configuration file as properties + * this class use internaly {@link ApplicationConfig}. + * + * @author poussin + * @version $Revision$ + * + * Last update: $Date$ + * by : $Author$ + */ +public class CantharellaConfig { + + /** + * force filename to cantharella.config + * @return + * @throws ArgumentsParserException + */ + static public Properties getProperties() throws ArgumentsParserException { + return getProperties("cantharella.conf"); + } + + /** + * This method take file name in argument, this permit to force filename for + * example for unit tests + * + * @param filename filename to used + * @return + * @throws ArgumentsParserException + */ + static public Properties getProperties(String filename) throws ArgumentsParserException { + ApplicationConfig config = new ApplicationConfig(filename); + config.parse(); + Properties result = config.getFlatOptions(); + return result; + } +} Modified: trunk/cantharella.web/pom.xml =================================================================== --- trunk/cantharella.web/pom.xml 2013-02-11 16:46:50 UTC (rev 93) +++ trunk/cantharella.web/pom.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -44,34 +44,15 @@ <!-- Default resources for the web layer --> <resource> - <directory>src/main/resources/commons</directory> + <directory>src/main/resources</directory> </resource> </resources> - <plugins> - <!-- Default plugins for the web layer --> - </plugins> </build> + <profiles> <profile> - <id>development</id> - <build> - <resources> - <!-- Development resources for the web layer --> - <resource> - <directory>src/main/resources/development</directory> - </resource> - </resources> - </build> - </profile> - <profile> <id>integration</id> <build> - <resources> - <!-- Integration resources for the web layer --> - <resource> - <directory>src/main/resources/integration</directory> - </resource> - </resources> <!-- Integration plugins for the web layer --> <plugins> <plugin> @@ -125,12 +106,6 @@ <profile> <id>production</id> <build> - <resources> - <!-- Production resources for the web layer --> - <resource> - <directory>src/main/resources/production</directory> - </resource> - </resources> <!-- Production plugins for the web layer --> <plugins> <plugin> Added: trunk/cantharella.web/src/main/resources/cantharella.conf =================================================================== --- trunk/cantharella.web/src/main/resources/cantharella.conf (rev 0) +++ trunk/cantharella.web/src/main/resources/cantharella.conf 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,28 @@ +### +# #%L +# Cantharella :: Web +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% + +# +# WEB CONFIGURATION +# +app.debug=true +app.optimize=false +wicket.configuration=development Copied: trunk/cantharella.web/src/main/resources/log4j.xml (from rev 93, trunk/cantharella.web/src/main/resources/commons/log4j.xml) =================================================================== (Binary files differ) Copied: trunk/cantharella.web/src/main/resources/webContext.xml (from rev 93, trunk/cantharella.web/src/main/resources/commons/webContext.xml) =================================================================== --- trunk/cantharella.web/src/main/resources/webContext.xml (rev 0) +++ trunk/cantharella.web/src/main/resources/webContext.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Cantharella :: Web + $Id:$ + $HeadURL:$ + %% + Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + #L% + --> + +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:aop="http://www.springframework.org/schema/aop" + xmlns:tx="http://www.springframework.org/schema/tx" + xmlns:context="http://www.springframework.org/schema/context" + xmlns:p="http://www.springframework.org/schema/p" + xsi:schemaLocation="http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans-3.0.xsd + http://www.springframework.org/schema/tx + http://www.springframework.org/schema/tx/spring-tx-3.0.xsd + http://www.springframework.org/schema/aop + http://www.springframework.org/schema/aop/spring-aop-3.0.xsd + http://www.springframework.org/schema/context + http://www.springframework.org/schema/context/spring-context-2.5.xsd"> + + <bean id="propertiesConfig" + class="nc.ird.module.utils.CantharellaConfig" factory-method="getProperties"/> + + <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> + <property name="properties" ref="propertiesConfig" /> + <!-- set on except on the last file to allow multiple files to load --> + <property name="ignoreUnresolvablePlaceholders" value="true"/> + </bean> + +</beans> \ No newline at end of file Copied: trunk/cantharella.web/src/main/resources/web_en.properties (from rev 93, trunk/cantharella.web/src/main/resources/commons/web_en.properties) =================================================================== --- trunk/cantharella.web/src/main/resources/web_en.properties (rev 0) +++ trunk/cantharella.web/src/main/resources/web_en.properties 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,423 @@ +### +# #%L +# Cantharella :: Web +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### +#Header & footer +TemplatePage.Subtitle=Pharmacochemical database of natural substances +TemplatePage.Copyright=All rights reserved +TemplatePage.MainNav=Main Navigation +TemplatePage.ContentNav=Go to content +TemplatePage.Welcome=Welcome +TemplatePage.Logout=Logout +TemplatePage.Logout.OK=You were disconnected +TemplatePage.Administration=Administration +TemplatePage.Sampling=Sampling +TemplatePage.Processing=Processing +TemplatePage.Chemistry=Chemistry +TemplatePage.Biology=Biology +TemplatePage.Search=Search +TemplatePage.Search.Label=Search in the database: +TemplatePage.Search.Launch=Launch to search in the database +TemplatePage.Lang=en +TemplatePage.Lang.Choice=Language Choice +TemplatePage.Css.Menu=css/menu_en.css + + +#PAGES & ACTIONS# + +HomePage=Home +HomePage.InvalidUtilisateurs=Requests for accounts creations +HomePage.Login=Log in +HomePage.Login.OK=Successful login +HomePage.Login.KO=Invalid email or password +HomePage.Login.NotYetValid=Your account creation request has not yet been validated +HomePage.Statistics=Statistics +HomePage.Rights=Your rights +HomePage.Rights.Admin=You are logged in as administrator, you have access to all information. +HomePage.Rights.User=You have rights over all samples of {0} campaign(s) and especially over {1} sample(s). +HomePage.Rights.User.Details=+ details +HomePage.Rights.User2=You are also creator of {0} campaign(s) and have rights over all its samples. +HomePage.Warning= Data capitalized in this information system were acquired during different programs by different organizations. To the use of these data, thank you to contact the program coordinator indicated at the corresponding campaign form. +HomePage.Warning2=IRD provides no guarantee in relation to the data and information presented, their veracity depend to their authors. + +#for statistics +Personnes.stat=Persons +Campagnes.stat=Campaigns +Stations.stat=Locations +Specimens.stat=Specimens +Lots.stat=Samples +Extractions.stat=Extractions +Purifications.stat=Purifications +ResultatsTestsBio.stat=Bioassay results + + +ErrorPage=Error +ErrorPage.AccessDeniedPage=You are not allowed to access this page +ErrorPage.InternalErrorPage=Internal error +ErrorPage.PageExpiredErrorPage=The page has expired + +ContactPage=Contact +ContactPage.Info=Send a message to the database managers by completing the form below. +ContactPage.Send.OK=Message sent +ContactPage.Send.EmailException=Problems when sending the message + +ResetPasswordPage=Password forgotten +ResetPasswordPage.Reset.OK=New password sent by email +ResetPasswordPage.Reset.DataNotFoundException=Email does not correspond to any registred user +ResetPasswordPage.Reset.EmailException=Problems when sending the new password + +RegisterPage=Account creation request +RegisterPage.Register.OK=Account creation request sent +RegisterPage.Register.DataConstraintException=Email or First name + Last name already exist + +ManageUtilisateurPage=User account management +ManageUtilisateurPage.Profile=Profile +ManageUtilisateurPage.Authorizations=Rights +ManageUtilisateurPage.Update.OK=Account updated +ManageUtilisateurPage.Update.DataConstraintException=Email or first name + last name already exist +ManageUtilisateurPage.Valid.OK=Account validated and updated +ManageUtilisateurPage.Valid.DataConstraintException=Email or first name + last name already exist +ManageUtilisateurPage.Delete.OK=User deleted +ManageUtilisateurPage.Delete.DataConstraintException=There are data created by this user +ManageUtilisateurPage.Delete.EmailException=Problem during the delete confirmation of the user account +ManageUtilisateurPage.Delete.Info=The removal erases the user account, but keeps the person if there are linked data. +ManageUtilisateurPage.Reject.OK=Account creation request rejected +Authorizations.Campagnes.Lot.null=All + +ListPersonnesPage=Persons +ListPersonnesPage.NewPersonne=New person +ListPersonnesPage.IsNotValid=(not validated) + +ListCampagnesPage=Campaigns +ListCampagnesPage.NewCampagne=New campaign + +ListLotsPage=Samples +ListLotsPage.NewLot=New sample + +ListStationsPage=Locations +ListStationsPage.NewStation=New location + +ListSpecimensPage=Specimens +ListSpecimensPage.NewSpecimen=New specimen + +ListExtractionsPage=Extractions +ListExtractionsPage.NewExtraction=New extraction + +ListPurificationsPage=Purifications +ListPurificationsPage.NewPurification=New purification + +ListMoleculesPage=Molecules +ListMoleculesPage.NewMolecule=New molecule + +ListTestsBioPage=Bioassay results +ListTestsBioPage2=Bioassays +ListTestsBioPage.NewTestBio=New bioassay + +ManageCampagnePage=Campaign management +ManageCampagnePage.Create.OK=Campaign added +ManageCampagnePage.Create.DataConstraintException=The name already exists +ManageCampagnePage.Update.OK=Campaign updated +ManageCampagnePage.Update.DataConstraintException=The name already exists +ManageCampagnePage.Delete.OK=Campaign deleted +ManageCampagnePage.Delete.DataConstraintException=There are data linked to this campaign + +ManageLotPage=Sample management +ManageLotPage.Create.OK=Sample created +ManageLotPage.Create.DataConstraintException=The reference already exists +ManageLotPage.Update.OK=Sample updated +ManageLotPage.Update.DataConstraintException=The reference already exists +ManageLotPage.Delete.OK=Sample deleted +ManageLotPage.Delete.DataConstraintException=There are data linked to this sample + +ManagePersonnePage=Person management +ManagePersonnePage.Create.OK=Person created +ManagePersonnePage.Create.DataConstraintException=Email or first name + last name already exist +ManagePersonnePage.Update.OK=Person updated +ManagePersonnePage.Update.DataConstraintException=Email or first name + last name already exist +ManagePersonnePage.Delete.OK=Person deleted +ManagePersonnePage.Delete.DataConstraintException= There are data linked to this person +ManagePersonnePage.CreateUtilisateur=Create a user account +ManagePersonnePage.CreateUtilisateur.OK=User account created +ManagePersonnePage.CreateUtilisateur.DataConstraintException=Email or first name + last name already exist +ManagePersonnePage.CreateUtilisateur.EmailException=Problems when sending the password + +ManageStationPage=Location management +ManageStationPage.Create.OK=Location added +ManageStationPage.Create.DataConstraintException=The name already exists +ManageStationPage.Update.OK=Location updated +ManageStationPage.Update.DataConstraintException=The name already exists +ManageStationPage.Delete.OK=Location deleted +ManageStationPage.Delete.DataConstraintException=There are data linked to this location + +ManageSpecimenPage=Specimen management +ManageSpecimenPage.Create.OK=Specimen added +ManageSpecimenPage.Create.DataConstraintException=The reference already exists +ManageSpecimenPage.Update.OK=Specimen updated +ManageSpecimenPage.Update.DataConstraintException=The reference already exists +ManageSpecimenPage.Delete.OK=Specimen deleted +ManageSpecimenPage.Delete.DataConstraintException=There are data linked to this specimen + +ManageExtractionPage=Extraction management +ManageExtractionPage.Create.OK=Extraction added +ManageExtractionPage.Create.DataConstraintException=Unidentified error during the creation +ManageExtractionPage.Update.OK=Extraction updated +ManageExtractionPage.Update.DataConstraintException=Unidentified error during the update +ManageExtractionPage.Delete.OK=Extraction deleted +ManageExtractionPage.Delete.DataConstraintException=There are data linked to this extraction + +ManagePurificationPage=Purification management +ManagePurificationPage.Create.OK=Purification added +ManagePurificationPage.Create.DataConstraintException=Unidentified error during the creation +ManagePurificationPage.Update.OK=Purification updated +ManagePurificationPage.Update.DataConstraintException=Unidentified error during the update +ManagePurificationPage.Delete.OK=Purification deleted +ManagePurificationPage.Delete.DataConstraintException=There are data linked to this purification + +ManageMoleculePage=Molecule management +ManageMoleculePage.Create.DataConstraintException=Can't save molecule +ManageMoleculePage.Create.OK=Molecule added +ManageMoleculePage.Update.DataConstraintException=Cant' update molecule +ManageMoleculePage.Update.OK=Molecule updated +ManageMoleculePage.Delete.DataConstraintException=Can't delete molecule +ManageMoleculePage.Delete.OK=Molecule deleted + +ManageTestBioPage=Bioassay management +ManageTestBioPage.Create.OK=Bioassay added +ManageTestBioPage.Create.DataConstraintException=Unidentified error during the creation +ManageTestBioPage.Update.OK=Bioassay updated +ManageTestBioPage.Update.DataConstraintException=Unidentified error during the update +ManageTestBioPage.Delete.OK=Bioassay deleted +ManageTestBioPage.Delete.DataConstraintException=There are data linked to this biassay + +UpdateUtilisateurPage=Account management +UpdateUtilisateurPage.Password=Password +UpdateUtilisateurPage.Profile=Profile +UpdateUtilisateurPage.UpdateProfile.OK=Profile updated +UpdateUtilisateurPage.UpdateProfile.DataConstraintException=Email or First name + Last name already exist +UpdateUtilisateurPage.UpdatePassword.OK=Password updated +UpdateUtilisateurPage.Delete.OK=Account deleted +UpdateUtilisateurPage.Delete.DataConstraintException=Deletion impossible, there must be at least one administrator +UpdateUtilisateurPage.Delete.EmailException=Problem during the deletion confirmation of the user account + +ListConfigurationPage=Configuration +ListConfigurationPage.Parties=Sample parts list +ListPartiePanel.NewPartie=New part +ListConfigurationPage.MethodesExtraction=Extraction methods list +ListMethodeExtractionPanel.NewMethodeExtraction=New method +ListConfigurationPage.MethodesPurification= Purification methods list +ListMethodePurificationPanel.NewMethodePurification=New method +ListConfigurationPage.MethodesTestBio=Bioassay methods list +ListMethodeTestBioPanel.NewMethodeTestBio=New method +ListConfigurationPage.ErreursTestBio= Bioassay errors list +ListErreurTestBioPanel.NewErreurTestBio=New error +ListConfigurationPage.RebuildLuceneIndex=Rebuild lucene index + +ManagePartiePage=Managing a part +ManagePartiePage.Create.OK=Part created +ManagePartiePage.Create.DataConstraintException=The part already exists +ManagePartiePage.Update.OK=Part updated +ManagePartiePage.Update.DataConstraintException=The part already exists +ManagePartiePage.Delete.OK=Part deleted +ManagePartiePage.Delete.DataConstraintException=There are data linked to this part + +ManageErreurTestBioPage=Managing an error +ManageErreurTestBioPage.Create.OK=Error created +ManageErreurTestBioPage.Create.DataConstraintException=The name already exists +ManageErreurTestBioPage.Update.OK=Error updated +ManageErreurTestBioPage.Update.DataConstraintException=The name already exists +ManageErreurTestBioPage.Delete.OK=Error deleted +ManageErreurTestBioPage.Delete.DataConstraintException=There are data linked to this error + +ManageMethodeTestBioPage=Managing a bioassay method +ManageMethodeTestBioPage.Create.OK=Method created +ManageMethodeTestBioPage.Create.DataConstraintException=The name or the target already exists +ManageMethodeTestBioPage.Update.OK=Method updated +ManageMethodeTestBioPage.Update.DataConstraintException=The name or the target already exists +ManageMethodeTestBioPage.Delete.OK=Method deleted +ManageMethodeTestBioPage.Delete.DataConstraintException=There are data linked to this method + +ManageMethodeExtractionPage=Managing an extraction method +ManageMethodeExtractionPage.Create.OK=Method created +ManageMethodeExtractionPage.Create.DataConstraintException=The name already exists +ManageMethodeExtractionPage.Update.OK=Method updated +ManageMethodeExtractionPage.Update.DataConstraintException=The name already exists +ManageMethodeExtractionPage.Delete.OK=Method deleted +ManageMethodeExtractionPage.Delete.DataConstraintException=There are data linked to this method + +ManageMethodePurificationPage=Managing a purification method +ManageMethodePurificationPage.Create.OK=Method created +ManageMethodePurificationPage.Create.DataConstraintException=The name already exists +ManageMethodePurificationPage.Update.OK=Method updated +ManageMethodePurificationPage.Update.DataConstraintException=The name already exists +ManageMethodePurificationPage.Delete.OK=Method deleted +ManageMethodePurificationPage.Delete.DataConstraintException=There are data linked to this method + +ReadCampagnePage=Viewing a campaign +ReadLotPage=Viewing a sample +ReadPersonnePage=Viewing a person +ReadSpecimenPage=Viewing a specimen +ReadUtilisateurPage=Viewing a user +ReadStationPage=Viewing a location +ReadExtractionPage=Viewing an extraction +ReadPurificationPage=Viewing a purification +ReadMoleculePage=Viewing a molecule +ReadTestBioPage=Viewing a bioassay + +SearchPage=Search +SearchPage.Search=Search +SearchPage.QueryLabel=Query +SearchPage.Specimens=Specimens +SearchPage.Lots=Samples +SearchPage.Extractions=Extractions +SearchPage.Purifications=Purifications +SearchPage.ResultatTestBios=Bioassay +SearchPage.Stations=Stations +SearchPage.Molecules=Molecules +SearchPage.QuerySyntax=Search terms (or parts of words using *). For a more advanced search, consult the ${advancedLink}. +SearchPage.QuerySyntaxAdvanced=complete syntax +SearchPage.ExportCSV=Export to CSV + +#MODELS# + +CaptchaModel.captcha=Captcha +CaptchaModel.captchaText=Type the number +CaptchaModel.captchaText.KO=Type the number corresponding to the image + +RegisterModel.password=Password +RegisterModel.passwordConfirmation=Confirmation +RegisterModel.passwordConfirmation.KO=Passwords must be the same + +LoginModel.password=Password +LoginModel.rememberMe=Remember me + +ManageStationModel.latitudeDegrees=Latitude degrees +ManageStationModel.latitudeDegrees.IConverter.Integer=Latitude degrees - must be an integer +ManageStationModel.latitudeMinutes=Latitude minutes +ManageStationModel.latitudeMinutes.IConverter.Double=Latitude minutes - must a decimal number +ManageStationModel.latitudeOrientation=Latitude orientation +ManageStationModel.longitudeDegrees=Longitude degrees +ManageStationModel.longitudeDegrees.IConverter.Integer=Longitude degrees - must be an integer +ManageStationModel.longitudeMinutes=Longitude minutes +ManageStationModel.longitudeMinutes.IConverter.Double=Longitude minutes - must a decimal number +ManageStationModel.longitudeOrientation=Longitude orientation + +UpdateUtilisateurModel.password=Password 2 +UpdateUtilisateurModel.password.KO=Invalid password +UpdateUtilisateurModel.currentPassword=Password +UpdateUtilisateurModel.currentPassword.KO=Invalid password +UpdateUtilisateurModel.newPassword=New password +UpdateUtilisateurModel.newPasswordConfirmation=Confirmation +UpdateUtilisateurModel.newPasswordConfirmation.KO=New passwords must be the same + +ContactModel.mail=Your email +ContactModel.subject=Your Subject +ContactModel.message=Your message + + +Campagne.dates.KO=The dates are not correctly entered +Campagne.dateDeb.IConverter.Date=The start date is incorrectly formatted (DD/MM/YY) +Campagne.dateFin.IConverter.Date=The end date is incorrectly formatted (DD/MM/YY) +Campagne.mentionLegale.info=Specify in order: the data-producing organizations - the fund providers - the period concerned by the program +Campagne.mentionLegale.info2= the data-producing organizations - the fund providers - the period concerned by the program +Campagne.complement.info= Don’t forget to mention the policies about confidentiality and data publication +Campagne.stationsNotAccessibles= Some locations are not displayed because you don’t have the rights over the entire campaign. + +Station.coordonnees=Coordinates +Station.coordonnees.KO=To save coordinates, all fields must be completed + +Specimen.dateDepot.IConverter.Date=The deposit date is incorrectly formatted (DD/MM/YY) + +Lot.station.info=If the required location does not appear, contact the campaign creator so he adds it to the explored locations list +Lot.dateRecolte.IConverter.Date=The harvest date is incorrectly formatted (DD/MM/YY) +Lot.masseFraiche.IConverter.BigDecimal=The fresh mass must be a decimal number +Lot.masseSeche.IConverter.BigDecimal= The dry mass must be a decimal number + +Extraction.masseDepart.IConverter.BigDecimal=Mass to be extract - must be a decimal number +Extraction.date.IConverter.Date=The date is incorrectly formatted (DD/MM/YY) +Extraction.extraits.masseObtenue.IConverter.BigDecimal=Resultant mass - must be a decimal number +Extraction.extraits.masseObtenue=Resultant mass +Extraction.notUnique=No. extraction – already exists +Extrait.notUnique=Ref. extract - already exists +Extrait.isReferenced=There are data linked to this extract +TypeExtrait.isReferenced=The type of initials '${0}' can’t be deleted because there are data which refer it +MethodePurification.parametres.index.IConverter.Integer=The index must be an integer + +Purification.masseDepart.IConverter.BigDecimal=Mass to be purify - must be a decimal number +Purification.fractions.masseObtenue.IConverter.BigDecimal=Resultant mass - must be a decimal number +Purification.fractions.masseObtenue=Resultant mass +Purification.date.IConverter.Date=The date is incorrectly formatted (DD/MM/YY) +Purification.notUnique=No. purification - already exists +Fraction.notUnique=Ref. fraction - already exists +Fraction.isReferenced=There are data linked to this fraction +ParamMethoPuri.isReferenced=The parameter '${0}' can’t be deleted because there are data which refer it +MethodePurification.parametres.index.IConverter.Integer=The index must be an integer +MethodePurification.parametres.index=Index + +Molecule.provenanceNotAccessibles=Some related products are not displayed because you don't have the required rights +Molecule.masseMolaire.Required=Molar mass - can’t be null +Molecule.masseMolaire.IConverter.BigDecimal=Molar mass - must be a decimal number + +TestBio.date.IConverter.Date= The date is incorrectly formatted (DD/MM/YY) +TestBio.concMasseDefaut.IConverter.BigDecimal=Default Conc./Mass - must be a decimal number +TestBio.resultats.valeur.IConverter.BigDecimal=Value - must be a decimal number +TestBio.resultats.repere.Required=Mark – can’t be null +TestBio.resultats.repere=Mark +TestBio.resultats.typeResultat.Required=Type – can’t be null +TestBio.resultats.typeResultat=Type +TestBio.resultats.produit.Required=Ref product – can’t be null +TestBio.resultats.produit=Ref. product +TestBio.resultats.produitTemoin.Required=Control prod. – can’t be null +TestBio.resultats.produitTemoin=Control prod. +TestBio.resultats.concMasse.IConverter.BigDecimal=Conc./Mass - must be a decimal number +TestBio.resultats.concMasse=Conc./Mass +TestBio.resultats.uniteConcMasse=Conc./Mass +TestBio.resultats.concMasse.KO=To save Conc./Mass, the two fields must be completed +TestBio.resultats.stade.Required=Stage - can’t be null +TestBio.resultats.stade=Stage +TestBio.resultats.valeur.Required=Value - can’t be null +TestBio.resultats.valeur=Value +TestBio.notUnique=No. test – already exists +TestBio.resultats.noProduit=The bioassay must contain at least a result of type "product" +TestBio.resultsNotAccessibles=Some results are not displayed because you don't have the required rights over their products. + +#BASIC# +Actions=Actions +Submit=Submit +Cancel=Cancel +Valid=Valid +Reject=Reject +Rebuild=Rebuild +Create=Create +Add=Add +Update=Modify +Delete=Delete +Back=Back +Read=View +ReadExtraction=View the extraction +ReadPurification=View the purification +TODO=ToDo +Confirm=Are you sure? +List.none=The list is empty. +Boolean.true=yes +Boolean.false=no + +NavigatorLabel=Lines ${from} to ${to} (${of} results) +datatable.no-records-found=No result. Copied: trunk/cantharella.web/src/main/resources/web_fr.properties (from rev 93, trunk/cantharella.web/src/main/resources/commons/web_fr.properties) =================================================================== --- trunk/cantharella.web/src/main/resources/web_fr.properties (rev 0) +++ trunk/cantharella.web/src/main/resources/web_fr.properties 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,421 @@ +### +# #%L +# Cantharella :: Web +# $Id:$ +# $HeadURL:$ +# %% +# Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# #L% +### +#Header & footer +TemplatePage.Subtitle=Base de données pharmacochimique des substances naturelles +TemplatePage.Copyright=Tous droits réservés +TemplatePage.MainNav=Navigation principale +TemplatePage.ContentNav=Aller au contenu +TemplatePage.Welcome=Bienvenue +TemplatePage.Logout=Déconnexion +TemplatePage.Logout.OK=Vous avez été déconnecté +TemplatePage.Administration=Administration +TemplatePage.Sampling=Échantillonage +TemplatePage.Processing=Traitement +TemplatePage.Chemistry=Chimie +TemplatePage.Biology=Biologie +TemplatePage.Search=Chercher +TemplatePage.Search.Label=Recherche dans la base : +TemplatePage.Search.Launch=Lancer la recherche dans la base +TemplatePage.Lang=fr +TemplatePage.Lang.Choice=Choix de la langue +TemplatePage.Css.Menu=css/menu_fr.css + +#PAGES & ACTIONS# + +HomePage=Accueil +HomePage.InvalidUtilisateurs=Demandes de créations de comptes +HomePage.Login=Connexion +HomePage.Login.OK=Connexion réussie +HomePage.Login.KO=Identifiants incorrects +HomePage.Login.NotYetValid=Votre demande de création de compte n'a pas encore été validée +HomePage.Statistics=Statistiques +HomePage.Rights=Vos droits +HomePage.Rights.Admin=Vous êtes connectés en tant qu'administrateur et avez accès à toutes les informations. +HomePage.Rights.User=Vous avez des droits sur l''ensemble des lots de {0} campagne(s) et spécifiquement sur {1} lot(s). +HomePage.Rights.User.Details=+ de détails +HomePage.Rights.User2=Vous êtes également créateur de {0} campagnes(s) et avez des droits sur l''ensemble de ses lots. +HomePage.Warning=Les données capitalisées dans ce système d’information ont été acquises au cours de différents programmes, par divers organismes. Pour l’utilisation des données, merci de prendre contact avec le coordinateur du programme indiqué au niveau de la fiche campagne correspondante. +HomePage.Warning2=L’IRD n’assure aucune garantie par rapport aux données et informations présentées, leur véracité relève de leurs auteurs. + +#for statistics +Personnes.stat=Personnes +Campagnes.stat=Campagnes +Stations.stat=Stations +Specimens.stat=Spécimens +Lots.stat=Lots +Extractions.stat=Extractions +Purifications.stat=Purifications +ResultatsTestsBio.stat=Résultats de tests biologiques + + +ErrorPage=Erreur +ErrorPage.AccessDeniedPage=Vous n'êtes pas autorisé à accéder à cette page +ErrorPage.InternalErrorPage=Erreur interne +ErrorPage.PageExpiredErrorPage=La page a expiré + +ContactPage=Contact +ContactPage.Info=Envoyez un message aux gestionnaires de la base en remplissant le formulaire ci-dessous. +ContactPage.Send.OK=Message envoyé +ContactPage.Send.EmailException=Problème lors de l'envoi du message + +ResetPasswordPage=Mot de passe oublié +ResetPasswordPage.Reset.OK=Nouveau mot de passe envoyé par mail +ResetPasswordPage.Reset.DataNotFoundException=Le courriel ne correspond à aucun utilisateur +ResetPasswordPage.Reset.EmailException=Problème lors de l'envoi du nouveau mot de passe + +RegisterPage=Demande de création de compte +RegisterPage.Register.OK=Demande de création de compte effectuée +RegisterPage.Register.DataConstraintException=Le courriel ou le prénom + nom existe déjà + +ManageUtilisateurPage=Gestion du compte utilisateur +ManageUtilisateurPage.Profile=Profil +ManageUtilisateurPage.Authorizations=Droits +ManageUtilisateurPage.Update.OK=Compte mis à jour +ManageUtilisateurPage.Update.DataConstraintException=Le courriel ou le prénom + nom existe déjà +ManageUtilisateurPage.Valid.OK=Compte validé et mis à jour +ManageUtilisateurPage.Valid.DataConstraintException=Le courriel ou le prénom + nom existe déjà +ManageUtilisateurPage.Delete.OK=Utilisateur supprimé +ManageUtilisateurPage.Delete.DataConstraintException=Il existe des données crées par cet utilisateur +ManageUtilisateurPage.Delete.EmailException=Problème lors de la confirmation de suppression de compte utilisateur +ManageUtilisateurPage.Delete.Info=La suppression efface le compte utilisateur, mais conserve la personne s'il y a des données liées. +ManageUtilisateurPage.Reject.OK=Demande de création de compte rejetée +Authorizations.Campagnes.Lot.null=Tous + +ListPersonnesPage=Personnes +ListPersonnesPage.NewPersonne=Nouvelle personne +ListPersonnesPage.IsNotValid=(non validé) + +ListCampagnesPage=Campagnes +ListCampagnesPage.NewCampagne=Nouvelle campagne + +ListLotsPage=Lots +ListLotsPage.NewLot=Nouveau lot + +ListStationsPage=Stations +ListStationsPage.NewStation=Nouvelle station + +ListSpecimensPage=Spécimens +ListSpecimensPage.NewSpecimen=Nouveau spécimen + +ListExtractionsPage=Extractions +ListExtractionsPage.NewExtraction=Nouvelle extraction + +ListPurificationsPage=Purifications +ListPurificationsPage.NewPurification=Nouvelle purification + +ListMoleculesPage=Molécules +ListMoleculesPage.NewMolecule=Nouvelle molécule + +ListTestsBioPage=Résultats des tests biologiques +ListTestsBioPage2=Tests biologiques +ListTestsBioPage.NewTestBio=Nouveau test biologique + +ManageCampagnePage=Gestion d'une campagne +ManageCampagnePage.Create.OK=Campagne ajoutée +ManageCampagnePage.Create.DataConstraintException=Le nom existe déjà +ManageCampagnePage.Update.OK=Campagne mise à jour +ManageCampagnePage.Update.DataConstraintException=Le nom existe déjà +ManageCampagnePage.Delete.OK=Campagne supprimée +ManageCampagnePage.Delete.DataConstraintException=Il existe des données liées à cette campagne + +ManageLotPage=Gestion d'un lot +ManageLotPage.Create.OK=Lot créé +ManageLotPage.Create.DataConstraintException=La référence existe déjà +ManageLotPage.Update.OK=Lot mis à jour +ManageLotPage.Update.DataConstraintException=La référence existe déjà +ManageLotPage.Delete.OK=Lot supprimé +ManageLotPage.Delete.DataConstraintException=Il existe des données liées à ce lot + +ManagePersonnePage=Gestion d'une personne +ManagePersonnePage.Create.OK=Personne créée +ManagePersonnePage.Create.DataConstraintException=Le courriel ou le prénom + nom existe déjà +ManagePersonnePage.Update.OK=Personne mise à jour +ManagePersonnePage.Update.DataConstraintException=Le courriel ou le prénom + nom existe déjà +ManagePersonnePage.Delete.OK=Personne supprimée +ManagePersonnePage.Delete.DataConstraintException=Il existe des données liées à cette personne +ManagePersonnePage.CreateUtilisateur=Créer un compte utilisateur +ManagePersonnePage.CreateUtilisateur.OK=Compte utilisateur créé +ManagePersonnePage.CreateUtilisateur.DataConstraintException=Le courriel ou le prénom + nom existe déjà +ManagePersonnePage.CreateUtilisateur.EmailException=Problème lors de l'envoi du mot de passe + +ManageStationPage=Gestion d'une station +ManageStationPage.Create.OK=Station ajoutée +ManageStationPage.Create.DataConstraintException=Le nom existe déjà +ManageStationPage.Update.OK=Station mise à jour +ManageStationPage.Update.DataConstraintException=Le nom existe déjà +ManageStationPage.Delete.OK=Station supprimée +ManageStationPage.Delete.DataConstraintException=Il existe des données liées à cette station + +ManageSpecimenPage=Gestion d'un spécimen +ManageSpecimenPage.Create.OK=Spécimen ajouté +ManageSpecimenPage.Create.DataConstraintException=La référence existe déjà +ManageSpecimenPage.Update.OK=Spécimen mis à jour +ManageSpecimenPage.Update.DataConstraintException=La référence existe déjà +ManageSpecimenPage.Delete.OK=Spécimen supprimée +ManageSpecimenPage.Delete.DataConstraintException=Il existe des données liées à ce spécimen + +ManageExtractionPage=Gestion d'une extraction +ManageExtractionPage.Create.OK=Extraction ajoutée +ManageExtractionPage.Create.DataConstraintException=Erreur non identifiée lors de la création +ManageExtractionPage.Update.OK=Extraction mise à jour +ManageExtractionPage.Update.DataConstraintException=Erreur non identifiée lors de la mise à jour +ManageExtractionPage.Delete.OK=Extraction supprimée +ManageExtractionPage.Delete.DataConstraintException=Il existe des données liées à cette extraction + +ManagePurificationPage=Gestion d'une purification +ManagePurificationPage.Create.OK=Purification ajoutée +ManagePurificationPage.Create.DataConstraintException=Erreur non identifiée lors de la création +ManagePurificationPage.Update.OK=Purification mise à jour +ManagePurificationPage.Update.DataConstraintException=Erreur non identifiée lors de la mise à jour +ManagePurificationPage.Delete.OK=Purification supprimée +ManagePurificationPage.Delete.DataConstraintException=Il existe des données liées à cette purification + +ManageMoleculePage=Gestion d'une molécule +ManageMoleculePage.Create.DataConstraintException=Impossible de sauver la molécule +ManageMoleculePage.Create.OK=Molecule ajoutée +ManageMoleculePage.Update.DataConstraintException=Impossible de modifier la molécule +ManageMoleculePage.Update.OK=Molecule mise à jour +ManageMoleculePage.Delete.DataConstraintException=Impossible de supprimer la molécule +ManageMoleculePage.Delete.OK=Molecule supprimée + +ManageTestBioPage=Gestion d'un test biologique +ManageTestBioPage.Create.OK=Test biologique ajouté +ManageTestBioPage.Create.DataConstraintException=Erreur non identifiée lors de la création +ManageTestBioPage.Update.OK=Test biologique mis à jour +ManageTestBioPage.Update.DataConstraintException=Erreur non identifiée lors de la mise à jour +ManageTestBioPage.Delete.OK=Test biologique supprimé +ManageTestBioPage.Delete.DataConstraintException=Il existe des données liées à ce test biologique + +UpdateUtilisateurPage=Gestion du compte +UpdateUtilisateurPage.Password=Mot de passe +UpdateUtilisateurPage.Profile=Profil +UpdateUtilisateurPage.UpdateProfile.OK=Profil mis à jour +UpdateUtilisateurPage.UpdateProfile.DataConstraintException=Le courriel ou le prénom + nom existe déjà +UpdateUtilisateurPage.UpdatePassword.OK=Mot de passe mis à jour +UpdateUtilisateurPage.Delete.OK=Compte supprimé +UpdateUtilisateurPage.Delete.DataConstraintException=Suppression impossible, il doit rester au moins un administrateur +UpdateUtilisateurPage.Delete.EmailException=Problème lors de la confirmation de suppression de compte utilisateur + +ListConfigurationPage=Configuration +ListConfigurationPage.Parties=Liste des parties d'un lot +ListPartiePanel.NewPartie=Nouvelle partie +ListConfigurationPage.MethodesExtraction=Liste des méthodes d'extraction +ListMethodeExtractionPanel.NewMethodeExtraction=Nouvelle méthode +ListConfigurationPage.MethodesPurification=Liste des méthodes de purification +ListMethodePurificationPanel.NewMethodePurification=Nouvelle méthode +ListConfigurationPage.MethodesTestBio=Liste des méthodes de test biologique +ListMethodeTestBioPanel.NewMethodeTestBio=Nouvelle méthode +ListConfigurationPage.ErreursTestBio=Liste des erreurs pour un test biologique +ListErreurTestBioPanel.NewErreurTestBio=Nouvelle erreur +ListConfigurationPage.RebuildLuceneIndex=Reconstruire l'index lucene + +ManagePartiePage=Gestion d'une partie +ManagePartiePage.Create.OK=Partie créée +ManagePartiePage.Create.DataConstraintException=La partie existe déjà +ManagePartiePage.Update.OK=Partie mise à jour +ManagePartiePage.Update.DataConstraintException=La partie existe déjà +ManagePartiePage.Delete.OK=Partie supprimée +ManagePartiePage.Delete.DataConstraintException=Il existe des données liées à cette partie + +ManageErreurTestBioPage=Gestion d'une erreur +ManageErreurTestBioPage.Create.OK=Erreur créée +ManageErreurTestBioPage.Create.DataConstraintException=Le nom existe déjà +ManageErreurTestBioPage.Update.OK=Erreur mise à jour +ManageErreurTestBioPage.Update.DataConstraintException=Le nom existe déjà +ManageErreurTestBioPage.Delete.OK=Erreur supprimée +ManageErreurTestBioPage.Delete.DataConstraintException=Il existe des données liées à cette erreur + +ManageMethodeTestBioPage=Gestion d'une méthode de test +ManageMethodeTestBioPage.Create.OK=Méthode créée +ManageMethodeTestBioPage.Create.DataConstraintException=Le nom ou la cible existe déjà +ManageMethodeTestBioPage.Update.OK=Méthode mise à jour +ManageMethodeTestBioPage.Update.DataConstraintException=Le nom ou la cible existe déjà +ManageMethodeTestBioPage.Delete.OK=Méthode supprimée +ManageMethodeTestBioPage.Delete.DataConstraintException=Il existe des données liées à cette méthode + +ManageMethodeExtractionPage=Gestion d'une méthode d'extraction +ManageMethodeExtractionPage.Create.OK=Méthode créée +ManageMethodeExtractionPage.Create.DataConstraintException=Le nom existe déjà +ManageMethodeExtractionPage.Update.OK=Méthode mise à jour +ManageMethodeExtractionPage.Update.DataConstraintException=Le nom existe déjà +ManageMethodeExtractionPage.Delete.OK=Méthode supprimée +ManageMethodeExtractionPage.Delete.DataConstraintException=Il existe des données liées à cette méthode + +ManageMethodePurificationPage=Gestion d'une méthode de purification +ManageMethodePurificationPage.Create.OK=Méthode créée +ManageMethodePurificationPage.Create.DataConstraintException=Le nom existe déjà +ManageMethodePurificationPage.Update.OK=Méthode mise à jour +ManageMethodePurificationPage.Update.DataConstraintException=Le nom existe déjà +ManageMethodePurificationPage.Delete.OK=Méthode supprimée +ManageMethodePurificationPage.Delete.DataConstraintException=Il existe des données liées à cette méthode + +ReadCampagnePage=Consultation d'une campagne +ReadLotPage=Consultation d'un lot +ReadPersonnePage=Consultation d'une personne +ReadSpecimenPage=Consultation d'un spécimen +ReadUtilisateurPage=Consultation d'un utilisateur +ReadStationPage=Consultation d'une station +ReadExtractionPage=Consultation d'une extraction +ReadPurificationPage=Consultation d'une purification +ReadMoleculePage=Consultation d'une molécule +ReadTestBioPage=Consultation d'un test biologique + +SearchPage=Recherche +SearchPage.Search=Rechercher +SearchPage.QueryLabel=Requête +SearchPage.Specimens=Specimens +SearchPage.Lots=Lots +SearchPage.Extractions=Extractions +SearchPage.Purifications=Purifications +SearchPage.ResultatTestBios=Tests biologiques +SearchPage.Stations=Stations +SearchPage.Molecules=Molécules +SearchPage.QuerySyntax=Rechercher des termes (ou des parties de termes avec *). Pour une utilisation plus avancée de la recherche, consulter la ${advancedLink}. +SearchPage.QuerySyntaxAdvanced=synthaxe complète +SearchPage.ExportCSV=Exporter en CSV + +#MODELS# + +CaptchaModel.captcha=Captcha +CaptchaModel.captchaText=Recopier le nombre +CaptchaModel.captchaText.KO=Recopier le nombre correspondant à l'image + +RegisterModel.password=Mot de passe +RegisterModel.passwordConfirmation=Confirmation +RegisterModel.passwordConfirmation.KO=Les mots de passe doivent être identiques + +LoginModel.password=Mot de passe +LoginModel.rememberMe=Se souvenir de moi + +ManageStationModel.latitudeDegrees=Latitude degrés +ManageStationModel.latitudeDegrees.IConverter.Integer=Latitude degrés - doit être un nombre entier +ManageStationModel.latitudeMinutes=Latitude minutes +ManageStationModel.latitudeMinutes.IConverter.Double=Latitude minutes - doit être un nombre décimal +ManageStationModel.latitudeOrientation=Latitude orientation +ManageStationModel.longitudeDegrees=Longitude degrés +ManageStationModel.longitudeDegrees.IConverter.Integer=Longitude degrés - doit être un nombre entier +ManageStationModel.longitudeMinutes=Longitude minutes +ManageStationModel.longitudeMinutes.IConverter.Double=Longitude minutes - doit être un nombre décimal +ManageStationModel.longitudeOrientation=Longitude orientation + +UpdateUtilisateurModel.password=Mot de passe 2 +UpdateUtilisateurModel.password.KO=Mot de passe invalide +UpdateUtilisateurModel.currentPassword=Mot de passe +UpdateUtilisateurModel.currentPassword.KO=Mot de passe invalide +UpdateUtilisateurModel.newPassword=Nouveau mot de passe +UpdateUtilisateurModel.newPasswordConfirmation=Confirmation +UpdateUtilisateurModel.newPasswordConfirmation.KO=Les nouveaux mots de passe doivent être identiques + +ContactModel.mail=Votre courriel +ContactModel.subject=Votre sujet +ContactModel.message=Votre message + + +Campagne.dates.KO=Les dates ne sont pas correctement saisies +Campagne.dateDeb.IConverter.Date=La date de début est mal formatée (JJ/MM/AA) +Campagne.dateFin.IConverter.Date=La date de fin est mal formatée (JJ/MM/AA) +Campagne.mentionLegale.info=Indiquez dans l'ordre : les organismes producteurs des données – les bailleurs de fond – la/les année(s) concernée(s) par le programme +Campagne.mentionLegale.info2=organismes producteurs des données – bailleurs de fond – année(s) concernée(s) par le programme +Campagne.complement.info=N'oubliez pas d'indiquer les politiques de confidentialité et de publication des données +Campagne.stationsNotAccessibles=Certaines stations ne sont pas affichées car vous n'avez pas les droits sur l'ensemble de la campagne. + +Station.coordonnees=Coordonnées +Station.coordonnees.KO=Pour enregistrer des coordonnées, tous les champs doivent être renseignés + +Specimen.dateDepot.IConverter.Date=La date de dépot est mal formatée (JJ/MM/AA) + +Lot.station.info=Si la station voulue n'apparait pas, contactez le créateur de la campagne pour qu'il l'ajoute à la liste des stations prospectées +Lot.dateRecolte.IConverter.Date=La date de récolte est mal formatée (JJ/MM/AA) +Lot.masseFraiche.IConverter.BigDecimal=La masse fraîche doit être un nombre décimal +Lot.masseSeche.IConverter.BigDecimal=La masse sèche doit être un nombre décimal + +Extraction.masseDepart.IConverter.BigDecimal=Masse à extraire - doit être un nombre décimal +Extraction.date.IConverter.Date=La date est mal formatée (JJ/MM/AA) +Extraction.extraits.masseObtenue.IConverter.BigDecimal=Masse obtenue - doit être un nombre décimal +Extraction.extraits.masseObtenue=Masse obtenue +Extraction.notUnique=Réf. extraction - existe déjà +Extrait.notUnique=Réf. extrait - existe déjà +Extrait.isReferenced=Il existe des données liées à cet extrait +TypeExtrait.isReferenced=Le type d'initial '${0}' ne peut être supprimé car il existe des données qui le réfèrent + +Purification.masseDepart.IConverter.BigDecimal=Masse à purifier - doit être un nombre décimal +Purification.fractions.masseObtenue.IConverter.BigDecimal=Masse obtenue - doit être un nombre décimal +Purification.fractions.masseObtenue=Masse obtenue +Purification.date.IConverter.Date=La date est mal formatée (JJ/MM/AA) +Purification.notUnique=Réf. purification - existe déjà +Fraction.notUnique=Réf. fraction - existe déjà +Fraction.isReferenced=Il existe des données liées à cette fraction +ParamMethoPuri.isReferenced=Le paramètre '${0}' ne peut être supprimé car il existe des données qui le réfèrent +MethodePurification.parametres.index.IConverter.Integer=L'index doit être un entier +MethodePurification.parametres.index=Index + +Molecule.provenanceNotAccessibles=Certains produits associés ne sont pas affichés car vous n'avez pas les droits nécéssaires +Molecule.masseMolaire.Required=Masse molaire - ne peut être nul +Molecule.masseMolaire.IConverter.BigDecimal=Masse molaire - doit être un nombre décimal + +TestBio.date.IConverter.Date=La date est mal formatée (JJ/MM/AA) +TestBio.concMasseDefaut.IConverter.BigDecimal=Conc./Masse par défaut - doit être un nombre décimal +TestBio.resultats.valeur.IConverter.BigDecimal=Valeur - doit être un nombre décimal +TestBio.resultats.repere.Required=Repère - ne peut être nul +TestBio.resultats.repere=Repère +TestBio.resultats.typeResultat.Required=Type - ne peut être nul +TestBio.resultats.typeResultat=Type +TestBio.resultats.produit.Required=Réf produit - ne peut être nul +TestBio.resultats.produit=Réf. produit +TestBio.resultats.produitTemoin.Required=Prod. Témoin - ne peut être nul +TestBio.resultats.produitTemoin=Prod. Témoin +TestBio.resultats.concMasse.IConverter.BigDecimal=Conc./Masse - doit être un nombre décimal +TestBio.resultats.concMasse=Conc./Masse +TestBio.resultats.uniteConcMasse=Conc./Masse +TestBio.resultats.concMasse.KO=Pour enregistrer Conc./Masse, les deux champs doivent être renseignés +TestBio.resultats.stade.Required=Stade - ne peut être nul +TestBio.resultats.stade=Stade +TestBio.resultats.valeur.Required=Valeur - ne peut être nulle +TestBio.resultats.valeur=Valeur +TestBio.notUnique=Réf. test - existe déjà +TestBio.resultats.noProduit=Le test biologique doit comporter au moins un résultat de type "produit" +TestBio.resultsNotAccessibles=Certains résultats ne sont pas affichés car vous n'avez pas les droits nécessaires sur leur produit. + +#BASIC# +Actions=Actions +Submit=Valider +Cancel=Annuler +Valid=Valider +Rebuild=Reconstruire +Reject=Refuser +Create=Ajouter +Add=Ajouter +Update=Modifier +Delete=Supprimer +Back=Retour +Read=Consulter +ReadExtraction=Consulter l'extraction +ReadPurification=Consulter la purification +TODO=ToDo +Confirm=Êtes-vous sûr ? +List.none=La liste est vide. +Boolean.true=oui +Boolean.false=non + +NavigatorLabel=Lignes ${from} à ${to} (${of} résultats) +datatable.no-records-found=Aucun résultat. \ No newline at end of file Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2013-02-11 16:46:50 UTC (rev 93) +++ trunk/pom.xml 2013-02-12 15:39:48 UTC (rev 94) @@ -140,13 +140,6 @@ <build> - <resources> - <resource> - <directory>src/main/resources/developement</directory> - <filtering>true</filtering> - </resource> - </resources> - <pluginManagement> <plugins> @@ -450,8 +443,14 @@ <artifactId>mail</artifactId> <version>${version.mail}</version> </dependency> - + <dependency> + <groupId>org.nuiton</groupId> + <artifactId>nuiton-utils</artifactId> + <version>2.6.6</version> + </dependency> + + <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.9</version> Added: trunk/src/site/rst/configuration.rst =================================================================== --- trunk/src/site/rst/configuration.rst (rev 0) +++ trunk/src/site/rst/configuration.rst 2013-02-12 15:39:48 UTC (rev 94) @@ -0,0 +1,65 @@ +.. - +.. * #%L +.. * Cantharella +.. * $Id:$ +.. * $HeadURL:$ +.. * %% +.. * Copyright (C) 2009 - 2012 IRD (Institut de Recherche pour le Developpement) and by respective authors (see below) +.. * %% +.. * This program is free software: you can redistribute it and/or modify +.. * it under the terms of the GNU Affero General Public License as published by +.. * the Free Software Foundation, either version 3 of the License, or +.. * (at your option) any later version. +.. * +.. * This program is distributed in the hope that it will be useful, +.. * but WITHOUT ANY WARRANTY; without even the implied warranty of +.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.. * GNU General Public License for more details. +.. * +.. * You should have received a copy of the GNU Affero General Public License +.. * along with this program. If not, see <http://www.gnu.org/licenses/>. +.. * #L% +.. - + +Configuraiton +============= + +All configuration can be put in file **cantharella.conf**. This file can be in: + +- classpath +- /etc directory +- user configuration directory +- current directory + +Configuration variable +====================== + +When you put some variable in cantharella.conf file to change default value. + +All variables with default values:: + + # + # DATA + # + db.url=jdbc:postgresql:cantharella + db.user=cantharella + db.password=cantharella + db.debug=true + db.hbm2ddl=validate + + # + # SERVICE + # + mail.debug=true + mail.from=no-reply@ird.fr + mail.host=smtp + + admin.courriel=ISlog@ird.fr + admin.password=password + + # + # WEB + # + app.debug=true + app.optimize=false + wicket.configuration=development Modified: trunk/src/site/rst/index.rst =================================================================== --- trunk/src/site/rst/index.rst 2013-02-11 16:46:50 UTC (rev 93) +++ trunk/src/site/rst/index.rst 2013-02-12 15:39:48 UTC (rev 94) @@ -29,9 +29,9 @@ for the study of their natural substances, with a controlled access via internet. -.. image: images/Home.png -.. image: images/Station.png -.. image: images/Extraction.png +.. image:: images/Home.png +.. image:: images/Station.png +.. image:: images/Extraction.png Features ======== Modified: trunk/src/site/site_en.xml =================================================================== (Binary files differ)