Wao-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
April 2011
- 3 participants
- 122 discussions
[Suiviobsmer-commits] r1144 - trunk/wao-ui/src/main/resources/i18n
by bleny@users.labs.libre-entreprise.org 06 Apr '11
by bleny@users.labs.libre-entreprise.org 06 Apr '11
06 Apr '11
Author: bleny
Date: 2011-04-06 14:20:17 +0000 (Wed, 06 Apr 2011)
New Revision: 1144
Log:
change i18n value, not suitable for ObsVente
Modified:
trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties
Modified: trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties
===================================================================
--- trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-04-06 14:09:38 UTC (rev 1143)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-04-06 14:20:17 UTC (rev 1144)
@@ -87,7 +87,7 @@
wao.ui.field.Contact.contactStateMotif=Refusal motif
wao.ui.field.Contact.contactStateMotifs=Refusal motives
wao.ui.field.Contact.creationDate=Contact creation date
-wao.ui.field.Contact.dataInputDate=Allegro data input
+wao.ui.field.Contact.dataInputDate=Data input date
wao.ui.field.Contact.dataReliability=Data reliability
wao.ui.field.Contact.endDate=Observation end
wao.ui.field.Contact.mainObserver=Main observer
1
0
[Suiviobsmer-commits] r1143 - in trunk: wao-business/src/main/java/fr/ifremer/wao/bean 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/base wao-ui/src/main/java/fr/ifremer/wao/ui/components wao-ui/src/main/java/fr/ifremer/wao/ui/pages wao-ui/src/main/resources/fr/ifremer/wao/ui/components wao-ui/src/main/webapp
by sletellier@users.labs.libre-entreprise.org 06 Apr '11
by sletellier@users.labs.libre-entreprise.org 06 Apr '11
06 Apr '11
Author: sletellier
Date: 2011-04-06 14:09:38 +0000 (Wed, 06 Apr 2011)
New Revision: 1143
Log:
Continue refactor for boats
Added:
trunk/wao-business/src/main/java/fr/ifremer/wao/bean/BoatFilterValuesImpl.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/BoatFilterManager.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/AbstractFilterComponent.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/BoatFilterComponent.java
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/BoatFilterComponent.tml
Modified:
trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterValuesImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceBoatImpl.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.zargo
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/FilterManager.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/SamplingFilterManager.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/SamplingFilterComponent.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java
trunk/wao-ui/src/main/webapp/Boats.tml
Added: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/BoatFilterValuesImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/BoatFilterValuesImpl.java (rev 0)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/BoatFilterValuesImpl.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -0,0 +1,8 @@
+package fr.ifremer.wao.bean;
+
+/**
+ * @author sletellier <letellier at codelutin.com>
+ */
+public class BoatFilterValuesImpl extends BoatFilterValues {
+
+}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterValuesImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterValuesImpl.java 2011-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterValuesImpl.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -107,6 +107,7 @@
setFacadeNames(new ArrayList<String>());
}
if (!containsFacadeNames(toAdd)) {
+ // Remove doublons
super.addFacadeNames(toAdd);
}
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceBoatImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceBoatImpl.java 2011-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceBoatImpl.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -35,10 +35,15 @@
import fr.ifremer.wao.WaoQueryBuilder;
import fr.ifremer.wao.WaoQueryHelper;
import fr.ifremer.wao.bean.BoatFilter;
+import fr.ifremer.wao.bean.BoatFilterImpl;
+import fr.ifremer.wao.bean.BoatFilterValues;
+import fr.ifremer.wao.bean.BoatFilterValuesImpl;
import fr.ifremer.wao.bean.CompanyBoatInfos;
import fr.ifremer.wao.bean.CompanyBoatInfosImpl;
import fr.ifremer.wao.bean.ConnectedUser;
import fr.ifremer.wao.bean.ObsProgram;
+import fr.ifremer.wao.bean.SamplingFilterValues;
+import fr.ifremer.wao.bean.SamplingFilterValuesImpl;
import fr.ifremer.wao.entity.ActivityCalendar;
import fr.ifremer.wao.entity.ActivityCalendarDAO;
import fr.ifremer.wao.entity.ActivityMonth;
@@ -79,6 +84,8 @@
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
+import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -689,4 +696,52 @@
File file = new File(filename);
return new FileInputStream(file);
}
+
+ @Override
+ protected BoatFilterValues executeGetPossibleValuesForFilter(TopiaContext transaction, BoatFilter filter) throws Exception {
+
+ // extract data
+ Map<Integer, Boat> integerBoatMap = executeGetBoatsByFilter(transaction, filter);
+
+ logger.info("Starting extracting rows : " + new Date());
+ // Extract sampleRows
+ List<SampleRow> rows = extractSampleRows(integerBoatMap.values());
+
+ logger.info("End of extracting rows : " + new Date());
+
+ // collect values
+ BoatFilterValues result = new BoatFilterValuesImpl();
+
+ result.fill(rows);
+
+ return result;
+ }
+
+ protected List<SampleRow> extractSampleRows(Collection<Boat> boats) {
+ List<SampleRow> result = new ArrayList<SampleRow>();
+ for (Boat boat : boats) {
+ List<ElligibleBoat> elligibleBoats = boat.getElligibleBoat();
+ for (ElligibleBoat elligibleBoat : elligibleBoats) {
+ result.add(elligibleBoat.getSampleRow());
+ }
+ }
+ return result;
+ }
+
+ @Override
+ protected BoatFilter executeNewBoatFilter(TopiaContext transaction, ConnectedUser connectedUser) throws Exception {
+
+ BoatFilter boatFilter = new BoatFilterImpl();
+ // Only rows which are not finished nearly one month
+ boatFilter.setNbMonthFinishedFromToday(-1);
+ boatFilter.setObsProgram(connectedUser.getProfile().getObsProgram());
+
+ // Very very important to do that at beginning
+ // Evo #2227 : Guest user has no default company filter
+ if (connectedUser.isCoordinatorOrObserver()) {
+ boatFilter.setCompany(connectedUser.getCompany());
+ }
+
+ return boatFilter;
+ }
}
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-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties 2011-04-06 14:09:38 UTC (rev 1143)
@@ -149,9 +149,11 @@
wao.error.serviceBoat.getCompanyBoatInfos=
wao.error.serviceBoat.getLastActivityCalendar=
wao.error.serviceBoat.getNbBoatsByFilter=
+wao.error.serviceBoat.getPossibleValuesForFilter=
wao.error.serviceBoat.getShipOwnerNamesContains=
wao.error.serviceBoat.importActivityCalendarCsv=
wao.error.serviceBoat.importBoatCsv=
+wao.error.serviceBoat.newBoatFilter=
wao.error.serviceCartography.exportContactMotifsStatisticsKml=
wao.error.serviceCartography.exportContactStatisticsKml=
wao.error.serviceCartography.importBoatDistrictKml=
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-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties 2011-04-06 14:09:38 UTC (rev 1143)
@@ -149,9 +149,11 @@
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.getPossibleValuesForFilter=
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.newBoatFilter=
wao.error.serviceCartography.exportContactMotifsStatisticsKml=
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.
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
Added: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/BoatFilterManager.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/BoatFilterManager.java (rev 0)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/BoatFilterManager.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -0,0 +1,109 @@
+/*
+ * #%L
+ * Wao :: Web Interface
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2009 - 2011 Ifremer
+ * %%
+ * 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%
+ */
+package fr.ifremer.wao.ui.base;
+
+import fr.ifremer.wao.bean.BoatFilter;
+import fr.ifremer.wao.bean.BoatFilterValues;
+import fr.ifremer.wao.bean.ConnectedUser;
+import fr.ifremer.wao.entity.SampleRow;
+import fr.ifremer.wao.service.ServiceBoat;
+
+import java.util.List;
+
+/**
+ * @author sletellier <letellier at codelutin.com>
+ */
+public class BoatFilterManager extends FilterManager<BoatFilter> {
+
+ protected ServiceBoat serviceBoat;
+
+ /*
+ * Datas
+ */
+ protected BoatFilterValues possibleValuesForFilter;
+
+ protected SampleRow sampleRow;
+
+ public BoatFilterManager(ConnectedUser user,
+ ServiceBoat serviceBoat) {
+
+ super(user);
+
+ this.serviceBoat = serviceBoat;
+ }
+
+ @Override
+ protected boolean isAvailableDataForFiltersOnly() {
+ return false;
+ }
+
+ @Override
+ public void resetFilter() {
+ sampleRow = null;
+ filter = serviceBoat.newBoatFilter(user);
+ }
+
+ @Override
+ public void updateSearchFields() {
+ updatePossibleValuesForFilter();
+ }
+
+ public BoatFilterValues getPossibleValuesForFilter() {
+ return getPossibleValuesForFilter(false);
+ }
+
+ public BoatFilterValues updatePossibleValuesForFilter() {
+ return getPossibleValuesForFilter(true);
+ }
+
+ protected BoatFilterValues getPossibleValuesForFilter(boolean update) {
+ if (update || possibleValuesForFilter == null) {
+ possibleValuesForFilter = serviceBoat.getPossibleValuesForFilter(getFilter());
+ }
+ return possibleValuesForFilter;
+ }
+
+ public String[] getShipOwnerNamesContains(String input) {
+ List<String> results = serviceBoat.getShipOwnerNamesContains(input);
+ return results.toArray(new String[results.size()]);
+ }
+
+ public String[] getBoatNamesStartWith(String input) {
+ List<String> results = serviceBoat.getBoatNamesStartWith(input);
+ return results.toArray(new String[results.size()]);
+ }
+
+ public SampleRow getSampleRow() {
+ return sampleRow;
+ }
+
+ public void setSampleRow(SampleRow sampleRow) {
+ getFilter().setSampleRow(sampleRow);
+ getFilter().setSampleRowExists(true);
+ }
+
+ public boolean isSampleRowExists() {
+ return getFilter().isSampleRowExists();
+ }
+}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/FilterManager.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/FilterManager.java 2011-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/FilterManager.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -25,8 +25,6 @@
import fr.ifremer.wao.bean.ConnectedUser;
import fr.ifremer.wao.bean.SamplingFilter;
-import fr.ifremer.wao.bean.SamplingFilterValues;
-import fr.ifremer.wao.service.ServiceSampling;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -42,47 +40,23 @@
protected ConnectedUser user;
- /*
- * Services
- */
- protected ServiceSampling serviceSampling;
+ protected E filter;
- /*
- * Datas
- */
- protected SamplingFilterValues possibleValuesForFilter;
-
- public FilterManager(ConnectedUser user,
- ServiceSampling serviceSampling) {
-
- this.serviceSampling = serviceSampling;
+ public FilterManager(ConnectedUser user) {
this.user = user;
-
- // Initialize filter
- resetFilter();
}
- public SamplingFilterValues getPossibleValuesForFilter() {
- return getPossibleValuesForFilter(false);
+ public ConnectedUser getUser() {
+ return user;
}
- public SamplingFilterValues updatePossibleValuesForFilter() {
- return getPossibleValuesForFilter(true);
- }
-
- protected SamplingFilterValues getPossibleValuesForFilter(boolean update) {
- if (update || possibleValuesForFilter == null) {
- possibleValuesForFilter = serviceSampling.getPossibleValuesForFilter(getFilter());
+ public E getFilter() {
+ if (filter == null) {
+ resetFilter();
}
- return possibleValuesForFilter;
+ return filter;
}
- public ConnectedUser getUser() {
- return user;
- }
-
- public abstract E getFilter();
-
/**
* Method to initialize filter, is call on constructor
*/
@@ -95,7 +69,8 @@
*/
protected abstract boolean isAvailableDataForFiltersOnly();
- public void updateSearchFields() {
- updatePossibleValuesForFilter();
- }
+ /**
+ * Used to update search fields
+ */
+ public abstract void updateSearchFields();
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/SamplingFilterManager.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/SamplingFilterManager.java 2011-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/SamplingFilterManager.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -25,26 +25,30 @@
import fr.ifremer.wao.bean.ConnectedUser;
import fr.ifremer.wao.bean.SamplingFilter;
+import fr.ifremer.wao.bean.SamplingFilterValues;
import fr.ifremer.wao.service.ServiceSampling;
-import org.apache.tapestry5.annotations.Persist;
/**
* @author sletellier <letellier at codelutin.com>
*/
public class SamplingFilterManager extends FilterManager<SamplingFilter> {
- @Persist
- protected SamplingFilter filter;
+ /*
+ * Services
+ */
+ protected ServiceSampling serviceSampling;
+ /*
+ * Datas
+ */
+ protected SamplingFilterValues possibleValuesForFilter;
+
public SamplingFilterManager(ConnectedUser user,
ServiceSampling serviceSampling) {
- super(user, serviceSampling);
- }
+ super(user);
- @Override
- public SamplingFilter getFilter() {
- return filter;
+ this.serviceSampling = serviceSampling;
}
@Override
@@ -56,4 +60,24 @@
public void resetFilter() {
filter = serviceSampling.newSamplingFilter(user);
}
+
+ @Override
+ public void updateSearchFields() {
+ updatePossibleValuesForFilter();
+ }
+
+ public SamplingFilterValues getPossibleValuesForFilter() {
+ return getPossibleValuesForFilter(false);
+ }
+
+ public SamplingFilterValues updatePossibleValuesForFilter() {
+ return getPossibleValuesForFilter(true);
+ }
+
+ protected SamplingFilterValues getPossibleValuesForFilter(boolean update) {
+ if (update || possibleValuesForFilter == null) {
+ possibleValuesForFilter = serviceSampling.getPossibleValuesForFilter(getFilter());
+ }
+ return possibleValuesForFilter;
+ }
}
Added: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/AbstractFilterComponent.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/AbstractFilterComponent.java (rev 0)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/AbstractFilterComponent.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -0,0 +1,109 @@
+package fr.ifremer.wao.ui.components;
+
+import fr.ifremer.wao.bean.SamplingFilter;
+import fr.ifremer.wao.ui.base.FilterManager;
+import org.apache.tapestry5.ComponentResources;
+import org.apache.tapestry5.annotations.InjectComponent;
+import org.apache.tapestry5.annotations.Parameter;
+import org.apache.tapestry5.annotations.Persist;
+import org.apache.tapestry5.corelib.components.Zone;
+import org.apache.tapestry5.ioc.annotations.Inject;
+import org.slf4j.Logger;
+
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+
+/**
+ * @author sletellier <letellier at codelutin.com>
+ */
+public abstract class AbstractFilterComponent<E extends SamplingFilter, F extends FilterManager<E>> {
+
+ @Inject
+ private Logger log;
+
+ @Inject
+ private ComponentResources resources;
+
+ @Parameter(required = true)
+ private F filterManager;
+
+ @Parameter(required = false)
+ private Boolean visibleOnStartup;
+
+ @InjectComponent
+ private Zone filtersZone;
+
+ @Persist
+ private Boolean filtersVisible;
+
+ public ComponentResources getResources() {
+ return resources;
+ }
+
+ // True by default
+ public Boolean getVisibleOnStartup() {
+ if (visibleOnStartup == null) {
+ visibleOnStartup = true;
+ }
+ return visibleOnStartup;
+ }
+
+ public Boolean getFiltersVisible() {
+ if (filtersVisible == null) {
+ filtersVisible = getVisibleOnStartup();
+ }
+ return filtersVisible;
+ }
+
+ public void setFiltersVisible(Boolean filtersVisible) {
+ this.filtersVisible = filtersVisible;
+ }
+
+ public void switchFiltersVisible() {
+ filtersVisible = !filtersVisible;
+ }
+
+ public Zone getFiltersZone() {
+ return filtersZone;
+ }
+
+ public E getFilter() {
+ return filterManager.getFilter();
+ }
+
+ public F getFilterManager() {
+ return filterManager;
+ }
+
+ public void setFilterManager(F filterManager) {
+ this.filterManager = filterManager;
+ }
+
+ public DateFormat getDateFormat() {
+ return new SimpleDateFormat("MM/yyyy");
+ }
+
+ /**
+ * Activate reset filter
+ */
+ private boolean reset;
+ private boolean refresh;
+
+ public boolean isReset() {
+ return reset;
+ }
+
+ public boolean isRefresh() {
+ return refresh;
+ }
+
+ public void onSelectedFromReset() {
+ reset = true;
+ }
+
+ public void onSelectedFromRefresh() {
+ refresh = true;
+ }
+
+ public abstract Object onSuccessFromFiltersForm();
+}
Added: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/BoatFilterComponent.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/BoatFilterComponent.java (rev 0)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/BoatFilterComponent.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -0,0 +1,52 @@
+package fr.ifremer.wao.ui.components;
+
+import fr.ifremer.wao.WaoException;
+import fr.ifremer.wao.bean.BoatFilter;
+import fr.ifremer.wao.bean.SamplingFilterValues;
+import fr.ifremer.wao.ui.base.BoatFilterManager;
+import org.apache.tapestry5.annotations.InjectComponent;
+
+/**
+ * @author sletellier <letellier at codelutin.com>
+ */
+public class BoatFilterComponent extends AbstractFilterComponent<BoatFilter, BoatFilterManager> {
+
+ @InjectComponent
+ private FeedBack filterFeedback;
+
+ public SamplingFilterValues getPossibleValuesForFilter() {
+
+ // Manage sampleRow from context
+ if (getFilterManager().isSampleRowExists()) {
+ filterFeedback.addInfo("Vous êtes en cours de sélection d'un navire pour la ligne du plan " + getFilterManager().getSampleRow().getCode());
+ }
+
+ return getFilterManager().getPossibleValuesForFilter();
+ }
+
+ @Override
+ public Object onSuccessFromFiltersForm() {
+ if (isReset()) {
+ getFilterManager().resetFilter();
+ }
+
+ // Limite search panel
+ getFilterManager().updatePossibleValuesForFilter();
+
+ if (isRefresh()) {
+ // Refresh search panel
+ return this;
+ } else {
+ // Refresh owner
+ return getResources().getContainer();
+ }
+ }
+
+ public String[] onProvideCompletionsFromShipOwnerName(String input) {
+ return getFilterManager().getShipOwnerNamesContains(input);
+ }
+
+ public String[] onProvideCompletionsFromBoatName(String input) throws WaoException {
+ return getFilterManager().getBoatNamesStartWith(input);
+ }
+}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/SamplingFilterComponent.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/SamplingFilterComponent.java 2011-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/SamplingFilterComponent.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -25,67 +25,21 @@
import fr.ifremer.wao.bean.SamplingFilter;
import fr.ifremer.wao.bean.SamplingFilterValues;
-import fr.ifremer.wao.entity.SampleRow;
-import fr.ifremer.wao.ui.base.FilterManager;
-import org.apache.tapestry5.ComponentResources;
-import org.apache.tapestry5.annotations.InjectComponent;
+import fr.ifremer.wao.ui.base.SamplingFilterManager;
import org.apache.tapestry5.annotations.Parameter;
-import org.apache.tapestry5.annotations.Persist;
-import org.apache.tapestry5.annotations.Property;
-import org.apache.tapestry5.corelib.components.Form;
-import org.apache.tapestry5.corelib.components.Zone;
-import org.apache.tapestry5.ioc.annotations.Inject;
import org.nuiton.util.PeriodDates;
-import org.slf4j.Logger;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-
/**
* @author sletellier <letellier at codelutin.com>
*/
-public class SamplingFilterComponent {
+public class SamplingFilterComponent extends AbstractFilterComponent<SamplingFilter, SamplingFilterManager> {
- @Inject
- private Logger log;
+ @Parameter(required = false)
+ private Boolean showEstimatedTides;
- @Inject
- private ComponentResources resources;
-
- @InjectComponent
- private Form filtersForm;
-
@Parameter(required = true)
- private FilterManager<? extends SamplingFilter> filterManager;
-
- @Parameter(required = true)
private String legendMsg;
- @Parameter(required = false)
- private Boolean visibleOnStartup;
-
- @Parameter(required = false)
- private Boolean showEstimatedTides;
-
- @InjectComponent
- private Zone filtersZone;
-
- @Persist
- private Object owner;
-
- @Persist
- private Boolean filtersVisible;
-
- /**
- * Current SampleRow from loop
- */
- @Property
- private SampleRow row;
-
- public String getLegendMsg() {
- return legendMsg;
- }
-
// False by default
public Boolean getShowEstimatedTides() {
if (showEstimatedTides == null) {
@@ -94,74 +48,22 @@
return showEstimatedTides;
}
- // True by default
- public Boolean getVisibleOnStartup() {
- if (visibleOnStartup == null) {
- visibleOnStartup = true;
- }
- return visibleOnStartup;
- }
-
- public Boolean getFiltersVisible() {
- if (filtersVisible == null) {
- filtersVisible = getVisibleOnStartup();
- }
- return filtersVisible;
- }
-
- public void setFiltersVisible(Boolean filtersVisible) {
- this.filtersVisible = filtersVisible;
- }
-
- public void switchFiltersVisible() {
- filtersVisible = !filtersVisible;
- }
-
- public Zone getFiltersZone() {
- return filtersZone;
- }
-
- public SamplingFilter getFilter() {
- return filterManager.getFilter();
- }
-
public SamplingFilterValues getPossibleValuesForFilter() {
- return filterManager.getPossibleValuesForFilter();
+ return getFilterManager().getPossibleValuesForFilter();
}
- public FilterManager getFilterManager() {
- return filterManager;
+ public String getLegendMsg() {
+ return legendMsg;
}
- public void setFilterManager(FilterManager<? extends SamplingFilter> filterManager) {
- this.filterManager = filterManager;
- }
-
- public DateFormat getDateFormat() {
- return new SimpleDateFormat("MM/yyyy");
- }
-
/**
- * Activate reset filter
- */
- private boolean reset;
- private boolean refresh;
-
- public void onSelectedFromReset() {
- reset = true;
- }
-
- public void onSelectedFromRefresh() {
- refresh = true;
- }
-
- /**
* Do filtering
*
* @return owner (for refresh) if filter is edited
*/
- Object onSuccessFromFiltersForm() {
- if (reset) {
+ @Override
+ public Object onSuccessFromFiltersForm() {
+ if (isReset()) {
// Don't reset period in filters
PeriodDates period = getFilter().getPeriod();
getFilterManager().resetFilter();
@@ -171,12 +73,12 @@
// Limite search panel
getFilterManager().updatePossibleValuesForFilter();
- if (refresh) {
+ if (isRefresh()) {
// Refresh search panel
- return filtersZone.getBody();
+ return getFiltersZone().getBody();
} else {
// Refresh owner
- return resources.getContainer();
+ return getResources().getContainer();
}
}
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2011-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2011-04-06 14:09:38 UTC (rev 1143)
@@ -44,6 +44,8 @@
import fr.ifremer.wao.service.ServiceSampling;
import fr.ifremer.wao.service.ServiceUser;
import fr.ifremer.wao.ui.base.AbstractFilteredPage;
+import fr.ifremer.wao.ui.base.BoatFilterManager;
+import fr.ifremer.wao.ui.components.BoatFilterComponent;
import fr.ifremer.wao.ui.components.FeedBack;
import fr.ifremer.wao.ui.components.Layout;
import fr.ifremer.wao.ui.data.BoatDataSource;
@@ -90,7 +92,7 @@
*/
@RequiresAuthentication(allowedRoles = {UserRole.ADMIN, UserRole.COORDINATOR, UserRole.OBSERVER, UserRole.PROFESSIONAL})
@Import(stylesheet = "context:css/boats.css")
-public class Boats extends AbstractFilteredPage {
+public class Boats {
@Inject
private Logger log;
@@ -102,6 +104,9 @@
@Property
private ConnectedUser user;
+ @InjectComponent
+ private BoatFilterComponent filterComponent;
+
@Inject
private ServiceReferential serviceReferential;
@@ -117,13 +122,27 @@
@Inject
private PropertyAccess propertyAccess;
- @Property
- private String sampleRowContextId;
+// @Property
+// private String sampleRowContextId;
/** Selected boat immatriculation for showing boatInfos */
@Persist(PersistenceConstants.FLASH)
private Integer boatSelectedImmatriculation;
+ @Persist
+ private BoatFilterManager filterManager;
+
+ public BoatFilterManager getFilterManager() {
+ if (filterManager == null) {
+ filterManager = new BoatFilterManager(user, serviceBoat);
+ }
+ return filterManager;
+ }
+
+ public void setFilterManager(BoatFilterManager filterManager) {
+ this.filterManager = filterManager;
+ }
+
public Integer getBoatSelectedImmatriculation() {
return boatSelectedImmatriculation;
}
@@ -132,9 +151,6 @@
this.boatSelectedImmatriculation = boatSelectedImmatriculation;
}
- @InjectComponent
- private FeedBack filterFeedback;
-
void setupRender() throws WaoException {
if (boatSelectedImmatriculation != null && getBoatSelected() == null) {
@@ -145,42 +161,29 @@
boatSelectedImmatriculation = null;
}
- sampleRow = null;
- getSampleRow();
-
- // Manage sampleRow from context
- if (isSampleRowExists()) {
- // Filters will be set and displayed
- getFilter().setSampleRow(sampleRow);
- filtersHidden = false;
- boats = null;
- filterFeedback.addInfo("Vous êtes en cours de sélection d'un navire pour la ligne du plan " + sampleRow.getCode());
- professionId = getSampleRow().getProfession().getTopiaId();
- }
-
// Initialize filters using AbstractFilteredPage superclass
- initSelectFilters(false, false, false);
- // The company of connected user will be contributed to abstractFilteredPage
- initCompanyFilter();
+// initSelectFilters(false, false, false);
+// // The company of connected user will be contributed to abstractFilteredPage
+// initCompanyFilter();
companyBoatInfos = null;
}
- void onActivate(EventContext ec) {
- sampleRowContextId = ec.get(String.class, 0);
- if (ec.getCount() > 1) {
- boatSelectedImmatriculation = ec.get(Integer.class, 1);
- }
+// void onActivate(EventContext ec) {
+// sampleRowContextId = ec.get(String.class, 0);
+// if (ec.getCount() > 1) {
+// boatSelectedImmatriculation = ec.get(Integer.class, 1);
+// }
// boatSelectedImmatriculation = ec.get(Integer.class, 1);
- }
+// }
// Object[] onPassivate() {
// return new Object[] { sampleRowContextId, boatSelectedImmatriculation };
// }
- String onPassivate() {
- return sampleRowContextId;
- }
+// String onPassivate() {
+// return sampleRowContextId;
+// }
/**************************** Import Forms ********************************/
@@ -320,75 +323,47 @@
/**************************** Filters Form *****************************************/
/** Filters to apply on boats list */
- @Persist
- private BoatFilter boatFilter;
+// @Persist
+// private BoatFilter boatFilter;
/** Current sampleRow from context */
- @Persist
- private SampleRow sampleRow;
+// @Persist
+// private SampleRow sampleRow;
/** Profession select */
- @Persist
- private GenericSelectModel<Profession> professionSelectModel;
+// @Persist
+// private GenericSelectModel<Profession> professionSelectModel;
+//
+// @Property
+// private String professionId;
+//
+// /** Used to manage view of filters zone */
+// @Persist
+// private boolean filtersHidden;
- @Property
- private String professionId;
+// @InjectComponent
+// private Zone filtersZone;
- /** Used to manage view of filters zone */
- @Persist
- private boolean filtersHidden;
-
- @InjectComponent
- private Zone filtersZone;
-
/**
- * Filters to apply on boats list. Method used by AbstractFilteredPage superclass.
+ * Filters to apply on boats list.
*
* @return the current BoatFilter to apply
* @throws WaoException
- * @see AbstractFilteredPage
*/
- @Override
+// @Override
public SamplingFilter getFilter() throws WaoException {
return getBoatFilter();
}
public BoatFilter getBoatFilter() throws WaoException {
- if (boatFilter == null) {
- if (log.isDebugEnabled()) {
- log.debug("Create filter");
- }
- boatFilter = new BoatFilterImpl();
- // Only rows which are not finished nearly one month
- boatFilter.setNbMonthFinishedFromToday(-1);
- boatFilter.setObsProgram(user.getProfile().getObsProgram());
- }
- return boatFilter;
+ return filterManager.getFilter();
}
- @Override
- protected boolean isAvailableDataForFiltersOnly() {
- return true;
- }
+// @Override
+// protected boolean isAvailableDataForFiltersOnly() {
+// return true;
+// }
- /**
- * Retrieve sampleRow from business with id from url context. The sampleRowId from context is set by SamplingPlan page.
- * When the sampleRow is not null, the filters are disabled to optimize searching boats for this row.
- *
- * @return the sampleRow from business
- * @throws WaoException
- */
- public SampleRow getSampleRow() throws WaoException {
- if (sampleRow == null && !StringUtils.isEmpty(sampleRowContextId)) {
- sampleRow = serviceSampling.getSampleRow(sampleRowContextId);
- }
- return sampleRow;
- }
-
- public boolean isSampleRowExists() throws WaoException {
- return getSampleRow() != null;
- }
-
// public GenericSelectModel<Profession> getProfessionSelectModel() throws WaoException {
// if (professionSelectModel == null) {
// List<Profession> professions = serviceReferential.getProfessions();
@@ -398,37 +373,31 @@
// return professionSelectModel;
// }
- public boolean isFiltersHidden() {
- return filtersHidden;
- }
+ /**************************** FILTERS *************************************/
- public String getHiddenStyle() {
- return isFiltersHidden() ? "hidden" : "";
+ public boolean isFiltersVisible() {
+ return filterComponent.getFiltersVisible();
}
- Block onActionFromShowFilters() {
- filtersHidden = false;
- return filtersZone.getBody();
- }
+ Object onActionFromShowFilters() {
- Block onActionFromHideFilters() {
- filtersHidden = true;
- return filtersZone.getBody();
- }
+ filterComponent.switchFiltersVisible();
- public String[] onProvideCompletionsFromShipOwnerName(String input) {
- List<String> results = serviceBoat.getShipOwnerNamesContains(input);
- return results.toArray(new String[results.size()]);
+ if (isFiltersVisible()) {
+ return filterComponent;
+ } else {
+ return filterComponent.getFiltersZone();
+ }
}
/**
* EVENT_SELECTED :: reset submit button for filtersForm. Reset filters and sampleRow from context.
*/
- void onSelectedFromReset() {
+// void onSelectedFromReset() {
// Suppress persistant boat filter and sampleRowId in url context.
- boatFilter = null;
- sampleRowContextId = null;
- }
+// boatFilter = null;
+// sampleRowContextId = null;
+// }
/**
* EVENT_SELECTED :: search sumit button for filtersForm. Get profession from selectModel to add it in filters.
@@ -437,22 +406,22 @@
* @throws WaoException for business errors
* @see AbstractFilteredPage#onSelectedFromSearch()
*/
- @Override
- public void onSelectedFromSearch() throws WaoException {
- super.onSelectedFromSearch();
- if (log.isDebugEnabled()) {
- log.debug("FILTER : facadeName=" + boatFilter.getFacadeName());
- log.debug("FILTER : sectorName=" + boatFilter.getSectorName());
- log.debug("FILTER : sampleRow=" + boatFilter.getSampleRow());
-// log.debug("FILTER : profession=" + boatFilter.getProfession());
- log.debug("FILTER : boatName=" + boatFilter.getBoatName());
- log.debug("FILTER : boatImmatriculation=" + boatFilter.getBoatImmatriculation());
- log.debug("FILTER : boatDistrictCode=" + boatFilter.getBoatDistrictCode());
- log.debug("FILTER : company=" + boatFilter.getCompany());
- }
+// @Override
+// public void onSelectedFromSearch() throws WaoException {
+// super.onSelectedFromSearch();
+// if (log.isDebugEnabled()) {
+// log.debug("FILTER : facadeName=" + boatFilter.getFacadeName());
+// log.debug("FILTER : sectorName=" + boatFilter.getSectorName());
+// log.debug("FILTER : sampleRow=" + boatFilter.getSampleRow());
+//// log.debug("FILTER : profession=" + boatFilter.getProfession());
+// log.debug("FILTER : boatName=" + boatFilter.getBoatName());
+// log.debug("FILTER : boatImmatriculation=" + boatFilter.getBoatImmatriculation());
+// log.debug("FILTER : boatDistrictCode=" + boatFilter.getBoatDistrictCode());
+// log.debug("FILTER : company=" + boatFilter.getCompany());
+// }
// Profession profession = getProfessionSelectModel().findObject(professionId);
// boatFilter.setProfession(profession);
- }
+// }
/**
* EVENT_SUCCESS :: for filtersForm. Reset persitant data to have new data using filters selected.
@@ -460,23 +429,23 @@
* @return the filtersZone if it's a refresh data for select, or the page otherwise
* @throws WaoException for business errors
*/
- Object onSuccessFromFiltersForm() throws WaoException {
- if (isEdited()) {
- return filtersZone.getBody();
- }
- // Suppress persistant boats list to get new one with filter
- boats = null;
- // Suppress persistant immatriculation for boat selected
- boatSelectedImmatriculation = null;
- // Suppress persistant boat informations for boat selected
- companyBoatInfos = null;
- return this;
- }
+// Object onSuccessFromFiltersForm() throws WaoException {
+// if (isEdited()) {
+// return filtersZone.getBody();
+// }
+// // Suppress persistant boats list to get new one with filter
+// boats = null;
+// // Suppress persistant immatriculation for boat selected
+// boatSelectedImmatriculation = null;
+// // Suppress persistant boat informations for boat selected
+// companyBoatInfos = null;
+// return this;
+// }
/**************************** Boats List *****************************************/
/** DataSource containing the boats */
- @Persist
+// @Persist
private BoatDataSource boats;
/** Current boat in the Grid */
@@ -533,7 +502,7 @@
}
public boolean canCreateNewContactFromList() throws WaoException {
- if (!user.isAdmin() && !user.isProfessional() && !user.isReadOnly() && isSampleRowExists()) {
+ if (!user.isAdmin() && !user.isProfessional() && !user.isReadOnly() && getFilterManager().isSampleRowExists()) {
return boat.canCreateContact(user.getProfile().getObsProgram(), user.getCompany());
}
return false;
@@ -792,19 +761,19 @@
getCompanyBoatInfos();
return boatInfosZone.getBody();
}
+//
+// Block onActionFromEditBoatInfos() throws WaoException {
+// if (canEditBoatInfos()) {
+// boatInfosEditable = true;
+// // WARNING :: Reset sampleRow select for edition mode, no limit for
+// // showing sampleRows instead of filters
+// getFilter().setNbMonthFinishedFromToday(null);
+// resetSampleRowSelect();
+// getFilter().setNbMonthFinishedFromToday(-1);
+// }
+// return boatInfosZone.getBody();
+// }
- Block onActionFromEditBoatInfos() throws WaoException {
- if (canEditBoatInfos()) {
- boatInfosEditable = true;
- // WARNING :: Reset sampleRow select for edition mode, no limit for
- // showing sampleRows instead of filters
- getFilter().setNbMonthFinishedFromToday(null);
- resetSampleRowSelect();
- getFilter().setNbMonthFinishedFromToday(-1);
- }
- return boatInfosZone.getBody();
- }
-
Block onActionFromCancelEditBoatInfos() throws WaoException {
/*if (propertyChange.isChanged()) {
if (log.isDebugEnabled()) {
@@ -858,7 +827,7 @@
Object onActionFromAddNewContactFromBoat(int boatImmatriculation) throws WaoException {
// Get selected sampleRow
- sampleRow = getSampleRow();
+ SampleRow sampleRow = getFilterManager().getSampleRow();
// Get boat from list
boat = getBoats().get(boatImmatriculation);
//contacts.createNewContact(boat, sampleRow);
@@ -870,7 +839,9 @@
Object onActionFromAddNewContactFromSampleRow(String sampleRowCode) throws WaoException {
// Get sampleRow from elligibleBoat list
ElligibleBoat elligible = getCompanyBoatInfos().getElligibleBoat(sampleRowCode);
- sampleRow = elligible.getSampleRow();
+ SampleRow sampleRow = elligible.getSampleRow();
+ // Keep it in manager
+ getFilterManager().setSampleRow(sampleRow);
Contact newContact = serviceContact.getNewContact(user, sampleRow, getBoatSelected());
// contacts.createNewContact(getBoatSelected(), sampleRow);
contacts.setContactSelectedId(newContact.getTopiaId());
Added: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/BoatFilterComponent.tml
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/BoatFilterComponent.tml (rev 0)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/BoatFilterComponent.tml 2011-04-06 14:09:38 UTC (rev 1143)
@@ -0,0 +1,125 @@
+<!--
+ #%L
+ Wao :: Web Interface
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2009 - 2011 Ifremer
+ %%
+ 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%
+ -->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" xmlns:p="tapestry:parameter">
+ <div t:type="zone" t:id="filtersZone" class="so-filters" t:visible="prop:filtersVisible" id="so-filters-form">
+ <t:feedback t:id="filterFeedback" />
+
+ <form t:type="form" t:id="filtersForm" t:zone="so-filters-form" action="post">
+ <t:errors />
+ <div class="t-beaneditor">
+ <div>
+ <!-- Sampling filter -->
+ <div style="float: left; margin-right: 15px;">
+ <label for="sampleRow">${message:wao.ui.field.SampleRow.code} :</label>
+ <!--select t:type="select" t:id="sampleRow" t:disabled="sampleRowExists" t:model="sampleRowSelectModel" value="sampleRowId" /-->
+ <t:topiaEntitySelector t:id="sampleRow"
+ t:multiple="true"
+ t:clazzName="SampleRow"
+ t:labelPropertyName="code"
+ t:values="possibleValuesForFilter.sampleRowsAsList"
+ t:selectedValues="filter.sampleRows"
+ size="6"/>
+ <!--t:disabled="sampleRowExists" -->
+
+ </div>
+ <label for="facadeName">${message:wao.ui.field.FishingZone.facadeName} :</label>
+ <t:simpleSelector t:id="facadeName"
+ t:values="possibleValuesForFilter.facadeNamesAsList"
+ t:selectedValue="filter.facadeName"/>
+ <!--select t:type="select"
+ t:id="facadeName"
+ t:model="facadeSelectModel"
+ value="filter.facadeName" /-->
+
+ <!--input t:type="submit"
+ class="ico22px refresh"
+ t:id="refreshByFacade"
+ value="Refresh"
+ title="${message:wao.ui.filters.refresh}"/-->
+
+ <label for="sectorName">${message:wao.ui.field.FishingZone.sectorName} :</label>
+ <t:simpleSelector t:id="sectorName"
+ t:values="possibleValuesForFilter.sectorsNamesAsList"
+ t:selectedValue="filter.sectorName"/>
+ <!--select t:type="select"
+ t:id="sectorName"
+ t:model="sectorSelectModel"
+ value="filter.sectorName" /-->
+
+ <!--input t:type="submit"
+ class="ico22px refresh"
+ t:id="refreshBySector"
+ value="Refresh"
+ title="${message:wao.ui.filters.refresh}"/-->
+
+ </div><p> </p>
+ <div>
+ <!-- Boat filter -->
+ <label for="boatName">${message:wao.ui.field.Boat.name} :</label>
+ <input t:type="textfield"
+ t:id="boatName"
+ class="width150"
+ t:value="filter.boatName"
+ t:mixins="Autocomplete" />
+
+ <span style="margin-left: 15px;">${message:wao.ui.field.Boat.immatriculation} :</span>
+ <input t:type="textfield"
+ t:id="boatImmatriculation"
+ class="width50"
+ t:value="filter.boatImmatriculation" />
+
+ <span style="margin-left: 15px;">${message:wao.ui.field.BoatDistrict.code} :</span>
+ <input t:type="textfield"
+ t:id="boatDistrictCode"
+ class="width50"
+ t:value="filter.boatDistrictCode" />
+
+ <span style="margin-left: 15px;">${message:wao.ui.field.Boat.shipOwner} :</span>
+ <input t:type="textfield"
+ t:id="shipOwnerName"
+ class="width150"
+ t:value="filter.shipOwnerName"
+ t:mixins="Autocomplete" />
+ </div>
+ <div class="t-beaneditor-row aright">
+ <input t:type="submit" class="ico22px refresh" t:id="refresh"
+ value="${message:wao.ui.filters.refresh}"
+ title="${message:wao.ui.filters.refresh}"/>
+ <input t:type="submit"
+ class="ico search-32px"
+ t:id="search"
+ value="Search"
+ title="${message:wao.ui.action.runSearch}" />
+
+ <input t:type="submit"
+ class="ico undo"
+ t:id="reset"
+ value="Reset"
+ title="${message:wao.ui.action.resetFields}" />
+ </div>
+ </div>
+ </form>
+ </div>
+</html>
\ No newline at end of file
Modified: trunk/wao-ui/src/main/webapp/Boats.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/Boats.tml 2011-04-06 13:02:27 UTC (rev 1142)
+++ trunk/wao-ui/src/main/webapp/Boats.tml 2011-04-06 14:09:38 UTC (rev 1143)
@@ -30,8 +30,25 @@
<t:layout t:pageTitle="Navires" t:contentId="so-boats"
xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" xmlns:p="tapestry:parameter">
+ <div>
+ <fieldset>
+ <legend>${message:wao.ui.misc.advancedSearch}</legend>
+ <div class="aright">
+ <a t:type="actionlink" t:id="showFilters">
+ <t:if t:test="filtersVisible">
+ <img src="${asset:context:}/img/downarrow.png" title="${message:wao.ui.action.showFilters}" />
+ <p:else>
+ <img src="${asset:context:}/img/uparrow.png" title="${message:wao.ui.action.hideFilters}" />
+ </p:else>
+ </t:if>
+ </a>
+ </div>
+ <t:boatFilterComponent t:id="filterComponent"
+ t:filterManager="filterManager"/>
+ </fieldset>
+ </div>
<!--t:filters t:title="Filtres de recherche" t:mainId="so-boats-filters"-->
- <div t:type="zone" class="so-filters" t:id="filtersZone" id="so-boats-filters">
+ <!--div t:type="zone" class="so-filters" t:id="filtersZone" id="so-boats-filters">
<fieldset>
<legend>${message:wao.ui.filters.filters}</legend>
<div class="aright">
@@ -52,7 +69,7 @@
<t:errors />
<div class="t-beaneditor">
<div>
- <!-- Sampling filter -->
+ <! - - Sampling filter - - >
<label for="facadeName">${message:wao.ui.field.FishingZone.facadeName} :</label>
<select t:type="select" t:id="facadeName" t:model="facadeSelectModel" value="filter.facadeName" />
<input t:type="submit" class="ico22px refresh" t:id="refreshByFacade" value="Refresh"
@@ -65,7 +82,7 @@
<select t:type="select" t:id="sampleRow" t:disabled="sampleRowExists" t:model="sampleRowSelectModel" value="sampleRowId" />
</div><p> </p>
<div>
- <!-- Boat filter -->
+ <! - - Boat filter - - >
<label for="boatName">${message:wao.ui.field.Boat.name} :</label>
<input t:type="textfield" t:id="boatName" class="width150" t:value="boatFilter.boatName" t:mixins="Autocomplete" />
<span style="margin-left: 15px;">${message:wao.ui.field.Boat.immatriculation} :</span>
@@ -83,7 +100,7 @@
</form>
</div>
</fieldset>
- </div>
+ </div-->
<div t:type="zone" t:id="boatsZone" t:update="show" class="clearfix">
1
0
[Suiviobsmer-commits] r1142 - trunk/wao-ui/src/main/resources/i18n
by bleny@users.labs.libre-entreprise.org 06 Apr '11
by bleny@users.labs.libre-entreprise.org 06 Apr '11
06 Apr '11
Author: bleny
Date: 2011-04-06 13:02:27 +0000 (Wed, 06 Apr 2011)
New Revision: 1142
Log:
change i18n value, not suitable for ObsVente
Modified:
trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties
Modified: trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties
===================================================================
--- trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-04-05 15:45:38 UTC (rev 1141)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-04-06 13:02:27 UTC (rev 1142)
@@ -1,204 +1,204 @@
wao.ui.action.acceptContact=Valider le contact
wao.ui.action.add=Ajouter
-wao.ui.action.addNewContactFromBoat=Cr\u00E9er un nouveau contact pour ce navire et la ligne s\u00E9lectionn\u00E9e dans les filtres
-wao.ui.action.back=Revenier \u00E0 l'\u00E9cran pr\u00E9c\u00E9dent
+wao.ui.action.addNewContactFromBoat=Cr\u00e9er un nouveau contact pour ce navire et la ligne s\u00e9lectionn\u00e9e dans les filtres
+wao.ui.action.back=Revenier \u00e0 l'\u00e9cran pr\u00e9c\u00e9dent
wao.ui.action.cancel=Annuler
wao.ui.action.changeLocale=Changer de langue
wao.ui.action.contactAdmin=Contacter un responsable ObsMer
-wao.ui.action.create=Cr\u00E9er
-wao.ui.action.createCompany=Cr\u00E9er une soci\u00E9t\u00E9
-wao.ui.action.createUser=Cr\u00E9er un utilisateur
+wao.ui.action.create=Cr\u00e9er
+wao.ui.action.createCompany=Cr\u00e9er une soci\u00e9t\u00e9
+wao.ui.action.createUser=Cr\u00e9er un utilisateur
wao.ui.action.delete=Supprimer
-wao.ui.action.deleteCompany=Supprimer la soci\u00E9t\u00E9
-wao.ui.action.deleteCompany.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer la soci\u00E9t\u00E9 ?
+wao.ui.action.deleteCompany=Supprimer la soci\u00e9t\u00e9
+wao.ui.action.deleteCompany.confirm=\u00cates-vous s\u00fbr de vouloir supprimer la soci\u00e9t\u00e9 ?
wao.ui.action.deleteContact=Supprimer le contact
-wao.ui.action.deleteContact.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer d\u00E9finitivement ce contact ?
+wao.ui.action.deleteContact.confirm=\u00cates-vous s\u00fbr de vouloir supprimer d\u00e9finitivement ce contact ?
wao.ui.action.deleteNews=Supprimer la nouvelle
-wao.ui.action.deleteNews.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer d\u00E9finitivement cette nouvelle ?
+wao.ui.action.deleteNews.confirm=\u00cates-vous s\u00fbr de vouloir supprimer d\u00e9finitivement cette nouvelle ?
wao.ui.action.deleteSampleRow=Supprimer la ligne du plan
-wao.ui.action.deleteSampleRow.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer la ligne %s du plan ?
+wao.ui.action.deleteSampleRow.confirm=\u00cates-vous s\u00fbr de vouloir supprimer la ligne %s du plan ?
wao.ui.action.deleteUser=Supprimer l'utilisateur
-wao.ui.action.deleteUser.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer l'utilisateur ?
+wao.ui.action.deleteUser.confirm=\u00cates-vous s\u00fbr de vouloir supprimer l'utilisateur ?
wao.ui.action.edit=Modifier
wao.ui.action.enlargeView=Agrandir la vue
-wao.ui.action.exportBoats=Exporter les $s navires avec leurs informations priv\u00E9es
+wao.ui.action.exportBoats=Exporter les $s navires avec leurs informations priv\u00e9es
wao.ui.action.filter=Filtrer
wao.ui.action.hideFilters=Masquer les filtres
wao.ui.action.login=Connexion
-wao.ui.action.logout=D\u00E9connexion
-wao.ui.action.reduceView=R\u00E9duire la vue
-wao.ui.action.refresh=Rafra\u00EEchir
+wao.ui.action.logout=D\u00e9connexion
+wao.ui.action.reduceView=R\u00e9duire la vue
+wao.ui.action.refresh=Rafra\u00eechir
wao.ui.action.refuseContact=Refuser le contact
wao.ui.action.remove=Retirer
-wao.ui.action.resetFields=Remettre le formulaire \u00E0 z\u00E9ro
+wao.ui.action.resetFields=Remettre le formulaire \u00e0 z\u00e9ro
wao.ui.action.revert=Annuler
wao.ui.action.runExport=Lancer l'export
wao.ui.action.runImport=Lancer l'import
wao.ui.action.runSearch=Lancer la recherche
wao.ui.action.save=Enregistrer
-wao.ui.action.showDetails=Voir les d\u00E9tails
+wao.ui.action.showDetails=Voir les d\u00e9tails
wao.ui.action.showFilters=Afficher les filtres
wao.ui.action.unvalidateContact=Invalider le contact
wao.ui.action.viewIndicatorsHistory=Voir l'historique des modifications des indicateurs
wao.ui.boatList=Liste de %s navires
wao.ui.boatinfo.title=Informations sur %s
-wao.ui.boats.associatedLine=Ligne(s) du plan associ\u00E9e(s) \u00E0 ce navire
-wao.ui.boats.nbObservations=%s observation(s) dont %s avec votre soci\u00E9t\u00E9
-wao.ui.cartography.help=Cliquez sur les graphiques pour avoir le d\u00E9tail.
-wao.ui.cartography.title=R\u00E9partition des contacts par quartier des navires
-wao.ui.cartography.title.company=R\u00E9partition des contacts par quartier des navires pour la soci\u00E9t\u00E9 %s
+wao.ui.boats.associatedLine=Ligne(s) du plan associ\u00e9e(s) \u00e0 ce navire
+wao.ui.boats.nbObservations=%s observation(s) dont %s avec votre soci\u00e9t\u00e9
+wao.ui.cartography.help=Cliquez sur les graphiques pour avoir le d\u00e9tail.
+wao.ui.cartography.title=R\u00e9partition des contacts par quartier des navires
+wao.ui.cartography.title.company=R\u00e9partition des contacts par quartier des navires pour la soci\u00e9t\u00e9 %s
wao.ui.chart.boardingsSince=Nombre de sollicitations depuis le %s
wao.ui.chart.numberBoats=Nb navires
wao.ui.chart.numberObservations=Nb observations
wao.ui.chart.numberOfBoatsWithBoardings=Nombre de navires avec x embarquements
-wao.ui.contact.lastContact=Derni\u00E8re observation concernant ce navire pour votre soci\u00E9t\u00E9 (tous programmes confondus)
-wao.ui.contacts.createFromBoat=Cr\u00E9er un nouveau contact pour ce navire et cette ligne du plan
-wao.ui.contacts.createFromBoat.fail=Cr\u00E9ation d'un nouveau contact impossible
-wao.ui.contacts.createFromBoat.warn=Attention \: cette ligne du plan est arriv\u00E9e \u00E0 \u00E9ch\u00E9ance, \u00EAtes-vous s\u00FBr de vouloir cr\u00E9er un nouveau contact ?
-wao.ui.disclaimer=Le site de \u00AB SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER \u00BB a fait l'objet d'une d\u00E9claration \u00E0 la CNIL sous le num\u00E9ro suivant \: 1414476
-wao.ui.disclaimer.boats=Les donn\u00E9es saisies dans cette page sont la propri\u00E9t\u00E9 exclusive de la soci\u00E9t\u00E9. En dehors de la soci\u00E9t\u00E9, seul l'administrateur peut les consulter pour des questions de maintenance sur le site. L'administrateur est une personne de l'Ifremer.
+wao.ui.contact.lastContact=Derni\u00e8re observation concernant ce navire pour votre soci\u00e9t\u00e9 (tous programmes confondus)
+wao.ui.contacts.createFromBoat=Cr\u00e9er un nouveau contact pour ce navire et cette ligne du plan
+wao.ui.contacts.createFromBoat.fail=Cr\u00e9ation d'un nouveau contact impossible
+wao.ui.contacts.createFromBoat.warn=Attention \: cette ligne du plan est arriv\u00e9e \u00e0 \u00e9ch\u00e9ance, \u00eates-vous s\u00fbr de vouloir cr\u00e9er un nouveau contact ?
+wao.ui.disclaimer=Le site de \u00ab SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER \u00bb a fait l'objet d'une d\u00e9claration \u00e0 la CNIL sous le num\u00e9ro suivant \: 1414476
+wao.ui.disclaimer.boats=Les donn\u00e9es saisies dans cette page sont la propri\u00e9t\u00e9 exclusive de la soci\u00e9t\u00e9. En dehors de la soci\u00e9t\u00e9, seul l'administrateur peut les consulter pour des questions de maintenance sur le site. L'administrateur est une personne de l'Ifremer.
wao.ui.email=Adresse e-mail
wao.ui.entity.Boat=Navire
wao.ui.entity.Boats=Navires
-wao.ui.entity.Company=Soci\u00E9t\u00E9
+wao.ui.entity.Company=Soci\u00e9t\u00e9
wao.ui.entity.Contact=Contact
-wao.ui.entity.FishingZone=Zones de p\u00EAche
-wao.ui.entity.SampleRow=Ligne du plan d'\u00E9chantillonnage
+wao.ui.entity.FishingZone=Zones de p\u00eache
+wao.ui.entity.SampleRow=Ligne du plan d'\u00e9chantillonnage
wao.ui.entity.SampleRow.day=
wao.ui.entity.TerrestrialLocation=Lieu
wao.ui.entity.fishingGearDCF=Engin code DCF
-wao.ui.entity.targetSpeciesDCF=Ensembles d'esp\u00E8ces-cible code DCF
+wao.ui.entity.targetSpeciesDCF=Ensembles d'esp\u00e8ces-cible code DCF
wao.ui.field.Boat.boatLength=Longueur
-wao.ui.field.Boat.buildYear=Ann\u00E9e de construction
+wao.ui.field.Boat.buildYear=Ann\u00e9e de construction
wao.ui.field.Boat.districtCode=Quartier
wao.ui.field.Boat.immatriculation=Immatriculation
wao.ui.field.Boat.name=Nom
wao.ui.field.Boat.shipOwner=Armateur
wao.ui.field.BoatDistrict.code=Code quartier
-wao.ui.field.BoatInfos.dup=Capacit\u00E9 d'accueil du navire en personnels sp\u00E9cialis\u00E9s
+wao.ui.field.BoatInfos.dup=Capacit\u00e9 d'accueil du navire en personnels sp\u00e9cialis\u00e9s
wao.ui.field.Company.active=Active
wao.ui.field.Company.name=Nom
-wao.ui.field.Contact.beginDate=D\u00E9but d'observation
+wao.ui.field.Contact.beginDate=D\u00e9but d'observation
wao.ui.field.Contact.comment=Commentaire observateur
wao.ui.field.Contact.commentAdmin=Commentaire programme
wao.ui.field.Contact.commentCoordinator=Commentaire coordinateur
-wao.ui.field.Contact.completeSampling=\u00C9chantillonnage complet
-wao.ui.field.Contact.contactState=\u00C9tat du contact
+wao.ui.field.Contact.completeSampling=\u00c9chantillonnage complet
+wao.ui.field.Contact.contactState=\u00c9tat du contact
wao.ui.field.Contact.contactStateMotif=Motif du refus
wao.ui.field.Contact.contactStateMotifs=Motifs de refus
-wao.ui.field.Contact.creationDate=Date de cr\u00E9ation du contact
-wao.ui.field.Contact.dataInputDate=Saisie des donn\u00E9es dans Allegro
-wao.ui.field.Contact.dataReliability=Qualit\u00E9 des donn\u00E9es
+wao.ui.field.Contact.creationDate=Date de cr\u00e9ation du contact
+wao.ui.field.Contact.dataInputDate=Saisie des donn\u00e9es
+wao.ui.field.Contact.dataReliability=Qualit\u00e9 des donn\u00e9es
wao.ui.field.Contact.endDate=Fin d'observation
-wao.ui.field.Contact.mainObserver=Observateur r\u00E9f\u00E9rent
+wao.ui.field.Contact.mainObserver=Observateur r\u00e9f\u00e9rent
wao.ui.field.Contact.mammalsCapture=Capture accidentelle
-wao.ui.field.Contact.mammalsInfo=Noms scientifiques et nombres d'individus des esp\u00E8ces captur\u00E9es
+wao.ui.field.Contact.mammalsInfo=Noms scientifiques et nombres d'individus des esp\u00e8ces captur\u00e9es
wao.ui.field.Contact.mammalsObservation=Observation exceptionnelle
wao.ui.field.Contact.nbObservants=Nombre d'observateurs
-wao.ui.field.Contact.samplingStrategy=Strat\u00E9gie d'\u00E9chantillonnage suivie
+wao.ui.field.Contact.samplingStrategy=Strat\u00e9gie d'\u00e9chantillonnage suivie
wao.ui.field.Contact.secondaryObservers=Observateurs
wao.ui.field.Contact.terrestrialLocation=Lieu d'observation
-wao.ui.field.Contact.validationCompany=Validation soci\u00E9t\u00E9
+wao.ui.field.Contact.validationCompany=Validation soci\u00e9t\u00e9
wao.ui.field.Contact.validationProgram=Validation programme
-wao.ui.field.FishingZone.facadeName=Fa\u00E7ade
+wao.ui.field.FishingZone.facadeName=Fa\u00e7ade
wao.ui.field.FishingZone.sectorName=Zone
wao.ui.field.SampleRow.code=Code ligne
wao.ui.field.SampleRow.comment=Commentaire
wao.ui.field.SampleRow.dCF5Code=Codes
wao.ui.field.SampleRow.day=Jour
wao.ui.field.SampleRow.dcf5Code=Code DCF Niv. 5
-wao.ui.field.SampleRow.fishingZones=Zone(s) de p\u00EAche
-wao.ui.field.SampleRow.libelle=Libell\u00E9
+wao.ui.field.SampleRow.fishingZones=Zone(s) de p\u00eache
+wao.ui.field.SampleRow.libelle=Libell\u00e9
wao.ui.field.SampleRow.meshSize=Maillage
-wao.ui.field.SampleRow.observationUnit=Unit\u00E9 d'observation
+wao.ui.field.SampleRow.observationUnit=Unit\u00e9 d'observation
wao.ui.field.SampleRow.observers=Observateurs
wao.ui.field.SampleRow.other=Autre
-wao.ui.field.SampleRow.periodBegin=D\u00E9but
+wao.ui.field.SampleRow.periodBegin=D\u00e9but
wao.ui.field.SampleRow.periodEnd=Fin
-wao.ui.field.SampleRow.profession=M\u00E9tier
-wao.ui.field.SampleRow.professionCode=Code m\u00E9tier
+wao.ui.field.SampleRow.profession=M\u00e9tier
+wao.ui.field.SampleRow.professionCode=Code m\u00e9tier
wao.ui.field.SampleRow.programName=Programme
-wao.ui.field.SampleRow.samplingStrategy=Strat\u00E9gie d'\u00E9chantillonnage
+wao.ui.field.SampleRow.samplingStrategy=Strat\u00e9gie d'\u00e9chantillonnage
wao.ui.field.SampleRow.size=Taille du navire
-wao.ui.field.SampleRow.species=Esp\u00E8ces cibles
+wao.ui.field.SampleRow.species=Esp\u00e8ces cibles
wao.ui.field.SampleRow.terrestrialLocation=Quartier maritime
wao.ui.field.SampleRow.terrestrialLocationInfos=Autre(s) info(s)
-wao.ui.field.User.firstName=Pr\u00E9nom
+wao.ui.field.User.firstName=Pr\u00e9nom
wao.ui.field.User.lastName=Nom
wao.ui.field.User.login=Identifiant
-wao.ui.field.UserProfile.userRole=R\u00F4le
+wao.ui.field.UserProfile.userRole=R\u00f4le
wao.ui.field.WaoUser.login=Identifiant
wao.ui.field.WaoUser.mammalsNotifications=Recevoir les notifications de captures accidentelles
wao.ui.field.WaoUser.password=Mot de passe
wao.ui.filters.filters=Filtres de recherche
-wao.ui.filters.refresh=Rafra\u00EEchir les champs du filtre
-wao.ui.forgotPassword=Mot de passe oubli\u00E9 ?
-wao.ui.form.SampleRow.boatsDescription=Ce champs correspond aux immatriculations des navires qui sont \u00E9ligibles pour cette ligne. Vous pouvez utiliser n'importe quel s\u00E9parateur pour s\u00E9parer les immatriculations (virgule, point, espace ou saut de ligne)
-wao.ui.form.SampleRow.missingBeginDate=Date de d\u00E9but manquante pour g\u00E9n\u00E9rer le code de la ligne \!
-wao.ui.form.SampleRow.others=Autres donn\u00E9es de la ligne d'\u00E9chantillonnage
+wao.ui.filters.refresh=Rafra\u00eechir les champs du filtre
+wao.ui.forgotPassword=Mot de passe oubli\u00e9 ?
+wao.ui.form.SampleRow.boatsDescription=Ce champs correspond aux immatriculations des navires qui sont \u00e9ligibles pour cette ligne. Vous pouvez utiliser n'importe quel s\u00e9parateur pour s\u00e9parer les immatriculations (virgule, point, espace ou saut de ligne)
+wao.ui.form.SampleRow.missingBeginDate=Date de d\u00e9but manquante pour g\u00e9n\u00e9rer le code de la ligne \!
+wao.ui.form.SampleRow.others=Autres donn\u00e9es de la ligne d'\u00e9chantillonnage
wao.ui.form.SampleRow.program=Programme de rattachement et effort d'observation par mois
wao.ui.form.addComment=Ajouter un commentaire
-wao.ui.form.addRole=Ajouter ce r\u00F4le
+wao.ui.form.addRole=Ajouter ce r\u00f4le
wao.ui.form.boardingFrom=Sollicitations du navire depuis le
wao.ui.form.contactsFile=Fichier des contacts
-wao.ui.form.definePasswordManually=d\u00E9finir manuellement
+wao.ui.form.definePasswordManually=d\u00e9finir manuellement
wao.ui.form.editComment=Commentaire sur la modification
wao.ui.form.editionAuthor=Auteur de la modification
-wao.ui.form.estimatedTides=Voir l'effort d'observations estim\u00E9
-wao.ui.form.estimatedTides.description=L'effort d'observations estim\u00E9 \u00E9quivaut au nombre de contacts valid\u00E9s ou non par la soci\u00E9t\u00E9. Les contacts refus\u00E9s par le programme ne sont pas pris en compte.
-wao.ui.form.generatePassword=G\u00E9n\u00E9rer le mot de passe
+wao.ui.form.estimatedTides=Voir l'effort d'observations estim\u00e9
+wao.ui.form.estimatedTides.description=L'effort d'observations estim\u00e9 \u00e9quivaut au nombre de contacts valid\u00e9s ou non par la soci\u00e9t\u00e9. Les contacts refus\u00e9s par le programme ne sont pas pris en compte.
+wao.ui.form.generatePassword=G\u00e9n\u00e9rer le mot de passe
wao.ui.form.otherBoatInfos=Autres informations sur le navire
-wao.ui.form.period=P\u00E9riode
+wao.ui.form.period=P\u00e9riode
wao.ui.form.period.from=du
wao.ui.form.period.to=au
-wao.ui.form.periodFrom=P\u00E9riode du
-wao.ui.form.periodFromTo=P\u00E9riode du %s au %s
+wao.ui.form.periodFrom=P\u00e9riode du
+wao.ui.form.periodFromTo=P\u00e9riode du %s au %s
wao.ui.form.program=Programme
-wao.ui.form.programEvaluation=\u00C9valuation programme
+wao.ui.form.programEvaluation=\u00c9valuation programme
wao.ui.form.readOnly=lecture seule
wao.ui.form.removeRole=retirer ce role
-wao.ui.form.repeatPassword=R\u00E9p\u00E9ter le mot de passe
-wao.ui.form.roles=R\u00F4les
-wao.ui.form.sortByTideBegin=Trier par date de d\u00E9but d'observation (du plus r\u00E9cent au plus ancien)
-wao.ui.import.activityCalendarImportLabel=de l'import des calendriers d'activit\u00E9
-wao.ui.import.activityCalendarImportRunning=Import des calendriers d'activit\u00E9 en cours. Vous pouvez continuer \u00E0 naviguer sur le site en attendant la fin du chargement.
-wao.ui.import.activityCalendarLabel=des calendriers d'activit\u00E9
-wao.ui.import.activityCalendarUserAccessesLabel=des acc\u00E8s utilisateurs aux calendriers d'activit\u00E9
-wao.ui.import.boatDistrictLabel=des coordonn\u00E9es des quartiers des navires
+wao.ui.form.repeatPassword=R\u00e9p\u00e9ter le mot de passe
+wao.ui.form.roles=R\u00f4les
+wao.ui.form.sortByTideBegin=Trier par date de d\u00e9but d'observation (du plus r\u00e9cent au plus ancien)
+wao.ui.import.activityCalendarImportLabel=de l'import des calendriers d'activit\u00e9
+wao.ui.import.activityCalendarImportRunning=Import des calendriers d'activit\u00e9 en cours. Vous pouvez continuer \u00e0 naviguer sur le site en attendant la fin du chargement.
+wao.ui.import.activityCalendarLabel=des calendriers d'activit\u00e9
+wao.ui.import.activityCalendarUserAccessesLabel=des acc\u00e8s utilisateurs aux calendriers d'activit\u00e9
+wao.ui.import.boatDistrictLabel=des coordonn\u00e9es des quartiers des navires
wao.ui.import.boatsLabel=des navires
wao.ui.import.description=Fichier %s %s \:
-wao.ui.import.fishingZoneLabel=des zones de p\u00EAches
+wao.ui.import.fishingZoneLabel=des zones de p\u00eaches
wao.ui.import.fullDescription=Import %s (format %s avec encodage UTF-8)
wao.ui.import.longTitle=Import/Export CSV (UTF-8)
-wao.ui.import.samplingPlanLabel=du plan d'\u00E9chantillonnage
-wao.ui.import.terrestrialDivisionsLabel=du r\u00E9f\u00E9rentiel de stratification spatiale (ObsDeb)
+wao.ui.import.samplingPlanLabel=du plan d'\u00e9chantillonnage
+wao.ui.import.terrestrialDivisionsLabel=du r\u00e9f\u00e9rentiel de stratification spatiale (ObsDeb)
wao.ui.import.terrestrialLocationsLabel=des lieux terrestres
wao.ui.import.title=Import %s
wao.ui.indicator.andMore=%s et plus
wao.ui.indicator.bounds=Bornes
-wao.ui.indicator.coefficient=Pond\u00E9ration
+wao.ui.indicator.coefficient=Pond\u00e9ration
wao.ui.indicator.editions=Modifications
wao.ui.indicator.indicator=Indicateur
-wao.ui.indicator.legend=En jaune, la position actuelle de la soci\u00E9t\u00E9 selon cet indicateur.
+wao.ui.indicator.legend=En jaune, la position actuelle de la soci\u00e9t\u00e9 selon cet indicateur.
wao.ui.indicator.levels=Niveaux
-wao.ui.indicator.useRightDecimalSymbol=Attention \u00E0 bien utiliser ',' et non '.' pour les d\u00E9cimales
+wao.ui.indicator.useRightDecimalSymbol=Attention \u00e0 bien utiliser ',' et non '.' pour les d\u00e9cimales
wao.ui.indicators.coefficientsSum=Total coefficient
-wao.ui.indicators.title=Indicateurs qualit\u00E9s prestataires
+wao.ui.indicators.title=Indicateurs qualit\u00e9s prestataires
wao.ui.invalidLogin=Identifiant invalide
-wao.ui.layout.userDescription=Vous \u00EAtes %s de la soci\u00E9t\u00E9 %s (%s)
+wao.ui.layout.userDescription=Vous \u00eates %s de la soci\u00e9t\u00e9 %s (%s)
wao.ui.message.chooseProfile=Choisissez dans la liste votre profil de connexion \:
-wao.ui.misc.METIER=M\u00C9TIER
-wao.ui.misc.N/A=non renseign\u00E9e
-wao.ui.misc.accepted=Accept\u00E9
-wao.ui.misc.advancedSearch=Recherche avanc\u00E9e
+wao.ui.misc.METIER=M\u00c9TIER
+wao.ui.misc.N/A=non renseign\u00e9e
+wao.ui.misc.accepted=Accept\u00e9
+wao.ui.misc.advancedSearch=Recherche avanc\u00e9e
wao.ui.misc.by=par
wao.ui.misc.changeOn=Modification du
wao.ui.misc.comment=Commentaire
-wao.ui.misc.commentAddedOn=Commentaire ajout\u00E9 le
+wao.ui.misc.commentAddedOn=Commentaire ajout\u00e9 le
wao.ui.misc.comments=Commentaires
-wao.ui.misc.companies=Soci\u00E9t\u00E9s
-wao.ui.misc.createdOnF=Cr\u00E9\u00E9e le
-wao.ui.misc.creating=En cours de cr\u00E9ation
+wao.ui.misc.companies=Soci\u00e9t\u00e9s
+wao.ui.misc.createdOnF=Cr\u00e9\u00e9e le
+wao.ui.misc.creating=En cours de cr\u00e9ation
wao.ui.misc.export=Export
wao.ui.misc.export.longTitle=Export CSV
wao.ui.misc.import-export=Import/export
@@ -208,7 +208,7 @@
wao.ui.misc.logFile.description=Afficher le fichier de log de %s
wao.ui.misc.no=Non
wao.ui.misc.noComment=aucun commentaire
-wao.ui.misc.notValidated=Non valid\u00E9
+wao.ui.misc.notValidated=Non valid\u00e9
wao.ui.misc.observationReport=Compte-rendu d'observation
wao.ui.misc.observations=Observations
wao.ui.misc.observer=Observateur
@@ -218,69 +218,69 @@
wao.ui.misc.other=Autre
wao.ui.misc.otherInfos=Autre information
wao.ui.misc.others=Autres
-wao.ui.misc.refused=R\u00E9fus\u00E9
+wao.ui.misc.refused=R\u00e9fus\u00e9
wao.ui.misc.since=depuis le
wao.ui.misc.total=Total
-wao.ui.misc.undefined=Non-d\u00E9fini
-wao.ui.misc.validated=Valid\u00E9
+wao.ui.misc.undefined=Non-d\u00e9fini
+wao.ui.misc.validated=Valid\u00e9
wao.ui.misc.yes=Oui
-wao.ui.nContactsFound=%s contacts trouv\u00E9s
+wao.ui.nContactsFound=%s contacts trouv\u00e9s
wao.ui.news.content=Texte
wao.ui.news.title=Titre
wao.ui.page.Administration.title=Administration
wao.ui.page.Boats.title=Navires
wao.ui.page.Cartography.title=Cartographie
-wao.ui.page.ContactForm.mammalsInfo.disclaimer=Attention, toutes les informations saisies seront transmises \u00E0 des personnels ext\u00E9rieurs, soyez riguoureux dans la description de la capture accidentelle
+wao.ui.page.ContactForm.mammalsInfo.disclaimer=Attention, toutes les informations saisies seront transmises \u00e0 des personnels ext\u00e9rieurs, soyez riguoureux dans la description de la capture accidentelle
wao.ui.page.ContactForm.title=Modification d'un contact
wao.ui.page.Contacts.title=Contacts
wao.ui.page.Index.title=Accueil
-wao.ui.page.SamplingPlan.title=Plan d'\u00E9chantillonnage
-wao.ui.page.Synthesis.title=Synth\u00E8se
+wao.ui.page.SamplingPlan.title=Plan d'\u00e9chantillonnage
+wao.ui.page.Synthesis.title=Synth\u00e8se
wao.ui.page.UserProfileForm.title=Gestion du profil
-wao.ui.publishedByProgram=Publi\u00E9e par le programme
-wao.ui.publishedByYourCompany=Publi\u00E9e par la soci\u00E9t\u00E9
-wao.ui.sampleRow.creation=Cr\u00E9ation d'une ligne du plan d'\u00E9chantillonnage
+wao.ui.publishedByProgram=Publi\u00e9e par le programme
+wao.ui.publishedByYourCompany=Publi\u00e9e par la soci\u00e9t\u00e9
+wao.ui.sampleRow.creation=Cr\u00e9ation d'une ligne du plan d'\u00e9chantillonnage
wao.ui.sampleRow.edition=Modification de la ligne %s
wao.ui.sampleRowLog.title=Historique de la ligne %s
wao.ui.samplingPlan.actions=Actions
-wao.ui.samplingPlan.actual=r\u00E9alis\u00E9
-wao.ui.samplingPlan.addSampleRow=Ajouter une ligne au plan d'\u00E9chantillonnage
-wao.ui.samplingPlan.averageTideTime=Dur\u00E9e moyenne d'une mar\u00E9e (J.)
-wao.ui.samplingPlan.effort=Effort d'observation en nombre de mar\u00E9es
-wao.ui.samplingPlan.estimated=estim\u00E9
-wao.ui.samplingPlan.expected=planifi\u00E9
-wao.ui.samplingPlan.export=Exporter le plan d'\u00E9chantillonnage du %s au %s
+wao.ui.samplingPlan.actual=r\u00e9alis\u00e9
+wao.ui.samplingPlan.addSampleRow=Ajouter une ligne au plan d'\u00e9chantillonnage
+wao.ui.samplingPlan.averageTideTime=Dur\u00e9e moyenne d'une mar\u00e9e (J.)
+wao.ui.samplingPlan.effort=Effort d'observation en nombre de mar\u00e9es
+wao.ui.samplingPlan.estimated=estim\u00e9
+wao.ui.samplingPlan.expected=planifi\u00e9
+wao.ui.samplingPlan.export=Exporter le plan d'\u00e9chantillonnage du %s au %s
wao.ui.samplingPlan.fishingZoneInfo=Zone autre(s) info(s)
wao.ui.samplingPlan.months=Mois
wao.ui.samplingPlan.nbObservants=Nb. d'observateurs
-wao.ui.samplingPlan.program=Programme ou r\u00E8glement rattachement
-wao.ui.samplingPlan.sampledProfessions=M\u00E9tiers \u00E9chantillonn\u00E9s
-wao.ui.samplingPlan.showActual=Afficher l'effort d'observations r\u00E9alis\u00E9 pour les contacts valid\u00E9s seulement
-wao.ui.samplingPlan.showExpected=Afficher l'effort d'observations estim\u00E9 pour les contacts valid\u00E9s ou non par la soci\u00E9t\u00E9
-wao.ui.samplingPlan.title=Plan d'\u00E9chantillonnage
-wao.ui.synthesis.allegroReactivity.description=Ce r\u00E9sultat est une moyenne du nombre de jours entre la date de saisie des donn\u00E9es et la date de fin d'observation.
-wao.ui.synthesis.allegroReactivity.title=R\u00E9activit\u00E9 quant \u00E0 la saisie des donn\u00E9es
+wao.ui.samplingPlan.program=Programme ou r\u00e8glement rattachement
+wao.ui.samplingPlan.sampledProfessions=M\u00e9tiers \u00e9chantillonn\u00e9s
+wao.ui.samplingPlan.showActual=Afficher l'effort d'observations r\u00e9alis\u00e9 pour les contacts valid\u00e9s seulement
+wao.ui.samplingPlan.showExpected=Afficher l'effort d'observations estim\u00e9 pour les contacts valid\u00e9s ou non par la soci\u00e9t\u00e9
+wao.ui.samplingPlan.title=Plan d'\u00e9chantillonnage
+wao.ui.synthesis.allegroReactivity.description=Ce r\u00e9sultat est une moyenne du nombre de jours entre la date de saisie des donn\u00e9es et la date de fin d'observation.
+wao.ui.synthesis.allegroReactivity.title=R\u00e9activit\u00e9 quant \u00e0 la saisie des donn\u00e9es
wao.ui.synthesis.boarding.boardingCount=Au total, %s observations invalides sur %s observations.
-wao.ui.synthesis.boarding.description=Ces r\u00E9sultats ne concernent que les lignes du plan d'\u00E9chantillonnage ayant une dur\u00E9e moyenne de mar\u00E9es inf\u00E9rieure ou \u00E9gale \u00E0 48h.
-wao.ui.synthesis.boarding.mostUsedBoat=Navire le plus sollicit\u00E9 avec %s observations (tous programmes confondus) \: %s (%s)
+wao.ui.synthesis.boarding.description=Ces r\u00e9sultats ne concernent que les lignes du plan d'\u00e9chantillonnage ayant une dur\u00e9e moyenne de mar\u00e9es inf\u00e9rieure ou \u00e9gale \u00e0 48h.
+wao.ui.synthesis.boarding.mostUsedBoat=Navire le plus sollicit\u00e9 avec %s observations (tous programmes confondus) \: %s (%s)
wao.ui.synthesis.boarding.title=Sollicitations des navires
-wao.ui.synthesis.complianceBoarding.description=Respect du nombre pr\u00E9vu d'observateurs pour chaque mar\u00E9e r\u00E9alis\u00E9e.
-wao.ui.synthesis.complianceBoarding.title=Respect du nombre d'observateurs embarqu\u00E9s
-wao.ui.synthesis.contactsStates.description=Ces r\u00E9sultats concernent l'ensemble des \u00E9tats des contacts except\u00E9 ceux qui ont \u00E9t\u00E9 refus\u00E9s par le programme.
-wao.ui.synthesis.contactsStates.title=\u00C9tats des contacts
-wao.ui.synthesis.dataReliability.description=Pourcentage du nombre de mar\u00E9es exploitables par rapport nombre de mar\u00E9e r\u00E9alis\u00E9es.
-wao.ui.synthesis.dataReliability.title=Qualit\u00E9 de la donn\u00E9e
-wao.ui.synthesis.dataSampling.title=Donn\u00E9es des mar\u00E9es (r\u00E9alis\u00E9 / planifi\u00E9)
-wao.ui.synthesis.globalSynthesis.globalResult=Bilan de la synth\u00E8se global
-wao.ui.synthesis.globalSynthesis.title=Synth\u00E8se globale
-wao.ui.synthesis.globalSynthesis.title.estimated=Synth\u00E8se globale (selon estimations)
-wao.ui.synthesis.log.description=Cette page pr\u00E9sente toutes les modifications effectu\u00E9es depuis l'origine qui portent sur les bornes de chaque niveaux ainsi que les coefficients de chaque indicateurs.
-wao.ui.synthesis.log.empty=Aucune modification n'a \u00E9t\u00E9 apport\u00E9e \u00E0 ce jour
+wao.ui.synthesis.complianceBoarding.description=Respect du nombre pr\u00e9vu d'observateurs pour chaque mar\u00e9e r\u00e9alis\u00e9e.
+wao.ui.synthesis.complianceBoarding.title=Respect du nombre d'observateurs embarqu\u00e9s
+wao.ui.synthesis.contactsStates.description=Ces r\u00e9sultats concernent l'ensemble des \u00e9tats des contacts except\u00e9 ceux qui ont \u00e9t\u00e9 refus\u00e9s par le programme.
+wao.ui.synthesis.contactsStates.title=\u00c9tats des contacts
+wao.ui.synthesis.dataReliability.description=Pourcentage du nombre de mar\u00e9es exploitables par rapport nombre de mar\u00e9e r\u00e9alis\u00e9es.
+wao.ui.synthesis.dataReliability.title=Qualit\u00e9 de la donn\u00e9e
+wao.ui.synthesis.dataSampling.title=Donn\u00e9es des mar\u00e9es (r\u00e9alis\u00e9 / planifi\u00e9)
+wao.ui.synthesis.globalSynthesis.globalResult=Bilan de la synth\u00e8se global
+wao.ui.synthesis.globalSynthesis.title=Synth\u00e8se globale
+wao.ui.synthesis.globalSynthesis.title.estimated=Synth\u00e8se globale (selon estimations)
+wao.ui.synthesis.log.description=Cette page pr\u00e9sente toutes les modifications effectu\u00e9es depuis l'origine qui portent sur les bornes de chaque niveaux ainsi que les coefficients de chaque indicateurs.
+wao.ui.synthesis.log.empty=Aucune modification n'a \u00e9t\u00e9 apport\u00e9e \u00e0 ce jour
wao.ui.synthesis.log.entry.author=Auteur de la modification
-wao.ui.synthesis.log.entry.comment=Commentaire associ\u00E9
+wao.ui.synthesis.log.entry.comment=Commentaire associ\u00e9
wao.ui.synthesis.log.entry.date=Date de la modification
-wao.ui.synthesis.log.entry.summary=Modifications effectu\u00E9es
-wao.ui.synthesis.log.title=Historique des modifications des param\u00E8tres de la synth\u00E8se globale
-wao.ui.unavailableOperation=Op\u00E9ration non-disponible
+wao.ui.synthesis.log.entry.summary=Modifications effectu\u00e9es
+wao.ui.synthesis.log.title=Historique des modifications des param\u00e8tres de la synth\u00e8se globale
+wao.ui.unavailableOperation=Op\u00e9ration non-disponible
wao.ui.userList=Liste des utilisateurs
wao.ui.validLogin=Identifiant valide
1
0
[Suiviobsmer-commits] r1141 - in trunk: wao-business/src/main/java/fr/ifremer/wao/io/csv2 wao-business/src/main/java/fr/ifremer/wao/service wao-business/src/main/resources/i18n wao-ui/src/main/java/fr/ifremer/wao/ui/pages wao-ui/src/main/resources/fr/ifremer/wao/ui/components wao-ui/src/main/resources/i18n wao-ui/src/main/webapp
by bleny@users.labs.libre-entreprise.org 05 Apr '11
by bleny@users.labs.libre-entreprise.org 05 Apr '11
05 Apr '11
Author: bleny
Date: 2011-04-05 15:45:38 +0000 (Tue, 05 Apr 2011)
New Revision: 1141
Log:
add sample row form in obsdeb sampling plan
Modified:
trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Export.java
trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Import.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.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-ui/src/main/java/fr/ifremer/wao/ui/pages/ObsDebSamplingPlan.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/SamplingFilterComponent.tml
trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties
trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties
trunk/wao-ui/src/main/webapp/ObsDebSamplingPlan.tml
trunk/wao-ui/src/main/webapp/SampleRowForm.tml
trunk/wao-ui/src/main/webapp/SamplingPlan.tml
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Export.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Export.java 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Export.java 2011-04-05 15:45:38 UTC (rev 1141)
@@ -70,6 +70,8 @@
boolean valueNeedQuotes = formattedValue.contains(separator)
|| formattedValue.contains("\n");
if (valueNeedQuotes) {
+ // escape '"' char to prevent
+ formattedValue = formattedValue.replaceAll("\"", "\"\"");
formattedValue = "\"" + formattedValue + "\"";
}
csv.append(formattedValue).append(separator);
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Import.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Import.java 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Import.java 2011-04-05 15:45:38 UTC (rev 1141)
@@ -25,6 +25,7 @@
import fr.ifremer.wao.bean.ValidationResult;
import fr.ifremer.wao.bean.ValidationResultImpl;
import org.nuiton.util.StringUtil;
+import org.nuiton.util.TimeLog;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -46,6 +47,8 @@
private static final Logger log = LoggerFactory.getLogger(Import.class);
+ private static final TimeLog timeLog = new TimeLog(Import.class, 250, 1000);
+
protected ImportModel<E> model;
protected CsvReader reader;
@@ -163,12 +166,16 @@
public Iterator<E> startImport() throws IOException {
+ long startValidateCSV = timeLog.getTime();
+
ValidationResult validationResult = validateCsv();
if ( ! validationResult.isSuccess()) {
throw new IOException(validationResult.getMessage());
}
+ timeLog.log(startValidateCSV, "validate CSV", "done");
+
readFirstLine();
Iterator<E> result = new Iterator<E>() {
@@ -189,9 +196,15 @@
lineNumber += 1;
+ long time = timeLog.getTime();
+
E element = model.newEmptyInstance();
+ time = timeLog.log(time, "newEmptyInstance");
+
for (ImportableColumn field : getNonIgnoredHeaders()) {
+
+ time = timeLog.log(time, "readValue", "read value for field " + field.getHeaderName());
String value;
try {
value = reader.get(field.getHeaderName());
@@ -199,6 +212,7 @@
reader.close();
throw new RuntimeException(WaoUtils.translate(n_("csv.import.error.unableToReadField"), field.getHeaderName(), lineNumber), e);
}
+ time = timeLog.log(time, "readValue", "end read");
// contravariance ftw
Object parsedValue;
@@ -209,11 +223,15 @@
field.getHeaderName(), lineNumber), e);
}
+ time = timeLog.log(time, "parseValue");
+
try {
field.setValue(element, parsedValue);
} catch (Exception e) {
throw new RuntimeException(WaoUtils.translate(n_("csv.import.error.unableToSetValue"), parsedValue, element.toString(), lineNumber), e);
}
+
+ time = timeLog.log(time, "setValue");
}
lastElement = element;
@@ -224,6 +242,11 @@
reader.close();
throw new RuntimeException(WaoUtils.translate(n_("csv.import.error.unableToReadLine"), lineNumber + 1), e);
}
+
+ if (log.isTraceEnabled()) {
+ log.trace(timeLog.getCallCount().toString());
+ }
+
return lastElement;
}
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-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2011-04-05 15:45:38 UTC (rev 1141)
@@ -92,6 +92,7 @@
import org.nuiton.topia.persistence.TopiaEntity;
import org.nuiton.util.DateUtil;
import org.nuiton.util.StringUtil;
+import org.nuiton.util.TimeLog;
import org.nuiton.util.beans.Binder;
import org.nuiton.util.beans.BinderFactory;
import org.slf4j.Logger;
@@ -131,6 +132,8 @@
private static final Logger log =
LoggerFactory.getLogger(ServiceContactImpl.class);
+ private static final TimeLog timeLog = new TimeLog(ServiceContactImpl.class, 250, 1000);
+
private WaoContext context;
public void setContext(WaoContext context) {
@@ -841,11 +844,15 @@
protected boolean createOrUpdateContact(TopiaContext transaction, ConnectedUser connectedUser, Contact contact)
throws TopiaException, WaoBusinessException {
+ long contactUpdateWithValidationStartTime = timeLog.getTime();
+
ValidationResult contactValidationResult = executeValidateContact(transaction, contact);
if ( ! contactValidationResult.isSuccess()) {
throw new WaoBusinessException(contactValidationResult.getMessage());
}
+ long contactUpdateStartTime = timeLog.getTime();
+
ContactDAO dao = WaoDAOHelper.getContactDAO(transaction);
Contact contactFound = null;
if (contact.getTopiaId() != null) {
@@ -892,6 +899,12 @@
}
}
+ if (log.isTraceEnabled()) {
+ timeLog.log(contactUpdateWithValidationStartTime, "createOrUpdateContact with validation");
+ timeLog.log(contactUpdateStartTime, "createOrUpdateContact without validation");
+ log.trace("times for update contact : " + timeLog.getCallCount().toString());
+ }
+
return contactCanBeUpdated;
}
@@ -934,6 +947,8 @@
boolean useNewMethod = true;
if (useNewMethod) {
+ long initImportStart = timeLog.getTime();
+
// Some DAO
WaoUserDAO waoUserDAO = WaoDAOHelper.getWaoUserDAO(transaction);
TerrestrialLocationDAO terrestrialLocationDAO = WaoDAOHelper.getTerrestrialLocationDAO(transaction);
@@ -958,16 +973,24 @@
try {
Iterator<Contact> contactIterator = contactImport.startImport();
+
+ long importStart = timeLog.log(initImportStart, "init contact import");
+
while (contactIterator.hasNext()) {
Contact contact;
+ long contactStart = timeLog.getTime();
+
+ long contactRead;
try {
contact = contactIterator.next();
+ contactRead = timeLog.log(contactStart, "contact read");
} catch (RuntimeException e) {
throw new WaoBusinessException(e.getMessage() + " " + e.getCause().getMessage());
}
boolean contactUpdated = createOrUpdateContact(transaction, user, contact);
+ timeLog.log(contactRead, "contact database update");
if (contactUpdated) {
result.incNbImported();
@@ -975,6 +998,13 @@
result.incNbRefused();
}
}
+
+ timeLog.log(importStart, "contact import");
+
+ if (log.isTraceEnabled()) {
+ log.trace("times for import contacts " + timeLog.getCallCount().toString());
+ }
+
transaction.commitTransaction();
} catch (WaoBusinessException e) {
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2011-04-05 15:45:38 UTC (rev 1141)
@@ -99,6 +99,7 @@
import org.nuiton.util.DateUtil;
import org.nuiton.util.PeriodDates;
import org.nuiton.util.StringUtil;
+import org.nuiton.util.TimeLog;
import org.nuiton.util.beans.Binder;
import org.nuiton.util.beans.BinderModelBuilder;
import org.slf4j.Logger;
@@ -134,6 +135,8 @@
private static final Logger log =
LoggerFactory.getLogger(ServiceSamplingImpl.class);
+ private static final TimeLog timeLog = new TimeLog(ServiceSamplingImpl.class, 250, 1000);
+
private WaoContext context;
public void setContext(WaoContext context) {
@@ -639,6 +642,11 @@
// load specific field
result.getTerrestrialLocation();
}
+
+ if (result.getObsProgram() == ObsProgram.OBSDEB) {
+ result.sizeObservers();
+ result.getObservationUnit();
+ }
}
return result;
@@ -995,12 +1003,21 @@
while (it.hasNext()) {
SampleRow sampleRow = null;
try {
+
+ long startReadLine = timeLog.getTime();
+
sampleRow = it.next();
sampleRow.clearSampleMonth();
+ long startUpdateDatabase = timeLog.log(startReadLine, "end read csv line");
+
SampleRowLog sampleRowLog = executeGetNewSampleRowLog(sampleRow, connectedUser);
executeCreateUpdateSampleRow(transaction, sampleRow, new ArrayList<Boat>(), sampleRowLog);
result.incNbImported();
+
+ timeLog.log(startUpdateDatabase, "end update database");
+ timeLog.log(startReadLine, "import one line");
+
} catch (Exception e) {
errorArgs.add(-1);
errorArgs.add(sampleRow == null ? "" : sampleRow.getCode());
@@ -1011,6 +1028,11 @@
}
transaction.commitTransaction();
+
+ if (log.isTraceEnabled()) {
+ log.trace("times for import sample rows " + timeLog.getCallCount().toString());
+ }
+
} finally {
IOUtils.closeQuietly(input);
}
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-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties 2011-04-05 15:45:38 UTC (rev 1141)
@@ -173,6 +173,7 @@
wao.error.serviceNews.getNews=
wao.error.serviceNews.saveNews=
wao.error.serviceReferential.getAllContactStateMotifs=
+wao.error.serviceReferential.getAllObservationUnits=
wao.error.serviceReferential.getAllTerrestrialDistricts=
wao.error.serviceReferential.getAllTerrestrialLocations=
wao.error.serviceReferential.getCodesDCF5Contains=
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-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties 2011-04-05 15:45:38 UTC (rev 1141)
@@ -173,6 +173,7 @@
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.getAllContactStateMotifs=
+wao.error.serviceReferential.getAllObservationUnits=
wao.error.serviceReferential.getAllTerrestrialDistricts=
wao.error.serviceReferential.getAllTerrestrialLocations=
wao.error.serviceReferential.getCodesDCF5Contains=
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ObsDebSamplingPlan.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ObsDebSamplingPlan.java 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ObsDebSamplingPlan.java 2011-04-05 15:45:38 UTC (rev 1141)
@@ -38,10 +38,12 @@
import fr.ifremer.wao.ui.services.SampleRowModelFactory;
import org.apache.tapestry5.ComponentResources;
import org.apache.tapestry5.StreamResponse;
+import org.apache.tapestry5.annotations.InjectComponent;
import org.apache.tapestry5.annotations.Persist;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.annotations.SessionState;
import org.apache.tapestry5.beaneditor.BeanModel;
+import org.apache.tapestry5.corelib.components.Zone;
import org.apache.tapestry5.grid.GridDataSource;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.apache.tapestry5.services.BeanModelSource;
@@ -69,6 +71,45 @@
@Property
private ConnectedUser connectedUser;
+ /********* Page layout ***********/
+
+ @Persist
+ private Boolean showFilters;
+
+ @InjectComponent
+ private Zone filtersZone;
+
+ @Persist
+ private Boolean showImportExport;
+
+ @InjectComponent
+ private Zone importExportZone;
+
+ public boolean getShowFilters() {
+ if (showFilters == null) {
+ showFilters = getFilterManager().getFilter().isPeriodFilteredOnly();
+ }
+ return showFilters;
+ }
+
+ public boolean getShowImportExport() {
+ if (showImportExport == null) {
+ showImportExport = false;
+ }
+ return showImportExport;
+ }
+
+ public Zone onActionFromShowFilters() {
+ showFilters = ! getShowFilters();
+ return filtersZone;
+ }
+
+ public Zone onActionFromShowImportExport() {
+ showImportExport = ! getShowImportExport();
+ return importExportZone;
+ }
+
+
/********* FILTERS ********/
@Persist
@@ -105,6 +146,13 @@
return obsdebSamplingPlanModel;
}
+ /************ ACTIONS ***************/
+
+ public boolean canEditSampleRow() {
+ boolean canEditSampleRow = connectedUser.isAdmin() || connectedUser.isCoordinator();
+ return canEditSampleRow;
+ }
+
/********** IMPORT / EXPORT *********/
public ImportEngine getSamplingPlanImportEngine() {
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java 2011-04-05 15:45:38 UTC (rev 1141)
@@ -43,7 +43,9 @@
import fr.ifremer.wao.entity.SampleRow;
import fr.ifremer.wao.entity.SampleRowLog;
import fr.ifremer.wao.entity.TargetSpeciesDCF;
+import fr.ifremer.wao.entity.TerrestrialDivision;
import fr.ifremer.wao.entity.TerrestrialLocation;
+import fr.ifremer.wao.entity.WaoUser;
import fr.ifremer.wao.service.ServiceBoat;
import fr.ifremer.wao.service.ServiceReferential;
import fr.ifremer.wao.service.ServiceSampling;
@@ -55,6 +57,7 @@
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.iterators.ArrayListIterator;
import org.apache.commons.lang.StringUtils;
+import org.apache.tapestry5.Block;
import org.apache.tapestry5.ComponentResources;
import org.apache.tapestry5.EventContext;
import org.apache.tapestry5.Field;
@@ -185,6 +188,23 @@
return user.getProfile().getObsProgram() == ObsProgram.OBSVENTE;
}
+ @Inject
+ private Block obsDebBlock;
+
+ @Inject
+ private Block obsMerVenteBlock;
+
+ public Block getProgramBlock() {
+ Block block;
+ // what we show depends on the program
+ if (ObsProgram.OBSDEB.equals(sampleRow.getObsProgram())) {
+ block = obsDebBlock;
+ } else {
+ // form suitable for both ObsMer and ObsVente
+ block = obsMerVenteBlock;
+ }
+ return block;
+ }
/*************************** PROFESSION ***********************************/
/** Select model which contains all professions **/
@@ -530,6 +550,18 @@
}
}
+ /************** OBSDEB ***********/
+
+ public List<WaoUser> getObservers() {
+ List<WaoUser> observers = serviceUser.getObservers(user.getCompany(), true);
+ return observers;
+ }
+
+ public List<TerrestrialDivision> getObservationUnits() {
+ List<TerrestrialDivision> observationUnits = serviceReferential.getAllObservationUnits();
+ return observationUnits;
+ }
+
/*************************** SAMPLE ROW ***********************************/
private String sampleRowId;
Modified: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/SamplingFilterComponent.tml
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/SamplingFilterComponent.tml 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/SamplingFilterComponent.tml 2011-04-05 15:45:38 UTC (rev 1141)
@@ -50,7 +50,7 @@
<t:if test="filterManager.user.obsDeb">
<!-- filter fields only for obsdeb-->
<div>
- <label for="observationUnit">${message:wao.ui.entity.SampleRow.observationUnit}</label>
+ <label for="observationUnit">${message:wao.ui.field.SampleRow.observationUnit}</label>
<t:topiaEntitySelector t:id="observationUnit"
t:clazzName="TerrestrialDivision"
t:labelPropertyName="description"
Modified: trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties
===================================================================
--- trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-04-05 15:45:38 UTC (rev 1141)
@@ -64,7 +64,7 @@
wao.ui.entity.Contact=Contact
wao.ui.entity.FishingZone=Fishing zones
wao.ui.entity.SampleRow=Sample row
-wao.ui.entity.SampleRow.observationUnit=Observation unit
+wao.ui.entity.SampleRow.day=
wao.ui.entity.TerrestrialLocation=Place
wao.ui.entity.fishingGearDCF=Gear DCF code
wao.ui.entity.targetSpeciesDCF=Target species DCF code
Modified: trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties
===================================================================
--- trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-04-05 15:45:38 UTC (rev 1141)
@@ -1,204 +1,204 @@
wao.ui.action.acceptContact=Valider le contact
wao.ui.action.add=Ajouter
-wao.ui.action.addNewContactFromBoat=Cr\u00e9er un nouveau contact pour ce navire et la ligne s\u00e9lectionn\u00e9e dans les filtres
-wao.ui.action.back=Revenier \u00e0 l'\u00e9cran pr\u00e9c\u00e9dent
+wao.ui.action.addNewContactFromBoat=Cr\u00E9er un nouveau contact pour ce navire et la ligne s\u00E9lectionn\u00E9e dans les filtres
+wao.ui.action.back=Revenier \u00E0 l'\u00E9cran pr\u00E9c\u00E9dent
wao.ui.action.cancel=Annuler
wao.ui.action.changeLocale=Changer de langue
wao.ui.action.contactAdmin=Contacter un responsable ObsMer
-wao.ui.action.create=Cr\u00e9er
-wao.ui.action.createCompany=Cr\u00e9er une soci\u00e9t\u00e9
-wao.ui.action.createUser=Cr\u00e9er un utilisateur
+wao.ui.action.create=Cr\u00E9er
+wao.ui.action.createCompany=Cr\u00E9er une soci\u00E9t\u00E9
+wao.ui.action.createUser=Cr\u00E9er un utilisateur
wao.ui.action.delete=Supprimer
-wao.ui.action.deleteCompany=Supprimer la soci\u00e9t\u00e9
-wao.ui.action.deleteCompany.confirm=\u00cates-vous s\u00fbr de vouloir supprimer la soci\u00e9t\u00e9 ?
+wao.ui.action.deleteCompany=Supprimer la soci\u00E9t\u00E9
+wao.ui.action.deleteCompany.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer la soci\u00E9t\u00E9 ?
wao.ui.action.deleteContact=Supprimer le contact
-wao.ui.action.deleteContact.confirm=\u00cates-vous s\u00fbr de vouloir supprimer d\u00e9finitivement ce contact ?
+wao.ui.action.deleteContact.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer d\u00E9finitivement ce contact ?
wao.ui.action.deleteNews=Supprimer la nouvelle
-wao.ui.action.deleteNews.confirm=\u00cates-vous s\u00fbr de vouloir supprimer d\u00e9finitivement cette nouvelle ?
+wao.ui.action.deleteNews.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer d\u00E9finitivement cette nouvelle ?
wao.ui.action.deleteSampleRow=Supprimer la ligne du plan
-wao.ui.action.deleteSampleRow.confirm=\u00cates-vous s\u00fbr de vouloir supprimer la ligne %s du plan ?
+wao.ui.action.deleteSampleRow.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer la ligne %s du plan ?
wao.ui.action.deleteUser=Supprimer l'utilisateur
-wao.ui.action.deleteUser.confirm=\u00cates-vous s\u00fbr de vouloir supprimer l'utilisateur ?
+wao.ui.action.deleteUser.confirm=\u00CAtes-vous s\u00FBr de vouloir supprimer l'utilisateur ?
wao.ui.action.edit=Modifier
wao.ui.action.enlargeView=Agrandir la vue
-wao.ui.action.exportBoats=Exporter les $s navires avec leurs informations priv\u00e9es
+wao.ui.action.exportBoats=Exporter les $s navires avec leurs informations priv\u00E9es
wao.ui.action.filter=Filtrer
wao.ui.action.hideFilters=Masquer les filtres
wao.ui.action.login=Connexion
-wao.ui.action.logout=D\u00e9connexion
-wao.ui.action.reduceView=R\u00e9duire la vue
-wao.ui.action.refresh=Rafra\u00eechir
+wao.ui.action.logout=D\u00E9connexion
+wao.ui.action.reduceView=R\u00E9duire la vue
+wao.ui.action.refresh=Rafra\u00EEchir
wao.ui.action.refuseContact=Refuser le contact
wao.ui.action.remove=Retirer
-wao.ui.action.resetFields=Remettre le formulaire \u00e0 z\u00e9ro
+wao.ui.action.resetFields=Remettre le formulaire \u00E0 z\u00E9ro
wao.ui.action.revert=Annuler
wao.ui.action.runExport=Lancer l'export
wao.ui.action.runImport=Lancer l'import
wao.ui.action.runSearch=Lancer la recherche
wao.ui.action.save=Enregistrer
-wao.ui.action.showDetails=Voir les d\u00e9tails
+wao.ui.action.showDetails=Voir les d\u00E9tails
wao.ui.action.showFilters=Afficher les filtres
wao.ui.action.unvalidateContact=Invalider le contact
wao.ui.action.viewIndicatorsHistory=Voir l'historique des modifications des indicateurs
wao.ui.boatList=Liste de %s navires
wao.ui.boatinfo.title=Informations sur %s
-wao.ui.boats.associatedLine=Ligne(s) du plan associ\u00e9e(s) \u00e0 ce navire
-wao.ui.boats.nbObservations=%s observation(s) dont %s avec votre soci\u00e9t\u00e9
-wao.ui.cartography.help=Cliquez sur les graphiques pour avoir le d\u00e9tail.
-wao.ui.cartography.title=R\u00e9partition des contacts par quartier des navires
-wao.ui.cartography.title.company=R\u00e9partition des contacts par quartier des navires pour la soci\u00e9t\u00e9 %s
+wao.ui.boats.associatedLine=Ligne(s) du plan associ\u00E9e(s) \u00E0 ce navire
+wao.ui.boats.nbObservations=%s observation(s) dont %s avec votre soci\u00E9t\u00E9
+wao.ui.cartography.help=Cliquez sur les graphiques pour avoir le d\u00E9tail.
+wao.ui.cartography.title=R\u00E9partition des contacts par quartier des navires
+wao.ui.cartography.title.company=R\u00E9partition des contacts par quartier des navires pour la soci\u00E9t\u00E9 %s
wao.ui.chart.boardingsSince=Nombre de sollicitations depuis le %s
wao.ui.chart.numberBoats=Nb navires
wao.ui.chart.numberObservations=Nb observations
wao.ui.chart.numberOfBoatsWithBoardings=Nombre de navires avec x embarquements
-wao.ui.contact.lastContact=Derni\u00e8re observation concernant ce navire pour votre soci\u00e9t\u00e9 (tous programmes confondus)
-wao.ui.contacts.createFromBoat=Cr\u00e9er un nouveau contact pour ce navire et cette ligne du plan
-wao.ui.contacts.createFromBoat.fail=Cr\u00e9ation d'un nouveau contact impossible
-wao.ui.contacts.createFromBoat.warn=Attention \: cette ligne du plan est arriv\u00e9e \u00e0 \u00e9ch\u00e9ance, \u00eates-vous s\u00fbr de vouloir cr\u00e9er un nouveau contact ?
-wao.ui.disclaimer=Le site de \u00ab SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER \u00bb a fait l'objet d'une d\u00e9claration \u00e0 la CNIL sous le num\u00e9ro suivant \: 1414476
-wao.ui.disclaimer.boats=Les donn\u00e9es saisies dans cette page sont la propri\u00e9t\u00e9 exclusive de la soci\u00e9t\u00e9. En dehors de la soci\u00e9t\u00e9, seul l'administrateur peut les consulter pour des questions de maintenance sur le site. L'administrateur est une personne de l'Ifremer.
+wao.ui.contact.lastContact=Derni\u00E8re observation concernant ce navire pour votre soci\u00E9t\u00E9 (tous programmes confondus)
+wao.ui.contacts.createFromBoat=Cr\u00E9er un nouveau contact pour ce navire et cette ligne du plan
+wao.ui.contacts.createFromBoat.fail=Cr\u00E9ation d'un nouveau contact impossible
+wao.ui.contacts.createFromBoat.warn=Attention \: cette ligne du plan est arriv\u00E9e \u00E0 \u00E9ch\u00E9ance, \u00EAtes-vous s\u00FBr de vouloir cr\u00E9er un nouveau contact ?
+wao.ui.disclaimer=Le site de \u00AB SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER \u00BB a fait l'objet d'une d\u00E9claration \u00E0 la CNIL sous le num\u00E9ro suivant \: 1414476
+wao.ui.disclaimer.boats=Les donn\u00E9es saisies dans cette page sont la propri\u00E9t\u00E9 exclusive de la soci\u00E9t\u00E9. En dehors de la soci\u00E9t\u00E9, seul l'administrateur peut les consulter pour des questions de maintenance sur le site. L'administrateur est une personne de l'Ifremer.
wao.ui.email=Adresse e-mail
wao.ui.entity.Boat=Navire
wao.ui.entity.Boats=Navires
-wao.ui.entity.Company=Soci\u00e9t\u00e9
+wao.ui.entity.Company=Soci\u00E9t\u00E9
wao.ui.entity.Contact=Contact
-wao.ui.entity.FishingZone=Zones de p\u00eache
-wao.ui.entity.SampleRow=Ligne du plan d'\u00e9chantillonnage
-wao.ui.entity.SampleRow.observationUnit=Unit\u00e9 d'observation
+wao.ui.entity.FishingZone=Zones de p\u00EAche
+wao.ui.entity.SampleRow=Ligne du plan d'\u00E9chantillonnage
+wao.ui.entity.SampleRow.day=
wao.ui.entity.TerrestrialLocation=Lieu
wao.ui.entity.fishingGearDCF=Engin code DCF
-wao.ui.entity.targetSpeciesDCF=Ensembles d'esp\u00e8ces-cible code DCF
+wao.ui.entity.targetSpeciesDCF=Ensembles d'esp\u00E8ces-cible code DCF
wao.ui.field.Boat.boatLength=Longueur
-wao.ui.field.Boat.buildYear=Ann\u00e9e de construction
+wao.ui.field.Boat.buildYear=Ann\u00E9e de construction
wao.ui.field.Boat.districtCode=Quartier
wao.ui.field.Boat.immatriculation=Immatriculation
wao.ui.field.Boat.name=Nom
wao.ui.field.Boat.shipOwner=Armateur
wao.ui.field.BoatDistrict.code=Code quartier
-wao.ui.field.BoatInfos.dup=Capacit\u00e9 d'accueil du navire en personnels sp\u00e9cialis\u00e9s
+wao.ui.field.BoatInfos.dup=Capacit\u00E9 d'accueil du navire en personnels sp\u00E9cialis\u00E9s
wao.ui.field.Company.active=Active
wao.ui.field.Company.name=Nom
-wao.ui.field.Contact.beginDate=D\u00e9but d'observation
+wao.ui.field.Contact.beginDate=D\u00E9but d'observation
wao.ui.field.Contact.comment=Commentaire observateur
wao.ui.field.Contact.commentAdmin=Commentaire programme
wao.ui.field.Contact.commentCoordinator=Commentaire coordinateur
-wao.ui.field.Contact.completeSampling=\u00c9chantillonnage complet
-wao.ui.field.Contact.contactState=\u00c9tat du contact
+wao.ui.field.Contact.completeSampling=\u00C9chantillonnage complet
+wao.ui.field.Contact.contactState=\u00C9tat du contact
wao.ui.field.Contact.contactStateMotif=Motif du refus
wao.ui.field.Contact.contactStateMotifs=Motifs de refus
-wao.ui.field.Contact.creationDate=Date de cr\u00e9ation du contact
-wao.ui.field.Contact.dataInputDate=Saisie des donn\u00e9es dans Allegro
-wao.ui.field.Contact.dataReliability=Qualit\u00e9 des donn\u00e9es
+wao.ui.field.Contact.creationDate=Date de cr\u00E9ation du contact
+wao.ui.field.Contact.dataInputDate=Saisie des donn\u00E9es dans Allegro
+wao.ui.field.Contact.dataReliability=Qualit\u00E9 des donn\u00E9es
wao.ui.field.Contact.endDate=Fin d'observation
-wao.ui.field.Contact.mainObserver=Observateur r\u00e9f\u00e9rent
+wao.ui.field.Contact.mainObserver=Observateur r\u00E9f\u00E9rent
wao.ui.field.Contact.mammalsCapture=Capture accidentelle
-wao.ui.field.Contact.mammalsInfo=Noms scientifiques et nombres d'individus des esp\u00e8ces captur\u00e9es
+wao.ui.field.Contact.mammalsInfo=Noms scientifiques et nombres d'individus des esp\u00E8ces captur\u00E9es
wao.ui.field.Contact.mammalsObservation=Observation exceptionnelle
wao.ui.field.Contact.nbObservants=Nombre d'observateurs
-wao.ui.field.Contact.samplingStrategy=Strat\u00e9gie d'\u00e9chantillonnage suivie
+wao.ui.field.Contact.samplingStrategy=Strat\u00E9gie d'\u00E9chantillonnage suivie
wao.ui.field.Contact.secondaryObservers=Observateurs
wao.ui.field.Contact.terrestrialLocation=Lieu d'observation
-wao.ui.field.Contact.validationCompany=Validation soci\u00e9t\u00e9
+wao.ui.field.Contact.validationCompany=Validation soci\u00E9t\u00E9
wao.ui.field.Contact.validationProgram=Validation programme
-wao.ui.field.FishingZone.facadeName=Fa\u00e7ade
+wao.ui.field.FishingZone.facadeName=Fa\u00E7ade
wao.ui.field.FishingZone.sectorName=Zone
wao.ui.field.SampleRow.code=Code ligne
wao.ui.field.SampleRow.comment=Commentaire
wao.ui.field.SampleRow.dCF5Code=Codes
wao.ui.field.SampleRow.day=Jour
wao.ui.field.SampleRow.dcf5Code=Code DCF Niv. 5
-wao.ui.field.SampleRow.fishingZones=Zone(s) de p\u00eache
-wao.ui.field.SampleRow.libelle=Libell\u00e9
+wao.ui.field.SampleRow.fishingZones=Zone(s) de p\u00EAche
+wao.ui.field.SampleRow.libelle=Libell\u00E9
wao.ui.field.SampleRow.meshSize=Maillage
-wao.ui.field.SampleRow.observationUnit=Unit\u00e9 d'observation
+wao.ui.field.SampleRow.observationUnit=Unit\u00E9 d'observation
wao.ui.field.SampleRow.observers=Observateurs
wao.ui.field.SampleRow.other=Autre
-wao.ui.field.SampleRow.periodBegin=D\u00e9but
+wao.ui.field.SampleRow.periodBegin=D\u00E9but
wao.ui.field.SampleRow.periodEnd=Fin
-wao.ui.field.SampleRow.profession=M\u00e9tier
-wao.ui.field.SampleRow.professionCode=Code m\u00e9tier
+wao.ui.field.SampleRow.profession=M\u00E9tier
+wao.ui.field.SampleRow.professionCode=Code m\u00E9tier
wao.ui.field.SampleRow.programName=Programme
-wao.ui.field.SampleRow.samplingStrategy=Strat\u00e9gie d'\u00e9chantillonnage
+wao.ui.field.SampleRow.samplingStrategy=Strat\u00E9gie d'\u00E9chantillonnage
wao.ui.field.SampleRow.size=Taille du navire
-wao.ui.field.SampleRow.species=Esp\u00e8ces cibles
+wao.ui.field.SampleRow.species=Esp\u00E8ces cibles
wao.ui.field.SampleRow.terrestrialLocation=Quartier maritime
wao.ui.field.SampleRow.terrestrialLocationInfos=Autre(s) info(s)
-wao.ui.field.User.firstName=Pr\u00e9nom
+wao.ui.field.User.firstName=Pr\u00E9nom
wao.ui.field.User.lastName=Nom
wao.ui.field.User.login=Identifiant
-wao.ui.field.UserProfile.userRole=R\u00f4le
+wao.ui.field.UserProfile.userRole=R\u00F4le
wao.ui.field.WaoUser.login=Identifiant
wao.ui.field.WaoUser.mammalsNotifications=Recevoir les notifications de captures accidentelles
wao.ui.field.WaoUser.password=Mot de passe
wao.ui.filters.filters=Filtres de recherche
-wao.ui.filters.refresh=Rafra\u00eechir les champs du filtre
-wao.ui.forgotPassword=Mot de passe oubli\u00e9 ?
-wao.ui.form.SampleRow.boatsDescription=Ce champs correspond aux immatriculations des navires qui sont \u00e9ligibles pour cette ligne. Vous pouvez utiliser n'importe quel s\u00e9parateur pour s\u00e9parer les immatriculations (virgule, point, espace ou saut de ligne)
-wao.ui.form.SampleRow.missingBeginDate=Date de d\u00e9but manquante pour g\u00e9n\u00e9rer le code de la ligne \!
-wao.ui.form.SampleRow.others=Autres donn\u00e9es de la ligne d'\u00e9chantillonnage
+wao.ui.filters.refresh=Rafra\u00EEchir les champs du filtre
+wao.ui.forgotPassword=Mot de passe oubli\u00E9 ?
+wao.ui.form.SampleRow.boatsDescription=Ce champs correspond aux immatriculations des navires qui sont \u00E9ligibles pour cette ligne. Vous pouvez utiliser n'importe quel s\u00E9parateur pour s\u00E9parer les immatriculations (virgule, point, espace ou saut de ligne)
+wao.ui.form.SampleRow.missingBeginDate=Date de d\u00E9but manquante pour g\u00E9n\u00E9rer le code de la ligne \!
+wao.ui.form.SampleRow.others=Autres donn\u00E9es de la ligne d'\u00E9chantillonnage
wao.ui.form.SampleRow.program=Programme de rattachement et effort d'observation par mois
wao.ui.form.addComment=Ajouter un commentaire
-wao.ui.form.addRole=Ajouter ce r\u00f4le
+wao.ui.form.addRole=Ajouter ce r\u00F4le
wao.ui.form.boardingFrom=Sollicitations du navire depuis le
wao.ui.form.contactsFile=Fichier des contacts
-wao.ui.form.definePasswordManually=d\u00e9finir manuellement
+wao.ui.form.definePasswordManually=d\u00E9finir manuellement
wao.ui.form.editComment=Commentaire sur la modification
wao.ui.form.editionAuthor=Auteur de la modification
-wao.ui.form.estimatedTides=Voir l'effort d'observations estim\u00e9
-wao.ui.form.estimatedTides.description=L'effort d'observations estim\u00e9 \u00e9quivaut au nombre de contacts valid\u00e9s ou non par la soci\u00e9t\u00e9. Les contacts refus\u00e9s par le programme ne sont pas pris en compte.
-wao.ui.form.generatePassword=G\u00e9n\u00e9rer le mot de passe
+wao.ui.form.estimatedTides=Voir l'effort d'observations estim\u00E9
+wao.ui.form.estimatedTides.description=L'effort d'observations estim\u00E9 \u00E9quivaut au nombre de contacts valid\u00E9s ou non par la soci\u00E9t\u00E9. Les contacts refus\u00E9s par le programme ne sont pas pris en compte.
+wao.ui.form.generatePassword=G\u00E9n\u00E9rer le mot de passe
wao.ui.form.otherBoatInfos=Autres informations sur le navire
-wao.ui.form.period=P\u00e9riode
+wao.ui.form.period=P\u00E9riode
wao.ui.form.period.from=du
wao.ui.form.period.to=au
-wao.ui.form.periodFrom=P\u00e9riode du
-wao.ui.form.periodFromTo=P\u00e9riode du %s au %s
+wao.ui.form.periodFrom=P\u00E9riode du
+wao.ui.form.periodFromTo=P\u00E9riode du %s au %s
wao.ui.form.program=Programme
-wao.ui.form.programEvaluation=\u00c9valuation programme
+wao.ui.form.programEvaluation=\u00C9valuation programme
wao.ui.form.readOnly=lecture seule
wao.ui.form.removeRole=retirer ce role
-wao.ui.form.repeatPassword=R\u00e9p\u00e9ter le mot de passe
-wao.ui.form.roles=R\u00f4les
-wao.ui.form.sortByTideBegin=Trier par date de d\u00e9but d'observation (du plus r\u00e9cent au plus ancien)
-wao.ui.import.activityCalendarImportLabel=de l'import des calendriers d'activit\u00e9
-wao.ui.import.activityCalendarImportRunning=Import des calendriers d'activit\u00e9 en cours. Vous pouvez continuer \u00e0 naviguer sur le site en attendant la fin du chargement.
-wao.ui.import.activityCalendarLabel=des calendriers d'activit\u00e9
-wao.ui.import.activityCalendarUserAccessesLabel=des acc\u00e8s utilisateurs aux calendriers d'activit\u00e9
-wao.ui.import.boatDistrictLabel=des coordonn\u00e9es des quartiers des navires
+wao.ui.form.repeatPassword=R\u00E9p\u00E9ter le mot de passe
+wao.ui.form.roles=R\u00F4les
+wao.ui.form.sortByTideBegin=Trier par date de d\u00E9but d'observation (du plus r\u00E9cent au plus ancien)
+wao.ui.import.activityCalendarImportLabel=de l'import des calendriers d'activit\u00E9
+wao.ui.import.activityCalendarImportRunning=Import des calendriers d'activit\u00E9 en cours. Vous pouvez continuer \u00E0 naviguer sur le site en attendant la fin du chargement.
+wao.ui.import.activityCalendarLabel=des calendriers d'activit\u00E9
+wao.ui.import.activityCalendarUserAccessesLabel=des acc\u00E8s utilisateurs aux calendriers d'activit\u00E9
+wao.ui.import.boatDistrictLabel=des coordonn\u00E9es des quartiers des navires
wao.ui.import.boatsLabel=des navires
wao.ui.import.description=Fichier %s %s \:
-wao.ui.import.fishingZoneLabel=des zones de p\u00eaches
+wao.ui.import.fishingZoneLabel=des zones de p\u00EAches
wao.ui.import.fullDescription=Import %s (format %s avec encodage UTF-8)
wao.ui.import.longTitle=Import/Export CSV (UTF-8)
-wao.ui.import.samplingPlanLabel=du plan d'\u00e9chantillonnage
-wao.ui.import.terrestrialDivisionsLabel=du r\u00e9f\u00e9rentiel de stratification spatiale (ObsDeb)
+wao.ui.import.samplingPlanLabel=du plan d'\u00E9chantillonnage
+wao.ui.import.terrestrialDivisionsLabel=du r\u00E9f\u00E9rentiel de stratification spatiale (ObsDeb)
wao.ui.import.terrestrialLocationsLabel=des lieux terrestres
wao.ui.import.title=Import %s
wao.ui.indicator.andMore=%s et plus
wao.ui.indicator.bounds=Bornes
-wao.ui.indicator.coefficient=Pond\u00e9ration
+wao.ui.indicator.coefficient=Pond\u00E9ration
wao.ui.indicator.editions=Modifications
wao.ui.indicator.indicator=Indicateur
-wao.ui.indicator.legend=En jaune, la position actuelle de la soci\u00e9t\u00e9 selon cet indicateur.
+wao.ui.indicator.legend=En jaune, la position actuelle de la soci\u00E9t\u00E9 selon cet indicateur.
wao.ui.indicator.levels=Niveaux
-wao.ui.indicator.useRightDecimalSymbol=Attention \u00e0 bien utiliser ',' et non '.' pour les d\u00e9cimales
+wao.ui.indicator.useRightDecimalSymbol=Attention \u00E0 bien utiliser ',' et non '.' pour les d\u00E9cimales
wao.ui.indicators.coefficientsSum=Total coefficient
-wao.ui.indicators.title=Indicateurs qualit\u00e9s prestataires
+wao.ui.indicators.title=Indicateurs qualit\u00E9s prestataires
wao.ui.invalidLogin=Identifiant invalide
-wao.ui.layout.userDescription=Vous \u00eates %s de la soci\u00e9t\u00e9 %s (%s)
+wao.ui.layout.userDescription=Vous \u00EAtes %s de la soci\u00E9t\u00E9 %s (%s)
wao.ui.message.chooseProfile=Choisissez dans la liste votre profil de connexion \:
-wao.ui.misc.METIER=M\u00c9TIER
-wao.ui.misc.N/A=non renseign\u00e9e
-wao.ui.misc.accepted=Accept\u00e9
-wao.ui.misc.advancedSearch=Recherche avanc\u00e9e
+wao.ui.misc.METIER=M\u00C9TIER
+wao.ui.misc.N/A=non renseign\u00E9e
+wao.ui.misc.accepted=Accept\u00E9
+wao.ui.misc.advancedSearch=Recherche avanc\u00E9e
wao.ui.misc.by=par
wao.ui.misc.changeOn=Modification du
wao.ui.misc.comment=Commentaire
-wao.ui.misc.commentAddedOn=Commentaire ajout\u00e9 le
+wao.ui.misc.commentAddedOn=Commentaire ajout\u00E9 le
wao.ui.misc.comments=Commentaires
-wao.ui.misc.companies=Soci\u00e9t\u00e9s
-wao.ui.misc.createdOnF=Cr\u00e9\u00e9e le
-wao.ui.misc.creating=En cours de cr\u00e9ation
+wao.ui.misc.companies=Soci\u00E9t\u00E9s
+wao.ui.misc.createdOnF=Cr\u00E9\u00E9e le
+wao.ui.misc.creating=En cours de cr\u00E9ation
wao.ui.misc.export=Export
wao.ui.misc.export.longTitle=Export CSV
wao.ui.misc.import-export=Import/export
@@ -208,7 +208,7 @@
wao.ui.misc.logFile.description=Afficher le fichier de log de %s
wao.ui.misc.no=Non
wao.ui.misc.noComment=aucun commentaire
-wao.ui.misc.notValidated=Non valid\u00e9
+wao.ui.misc.notValidated=Non valid\u00E9
wao.ui.misc.observationReport=Compte-rendu d'observation
wao.ui.misc.observations=Observations
wao.ui.misc.observer=Observateur
@@ -218,69 +218,69 @@
wao.ui.misc.other=Autre
wao.ui.misc.otherInfos=Autre information
wao.ui.misc.others=Autres
-wao.ui.misc.refused=R\u00e9fus\u00e9
+wao.ui.misc.refused=R\u00E9fus\u00E9
wao.ui.misc.since=depuis le
wao.ui.misc.total=Total
-wao.ui.misc.undefined=Non-d\u00e9fini
-wao.ui.misc.validated=Valid\u00e9
+wao.ui.misc.undefined=Non-d\u00E9fini
+wao.ui.misc.validated=Valid\u00E9
wao.ui.misc.yes=Oui
-wao.ui.nContactsFound=%s contacts trouv\u00e9s
+wao.ui.nContactsFound=%s contacts trouv\u00E9s
wao.ui.news.content=Texte
wao.ui.news.title=Titre
wao.ui.page.Administration.title=Administration
wao.ui.page.Boats.title=Navires
wao.ui.page.Cartography.title=Cartographie
-wao.ui.page.ContactForm.mammalsInfo.disclaimer=Attention, toutes les informations saisies seront transmises \u00e0 des personnels ext\u00e9rieurs, soyez riguoureux dans la description de la capture accidentelle
+wao.ui.page.ContactForm.mammalsInfo.disclaimer=Attention, toutes les informations saisies seront transmises \u00E0 des personnels ext\u00E9rieurs, soyez riguoureux dans la description de la capture accidentelle
wao.ui.page.ContactForm.title=Modification d'un contact
wao.ui.page.Contacts.title=Contacts
wao.ui.page.Index.title=Accueil
-wao.ui.page.SamplingPlan.title=Plan d'\u00e9chantillonnage
-wao.ui.page.Synthesis.title=Synth\u00e8se
+wao.ui.page.SamplingPlan.title=Plan d'\u00E9chantillonnage
+wao.ui.page.Synthesis.title=Synth\u00E8se
wao.ui.page.UserProfileForm.title=Gestion du profil
-wao.ui.publishedByProgram=Publi\u00e9e par le programme
-wao.ui.publishedByYourCompany=Publi\u00e9e par la soci\u00e9t\u00e9
-wao.ui.sampleRow.creation=Cr\u00e9ation d'une ligne du plan d'\u00e9chantillonnage
+wao.ui.publishedByProgram=Publi\u00E9e par le programme
+wao.ui.publishedByYourCompany=Publi\u00E9e par la soci\u00E9t\u00E9
+wao.ui.sampleRow.creation=Cr\u00E9ation d'une ligne du plan d'\u00E9chantillonnage
wao.ui.sampleRow.edition=Modification de la ligne %s
wao.ui.sampleRowLog.title=Historique de la ligne %s
wao.ui.samplingPlan.actions=Actions
-wao.ui.samplingPlan.actual=r\u00e9alis\u00e9
-wao.ui.samplingPlan.addSampleRow=Ajouter une ligne au plan d'\u00e9chantillonnage
-wao.ui.samplingPlan.averageTideTime=Dur\u00e9e moyenne d'une mar\u00e9e (J.)
-wao.ui.samplingPlan.effort=Effort d'observation en nombre de mar\u00e9es
-wao.ui.samplingPlan.estimated=estim\u00e9
-wao.ui.samplingPlan.expected=planifi\u00e9
-wao.ui.samplingPlan.export=Exporter le plan d'\u00e9chantillonnage du %s au %s
+wao.ui.samplingPlan.actual=r\u00E9alis\u00E9
+wao.ui.samplingPlan.addSampleRow=Ajouter une ligne au plan d'\u00E9chantillonnage
+wao.ui.samplingPlan.averageTideTime=Dur\u00E9e moyenne d'une mar\u00E9e (J.)
+wao.ui.samplingPlan.effort=Effort d'observation en nombre de mar\u00E9es
+wao.ui.samplingPlan.estimated=estim\u00E9
+wao.ui.samplingPlan.expected=planifi\u00E9
+wao.ui.samplingPlan.export=Exporter le plan d'\u00E9chantillonnage du %s au %s
wao.ui.samplingPlan.fishingZoneInfo=Zone autre(s) info(s)
wao.ui.samplingPlan.months=Mois
wao.ui.samplingPlan.nbObservants=Nb. d'observateurs
-wao.ui.samplingPlan.program=Programme ou r\u00e8glement rattachement
-wao.ui.samplingPlan.sampledProfessions=M\u00e9tiers \u00e9chantillonn\u00e9s
-wao.ui.samplingPlan.showActual=Afficher l'effort d'observations r\u00e9alis\u00e9 pour les contacts valid\u00e9s seulement
-wao.ui.samplingPlan.showExpected=Afficher l'effort d'observations estim\u00e9 pour les contacts valid\u00e9s ou non par la soci\u00e9t\u00e9
-wao.ui.samplingPlan.title=Plan d'\u00e9chantillonnage
-wao.ui.synthesis.allegroReactivity.description=Ce r\u00e9sultat est une moyenne du nombre de jours entre la date de saisie des donn\u00e9es et la date de fin d'observation.
-wao.ui.synthesis.allegroReactivity.title=R\u00e9activit\u00e9 quant \u00e0 la saisie des donn\u00e9es
+wao.ui.samplingPlan.program=Programme ou r\u00E8glement rattachement
+wao.ui.samplingPlan.sampledProfessions=M\u00E9tiers \u00E9chantillonn\u00E9s
+wao.ui.samplingPlan.showActual=Afficher l'effort d'observations r\u00E9alis\u00E9 pour les contacts valid\u00E9s seulement
+wao.ui.samplingPlan.showExpected=Afficher l'effort d'observations estim\u00E9 pour les contacts valid\u00E9s ou non par la soci\u00E9t\u00E9
+wao.ui.samplingPlan.title=Plan d'\u00E9chantillonnage
+wao.ui.synthesis.allegroReactivity.description=Ce r\u00E9sultat est une moyenne du nombre de jours entre la date de saisie des donn\u00E9es et la date de fin d'observation.
+wao.ui.synthesis.allegroReactivity.title=R\u00E9activit\u00E9 quant \u00E0 la saisie des donn\u00E9es
wao.ui.synthesis.boarding.boardingCount=Au total, %s observations invalides sur %s observations.
-wao.ui.synthesis.boarding.description=Ces r\u00e9sultats ne concernent que les lignes du plan d'\u00e9chantillonnage ayant une dur\u00e9e moyenne de mar\u00e9es inf\u00e9rieure ou \u00e9gale \u00e0 48h.
-wao.ui.synthesis.boarding.mostUsedBoat=Navire le plus sollicit\u00e9 avec %s observations (tous programmes confondus) \: %s (%s)
+wao.ui.synthesis.boarding.description=Ces r\u00E9sultats ne concernent que les lignes du plan d'\u00E9chantillonnage ayant une dur\u00E9e moyenne de mar\u00E9es inf\u00E9rieure ou \u00E9gale \u00E0 48h.
+wao.ui.synthesis.boarding.mostUsedBoat=Navire le plus sollicit\u00E9 avec %s observations (tous programmes confondus) \: %s (%s)
wao.ui.synthesis.boarding.title=Sollicitations des navires
-wao.ui.synthesis.complianceBoarding.description=Respect du nombre pr\u00e9vu d'observateurs pour chaque mar\u00e9e r\u00e9alis\u00e9e.
-wao.ui.synthesis.complianceBoarding.title=Respect du nombre d'observateurs embarqu\u00e9s
-wao.ui.synthesis.contactsStates.description=Ces r\u00e9sultats concernent l'ensemble des \u00e9tats des contacts except\u00e9 ceux qui ont \u00e9t\u00e9 refus\u00e9s par le programme.
-wao.ui.synthesis.contactsStates.title=\u00c9tats des contacts
-wao.ui.synthesis.dataReliability.description=Pourcentage du nombre de mar\u00e9es exploitables par rapport nombre de mar\u00e9e r\u00e9alis\u00e9es.
-wao.ui.synthesis.dataReliability.title=Qualit\u00e9 de la donn\u00e9e
-wao.ui.synthesis.dataSampling.title=Donn\u00e9es des mar\u00e9es (r\u00e9alis\u00e9 / planifi\u00e9)
-wao.ui.synthesis.globalSynthesis.globalResult=Bilan de la synth\u00e8se global
-wao.ui.synthesis.globalSynthesis.title=Synth\u00e8se globale
-wao.ui.synthesis.globalSynthesis.title.estimated=Synth\u00e8se globale (selon estimations)
-wao.ui.synthesis.log.description=Cette page pr\u00e9sente toutes les modifications effectu\u00e9es depuis l'origine qui portent sur les bornes de chaque niveaux ainsi que les coefficients de chaque indicateurs.
-wao.ui.synthesis.log.empty=Aucune modification n'a \u00e9t\u00e9 apport\u00e9e \u00e0 ce jour
+wao.ui.synthesis.complianceBoarding.description=Respect du nombre pr\u00E9vu d'observateurs pour chaque mar\u00E9e r\u00E9alis\u00E9e.
+wao.ui.synthesis.complianceBoarding.title=Respect du nombre d'observateurs embarqu\u00E9s
+wao.ui.synthesis.contactsStates.description=Ces r\u00E9sultats concernent l'ensemble des \u00E9tats des contacts except\u00E9 ceux qui ont \u00E9t\u00E9 refus\u00E9s par le programme.
+wao.ui.synthesis.contactsStates.title=\u00C9tats des contacts
+wao.ui.synthesis.dataReliability.description=Pourcentage du nombre de mar\u00E9es exploitables par rapport nombre de mar\u00E9e r\u00E9alis\u00E9es.
+wao.ui.synthesis.dataReliability.title=Qualit\u00E9 de la donn\u00E9e
+wao.ui.synthesis.dataSampling.title=Donn\u00E9es des mar\u00E9es (r\u00E9alis\u00E9 / planifi\u00E9)
+wao.ui.synthesis.globalSynthesis.globalResult=Bilan de la synth\u00E8se global
+wao.ui.synthesis.globalSynthesis.title=Synth\u00E8se globale
+wao.ui.synthesis.globalSynthesis.title.estimated=Synth\u00E8se globale (selon estimations)
+wao.ui.synthesis.log.description=Cette page pr\u00E9sente toutes les modifications effectu\u00E9es depuis l'origine qui portent sur les bornes de chaque niveaux ainsi que les coefficients de chaque indicateurs.
+wao.ui.synthesis.log.empty=Aucune modification n'a \u00E9t\u00E9 apport\u00E9e \u00E0 ce jour
wao.ui.synthesis.log.entry.author=Auteur de la modification
-wao.ui.synthesis.log.entry.comment=Commentaire associ\u00e9
+wao.ui.synthesis.log.entry.comment=Commentaire associ\u00E9
wao.ui.synthesis.log.entry.date=Date de la modification
-wao.ui.synthesis.log.entry.summary=Modifications effectu\u00e9es
-wao.ui.synthesis.log.title=Historique des modifications des param\u00e8tres de la synth\u00e8se globale
-wao.ui.unavailableOperation=Op\u00e9ration non-disponible
+wao.ui.synthesis.log.entry.summary=Modifications effectu\u00E9es
+wao.ui.synthesis.log.title=Historique des modifications des param\u00E8tres de la synth\u00E8se globale
+wao.ui.unavailableOperation=Op\u00E9ration non-disponible
wao.ui.userList=Liste des utilisateurs
wao.ui.validLogin=Identifiant valide
Modified: trunk/wao-ui/src/main/webapp/ObsDebSamplingPlan.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/ObsDebSamplingPlan.tml 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-ui/src/main/webapp/ObsDebSamplingPlan.tml 2011-04-05 15:45:38 UTC (rev 1141)
@@ -25,22 +25,26 @@
xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" xmlns:p="tapestry:parameter">
<h1 class="fleft">${message:wao.ui.samplingPlan.title}</h1>
- <div class="fleft actions-top">
- <span>
- <a t:type="actionlink" t:id="exportSamplingPlan"> <!-- title="${format:wao.ui.samplingPlan.export=dateFormat.format(period.fromDate),dateFormat.format(period.thruDate)}" -->
- <img src="${asset:context:}/img/file-export-22px.png" alt="${message:wao.ui.action.runExport}" />
- </a>
- </span>
+ <div class="clear: left; actions-top">
+ <t:actionlink t:id="showFilters" t:zone="filtersZone">${message:wao.ui.misc.advancedSearch}</t:actionlink>
+ <t:actionlink t:id="showImportExport" t:zone="importExportZone">${message:wao.ui.misc.import-export}</t:actionlink>
</div>
<div style="clear: both;" />
- <t:samplingFilterComponent t:id="samplingFilter"
- t:visibleOnStartup="true"
- t:filterManager="filterManager"
- t:legendMsg="${message:wao.ui.misc.advancedSearch}"/>
+ <t:zone t:id="importExportZone" t:visible="showImportExport">
+ <t:importFieldSet t:label="${message:wao.ui.import.samplingPlanLabel}" t:engine="samplingPlanImportEngine" />
+ <a t:type="actionlink" t:id="exportSamplingPlan"> <!-- title="${format:wao.ui.samplingPlan.export=dateFormat.format(period.fromDate),dateFormat.format(period.thruDate)}" -->
+ <img src="${asset:context:}/img/file-export-22px.png" alt="${message:wao.ui.action.runExport}" />
+ </a>
+ </t:zone>
+ <t:zone t:id="filtersZone" t:visible="showFilters">
+ <t:samplingFilterComponent t:id="samplingFilter"
+ t:visibleOnStartup="true"
+ t:filterManager="filterManager"
+ t:legendMsg="${message:wao.ui.misc.advancedSearch}" />
+ </t:zone>
- <t:importFieldSet t:label="${message:wao.ui.import.samplingPlanLabel}" t:engine="samplingPlanImportEngine" />
<div t:type="grid" t:source="sampleRows" t:row="sampleRow" t:model="obsdebSamplingPlanModel" t:rowsPerPage="50">
<!-- code -->
@@ -76,6 +80,15 @@
<a t:type="pagelink" t:page="sampleRowHistoric" t:context="sampleRow.code" title="${format:wao.ui.sampleRowLog.title=sampleRow.code}">
<img src="${asset:context:}/img/clock-22px.png" alt="${format:wao.ui.sampleRowLog.title=sampleRow.code}" />
</a>
+ <t:if t:test="canEditSampleRow()">
+ <a t:type="pagelink" t:page="sampleRowForm" t:context="sampleRow.topiaId" title="${message:wao.ui.action.edit}" >
+ <img src="${asset:context:}/img/edit.png" alt="${message:wao.ui.action.edit}" />
+ </a>
+ <!--a t:type="actionlink" t:id="deleteSampleRow" t:context="rowIndex" title="${message:wao.ui.action.deleteSampleRow}"
+ t:mixins="nuiton/confirm" t:message="${format:wao.ui.action.deleteSampleRow.confirm=row.code}">
+ <img src="${asset:context:}/img/delete2.png" alt="${message:wao.ui.action.deleteSampleRow}" />
+ </a-->
+ </t:if>
</p:actionsCell>
</div>
Modified: trunk/wao-ui/src/main/webapp/SampleRowForm.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/SampleRowForm.tml 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-ui/src/main/webapp/SampleRowForm.tml 2011-04-05 15:45:38 UTC (rev 1141)
@@ -40,190 +40,226 @@
<t:zone t:id="globalZone" t:update="show">
<form t:type="form" t:id="sampleRowForm" t:zone="globalZone">
- <!-- PROFESSION -->
- <fieldset>
- <legend>${message:wao.ui.field.SampleRow.profession}</legend>
- <t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
- <!-- DISPLAY -->
- <t:beandisplay t:id="professionDisplay" t:model="professionModel" t:object="sampleRow.profession"
- t:include="meshSize, size, other, libelle, species" />
- <p:else>
- <!-- EDITION -->
- <div class="select">
- <label for="professionSelect">${message:wao.ui.field.SampleRow.professionCode} :</label>
- <input t:type="select" t:id="professionSelect" t:model="professionSelectModel"
- t:value="professionId" />
- <input t:type="submit" class="ico add" t:id="addNewProfession" value="${message:wao.ui.action.create}" />
- </div>
- <div class="t-beaneditor">
- <t:beaneditor t:id="professionEditor" t:object="sampleRow.profession"
- t:include="meshSize, size, other, libelle, species" />
- </div>
- <div class="t-beaneditor">
- <div class="t-beaneditor-row">
- <label for="dcf5codes">${message:wao.ui.field.SampleRow.dcf5Code}</label><input t:type="textfield" t:value="dcf5codes" t:id="dcf5codes" />
+ <t:delegate to="programBlock" />
+
+ <t:block t:id="obsDebBlock">
+ <fieldset class="t-beaneditor">
+ <legend>${message:wao.ui.misc.information}</legend>
+ <div class="t-beaneditor-row">
+ <label for="day">${message:wao.ui.field.SampleRow.day}</label>
+ <input t:type="datefield" t:id="day" class="date" value="sampleRow.day" />
+ </div>
+ <div class="acenter">
+ <label for="observationUnit">${message:wao.ui.field.SampleRow.observationUnit}</label>
+ </div>
+ <div class="acenter">
+ <t:topiaEntitySelector t:id="observationUnit"
+ t:clazzName="TerrestrialDivision"
+ t:labelPropertyName="description"
+ t:values="observationUnits"
+ t:selectedValue="sampleRow.observationUnit" />
+ </div>
+ <div class="acenter">
+ <label for="observers">${message:wao.ui.field.SampleRow.observers}</label>
+ </div>
+ <div class="acenter">
+ <t:topiaEntitySelector t:id="observers"
+ t:multiple="true"
+ t:clazzName="WaoUser"
+ t:labelPropertyName="fullName"
+ t:values="observers"
+ t:selectedValues="sampleRow.observers"
+ size="6"/>
+ </div>
+ </fieldset>
+ </t:block>
+
+ <t:block t:id="obsMerVenteBlock">
+ <!-- PROFESSION -->
+ <fieldset>
+ <legend>${message:wao.ui.field.SampleRow.profession}</legend>
+ <t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
+ <!-- DISPLAY -->
+ <t:beandisplay t:id="professionDisplay" t:model="professionModel" t:object="sampleRow.profession"
+ t:include="meshSize, size, other, libelle, species" />
+ <p:else>
+ <!-- EDITION -->
+ <div class="select">
+ <label for="professionSelect">${message:wao.ui.field.SampleRow.professionCode} :</label>
+ <input t:type="select" t:id="professionSelect" t:model="professionSelectModel"
+ t:value="professionId" />
+ <input t:type="submit" class="ico add" t:id="addNewProfession" value="${message:wao.ui.action.create}" />
</div>
- </div>
- </p:else>
- </t:if>
- </fieldset>
+ <div class="t-beaneditor">
+ <t:beaneditor t:id="professionEditor" t:object="sampleRow.profession"
+ t:include="meshSize, size, other, libelle, species" />
+ </div>
+ <div class="t-beaneditor">
+ <div class="t-beaneditor-row">
+ <label for="dcf5codes">${message:wao.ui.field.SampleRow.dcf5Code}</label><input t:type="textfield" t:value="dcf5codes" t:id="dcf5codes" />
+ </div>
+ </div>
+ </p:else>
+ </t:if>
+ </fieldset>
- <!-- FISHING ZONES -->
- <fieldset id="so-samplerow-form-fishingzone">
- <legend>${message:wao.ui.field.SampleRow.fishingZones}</legend>
- <t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
- <!-- DISPLAY -->
- <ul>
- <li t:type="loop" t:source="fishingZones" t:volatile="true" t:value="fishingZone">
- ${fishingZone.code}
- </li>
- </ul>
- <p:else>
- <!-- EDITION -->
- <div class="select">
- <t:label t:for="fishingZoneSelect" />* :
- <input t:type="select" t:id="fishingZoneSelect" t:model="fishingZoneSelectModel"
- t:value="fishingZoneId" />
- <input t:type="submit" class="ico add" t:id="addFishingZone" value="${message:wao.ui.action.add}" />
- </div>
- <div class="clearfix fishingzone-row" t:type="loop" volatile="true" t:source="fishingZones"
- t:value="fishingZone" t:index="indexFishingZone">
- <div class="fleft width50">
- <input t:type="submit" class="ico remove" t:context="indexFishingZone" t:id="removeFishingZone" t:defer="false" value="${message:wao.ui.action.remove}" />
- </div>
- <div class="fleft">
+ <!-- FISHING ZONES -->
+ <fieldset id="so-samplerow-form-fishingzone">
+ <legend>${message:wao.ui.field.SampleRow.fishingZones}</legend>
+ <t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
+ <!-- DISPLAY -->
+ <ul>
+ <li t:type="loop" t:source="fishingZones" t:volatile="true" t:value="fishingZone">
${fishingZone.code}
+ </li>
+ </ul>
+ <p:else>
+ <!-- EDITION -->
+ <div class="select">
+ <t:label t:for="fishingZoneSelect" />* :
+ <input t:type="select" t:id="fishingZoneSelect" t:model="fishingZoneSelectModel"
+ t:value="fishingZoneId" />
+ <input t:type="submit" class="ico add" t:id="addFishingZone" value="${message:wao.ui.action.add}" />
</div>
- </div>
- </p:else>
+ <div class="clearfix fishingzone-row" t:type="loop" volatile="true" t:source="fishingZones"
+ t:value="fishingZone" t:index="indexFishingZone">
+ <div class="fleft width50">
+ <input t:type="submit" class="ico remove" t:context="indexFishingZone" t:id="removeFishingZone" t:defer="false" value="${message:wao.ui.action.remove}" />
+ </div>
+ <div class="fleft">
+ ${fishingZone.code}
+ </div>
+ </div>
+ </p:else>
+ </t:if>
+ <div class="t-beaneditor-row">
+ <label for="fishingZonesInfos">${message:wao.ui.misc.otherInfos}</label>
+ <input t:type="textfield" class="width300" t:id="fishingZonesInfos" value="sampleRow.fishingZonesInfos" />
+ </div>
+ </fieldset>
+
+ <t:if test="user.obsVente">
+ <fieldset>
+ <legend>${message:wao.ui.entity.TerrestrialLocation}</legend>
+ <t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
+ <p class="acenter">
+ <label for="terrestrialLocation">${message:wao.ui.field.SampleRow.terrestrialLocation}</label>
+ ${sampleRow.terrestrialLocation.description}
+ </p>
+ <p class="acenter">
+ <label for="terrestrialLocationInfos">${message:wao.ui.misc.otherInfos}</label>
+ ${sampleRow.terrestrialLocationInfos}
+ </p>
+ <p:else> <!-- edit -->
+ <div class="select">
+ <label for="terrestrialLocation">
+ ${message:wao.ui.field.SampleRow.terrestrialLocation}
+ </label>
+ <input t:id="terrestrialLocation"
+ t:type="select"
+ t:model="terrestrialLocationSelectModel"
+ t:value="terrestrialLocationId"
+ t:validate="required" />
+ </div>
+ <div class="select">
+ <label for="terrestrialLocationInfos">
+ ${message:wao.ui.misc.otherInfos}
+ </label>
+ <input t:type="textfield" class="width300" t:id="terrestrialLocationInfos" value="sampleRow.terrestrialLocationInfos" />
+ </div>
+ </p:else>
+ </t:if>
+ </fieldset>
</t:if>
- <div class="t-beaneditor-row">
- <label for="fishingZonesInfos">${message:wao.ui.misc.otherInfos}</label>
- <input t:type="textfield" class="width300" t:id="fishingZonesInfos" value="sampleRow.fishingZonesInfos" />
- </div>
- </fieldset>
- <t:if test="user.obsVente">
+ <!-- PROGRAM and SAMPLE MONTHS -->
<fieldset>
- <legend>${message:wao.ui.entity.TerrestrialLocation}</legend>
+ <legend>${message:wao.ui.form.SampleRow.program}</legend>
<t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
- <p class="acenter">
- <label for="terrestrialLocation">${message:wao.ui.field.SampleRow.terrestrialLocation}</label>
- ${sampleRow.terrestrialLocation.description}
- </p>
- <p class="acenter">
- <label for="terrestrialLocationInfos">${message:wao.ui.misc.otherInfos}</label>
- ${sampleRow.terrestrialLocationInfos}
- </p>
- <p:else> <!-- edit -->
+ <!-- DISPLAY PROGRAM -->
+ <dl class="t-beandisplay">
+ <dt>${message:wao.ui.field.SampleRow.programName}</dt>
+ <dd>${sampleRow.programName}</dd>
+ </dl>
+ <p:else>
+ <!-- EDITION PROGRAM -->
<div class="select">
- <label for="terrestrialLocation">
- ${message:wao.ui.field.SampleRow.terrestrialLocation}
- </label>
- <input t:id="terrestrialLocation"
- t:type="select"
- t:model="terrestrialLocationSelectModel"
- t:value="terrestrialLocationId"
- t:validate="required" />
+ <t:label t:for="program" />* :
+ <input t:type="select" t:id="program" t:model="programSelectModel" value="programId" />
+ <!--<input t:type="submit" class="ico search" t:id="searchProgram" value="Search"
+ title="Afficher les détails du programme"/>-->
+ ${message:wao.ui.misc.or} <input t:type="textfield" t:id="programName" value="programName" />
</div>
- <div class="select">
- <label for="terrestrialLocationInfos">
- ${message:wao.ui.misc.otherInfos}
- </label>
- <input t:type="textfield" class="width300" t:id="terrestrialLocationInfos" value="sampleRow.terrestrialLocationInfos" />
- </div>
</p:else>
</t:if>
+ <!-- EDITION PROGRAM PERIOD -->
+ <div class="select">
+ <label for="programPeriodBegin">${message:wao.ui.form.period} * :</label>
+ ${message:wao.ui.form.period.from} <input t:type="datefield" t:id="programPeriodBegin" value="period.fromDate" />
+ ${message:wao.ui.form.period.to} <input t:type="datefield" t:id="programPeriodEnd" value="period.thruDate" />
+ <input t:type="submit" class="ico refresh" t:id="refreshMonths" value="Refresh" title="Rafraîchir les mois"/>
+ </div>
+ <!-- EDITION SAMPLE MONTHS -->
+ <div id="so-samplerow-form-months" class="acenter">
+ <table>
+ <tr class="firstRow">
+ <td t:type="loop" class="acenter" volatile="true" t:source="sampleMonths" t:value="sampleMonth" t:index="monthIndex">
+ <t:output value="sampleMonth.periodDate" format="dateFormat" />
+ </td>
+ </tr>
+ <tr>
+ <td t:type="loop" class="acenter" volatile="true" t:source="sampleMonths" t:value="sampleMonth">
+ <input t:type="textfield" class="width40${monthStyle}" t:id="sampleMonth" value="sampleMonth.expectedTidesValue" />
+ </td>
+ </tr>
+ </table>
+ </div>
</fieldset>
- </t:if>
-
- <!-- PROGRAM and SAMPLE MONTHS -->
- <fieldset>
- <legend>${message:wao.ui.form.SampleRow.program}</legend>
- <t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
- <!-- DISPLAY PROGRAM -->
- <dl class="t-beandisplay">
- <dt>${message:wao.ui.field.SampleRow.programName}</dt>
- <dd>${sampleRow.programName}</dd>
- </dl>
- <p:else>
- <!-- EDITION PROGRAM -->
- <div class="select">
- <t:label t:for="program" />* :
- <input t:type="select" t:id="program" t:model="programSelectModel" value="programId" />
- <!--<input t:type="submit" class="ico search" t:id="searchProgram" value="Search"
- title="Afficher les détails du programme"/>-->
- ${message:wao.ui.misc.or} <input t:type="textfield" t:id="programName" value="programName" />
- </div>
- </p:else>
- </t:if>
- <!-- EDITION PROGRAM PERIOD -->
- <div class="select">
- <label for="programPeriodBegin">${message:wao.ui.form.period} * :</label>
- ${message:wao.ui.form.period.from} <input t:type="datefield" t:id="programPeriodBegin" value="period.fromDate" />
- ${message:wao.ui.form.period.to} <input t:type="datefield" t:id="programPeriodEnd" value="period.thruDate" />
- <input t:type="submit" class="ico refresh" t:id="refreshMonths" value="Refresh" title="Rafraîchir les mois"/>
- </div>
- <!-- EDITION SAMPLE MONTHS -->
- <div id="so-samplerow-form-months" class="acenter">
- <table>
- <tr class="firstRow">
- <td t:type="loop" class="acenter" volatile="true" t:source="sampleMonths" t:value="sampleMonth" t:index="monthIndex">
- <t:output value="sampleMonth.periodDate" format="dateFormat" />
- </td>
- </tr>
- <tr>
- <td t:type="loop" class="acenter" volatile="true" t:source="sampleMonths" t:value="sampleMonth">
- <input t:type="textfield" class="width40${monthStyle}" t:id="sampleMonth" value="sampleMonth.expectedTidesValue" />
- </td>
- </tr>
- </table>
- </div>
- </fieldset>
- <!-- OTHER DATA : nbObservants, averageTideTime, company, boats, comment -->
- <fieldset id="so-samplerow-form-other">
- <legend>${message:wao.ui.form.SampleRow.others}</legend>
- <div class="t-beaneditor">
- <t:beaneditor t:id="sampleRowEditor" t:object="sampleRow" t:model="sampleRowModel">
- <p:code>
- <label>${message:wao.ui.field.SampleRow.code}</label>
- <!--${sampleRow.code}-->
- <t:if t:test="sampleRow.code">
- <strong>${sampleRow.code}</strong>
- <p:else>
- <span class="code-missing">
- ${message:wao.ui.form.SampleRow.missingBeginDate}
- </span>
- </p:else>
- </t:if>
- </p:code>
- <p:company>
- <t:label t:for="company" />
- <t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
- ${sampleRow.company.name}
- <p:else>
- <input t:type="select" t:id="company" t:model="companySelectModel" value="companyId" />
- </p:else>
- </t:if>
- </p:company>
- <p:boats>
- <t:label t:for="boats" />
- <input t:type="textarea" t:id="boats" cols="40" rows="2" value="immatriculations" />
- <span t:type="ck/Tooltip" title="Aide" t:value="${message:wao.ui.form.SampleRow.boatsDescription}" t:effect="appear">
- <img src="${asset:context:}/img/help-22px.png" alt="Aide" />
- </span>
- </p:boats>
- <p:comment>
- <t:label t:for="comment" />
- <input t:type="textarea" t:id="comment" cols="40" rows="3" value="sampleRow.comment" />
- </p:comment>
- <p:samplingStrategy>
- <t:label t:for="samplingStrategy" />
- <input t:type="select" t:id="samplingStrategy" value="sampleRow.samplingStrategy" t:validate="required" />
- </p:samplingStrategy>
- </t:beaneditor>
- </div>
- </fieldset>
+ <!-- OTHER DATA : nbObservants, averageTideTime, company, boats, comment -->
+ <fieldset id="so-samplerow-form-other">
+ <legend>${message:wao.ui.form.SampleRow.others}</legend>
+ <div class="t-beaneditor">
+ <t:beaneditor t:id="sampleRowEditor" t:object="sampleRow" t:model="sampleRowModel">
+ <p:code>
+ <label>${message:wao.ui.field.SampleRow.code}</label>
+ <!--${sampleRow.code}-->
+ <t:if t:test="sampleRow.code">
+ <strong>${sampleRow.code}</strong>
+ <p:else>
+ <span class="code-missing">
+ ${message:wao.ui.form.SampleRow.missingBeginDate}
+ </span>
+ </p:else>
+ </t:if>
+ </p:code>
+ <p:company>
+ <t:label t:for="company" />
+ <t:if t:test="sampleRow.hasSampleMonthRealTideTime()">
+ ${sampleRow.company.name}
+ <p:else>
+ <input t:type="select" t:id="company" t:model="companySelectModel" value="companyId" />
+ </p:else>
+ </t:if>
+ </p:company>
+ <p:boats>
+ <t:label t:for="boats" />
+ <input t:type="textarea" t:id="boats" cols="40" rows="2" value="immatriculations" />
+ <span t:type="ck/Tooltip" title="Aide" t:value="${message:wao.ui.form.SampleRow.boatsDescription}" t:effect="appear">
+ <img src="${asset:context:}/img/help-22px.png" alt="Aide" />
+ </span>
+ </p:boats>
+ <p:comment>
+ <t:label t:for="comment" />
+ <input t:type="textarea" t:id="comment" cols="40" rows="3" value="sampleRow.comment" />
+ </p:comment>
+ <p:samplingStrategy>
+ <t:label t:for="samplingStrategy" />
+ <input t:type="select" t:id="samplingStrategy" value="sampleRow.samplingStrategy" t:validate="required" />
+ </p:samplingStrategy>
+ </t:beaneditor>
+ </div>
+ </fieldset>
+ </t:block>
<fieldset class="clearfix">
<t:errors t:banner="message:errors-banner"/>
<p><label>${message:wao.ui.form.editionAuthor} : </label>${sampleRowLog.author.fullName}</p>
@@ -236,7 +272,6 @@
<input t:type="submit" t:id="cancelSave" class="ico undo" value="${message:wao.ui.action.revert}" title="${message:wao.ui.action.revert}" />
</div>
</fieldset>
-
</form>
</t:zone>
Modified: trunk/wao-ui/src/main/webapp/SamplingPlan.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/SamplingPlan.tml 2011-04-05 15:21:12 UTC (rev 1140)
+++ trunk/wao-ui/src/main/webapp/SamplingPlan.tml 2011-04-05 15:45:38 UTC (rev 1141)
@@ -296,8 +296,8 @@
</t:unless>
</t:unless>
<t:if t:test="canEditSampleRow()">
- <a t:type="pagelink" t:page="sampleRowForm" t:context="row.topiaId">
- <img src="${asset:context:}/img/edit.png" alt="Modifier" title="Modifier la ligne"/>
+ <a t:type="pagelink" t:page="sampleRowForm" t:context="row.topiaId" title="${message:wao.ui.action.edit}">
+ <img src="${asset:context:}/img/edit.png" alt="${message:wao.ui.action.edit}" />
</a>
<t:unless t:test="row.hasSampleMonthRealTideTime()">
<a t:type="actionlink" t:id="deleteSampleRow" t:context="rowIndex" title="${message:wao.ui.action.deleteSampleRow}"
1
0
[Suiviobsmer-commits] r1140 - in trunk/wao-business/src/main: java/fr/ifremer/wao/service xmi
by bleny@users.labs.libre-entreprise.org 05 Apr '11
by bleny@users.labs.libre-entreprise.org 05 Apr '11
05 Apr '11
Author: bleny
Date: 2011-04-05 15:21:12 +0000 (Tue, 05 Apr 2011)
New Revision: 1140
Log:
add method in service referential to get observation units
Modified:
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java
trunk/wao-business/src/main/xmi/wao.zargo
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2011-04-05 14:49:50 UTC (rev 1139)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2011-04-05 15:21:12 UTC (rev 1140)
@@ -645,4 +645,18 @@
}
}
+
+ @Override
+ protected List<TerrestrialDivision> executeGetAllObservationUnits(TopiaContext transaction) throws Exception {
+ TerrestrialDivisionDAO dao = WaoDAOHelper.getTerrestrialDivisionDAO(transaction);
+
+ // having code null make TerrestrialDivision.isObservationUnit
+ List<TerrestrialDivision> observationUnits = dao.findAllByCode(null);
+
+ if (log.isDebugEnabled()) {
+ log.debug("will return " + observationUnits.size() + " observation units");
+ }
+
+ return observationUnits;
+ }
}
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
1
0
[Suiviobsmer-commits] r1139 - in trunk/wao-ui/src/main: java/fr/ifremer/wao/ui/pages webapp
by sletellier@users.labs.libre-entreprise.org 05 Apr '11
by sletellier@users.labs.libre-entreprise.org 05 Apr '11
05 Apr '11
Author: sletellier
Date: 2011-04-05 14:49:50 +0000 (Tue, 05 Apr 2011)
New Revision: 1139
Log:
Dont use same model as filter to select SampleRow on edit Boat
Modified:
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java
trunk/wao-ui/src/main/webapp/Boats.tml
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2011-04-04 14:14:10 UTC (rev 1138)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2011-04-05 14:49:50 UTC (rev 1139)
@@ -591,7 +591,7 @@
private ElligibleBoat elligibleBoat;
@Property
- private String boatInfosSampleRowId;
+ private SampleRow boatInfosSampleRow;
private boolean boatInfosEditable;
@@ -727,6 +727,10 @@
/** /////////////////////// FOR EACH ELLIGIBLEBOAT ROW ///////////////// **/
+ public List<SampleRow> getSampleRows() {
+ return serviceSampling.getSampleRowsByFilter(serviceSampling.newSamplingFilter(user));
+ }
+
public List<ElligibleBoat> getElligibleBoatsValues() {
return new ArrayList<ElligibleBoat>(getCompanyBoatInfos().getElligibleBoatsValues());
}
@@ -818,9 +822,8 @@
void onSelectedFromAddBoatInfosSampleRow() throws WaoException {
// We stay in edition mode
boatInfosEditable = true;
- if (StringUtils.isNotEmpty(boatInfosSampleRowId)) {
- SampleRow row = getSampleRowSelectModel().findObject(boatInfosSampleRowId);
- companyBoatInfos.setNewElligibleBoat(row);
+ if (boatInfosSampleRow != null) {
+ companyBoatInfos.setNewElligibleBoat(boatInfosSampleRow);
}
}
Modified: trunk/wao-ui/src/main/webapp/Boats.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/Boats.tml 2011-04-04 14:14:10 UTC (rev 1138)
+++ trunk/wao-ui/src/main/webapp/Boats.tml 2011-04-05 14:49:50 UTC (rev 1139)
@@ -62,7 +62,7 @@
<input t:type="submit" class="ico22px refresh" t:id="refreshBySector" value="Refresh"
title="${message:wao.ui.filters.refresh}"/>
<label for="sampleRow">${message:wao.ui.field.SampleRow.code} :</label>
- <select t:type="select" t:id="sampleRow" t:disabled="sampleRowExists" t:model="sampleRowSelectModel" value="sampleRowId" />
+ <select t:type="select" t:id="sampleRow" t:disabled="sampleRowExists" t:model="sampleRowSelectModel" value="sampleRowId" />
</div><p> </p>
<div>
<!-- Boat filter -->
@@ -342,8 +342,16 @@
</li>
</ul>
<p>
- <input t:type="select" t:id="sampleRowSelect" t:model="sampleRowSelectModel"
- t:value="boatInfosSampleRowId"/>
+ <t:topiaEntitySelector t:id="sampleRowSelect"
+ t:clazzName="SampleRow"
+ t:labelPropertyName="code"
+ t:values="sampleRows"
+ t:selectedValue="boatInfosSampleRow" />
+ <!--input t:type="select"
+ t:id="sampleRowSelect"
+ t:model="sampleRowSelectModel"
+ t:value="boatInfosSampleRowId"/-->
+
<input t:type="submit" t:id="addBoatInfosSampleRow" class="ico add" value="Add"
t:title="${message:wao.ui.action.add}" />
</p>
1
0
[Suiviobsmer-commits] r1138 - in trunk: . wao-business/src/main/java/fr/ifremer/wao wao-business/src/main/java/fr/ifremer/wao/service
by bleny@users.labs.libre-entreprise.org 04 Apr '11
by bleny@users.labs.libre-entreprise.org 04 Apr '11
04 Apr '11
Author: bleny
Date: 2011-04-04 14:14:10 +0000 (Mon, 04 Apr 2011)
New Revision: 1138
Log:
remove code cloned from DateUtil and use DateUtil
Modified:
trunk/pom.xml
trunk/wao-business/src/main/java/fr/ifremer/wao/WaoUtils.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-04-04 13:08:58 UTC (rev 1137)
+++ trunk/pom.xml 2011-04-04 14:14:10 UTC (rev 1138)
@@ -312,7 +312,7 @@
<!-- libraries version -->
<nuitonI18nVersion>2.3.1</nuitonI18nVersion>
- <nuitonUtilsVersion>2.1</nuitonUtilsVersion>
+ <nuitonUtilsVersion>2.2-SNAPSHOT</nuitonUtilsVersion>
<nuitonWebVersion>1.0</nuitonWebVersion>
<topiaVersion>2.5.2</topiaVersion>
<eugeneVersion>2.3.3</eugeneVersion>
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoUtils.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoUtils.java 2011-04-04 13:08:58 UTC (rev 1137)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoUtils.java 2011-04-04 14:14:10 UTC (rev 1138)
@@ -258,27 +258,4 @@
return existingEntity;
}
-
- /**
- * @deprecated replace by DateUtil 2.2
- */
- @Deprecated
- public static Date setLastDayOfYear(Date date) {
- Calendar calendar = DateUtil.getDefaultCalendar(date);
- int maximum = calendar.getActualMaximum(Calendar.DAY_OF_YEAR);
- calendar.set(Calendar.DAY_OF_YEAR, maximum);
- Date lastDay = calendar.getTime();
- return lastDay;
- }
-
- /**
- * @deprecated replace by DateUtil 2.2
- */
- @Deprecated
- public static Date setFirstDayOfYear(Date date) {
- Calendar calendar = DateUtil.getDefaultCalendar(date);
- calendar.set(Calendar.DAY_OF_YEAR, 1);
- Date firstDay = calendar.getTime();
- return firstDay;
- }
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2011-04-04 13:08:58 UTC (rev 1137)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2011-04-04 14:14:10 UTC (rev 1138)
@@ -1395,8 +1395,8 @@
fromDate = DateUtils.addMonths(fromDate, -6);
toDate = DateUtils.addMonths(toDate, 6);
} else {
- fromDate = WaoUtils.setFirstDayOfYear(fromDate);
- toDate = WaoUtils.setLastDayOfYear(toDate);
+ fromDate = DateUtil.setFirstDayOfYear(fromDate);
+ toDate = DateUtil.setLastDayOfYear(toDate);
}
fromDate = DateUtil.setMinTimeOfDay(fromDate);
1
0
[Suiviobsmer-commits] r1137 - in trunk: . wao-business wao-ui
by bleny@users.labs.libre-entreprise.org 04 Apr '11
by bleny@users.labs.libre-entreprise.org 04 Apr '11
04 Apr '11
Author: bleny
Date: 2011-04-04 13:08:58 +0000 (Mon, 04 Apr 2011)
New Revision: 1137
Log:
[maven-release-plugin] prepare for next development iteration
Modified:
trunk/pom.xml
trunk/wao-business/pom.xml
trunk/wao-ui/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-04-04 13:08:55 UTC (rev 1136)
+++ trunk/pom.xml 2011-04-04 13:08:58 UTC (rev 1137)
@@ -15,7 +15,7 @@
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>2.1.3</version>
+ <version>3.0-SNAPSHOT</version>
<modules>
<module>wao-ui</module>
@@ -329,12 +329,12 @@
<scm>
<connection>
- scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3
+ scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk
</connection>
<developerConnection>
- scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3
+ scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/trunk
</developerConnection>
- <url>http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-2.1.3?root=suiviob…
+ <url>http://labs.libre-entreprise.org/scm/viewvc.php/trunk/?root=suiviobsmer
</url>
</scm>
Modified: trunk/wao-business/pom.xml
===================================================================
--- trunk/wao-business/pom.xml 2011-04-04 13:08:55 UTC (rev 1136)
+++ trunk/wao-business/pom.xml 2011-04-04 13:08:58 UTC (rev 1137)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>2.1.3</version>
+ <version>3.0-SNAPSHOT</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
@@ -235,10 +235,10 @@
<scm>
<url>
- http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-2.1.3/?root=suivio…
+ http://labs.libre-entreprise.org/scm/viewvc.php/trunk/wao-business/?root=su…
</url>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3/wao-business</connection>
- <developerConnection>scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3/wao-business</developerConnection>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-business</connection>
+ <developerConnection>scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-business</developerConnection>
</scm>
</project>
Modified: trunk/wao-ui/pom.xml
===================================================================
--- trunk/wao-ui/pom.xml 2011-04-04 13:08:55 UTC (rev 1136)
+++ trunk/wao-ui/pom.xml 2011-04-04 13:08:58 UTC (rev 1137)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>2.1.3</version>
+ <version>3.0-SNAPSHOT</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
@@ -310,10 +310,10 @@
<scm>
<url>
- http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-2.1.3/?root=suivio…
+ http://labs.libre-entreprise.org/scm/viewvc.php/trunk/wao-ui/?root=suiviobs…
</url>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3/wao-ui</connection>
- <developerConnection>scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3/wao-ui</developerConnection>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-ui</connection>
+ <developerConnection>scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-ui</developerConnection>
</scm>
</project>
1
0
[Suiviobsmer-commits] r1136 - in tags: . wao-2.1.3
by bleny@users.labs.libre-entreprise.org 04 Apr '11
by bleny@users.labs.libre-entreprise.org 04 Apr '11
04 Apr '11
Author: bleny
Date: 2011-04-04 13:08:55 +0000 (Mon, 04 Apr 2011)
New Revision: 1136
Log:
[maven-release-plugin] copy for tag wao-2.1.3
Added:
tags/wao-2.1.3/
Property changes on: tags/wao-2.1.3
___________________________________________________________________
Added: svn:ignore
+ *.ipr
*.iws
*.iml
*.idea
target
nbactions.xml
Added: svn:mergeinfo
+ /branches/wao-1.5.x:679-733
1
0
[Suiviobsmer-commits] r1135 - in trunk: . wao-business wao-ui
by bleny@users.labs.libre-entreprise.org 04 Apr '11
by bleny@users.labs.libre-entreprise.org 04 Apr '11
04 Apr '11
Author: bleny
Date: 2011-04-04 13:06:22 +0000 (Mon, 04 Apr 2011)
New Revision: 1135
Log:
[maven-release-plugin] prepare release wao-2.1.3
Modified:
trunk/pom.xml
trunk/wao-business/pom.xml
trunk/wao-ui/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-04-04 12:50:57 UTC (rev 1134)
+++ trunk/pom.xml 2011-04-04 13:06:22 UTC (rev 1135)
@@ -15,7 +15,7 @@
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>2.1.3-SNAPSHOT</version>
+ <version>2.1.3</version>
<modules>
<module>wao-ui</module>
@@ -329,12 +329,12 @@
<scm>
<connection>
- scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk
+ scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3
</connection>
<developerConnection>
- scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/trunk
+ scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3
</developerConnection>
- <url>http://labs.libre-entreprise.org/scm/viewvc.php/trunk/?root=suiviobsmer
+ <url>http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-2.1.3?root=suiviob…
</url>
</scm>
Modified: trunk/wao-business/pom.xml
===================================================================
--- trunk/wao-business/pom.xml 2011-04-04 12:50:57 UTC (rev 1134)
+++ trunk/wao-business/pom.xml 2011-04-04 13:06:22 UTC (rev 1135)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>2.1.3-SNAPSHOT</version>
+ <version>2.1.3</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
@@ -235,10 +235,10 @@
<scm>
<url>
- http://labs.libre-entreprise.org/scm/viewvc.php/trunk/wao-business/?root=su…
+ http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-2.1.3/?root=suivio…
</url>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-business</connection>
- <developerConnection>scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-business</developerConnection>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3/wao-business</connection>
+ <developerConnection>scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3/wao-business</developerConnection>
</scm>
</project>
Modified: trunk/wao-ui/pom.xml
===================================================================
--- trunk/wao-ui/pom.xml 2011-04-04 12:50:57 UTC (rev 1134)
+++ trunk/wao-ui/pom.xml 2011-04-04 13:06:22 UTC (rev 1135)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>2.1.3-SNAPSHOT</version>
+ <version>2.1.3</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
@@ -310,10 +310,10 @@
<scm>
<url>
- http://labs.libre-entreprise.org/scm/viewvc.php/trunk/wao-ui/?root=suiviobs…
+ http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-2.1.3/?root=suivio…
</url>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-ui</connection>
- <developerConnection>scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-ui</developerConnection>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3/wao-ui</connection>
+ <developerConnection>scm:svn:svn+ssh://${username}@labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-2.1.3/wao-ui</developerConnection>
</scm>
</project>
1
0