[Suiviobsmer-commits] r970 - in trunk: wao-business/src/main/java/fr/ifremer/wao/service wao-business/src/main/resources/i18n wao-business/src/main/xmi wao-ui/src/main/java/fr/ifremer/wao/ui/pages wao-ui/src/main/webapp wao-ui/src/main/webapp/css
Author: bleny Date: 2011-02-02 11:47:28 +0000 (Wed, 02 Feb 2011) New Revision: 970 Log: fix misc minor issues Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceCartographyImpl.java trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties trunk/wao-business/src/main/xmi/wao.properties trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java trunk/wao-ui/src/main/webapp/Administration.tml trunk/wao-ui/src/main/webapp/ContactForm.tml trunk/wao-ui/src/main/webapp/css/contactForm.css trunk/wao-ui/src/main/webapp/css/contacts.css Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceCartographyImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceCartographyImpl.java 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceCartographyImpl.java 2011-02-02 11:47:28 UTC (rev 970) @@ -204,25 +204,25 @@ append("</p>\n"). append(" <p>"). append("Réalisés ("). - append(ContactState.OBSERVATION_EXPECTED). + append(ContactState.OBSERVATION_EXPECTED.toString()). append(", "). - append(ContactState.OBSERVATION_DONE). + append(ContactState.OBSERVATION_DONE.toString()). append(") : ").append(nbRealized). append(" (").append(realized).append(" %)"). append("</p>\n"). append(" <p>"). append("Refusés ("). - append(ContactState.CONTACT_REFUSED). + append(ContactState.CONTACT_REFUSED.toString()). append(", "). - append(ContactState.CONTACT_DEFINITELY_REFUSED). + append(ContactState.CONTACT_DEFINITELY_REFUSED.toString()). append(") : ").append(nbRefused). append(" (").append(refused).append(" %)"). append("</p>\n"). append(" <p>"). append("Autres ("). - append(ContactState.CONTACT_START). + append(ContactState.CONTACT_START.toString()). append(", "). - append(ContactState.OBSERVATION_CANCELLED). + append(ContactState.OBSERVATION_CANCELLED.toString()). append(") : ").append(nbOther). append(" (").append(other).append(" %)"). append("</p>\n"); Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2011-02-02 11:47:28 UTC (rev 970) @@ -34,6 +34,7 @@ import fr.ifremer.wao.WaoProperty; import fr.ifremer.wao.WaoQueryBuilder; import fr.ifremer.wao.WaoQueryHelper; +import fr.ifremer.wao.WaoUtils; import fr.ifremer.wao.bean.ConnectedUser; import fr.ifremer.wao.bean.ContactFilter; import fr.ifremer.wao.bean.ContactState; @@ -95,6 +96,8 @@ import java.util.List; import java.util.Map; +import static org.nuiton.i18n.I18n.n_; + /** * ServiceContactImpl * @@ -229,8 +232,16 @@ newContact.setBoat(boat); newContact.setMainObserver(user); newContact.setSampleRow(row); - newContact.setContactState(ContactState.CONTACT_START); + // initial contact state depends on the program + if (obsProgram == ObsProgram.OBSMER) { + newContact.setContactState(ContactState.CONTACT_START); + } else if (obsProgram == ObsProgram.OBSVENTE) { + newContact.setContactState(ContactState.OBSERVATION_EXPECTED); + } else { + throw new IllegalArgumentException("no program"); + } + ContactDAO dao = WaoDAOHelper.getContactDAO(transaction); // Some admin have reported multiple send of a same email (same @@ -486,7 +497,8 @@ } else if (contact.getDataReliability() != DataReliability.RELIABLE && StringUtils.isEmpty(contact.getCommentAdmin())) { success = false; - message = "Il faut préciser dans le commentaire administrateur pourquoi la donnée n'est pas exploitable"; + message = WaoUtils.translate(n_("wao.business.contact.validation.commentAdminNecessaryForDataReliability"), + contact.getContactState().toString()); } } Modified: trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties =================================================================== --- trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties 2011-02-02 11:47:28 UTC (rev 970) @@ -99,6 +99,7 @@ fr.ifremer.wao.entity.FishingGearDCF.TMS=Shrimp trawls fr.ifremer.wao.entity.FishingGearDCF.TX=Other trawls (not specified) fr.ifremer.wao.entity.TargetSpeciesDCF.=Not specified +wao.business.contact.validation.commentAdminNecessaryForDataReliability=You must fill admin comment field for contact state %s wao.business.entity.UserProfile.description=%s on %s%s wao.business.other=Other wao.business.readOnly=(read-only) Modified: trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties =================================================================== --- trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties 2011-02-02 11:47:28 UTC (rev 970) @@ -1,153 +1,154 @@ ContactPieChartConstant.OTHER=Autres -ContactPieChartConstant.REALIZED=R\u00E9alis\u00E9s -ContactPieChartConstant.REFUSED=Refus\u00E9s -ContactState.CONTACT_DEFINITELY_REFUSED=Refus d\u00E9finitif +ContactPieChartConstant.REALIZED=R\u00e9alis\u00e9s +ContactPieChartConstant.REFUSED=Refus\u00e9s +ContactState.CONTACT_DEFINITELY_REFUSED=Refus d\u00e9finitif ContactState.CONTACT_REFUSED=Refus ContactState.CONTACT_START=Contact pris -ContactState.OBSERVATION_CANCELLED=Annul\u00E9e -ContactState.OBSERVATION_DONE=Observation r\u00E9alis\u00E9e -ContactState.OBSERVATION_EXPECTED=Observation programm\u00E9e -DataReliability.CORRECTION_ASKED=Correction demand\u00E9e +ContactState.OBSERVATION_CANCELLED=Annul\u00e9e +ContactState.OBSERVATION_DONE=Observation r\u00e9alis\u00e9e +ContactState.OBSERVATION_EXPECTED=Observation programm\u00e9e +DataReliability.CORRECTION_ASKED=Correction demand\u00e9e DataReliability.DOUBTFUL=Douteuse -DataReliability.NOT_PROVIDED=Non contr\u00F4l\u00E9e +DataReliability.NOT_PROVIDED=Non contr\u00f4l\u00e9e DataReliability.NOT_RELIABLE=Non exploitable DataReliability.RELIABLE=Exploitable DataReliability.UNKNOWN=Inconnue -GlobalIndicatorValue.BAD=P\u00E9nalit\u00E9 de niveau 1 +GlobalIndicatorValue.BAD=P\u00e9nalit\u00e9 de niveau 1 GlobalIndicatorValue.GOOD=Bonus de niveau 1 GlobalIndicatorValue.NEUTRAL=Conforme au cahier des charges -GlobalIndicatorValue.VERY_BAD=P\u00E9nalit\u00E9 de niveau 2 +GlobalIndicatorValue.VERY_BAD=P\u00e9nalit\u00e9 de niveau 2 GlobalIndicatorValue.VERY_GOOD=Bonus de niveau 2 -LocationType.AUCTION=Cri\u00E9e +LocationType.AUCTION=Cri\u00e9e LocationType.PORT=Port ObsProgram.OBSMER=ObsMer ObsProgram.OBSVENTE=ObsVente -SamplingStrategy.SIMULTANEOUS_ALL_SPECIES=Simultan\u00E9 \: Toutes esp\u00E8ces commerciales -SamplingStrategy.SIMULTANEOUS_G1_G2_SPECIES=Simultan\u00E9 \: esp\u00E8ces G1+G2 -SamplingStrategy.SIMULTANEOUS_G1_SPECIES=Simultan\u00E9 \: esp\u00E8ces G1 -SamplingStrategy.SPECIFIC_STOCK=Stock sp\u00E9cifique -SynthesisId.GRAPH_BOARDING=Taux d'embarquement sur un m\u00EAme navire conforme aux exigences -SynthesisId.GRAPH_SAMPLING=Taux de r\u00E9alisation du plan d'\u00E9chantillonage -SynthesisId.IND_ALLEGRO_REACTIVITY=D\u00E9lais de transmission des donn\u00E9es -SynthesisId.IND_COMPLIANCE_BOARDING=Respect du nombre d'observateurs embarqu\u00E9s -SynthesisId.IND_CONTACT_STATE=\u00C9tats des contacts -SynthesisId.IND_DATA_RELIABILITY=Qualit\u00E9 de la donn\u00E9e +SamplingStrategy.SIMULTANEOUS_ALL_SPECIES=Simultan\u00e9 \: Toutes esp\u00e8ces commerciales +SamplingStrategy.SIMULTANEOUS_G1_G2_SPECIES=Simultan\u00e9 \: esp\u00e8ces G1+G2 +SamplingStrategy.SIMULTANEOUS_G1_SPECIES=Simultan\u00e9 \: esp\u00e8ces G1 +SamplingStrategy.SPECIFIC_STOCK=Stock sp\u00e9cifique +SynthesisId.GRAPH_BOARDING=Taux d'embarquement sur un m\u00eame navire conforme aux exigences +SynthesisId.GRAPH_SAMPLING=Taux de r\u00e9alisation du plan d'\u00e9chantillonage +SynthesisId.IND_ALLEGRO_REACTIVITY=D\u00e9lais de transmission des donn\u00e9es +SynthesisId.IND_COMPLIANCE_BOARDING=Respect du nombre d'observateurs embarqu\u00e9s +SynthesisId.IND_CONTACT_STATE=\u00c9tats des contacts +SynthesisId.IND_DATA_RELIABILITY=Qualit\u00e9 de la donn\u00e9e UserRole.ADMIN=Administrateur UserRole.COORDINATOR=Coordinateur -UserRole.GUEST=Invit\u00E9 +UserRole.GUEST=Invit\u00e9 UserRole.OBSERVER=Observateur -fr.ifremer.wao.entity.FishingGearDCF.=Non sp\u00E9cifi\u00E9 -fr.ifremer.wao.entity.FishingGearDCF.DRB=Dragues remorqu\u00E9es par bateau -fr.ifremer.wao.entity.FishingGearDCF.DRH=Dragues \u00E0 main -fr.ifremer.wao.entity.FishingGearDCF.FAR=Pi\u00E8ges a\u00E9riens -fr.ifremer.wao.entity.FishingGearDCF.FCN=\u00C9perviers -fr.ifremer.wao.entity.FishingGearDCF.FG=Autres engins retombants (non-sp\u00E9cifi\u00E9s) -fr.ifremer.wao.entity.FishingGearDCF.FIX=Pi\u00E8ges (non-sp\u00E9cifi\u00E9s) -fr.ifremer.wao.entity.FishingGearDCF.FPN=Filets-pi\u00E8ges fixes non couverts +fr.ifremer.wao.entity.FishingGearDCF.=Non sp\u00e9cifi\u00e9 +fr.ifremer.wao.entity.FishingGearDCF.DRB=Dragues remorqu\u00e9es par bateau +fr.ifremer.wao.entity.FishingGearDCF.DRH=Dragues \u00e0 main +fr.ifremer.wao.entity.FishingGearDCF.FAR=Pi\u00e8ges a\u00e9riens +fr.ifremer.wao.entity.FishingGearDCF.FCN=\u00c9perviers +fr.ifremer.wao.entity.FishingGearDCF.FG=Autres engins retombants (non-sp\u00e9cifi\u00e9s) +fr.ifremer.wao.entity.FishingGearDCF.FIX=Pi\u00e8ges (non-sp\u00e9cifi\u00e9s) +fr.ifremer.wao.entity.FishingGearDCF.FPN=Filets-pi\u00e8ges fixes non couverts fr.ifremer.wao.entity.FishingGearDCF.FPO=Nasses (casiers) -fr.ifremer.wao.entity.FishingGearDCF.FSN=Filets \u00E0 l'\u00E9talage (diables) +fr.ifremer.wao.entity.FishingGearDCF.FSN=Filets \u00e0 l'\u00e9talage (diables) fr.ifremer.wao.entity.FishingGearDCF.FWR=Barrages, parcs, bordigues, etc. fr.ifremer.wao.entity.FishingGearDCF.FYK=Verveux -fr.ifremer.wao.entity.FishingGearDCF.GEN=Filets maillants et filets emm\u00E9lants (non sp\u00E9cifi\u00E9s) -fr.ifremer.wao.entity.FishingGearDCF.GES=Tamis \u00E0 civelles -fr.ifremer.wao.entity.FishingGearDCF.GN=Filets maillants (non sp\u00E9cifi\u00E9s) +fr.ifremer.wao.entity.FishingGearDCF.GEN=Filets maillants et filets emm\u00e9lants (non sp\u00e9cifi\u00e9s) +fr.ifremer.wao.entity.FishingGearDCF.GES=Tamis \u00e0 civelles +fr.ifremer.wao.entity.FishingGearDCF.GN=Filets maillants (non sp\u00e9cifi\u00e9s) fr.ifremer.wao.entity.FishingGearDCF.GNC=Filets maillants encerclants -fr.ifremer.wao.entity.FishingGearDCF.GND=Filets maillants d\u00E9rivants (filets d\u00E9rivants) +fr.ifremer.wao.entity.FishingGearDCF.GND=Filets maillants d\u00e9rivants (filets d\u00e9rivants) fr.ifremer.wao.entity.FishingGearDCF.GNF=Filets maillants fixes (sur perches) -fr.ifremer.wao.entity.FishingGearDCF.GNS=Filets maillants cal\u00E9s (ancr\u00E9s) -fr.ifremer.wao.entity.FishingGearDCF.GT=Tr\u00E9mailleurs -fr.ifremer.wao.entity.FishingGearDCF.GTN=Tr\u00E9mails et filets maillants combin\u00E9s -fr.ifremer.wao.entity.FishingGearDCF.GTR=Tr\u00E9mails +fr.ifremer.wao.entity.FishingGearDCF.GNS=Filets maillants cal\u00e9s (ancr\u00e9s) +fr.ifremer.wao.entity.FishingGearDCF.GT=Tr\u00e9mailleurs +fr.ifremer.wao.entity.FishingGearDCF.GTN=Tr\u00e9mails et filets maillants combin\u00e9s +fr.ifremer.wao.entity.FishingGearDCF.GTR=Tr\u00e9mails fr.ifremer.wao.entity.FishingGearDCF.HAR=Harpons -fr.ifremer.wao.entity.FishingGearDCF.HMD=Dragues m\u00E9canis\u00E9es +fr.ifremer.wao.entity.FishingGearDCF.HMD=Dragues m\u00e9canis\u00e9es fr.ifremer.wao.entity.FishingGearDCF.HMP=Pompes -fr.ifremer.wao.entity.FishingGearDCF.HMX=Engins de r\u00E9colte (non sp\u00E9cifi\u00E9s) +fr.ifremer.wao.entity.FishingGearDCF.HMX=Engins de r\u00e9colte (non sp\u00e9cifi\u00e9s) fr.ifremer.wao.entity.FishingGearDCF.LA=Filets tournants sans coulisse (filet lamparo) -fr.ifremer.wao.entity.FishingGearDCF.LHM=Lignes \u00E0 main et lignes avec cannes -fr.ifremer.wao.entity.FishingGearDCF.LHP=Lignes \u00E0 main et lignes \u00E0 cannes -fr.ifremer.wao.entity.FishingGearDCF.LL=Palangres (non sp\u00E9cifi\u00E9es) -fr.ifremer.wao.entity.FishingGearDCF.LLD=Palangres d\u00E9rivantes -fr.ifremer.wao.entity.FishingGearDCF.LLS=Palangres cal\u00E9es ou semi-flottantes -fr.ifremer.wao.entity.FishingGearDCF.LN=Filets soulev\u00E9s (non sp\u00E9cifi\u00E9s) -fr.ifremer.wao.entity.FishingGearDCF.LNB=Filets soulev\u00E9s man\u0153uvr\u00E9es du bateau -fr.ifremer.wao.entity.FishingGearDCF.LNP=Filets soulev\u00E9s portatifs -fr.ifremer.wao.entity.FishingGearDCF.LNS=Filets soulev\u00E9s fixes man\u0153uvr\u00E9es du rivage -fr.ifremer.wao.entity.FishingGearDCF.LTL=lignes de tra\u00EEne -fr.ifremer.wao.entity.FishingGearDCF.LX=Hame\u00E7ons et lignes (non sp\u00E9cifi\u00E9s) +fr.ifremer.wao.entity.FishingGearDCF.LHM=Lignes \u00e0 main et lignes avec cannes +fr.ifremer.wao.entity.FishingGearDCF.LHP=Lignes \u00e0 main et lignes \u00e0 cannes +fr.ifremer.wao.entity.FishingGearDCF.LL=Palangres (non sp\u00e9cifi\u00e9es) +fr.ifremer.wao.entity.FishingGearDCF.LLD=Palangres d\u00e9rivantes +fr.ifremer.wao.entity.FishingGearDCF.LLS=Palangres cal\u00e9es ou semi-flottantes +fr.ifremer.wao.entity.FishingGearDCF.LN=Filets soulev\u00e9s (non sp\u00e9cifi\u00e9s) +fr.ifremer.wao.entity.FishingGearDCF.LNB=Filets soulev\u00e9s man\u0153uvr\u00e9es du bateau +fr.ifremer.wao.entity.FishingGearDCF.LNP=Filets soulev\u00e9s portatifs +fr.ifremer.wao.entity.FishingGearDCF.LNS=Filets soulev\u00e9s fixes man\u0153uvr\u00e9es du rivage +fr.ifremer.wao.entity.FishingGearDCF.LTL=lignes de tra\u00eene +fr.ifremer.wao.entity.FishingGearDCF.LX=Hame\u00e7ons et lignes (non sp\u00e9cifi\u00e9s) fr.ifremer.wao.entity.FishingGearDCF.MIS=Divers -fr.ifremer.wao.entity.FishingGearDCF.NK=Engins inconnus ou non sp\u00E9cifi\u00E9s -fr.ifremer.wao.entity.FishingGearDCF.OT=Chaluts \u00E0 panneaux (non sp\u00E9cifi\u00E9) -fr.ifremer.wao.entity.FishingGearDCF.OTB=Chalut de fond \u00E0 panneaux -fr.ifremer.wao.entity.FishingGearDCF.OTM=Chaluts p\u00E9lagiques \u00E0 panneaux -fr.ifremer.wao.entity.FishingGearDCF.OTT=Chaluts jumeaux \u00E0 panneaux +fr.ifremer.wao.entity.FishingGearDCF.NK=Engins inconnus ou non sp\u00e9cifi\u00e9s +fr.ifremer.wao.entity.FishingGearDCF.OT=Chaluts \u00e0 panneaux (non sp\u00e9cifi\u00e9) +fr.ifremer.wao.entity.FishingGearDCF.OTB=Chalut de fond \u00e0 panneaux +fr.ifremer.wao.entity.FishingGearDCF.OTM=Chaluts p\u00e9lagiques \u00e0 panneaux +fr.ifremer.wao.entity.FishingGearDCF.OTT=Chaluts jumeaux \u00e0 panneaux fr.ifremer.wao.entity.FishingGearDCF.PS=Filets tournants avec coulisse (sennes coulissantes) -fr.ifremer.wao.entity.FishingGearDCF.PS1=Filets tournants, sennes coulissantes man\u0153uvr\u00E9es par un bateau -fr.ifremer.wao.entity.FishingGearDCF.PS2=Filets tournants, sennes coulissantes man\u0153uvr\u00E9es par deux bateaux -fr.ifremer.wao.entity.FishingGearDCF.PT=Chalut-b\u0153ufs (non sp\u00E9cifi\u00E9) +fr.ifremer.wao.entity.FishingGearDCF.PS1=Filets tournants, sennes coulissantes man\u0153uvr\u00e9es par un bateau +fr.ifremer.wao.entity.FishingGearDCF.PS2=Filets tournants, sennes coulissantes man\u0153uvr\u00e9es par deux bateaux +fr.ifremer.wao.entity.FishingGearDCF.PT=Chalut-b\u0153ufs (non sp\u00e9cifi\u00e9) fr.ifremer.wao.entity.FishingGearDCF.PTB=Chalut-b\u0153ufs de fond -fr.ifremer.wao.entity.FishingGearDCF.PTM=Chalut-b\u0153ufs p\u00E9lagiques -fr.ifremer.wao.entity.FishingGearDCF.RG=Engins de p\u00EAche r\u00E9vr\u00E9ative +fr.ifremer.wao.entity.FishingGearDCF.PTM=Chalut-b\u0153ufs p\u00e9lagiques +fr.ifremer.wao.entity.FishingGearDCF.RG=Engins de p\u00eache r\u00e9vr\u00e9ative fr.ifremer.wao.entity.FishingGearDCF.SB=Sennes de plages fr.ifremer.wao.entity.FishingGearDCF.SDN=Sennes danoises -fr.ifremer.wao.entity.FishingGearDCF.SPR=Sennes man\u0153uvr\u00E9es par deux bateaux -fr.ifremer.wao.entity.FishingGearDCF.SSC=Sennes \u00E9cossaises -fr.ifremer.wao.entity.FishingGearDCF.SV=Sennes hal\u00E9es \u00E0 bord -fr.ifremer.wao.entity.FishingGearDCF.SW=Sennes (non sp\u00E9cifi\u00E9es) -fr.ifremer.wao.entity.FishingGearDCF.TB=Chalut de fond (non sp\u00E9cifi\u00E9) -fr.ifremer.wao.entity.FishingGearDCF.TBB=Chaluts \u00E0 perche -fr.ifremer.wao.entity.FishingGearDCF.TBN=Chalut \u00E0 langoustines -fr.ifremer.wao.entity.FishingGearDCF.TBS=Chalut \u00E0 crevettes -fr.ifremer.wao.entity.FishingGearDCF.TM=Chalut p\u00E9lagique (non sp\u00E9cifi\u00E9) -fr.ifremer.wao.entity.FishingGearDCF.TMS=Chalut \u00E0 crevettes -fr.ifremer.wao.entity.FishingGearDCF.TX=Autre chalut (non sp\u00E9cifi\u00E9) -fr.ifremer.wao.entity.TargetSpeciesDCF.=Non sp\u00E9cifi\u00E9 +fr.ifremer.wao.entity.FishingGearDCF.SPR=Sennes man\u0153uvr\u00e9es par deux bateaux +fr.ifremer.wao.entity.FishingGearDCF.SSC=Sennes \u00e9cossaises +fr.ifremer.wao.entity.FishingGearDCF.SV=Sennes hal\u00e9es \u00e0 bord +fr.ifremer.wao.entity.FishingGearDCF.SW=Sennes (non sp\u00e9cifi\u00e9es) +fr.ifremer.wao.entity.FishingGearDCF.TB=Chalut de fond (non sp\u00e9cifi\u00e9) +fr.ifremer.wao.entity.FishingGearDCF.TBB=Chaluts \u00e0 perche +fr.ifremer.wao.entity.FishingGearDCF.TBN=Chalut \u00e0 langoustines +fr.ifremer.wao.entity.FishingGearDCF.TBS=Chalut \u00e0 crevettes +fr.ifremer.wao.entity.FishingGearDCF.TM=Chalut p\u00e9lagique (non sp\u00e9cifi\u00e9) +fr.ifremer.wao.entity.FishingGearDCF.TMS=Chalut \u00e0 crevettes +fr.ifremer.wao.entity.FishingGearDCF.TX=Autre chalut (non sp\u00e9cifi\u00e9) +fr.ifremer.wao.entity.TargetSpeciesDCF.=Non sp\u00e9cifi\u00e9 fr.ifremer.wao.entity.TargetSpeciesDCF.ALG=Algues -fr.ifremer.wao.entity.TargetSpeciesDCF.CAT=Esp\u00E8ces catadromes -fr.ifremer.wao.entity.TargetSpeciesDCF.CRU=Crustac\u00E9s +fr.ifremer.wao.entity.TargetSpeciesDCF.CAT=Esp\u00e8ces catadromes +fr.ifremer.wao.entity.TargetSpeciesDCF.CRU=Crustac\u00e9s fr.ifremer.wao.entity.TargetSpeciesDCF.CSJ=Coquilles Saint-Jacques -fr.ifremer.wao.entity.TargetSpeciesDCF.DEF=Esp\u00E8ces d\u00E9mersales -fr.ifremer.wao.entity.TargetSpeciesDCF.DWS=Esp\u00E8ces d'eaux profondes +fr.ifremer.wao.entity.TargetSpeciesDCF.DEF=Esp\u00e8ces d\u00e9mersales +fr.ifremer.wao.entity.TargetSpeciesDCF.DWS=Esp\u00e8ces d'eaux profondes fr.ifremer.wao.entity.TargetSpeciesDCF.FIN=Poisson plats -fr.ifremer.wao.entity.TargetSpeciesDCF.LPF=Grands p\u00E9lagiques +fr.ifremer.wao.entity.TargetSpeciesDCF.LPF=Grands p\u00e9lagiques fr.ifremer.wao.entity.TargetSpeciesDCF.MOL=Mollusques -fr.ifremer.wao.entity.TargetSpeciesDCF.SPF=Petits p\u00E9lagiques +fr.ifremer.wao.entity.TargetSpeciesDCF.SPF=Petits p\u00e9lagiques +wao.business.contact.validation.commentAdminNecessaryForDataReliability=Il faut pr\u00e9ciser dans le commentaire administrateur pourquoi la donn\u00e9e n'est pas exploitable pour l'\u00e9tat '%s' wao.business.entity.UserProfile.description=%s sur %s%s wao.business.other=Autre wao.business.readOnly=(lecture seule) -wao.error.boat.canCreateContact=Impossible de cr\u00E9er un nouveau contact pour la soci\u00E9t\u00E9 %1$s et le navire %2$s (%3$d) -wao.error.boat.getNbBoarding=Impossible de r\u00E9cup\u00E9rer le nombre d'embarquements r\u00E9els depuis le %1$s -wao.error.boatInfos.getNbBoardingForCompany=Impossible de r\u00E9cup\u00E9rer le nombre d'embarquements r\u00E9els depuis le %1$s pour la soci\u00E9t\u00E9 %2$s +wao.error.boat.canCreateContact=Impossible de cr\u00e9er un nouveau contact pour la soci\u00e9t\u00e9 %1$s et le navire %2$s (%3$d) +wao.error.boat.getNbBoarding=Impossible de r\u00e9cup\u00e9rer le nombre d'embarquements r\u00e9els depuis le %1$s +wao.error.boatInfos.getNbBoardingForCompany=Impossible de r\u00e9cup\u00e9rer le nombre d'embarquements r\u00e9els depuis le %1$s pour la soci\u00e9t\u00e9 %2$s wao.error.context.close=Une erreur est survenue pendant la fermeture du contexte principale de ToPIA wao.error.context.encodeString= -wao.error.context.getRootContext=Une erreur est survenue pour la r\u00E9cup\u00E9ration du contexte principale de ToPIA +wao.error.context.getRootContext=Une erreur est survenue pour la r\u00e9cup\u00e9ration du contexte principale de ToPIA wao.error.context.parse=Une erreur est survenue pendant le chargement de la configuration du fichier %1$s wao.error.context.rollback=Une erreur est survenue pendant l'annulation de la transaction courante -wao.error.context.start=Une erreur est survenue pendant le d\u00E9marrage de l'application +wao.error.context.start=Une erreur est survenue pendant le d\u00e9marrage de l'application wao.error.context.stop=Une erreur est survenue pendant la fermeture de l'application -wao.error.sampleMonth.addRealTideTime=Impossible d'enregistrer le nombre de mar\u00E9es r\u00E9els pour le mois de %1$s [ligne \: %2$s] -wao.error.sampleRow.saveSampleRowLog=Impossible d'enregistrer le commentaire \u00E9crit par %1$s -wao.error.serviceBoat.createUpdateCompanyBoatInfos=Impossible de cr\u00E9er ou modifier les informations li\u00E9s au navire %1$d pour la soci\u00E9t\u00E9 %2$s -wao.error.serviceBoat.exportBoatCsv=Impossible d'exporter les navires s\u00E9lectionn\u00E9s +wao.error.sampleMonth.addRealTideTime=Impossible d'enregistrer le nombre de mar\u00e9es r\u00e9els pour le mois de %1$s [ligne \: %2$s] +wao.error.sampleRow.saveSampleRowLog=Impossible d'enregistrer le commentaire \u00e9crit par %1$s +wao.error.serviceBoat.createUpdateCompanyBoatInfos=Impossible de cr\u00e9er ou modifier les informations li\u00e9s au navire %1$d pour la soci\u00e9t\u00e9 %2$s +wao.error.serviceBoat.exportBoatCsv=Impossible d'exporter les navires s\u00e9lectionn\u00e9s wao.error.serviceBoat.getActivityCalendarLogAccessFile= wao.error.serviceBoat.getActivityCalendarLogFile= wao.error.serviceBoat.getBoat=Impossible de charger le navire -wao.error.serviceBoat.getBoatNamesStartWith=Impossible de r\u00E9cup\u00E9rer les navires avec un nom commencant par '%1$s' +wao.error.serviceBoat.getBoatNamesStartWith=Impossible de r\u00e9cup\u00e9rer les navires avec un nom commencant par '%1$s' wao.error.serviceBoat.getBoatsByFilter=Impossible de filtrer la liste des navires -wao.error.serviceBoat.getBoatsByImmatriculations=La cha\u00EEne d'immatriculations est incorrect \! Chaque immatriculation doit poss\u00E9der 6 chiffres -wao.error.serviceBoat.getCompanyBoatInfos=Impossible de r\u00E9cup\u00E9rer les informations du navire immatricul\u00E9 %1$d pour la soci\u00E9t\u00E9 %2$s -wao.error.serviceBoat.getLastActivityCalendar=Impossible de charger le dernier calendrier d'activit\u00E9 du navire %1$s (%2$d) +wao.error.serviceBoat.getBoatsByImmatriculations=La cha\u00eene d'immatriculations est incorrect \! Chaque immatriculation doit poss\u00e9der 6 chiffres +wao.error.serviceBoat.getCompanyBoatInfos=Impossible de r\u00e9cup\u00e9rer les informations du navire immatricul\u00e9 %1$d pour la soci\u00e9t\u00e9 %2$s +wao.error.serviceBoat.getLastActivityCalendar=Impossible de charger le dernier calendrier d'activit\u00e9 du navire %1$s (%2$d) wao.error.serviceBoat.getNbBoatsByFilter=Impossible de filtrer la liste des navires wao.error.serviceBoat.getShipOwnerNamesContains= -wao.error.serviceBoat.importActivityCalendarCsv=Probl\u00E8me d'import du fichier CSV des calendriers d'activit\u00E9 -wao.error.serviceBoat.importBoatCsv=Probl\u00E8me d'import du fichier CSV. V\u00E9rifiez l'en-t\u00EAte du fichier \: [ NAVS_COD,CARN_NOM,CARN_LONGUEUR_HT,CARN_ANNEE,QUARTIER_IMMA,PER_COD,PER_NOM,PER_PRENOM,NAVS_ACTIVE ]. Voir documentation pour plus de d\u00E9tails. +wao.error.serviceBoat.importActivityCalendarCsv=Probl\u00e8me d'import du fichier CSV des calendriers d'activit\u00e9 +wao.error.serviceBoat.importBoatCsv=Probl\u00e8me d'import du fichier CSV. V\u00e9rifiez l'en-t\u00eate du fichier \: [ NAVS_COD,CARN_NOM,CARN_LONGUEUR_HT,CARN_ANNEE,QUARTIER_IMMA,PER_COD,PER_NOM,PER_PRENOM,NAVS_ACTIVE ]. Voir documentation pour plus de d\u00e9tails. wao.error.serviceCartography.exportContactStatisticsKml= -wao.error.serviceCartography.importBoatDistrictKml=Impossible d'importer les coordonn\u00E9es des quartiers des navires. V\u00E9rifiez la documentation pour le bon format du fichier Kml. +wao.error.serviceCartography.importBoatDistrictKml=Impossible d'importer les coordonn\u00e9es des quartiers des navires. V\u00e9rifiez la documentation pour le bon format du fichier Kml. wao.error.serviceChart.getContactPieChartData= wao.error.serviceChart.getContactPieChartUrl= wao.error.serviceContact.exportContactCsv=Impossible d'exporter les contacts wao.error.serviceContact.getContact=Impossible de trouver le contact wao.error.serviceContact.getContacts=Impossible de filtrer la liste des contacts -wao.error.serviceContact.getNbContacts=Impossible de compter le nombre de contacts filtr\u00E9s +wao.error.serviceContact.getNbContacts=Impossible de compter le nombre de contacts filtr\u00e9s wao.error.serviceContact.getNewContact=Impossible d'instancier un nouveau contact wao.error.serviceContact.importContactCsv=Impossible d'importer les contacts wao.error.serviceContact.saveComment= @@ -156,60 +157,60 @@ wao.error.serviceContact.updateSampleMonthTidesValue= wao.error.serviceContact.validateContact= wao.error.serviceNews.getNewNews= -wao.error.serviceNews.getNews=Impossible de r\u00E9cup\u00E9rer l'ensemble des news +wao.error.serviceNews.getNews=Impossible de r\u00e9cup\u00e9rer l'ensemble des news wao.error.serviceNews.saveNews=Impossible d'enregistrer la news ayant pour titre '%1$s' wao.error.serviceReferential.getAllTerrestrialDistricts= wao.error.serviceReferential.getAllTerrestrialLocations= wao.error.serviceReferential.getCodesDCF5Contains= wao.error.serviceReferential.getFacades=Impossible de charger la liste des facades -wao.error.serviceReferential.getFishingZones=Impossible de charger la liste des secteurs de p\u00EAche -wao.error.serviceReferential.getProfessions=Impossible de charger la liste des m\u00E9tiers -wao.error.serviceReferential.getSectors=Impossible de charger la liste des zones de p\u00EAche +wao.error.serviceReferential.getFishingZones=Impossible de charger la liste des secteurs de p\u00eache +wao.error.serviceReferential.getProfessions=Impossible de charger la liste des m\u00e9tiers +wao.error.serviceReferential.getSectors=Impossible de charger la liste des zones de p\u00eache wao.error.serviceReferential.getTerrestrialDistrict= -wao.error.serviceReferential.importDCFcodes=Impossible de cr\u00E9er le r\u00E9f\u00E9rentiel des codes DCF -wao.error.serviceReferential.importFishingZoneCsv=Probl\u00E8me d'import du fichier CSV. V\u00E9rifiez l'en-t\u00EAte du fichier \: [ PECHE_DIVISION,PECHE_ZONE,PECHE_FACADE ]. Voir documentation pour plus de d\u00E9tails. +wao.error.serviceReferential.importDCFcodes=Impossible de cr\u00e9er le r\u00e9f\u00e9rentiel des codes DCF +wao.error.serviceReferential.importFishingZoneCsv=Probl\u00e8me d'import du fichier CSV. V\u00e9rifiez l'en-t\u00eate du fichier \: [ PECHE_DIVISION,PECHE_ZONE,PECHE_FACADE ]. Voir documentation pour plus de d\u00e9tails. wao.error.serviceReferential.importTerrestrialLocations= wao.error.serviceSampling.createSampleRowLog= -wao.error.serviceSampling.createUpdateSampleRow=Impossible de sauvegarder la ligne d'\u00E9chantillon -wao.error.serviceSampling.deleteSampleRow=Impossible de supprimer la ligne d'\u00E9chantillon \: %1$s -wao.error.serviceSampling.exportSamplingPlanCsv=Impossible d'exporter le plan d'\u00E9chantillonnage sur la p\u00E9riode du %1$s au %2$s +wao.error.serviceSampling.createUpdateSampleRow=Impossible de sauvegarder la ligne d'\u00e9chantillon +wao.error.serviceSampling.deleteSampleRow=Impossible de supprimer la ligne d'\u00e9chantillon \: %1$s +wao.error.serviceSampling.exportSamplingPlanCsv=Impossible d'exporter le plan d'\u00e9chantillonnage sur la p\u00e9riode du %1$s au %2$s wao.error.serviceSampling.getDCFGears= wao.error.serviceSampling.getDCFSpecies= wao.error.serviceSampling.getNewProfession= wao.error.serviceSampling.getNewSampleMonth= wao.error.serviceSampling.getNewSampleRow= -wao.error.serviceSampling.getNewSampleRowCode=Impossible de r\u00E9cup\u00E9rer un nouveau code pour une ligne d'\u00E9chantillonnage +wao.error.serviceSampling.getNewSampleRowCode=Impossible de r\u00e9cup\u00e9rer un nouveau code pour une ligne d'\u00e9chantillonnage wao.error.serviceSampling.getNewSampleRowLog= wao.error.serviceSampling.getPrograms=Impossible de charger la liste des programmes -wao.error.serviceSampling.getSampleRow=Impossible de charger la ligne d'\u00E9chantillon ayant pour identifiant \: %1$s -wao.error.serviceSampling.getSampleRowByCode=Impossible de charger la ligne d'\u00E9chantillon ayant pour code %1$s -wao.error.serviceSampling.getSampleRowsByFilter=Impossible de r\u00E9cup\u00E9rer la liste des lignes du plan d'\u00E9chantillonnage -wao.error.serviceSampling.getSampleRowsOrderedByFishingZone=Impossible de r\u00E9cup\u00E9rer la liste des lignes du plan d'\u00E9chantillonnage -wao.error.serviceSampling.importSamplingPlanCsv=Erreur \u00E0 la ligne %1$d [CODE \= %2$s] +wao.error.serviceSampling.getSampleRow=Impossible de charger la ligne d'\u00e9chantillon ayant pour identifiant \: %1$s +wao.error.serviceSampling.getSampleRowByCode=Impossible de charger la ligne d'\u00e9chantillon ayant pour code %1$s +wao.error.serviceSampling.getSampleRowsByFilter=Impossible de r\u00e9cup\u00e9rer la liste des lignes du plan d'\u00e9chantillonnage +wao.error.serviceSampling.getSampleRowsOrderedByFishingZone=Impossible de r\u00e9cup\u00e9rer la liste des lignes du plan d'\u00e9chantillonnage +wao.error.serviceSampling.importSamplingPlanCsv=Erreur \u00e0 la ligne %1$d [CODE \= %2$s] wao.error.serviceSynthesis.getAllIndicatorLogs= -wao.error.serviceSynthesis.getBoardingBoats=Impossible de r\u00E9cup\u00E9rer les donn\u00E9es du graphique concernant les embarquements sur les navires +wao.error.serviceSynthesis.getBoardingBoats=Impossible de r\u00e9cup\u00e9rer les donn\u00e9es du graphique concernant les embarquements sur les navires wao.error.serviceSynthesis.getComplianceBoardingIndicator= -wao.error.serviceSynthesis.getContactDataInputDateReactivity=Impossible de r\u00E9cup\u00E9rer l'indicateur de r\u00E9activit\u00E9 sur les dates de saisies dans Allegro +wao.error.serviceSynthesis.getContactDataInputDateReactivity=Impossible de r\u00e9cup\u00e9rer l'indicateur de r\u00e9activit\u00e9 sur les dates de saisies dans Allegro wao.error.serviceSynthesis.getContactPieChartData= wao.error.serviceSynthesis.getContactPieChartDataByBoatDistrict= -wao.error.serviceSynthesis.getContactStateStatistics=Impossible de r\u00E9cup\u00E9rer les statistiques sur les \u00E9tats des contacts +wao.error.serviceSynthesis.getContactStateStatistics=Impossible de r\u00e9cup\u00e9rer les statistiques sur les \u00e9tats des contacts wao.error.serviceSynthesis.getDataReliability= -wao.error.serviceSynthesis.getDataSampling=Impossible de r\u00E9cup\u00E9rer les donn\u00E9es pour le graphique dynamique des efforts de mar\u00E9es -wao.error.serviceSynthesis.getGlobalSynthesisParameters=Impossible de r\u00E9cup\u00E9rer les donn\u00E9es concernant les indicateurs pour la synth\u00E8se globale +wao.error.serviceSynthesis.getDataSampling=Impossible de r\u00e9cup\u00e9rer les donn\u00e9es pour le graphique dynamique des efforts de mar\u00e9es +wao.error.serviceSynthesis.getGlobalSynthesisParameters=Impossible de r\u00e9cup\u00e9rer les donn\u00e9es concernant les indicateurs pour la synth\u00e8se globale wao.error.serviceSynthesis.getGlobalSynthesisResult= -wao.error.serviceSynthesis.getNonComplianceBoardingIndicator=Impossible de r\u00E9cup\u00E9rer l'indicateur de non respect du nombre d'observateurs embarqu\u00E9s -wao.error.serviceSynthesis.updateGlobalSynthesisParameters=Impossible de mettre \u00E0 jour les param\u00E8tres de la synth\u00E8se globale +wao.error.serviceSynthesis.getNonComplianceBoardingIndicator=Impossible de r\u00e9cup\u00e9rer l'indicateur de non respect du nombre d'observateurs embarqu\u00e9s +wao.error.serviceSynthesis.updateGlobalSynthesisParameters=Impossible de mettre \u00e0 jour les param\u00e8tres de la synth\u00e8se globale wao.error.serviceUser.connect=Une erreur est survenue lors de la demande de connexion -wao.error.serviceUser.createDefaultAdmin=Impossible de cr\u00E9er l'administrateur par d\u00E9faut -wao.error.serviceUser.createUpdateCompany=Impossible de cr\u00E9er ou de mettre \u00E0 jour la soci\u00E9t\u00E9 -wao.error.serviceUser.createUpdateUser=Impossible de cr\u00E9er ou de mettre \u00E0 jour l'utilisateur -wao.error.serviceUser.deleteCompany=Impossible de supprimer la soci\u00E9t\u00E9 ou de v\u00E9rifier les contraintes de suppression +wao.error.serviceUser.createDefaultAdmin=Impossible de cr\u00e9er l'administrateur par d\u00e9faut +wao.error.serviceUser.createUpdateCompany=Impossible de cr\u00e9er ou de mettre \u00e0 jour la soci\u00e9t\u00e9 +wao.error.serviceUser.createUpdateUser=Impossible de cr\u00e9er ou de mettre \u00e0 jour l'utilisateur +wao.error.serviceUser.deleteCompany=Impossible de supprimer la soci\u00e9t\u00e9 ou de v\u00e9rifier les contraintes de suppression wao.error.serviceUser.deleteUser=Impossible de supprimer l'utilisateur wao.error.serviceUser.existLogin= wao.error.serviceUser.forgetPassword=Impossible d'envoyer le mail d'oubli de mot de passe -wao.error.serviceUser.getCompanies=Impossible de r\u00E9cup\u00E9rer la liste des soci\u00E9t\u00E9s +wao.error.serviceUser.getCompanies=Impossible de r\u00e9cup\u00e9rer la liste des soci\u00e9t\u00e9s wao.error.serviceUser.getCompany= wao.error.serviceUser.getNewUser=Impossible d'instancier un nouvel utilisateur -wao.error.serviceUser.getObservers=Impossible de r\u00E9cup\u00E9rer la liste des observateurs +wao.error.serviceUser.getObservers=Impossible de r\u00e9cup\u00e9rer la liste des observateurs wao.error.serviceUser.getUserRolesByLogin= -wao.error.serviceUser.getUsersByCompany=Impossible de r\u00E9cup\u00E9rer la liste des utilisateurs de la soci\u00E9t\u00E9 %1$s +wao.error.serviceUser.getUsersByCompany=Impossible de r\u00e9cup\u00e9rer la liste des utilisateurs de la soci\u00e9t\u00e9 %1$s Modified: trunk/wao-business/src/main/xmi/wao.properties =================================================================== --- trunk/wao-business/src/main/xmi/wao.properties 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-business/src/main/xmi/wao.properties 2011-02-02 11:47:28 UTC (rev 970) @@ -34,8 +34,6 @@ fr.ifremer.wao.entity.SampleRow.attribute.sampleMonth.tagvalue.orderBy=periodDate fr.ifremer.wao.entity.SampleRow.attribute.fishingZone.tagvalue.lazy=false fr.ifremer.wao.entity.SampleRow.attribute.fishingZone.tagvalue.orderBy=facadeName,sectorName,districtCode -fr.ifremer.wao.entity.SampleRow.attribute.terrestrialLocation.tagvalue.orderBy=districtName -fr.ifremer.wao.entity.Contact.attribute.terrestrialLocation.tagvalue.orderBy=name fr.ifremer.wao.entity.SampleRow.attribute.company.tagvalue.lazy=false fr.ifremer.wao.entity.SampleRow.attribute.profession.tagvalue.lazy=false fr.ifremer.wao.entity.SampleRow.attribute.dCF5Code.tagvalue.lazy=false Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java 2011-02-02 11:47:28 UTC (rev 970) @@ -29,6 +29,7 @@ import org.apache.tapestry5.annotations.Environmental; import org.apache.tapestry5.annotations.Import; import org.apache.tapestry5.annotations.InjectComponent; +import org.apache.tapestry5.annotations.InjectPage; import org.apache.tapestry5.annotations.Log; import org.apache.tapestry5.annotations.Persist; import org.apache.tapestry5.annotations.Property; @@ -374,7 +375,8 @@ @Log Object onFailureFromContactForm() { // refresh zone to show errors - return globalZone; + //return globalZone; + return contactForm; } @Inject @@ -383,6 +385,9 @@ @Property private boolean sendEmail; + @InjectPage + private Contacts contacts; + @Log Object onSuccessFromContactForm() { @@ -411,7 +416,9 @@ } if (saveContact) { - return Contacts.class; + // make the modified contact highlighted in contacts grid + contacts.setContactSelectedId(contact.getTopiaId()); + return contacts; } else { return this; } Modified: trunk/wao-ui/src/main/webapp/Administration.tml =================================================================== --- trunk/wao-ui/src/main/webapp/Administration.tml 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-ui/src/main/webapp/Administration.tml 2011-02-02 11:47:28 UTC (rev 970) @@ -156,12 +156,12 @@ <t:importFieldSet t:label="${message:wao.ui.import.boatsLabel}" t:engine="boatImportEngine" /> <t:unless t:test="activityCalendarImportRun"> - <div class="clearfix"> + <!--div class="clearfix"> <t:importFieldSet t:label="${message:wao.ui.import.activityCalendarLabel}" t:engine="activityCalendarImportEngine"> <t:logFile t:source="activityCalendarAccessLogFile" t:title="${message:wao.ui.import.activityCalendarUserAccessesLabel}" t:icon="context:img/text-access-32px.png" /> <t:logFile t:source="activityCalendarLogFile" t:title="${message:wao.ui.import.activityCalendarImportLabel}" t:icon="context:img/text-32px.png" /> </t:importFieldSet> - </div> + </div--> <p:else> <div class="fb-info"> ${message:wao.ui.import.activityCalendarImportRunning} Modified: trunk/wao-ui/src/main/webapp/ContactForm.tml =================================================================== --- trunk/wao-ui/src/main/webapp/ContactForm.tml 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-ui/src/main/webapp/ContactForm.tml 2011-02-02 11:47:28 UTC (rev 970) @@ -10,7 +10,9 @@ <t:zone t:id="globalZone" id="globalZone" t:update="show"> <form t:type="form" t:id="contactForm" t:zone="globalZone"> - <t:errors /> + <div style="width: 80%; margin-left: auto; margin-right: auto;"> + <t:errors /> + </div> <input t:type="hidden" t:id="hiddenSendEmail" t:value="sendEmail" /> @@ -62,7 +64,7 @@ <div> <label>${message:wao.ui.field.Contact.secondaryObservers}</label> <ul class="value"> - <li t:type="loop" t:source="contact.secondaryObservers" t:value="observer"> + <li t:type="loop" t:source="contact.secondaryObservers" t:value="observer" t:volatile="true"> ${observer.fullName} </li> </ul> @@ -74,18 +76,18 @@ <label for="mainObserver">${message:wao.ui.field.Contact.mainObserver}</label> <input t:type="select" t:id="mainObserver" t:model="observerSelectModel" t:validate="required" t:value="mainObserverId" /> </div> - <t:zone t:id="observersFormZone" t:visible="true" t:update="show"> + <t:zone t:id="observersFormZone" t:visible="true" t:update="show" id="observersFormZoneId"> <div> <label for="secondaryObserver">${message:wao.ui.field.Contact.secondaryObservers}</label> <div> <input t:type="select" t:id="secondaryObserver" t:model="observerSelectModel" t:value="selectedSecondaryObserverId" t:mixins="ck/onEvent" t:event="change" /> - <a t:type="actionlink" t:id="addSecondaryObserver" title="Ajouter un observateur" t:zone="observersFormZone"> + <a t:type="actionlink" t:id="addSecondaryObserver" title="Ajouter un observateur" t:zone="observersFormZoneId"> <img src="${asset:context:img/add-16px.png}" /> </a> <ul class="value"> <li t:type="loop" t:source="secondaryObservers" t:value="observer" t:index="secondaryObserverIndex" t:volatile="true"> ${observer.fullName} - <a t:type="actionlink" t:id="removeSecondaryObserver" t:context="secondaryObserverIndex" title="Supprimer cet observateur" t:zone="observersFormZone"> + <a t:type="actionlink" t:id="removeSecondaryObserver" t:context="secondaryObserverIndex" title="Supprimer cet observateur" t:zone="observersFormZoneId"> <img src="${asset:context:img/remove-22px.png}" /> </a> </li> Modified: trunk/wao-ui/src/main/webapp/css/contactForm.css =================================================================== --- trunk/wao-ui/src/main/webapp/css/contactForm.css 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-ui/src/main/webapp/css/contactForm.css 2011-02-02 11:47:28 UTC (rev 970) @@ -35,4 +35,9 @@ .value { /* make no line return under the label */ width: 45%; float: left; +} + +/* bugfix, list of errors when validation fails is at -20px */ +html > body div.t-error li { + margin-left: 25px; } \ No newline at end of file Modified: trunk/wao-ui/src/main/webapp/css/contacts.css =================================================================== --- trunk/wao-ui/src/main/webapp/css/contacts.css 2011-02-01 16:13:18 UTC (rev 969) +++ trunk/wao-ui/src/main/webapp/css/contacts.css 2011-02-02 11:47:28 UTC (rev 970) @@ -104,6 +104,19 @@ max-width: 200px; } +/** avoid line-return in some columns */ div#so-contacts td.actions { white-space: nowrap; -} \ No newline at end of file +} + +/** some columns values have to be centered */ +div#so-contacts td.state, +div#so-contacts td.observationBeginDate, +div#so-contacts td.observationEndDate, +div#so-contacts td.nbObservants, +div#so-contacts td.actualSamplingStrategy, +div#so-contacts td.completeSampling, +div#so-contacts td.dataInputDate, +div#so-contacts td.validations { + text-align: center; +}
participants (1)
-
bleny@users.labs.libre-entreprise.org