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
- 2352 discussions
[Suiviobsmer-commits] r923 - in trunk/wao-business/src: main/java/fr/ifremer/wao/io main/java/fr/ifremer/wao/io/csv2 main/java/fr/ifremer/wao/service main/resources test/java/fr/ifremer/wao/io test/java/fr/ifremer/wao/io/csv2
by bleny@users.labs.libre-entreprise.org 18 Jan '11
by bleny@users.labs.libre-entreprise.org 18 Jan '11
18 Jan '11
Author: bleny
Date: 2011-01-18 15:34:17 +0000 (Tue, 18 Jan 2011)
New Revision: 923
Log:
terrestrial locations import
Added:
trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/
trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Import.java
trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportModel.java
trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportStrategy.java
trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportableField.java
trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/TerrestrialLocationImportModel.java
trunk/wao-business/src/main/resources/terrestrialLocations.csv
trunk/wao-business/src/test/java/fr/ifremer/wao/io/csv2/
trunk/wao-business/src/test/java/fr/ifremer/wao/io/csv2/ImportTest.java
Modified:
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java
Added: 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 (rev 0)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/Import.java 2011-01-18 15:34:17 UTC (rev 923)
@@ -0,0 +1,176 @@
+package fr.ifremer.wao.io.csv2;
+
+import com.csvreader.CsvReader;
+import fr.ifremer.wao.bean.ValidationResult;
+import fr.ifremer.wao.bean.ValidationResultImpl;
+import org.nuiton.util.StringUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.charset.Charset;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Iterator;
+import java.util.List;
+
+public class Import<E> {
+
+ private static final Logger log = LoggerFactory.getLogger(Import.class);
+
+ protected ImportModel<E> model;
+
+ protected CsvReader reader;
+
+ public Import(ImportModel<E> model, InputStream inputStream) {
+ this.model = model;
+ this.reader = new CsvReader(inputStream, ';', Charset.forName("UTF-8"));
+ reader.setTrimWhitespace(true);
+ }
+
+ public ValidationResult validateCsv() throws IOException {
+
+ boolean canReadHeaders = reader.readHeaders();
+ if ( ! canReadHeaders) {
+ throw new IOException("can't read headers");
+ }
+
+ if (log.isInfoEnabled()) {
+ log.info("headers of the CSV file are : " + Arrays.toString(reader.getHeaders()));
+ }
+
+ ValidationResult validationResult = new ValidationResultImpl();
+ validationResult.setSuccess(true);
+
+ List<String> csvHeaders = new ArrayList<String>();
+ for (String header : reader.getHeaders()) {
+ csvHeaders.add(header);
+ }
+
+ for(ImportableField field : model.getAllHeaders()) {
+ csvHeaders.remove(field.getName());
+ }
+
+ if ( ! csvHeaders.isEmpty()) {
+ validationResult.setSuccess(false);
+ String validationMessage = String.format(
+ "Les champs %s ne sont pas reconnus. Les champs possibles sont %s",
+ StringUtil.join(csvHeaders, ", " ,true),
+ StringUtil.join(model.getAllHeaders(), ", " ,true));
+ validationResult.setMessage(validationMessage);
+ }
+
+ csvHeaders = new ArrayList<String>();
+ for (String header : reader.getHeaders()) {
+ csvHeaders.add(header);
+ }
+
+ List<String> mandatoryHeadersNames = new ArrayList<String>();
+ for (ImportableField field : model.getAllMandatoryHeaders()) {
+ mandatoryHeadersNames.add(field.getName());
+ }
+ for (String header : csvHeaders) {
+ mandatoryHeadersNames.remove(header);
+ }
+
+ if ( ! mandatoryHeadersNames.isEmpty()) {
+ validationResult.setSuccess(false);
+ String validationMessage = String.format(
+ "Les champs obligatoires %s sont manquants",
+ StringUtil.join(mandatoryHeadersNames, ", " , true));
+ validationResult.setMessage(validationMessage);
+ }
+
+ return validationResult;
+ }
+
+ public Iterator<E> startImport() throws IOException {
+
+ ValidationResult validationResult = validateCsv();
+
+ if ( ! validationResult.isSuccess()) {
+ throw new IOException(validationResult.getMessage());
+ }
+
+ readFirstLine();
+
+ Iterator<E> result = new Iterator<E>() {
+
+ boolean hasNext = true;
+
+ int lineNumber = 0;
+
+ E lastElement = null;
+
+ @Override
+ public boolean hasNext() {
+ return hasNext;
+ }
+
+ @Override
+ public E next() {
+
+ lineNumber += 1;
+
+ E element = model.newEmptyInstance();
+
+ for (ImportableField field : model.getNonIgnoredHeaders()) {
+ String value;
+ try {
+ value = reader.get(field.getName());
+ } catch (IOException e) {
+ reader.close();
+ throw new RuntimeException("unable to read field " + field.getName() + " at line " + lineNumber, e);
+ }
+
+ // contravariance ftw
+ ImportStrategy<E, Object> strategy = field.getImportStrategy();
+ if (strategy != null) {
+ try {
+ Object parsedValue = strategy.parse(value);
+ strategy.setValue(element, parsedValue);
+ } catch (Exception e) {
+ throw new RuntimeException("exception while reading line " + lineNumber, e);
+ }
+ }
+ }
+
+ lastElement = element;
+
+ try {
+ hasNext = reader.readRecord();
+ } catch (IOException e) {
+ reader.close();
+ throw new RuntimeException("unable to read line " + lineNumber + 1, e);
+ }
+ return lastElement;
+ }
+
+ @Override
+ public void remove() {
+ throw new UnsupportedOperationException();
+ }
+ };
+
+ return result;
+ }
+
+ protected void readFirstLine() {
+ try {
+ boolean emptyFile = ! reader.readRecord();
+
+ if (emptyFile) {
+ throw new IllegalArgumentException("CSV file has no line");
+ }
+ } catch (IOException e) {
+ reader.close();
+ throw new RuntimeException("error occurred while reading first line", e);
+ }
+ }
+
+ public void stopImport() {
+ reader.close();
+ }
+
+}
Added: trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportModel.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportModel.java (rev 0)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportModel.java 2011-01-18 15:34:17 UTC (rev 923)
@@ -0,0 +1,34 @@
+package fr.ifremer.wao.io.csv2;
+
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.collections.iterators.ArrayListIterator;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public abstract class ImportModel<E> {
+
+ public abstract E newEmptyInstance();
+
+ public abstract List<ImportableField> getAllHeaders();
+
+ public List<ImportableField> getNonIgnoredHeaders() {
+ List<ImportableField> nonIgnoredHeaders = new ArrayList<ImportableField>();
+ for (ImportableField field : getAllHeaders()) {
+ if ( ! field.isIgnored()) {
+ nonIgnoredHeaders.add(field);
+ }
+ }
+ return nonIgnoredHeaders;
+ }
+
+ public List<ImportableField> getAllMandatoryHeaders() {
+ List<ImportableField> allMandatoryHeaders = new ArrayList<ImportableField>();
+ for (ImportableField field : getAllHeaders()) {
+ if (field.isMandatory()) {
+ allMandatoryHeaders.add(field);
+ }
+ }
+ return allMandatoryHeaders;
+ }
+}
Added: trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportStrategy.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportStrategy.java (rev 0)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportStrategy.java 2011-01-18 15:34:17 UTC (rev 923)
@@ -0,0 +1,8 @@
+package fr.ifremer.wao.io.csv2;
+
+public interface ImportStrategy<ObjectType, FieldType> {
+
+ FieldType parse(String value);
+
+ void setValue(ObjectType object, FieldType value);
+}
Added: trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportableField.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportableField.java (rev 0)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/ImportableField.java 2011-01-18 15:34:17 UTC (rev 923)
@@ -0,0 +1,40 @@
+package fr.ifremer.wao.io.csv2;
+
+public class ImportableField<ObjectType, FieldType> {
+
+ protected String name;
+
+ protected boolean isMandatory;
+
+ protected boolean isIgnored;
+
+ protected ImportStrategy<ObjectType, FieldType> importStrategy;
+
+ public ImportableField(String name, boolean isMandatory, boolean isIgnored) {
+ this.name = name;
+ this.isMandatory = isMandatory;
+ this.isIgnored = isIgnored;
+ }
+
+ public ImportableField(String name, boolean isMandatory, boolean isIgnored,
+ ImportStrategy<ObjectType, FieldType> importStrategy) {
+ this(name, isMandatory, isIgnored);
+ this.importStrategy = importStrategy;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public boolean isMandatory() {
+ return isMandatory;
+ }
+
+ public boolean isIgnored() {
+ return isIgnored;
+ }
+
+ public ImportStrategy<ObjectType, FieldType> getImportStrategy() {
+ return importStrategy;
+ }
+}
Added: trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/TerrestrialLocationImportModel.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/TerrestrialLocationImportModel.java (rev 0)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/csv2/TerrestrialLocationImportModel.java 2011-01-18 15:34:17 UTC (rev 923)
@@ -0,0 +1,164 @@
+package fr.ifremer.wao.io.csv2;
+
+import fr.ifremer.wao.bean.LocationType;
+import fr.ifremer.wao.entity.TerrestrialLocation;
+import fr.ifremer.wao.entity.TerrestrialLocationImpl;
+import org.apache.commons.lang.StringUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class TerrestrialLocationImportModel extends ImportModel<TerrestrialLocation> {
+
+ protected List<ImportableField> allHeaders;
+
+ static abstract class UnParsedField<ObjectType> implements ImportStrategy<ObjectType, String> {
+ @Override
+ public String parse(String value) {
+ return value;
+ }
+ }
+
+ protected <ObjectType> void addHeader(String name, ImportStrategy<TerrestrialLocation, ObjectType> strategy) {
+ boolean ignored = false;
+ if ("TLIEU_LIB".equals(name)) {
+ ignored = true;
+ }
+ allHeaders.add(new ImportableField<TerrestrialLocation, ObjectType>(name, true, ignored, strategy));
+ }
+
+ protected String getCode(String value) {
+ String code = null;
+ if (StringUtils.isNotBlank(value)) {
+ int firstSpaceIndex = value.indexOf(" ");
+ code = value.substring(0, firstSpaceIndex);
+ }
+ return code;
+ }
+
+ protected String getName(String value) {
+ String name = null;
+ if (StringUtils.isNotBlank(value)) {
+ int firstSpaceIndex = value.indexOf(" ");
+ name = value.substring(firstSpaceIndex + 1, value.length());
+ }
+ return name;
+ }
+
+ public TerrestrialLocationImportModel() {
+
+ allHeaders = new ArrayList<ImportableField>();
+
+ ImportStrategy<TerrestrialLocation, LocationType> locationTypeStrategy = new ImportStrategy<TerrestrialLocation, LocationType>() {
+ @Override
+ public LocationType parse(String value) {
+ if ("6".equals(value)) {
+ return LocationType.PORT;
+ } else if ("7".equals(value)) {
+ return LocationType.AUCTION;
+ }
+ throw new IllegalArgumentException(value + " is not a good location code");
+ }
+
+ @Override
+ public void setValue(TerrestrialLocation object, LocationType value) {
+ object.setLocationType(value);
+ }
+ };
+
+ addHeader("TLIEU_COD", locationTypeStrategy);
+ addHeader("TLIEU_LIB", null);
+ addHeader("LIEU_COD", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setCode(value);
+ }
+ });
+ addHeader("LIEU_LIB", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setName(value);
+ }
+ });
+ addHeader("Port", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setPortCode(getCode(value));
+ object.setPortName(getName(value));
+ }
+ });
+ addHeader("Quartier maritime", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setDistrictCode(getCode(value));
+ object.setDistrictName(getName(value));
+ }
+ });
+ addHeader("Département INSEE", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setDepartmentCode(getCode(value));
+ object.setDepartmentName(getName(value));
+ }
+ });
+ addHeader("Sous-région IFREMER", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setSubRegionIfremerCode(getCode(value));
+ object.setSubRegionIfremerName(getName(value));
+ }
+ });
+ addHeader("Région Ifremer", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setRegionIfremerCode(getCode(value));
+ object.setRegionIfremerName(getName(value));
+ }
+ });
+ addHeader("Région INSEE", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setRegionCode(getCode(value));
+ object.setRegionName(getName(value));
+ }
+ });
+ addHeader("Façade maritime", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setSeaboardCode(getCode(value));
+ object.setSeaboardName(getName(value));
+ }
+ });
+ addHeader("Type de Région", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setRegionTypeCode(getCode(value));
+ object.setRegionTypeName(getName(value));
+ }
+ });
+ addHeader("Littoral FAO", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setCoastFAOCode(getCode(value));
+ object.setCoastFAOName(getName(value));
+ }
+ });
+ addHeader("PAYS", new UnParsedField<TerrestrialLocation>() {
+ @Override
+ public void setValue(TerrestrialLocation object, String value) {
+ object.setCountryCode(getCode(value));
+ object.setCountryName(getName(value));
+ }
+ });
+ }
+
+ @Override
+ public TerrestrialLocation newEmptyInstance() {
+ return new TerrestrialLocationImpl();
+ }
+
+ @Override
+ public List<ImportableField> getAllHeaders() {
+ return allHeaders;
+ }
+}
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-01-18 15:21:27 UTC (rev 922)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2011-01-18 15:34:17 UTC (rev 923)
@@ -218,7 +218,7 @@
throw new NullPointerException("boat can not be null for program " + obsProgram);
}
if ( ! boat.canCreateContact(user.getCompany())) {
- throw new WaoBusinessException("Un contact en cours existe déjà pour ce navire");
+ throw new WaoBusinessException("Ce navire ne peut être utilisé, il est inactif ou un contact en déjà en cours");
}
}
Added: trunk/wao-business/src/main/resources/terrestrialLocations.csv
===================================================================
--- trunk/wao-business/src/main/resources/terrestrialLocations.csv (rev 0)
+++ trunk/wao-business/src/main/resources/terrestrialLocations.csv 2011-01-18 15:34:17 UTC (rev 923)
@@ -0,0 +1,1249 @@
+"TLIEU_COD";"TLIEU_LIB";"LIEU_COD";"LIEU_LIB";"Port";"Quartier maritime";"Département INSEE";"Sous-région IFREMER";"Région Ifremer";"Région INSEE";"Façade maritime";"Type de Région";"Littoral FAO";"PAYS"
+6;"Port";"1AC";"La Barbotière (Gujan-Mestras)";"1AC La Barbotière (Gujan-Mestras)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"1BI";"Etang de Palo";"1BI Etang de Palo";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"1BR";"Korejou / Saint-Michel (Plouguerneau)";"1BR Korejou / Saint-Michel (Plouguerneau)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"1CH";"Roubaril (Gatteville-le-Phare)";"1CH Roubaril (Gatteville-le-Phare)";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"1NI";"Villeneuve Loubet";"1NI Villeneuve Loubet";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"1P1";"CP-Capesterre de Marie-Galante";"1P1 CP-Capesterre de Marie-Galante";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"1PL";"Lanmodez";"1PL Lanmodez";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"1TL";"La Capte";"1TL La Capte";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"2AC";"La Malle (Gujan-Mestras)";"2AC La Malle (Gujan-Mestras)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"2BI";"Etang d'Urbino";"2BI Etang d'Urbino";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"2BR";"Kastellac'h (Plouguerneau)";"2BR Kastellac'h (Plouguerneau)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"2CH";"Fermanville";"2CH Fermanville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"2MN";"Saint Nazaire sur Charente";"2MN Saint Nazaire sur Charente";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"2NI";"Cros de Cagnes";"2NI Cros de Cagnes";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"2P1";"SL-Route du Vieux fort";"2P1 SL-Route du Vieux fort";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"2P2";"SL-Anse canot";"2P2 SL-Anse canot";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"2P3";"SL-Saint louis de Marie Galante";"2P3 SL-Saint louis de Marie Galante";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"2P4";"SL-Plage du Bourg";"2P4 SL-Plage du Bourg";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"2PL";"Beg Melen (Plouguiel)";"2PL Beg Melen (Plouguiel)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"2TL";"Port de Porquerolles (Ile de)";"2TL Port de Porquerolles (Ile de)";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"3AC";"Le Rocher (Gujan-Mestras)";"3AC Le Rocher (Gujan-Mestras)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"3BI";"Etang de Diane";"3BI Etang de Diane";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"3BR";"Perros Lilia (Plouguerneau)";"3BR Perros Lilia (Plouguerneau)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"3CH";"Denneville";"3CH Denneville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"3MN";"La Palmyre";"3MN La Palmyre";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"3NI";"Villefranche, Port de la Santé";"3NI Villefranche, Port de la Santé";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"3P1";"DE-Anse des Galets";"3P1 DE-Anse des Galets";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"3P2";"DE-Les Sables";"3P2 DE-Les Sables";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"3P3";"DE-Beausejour";"3P3 DE-Beausejour";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"3P4";"DE-Desert";"3P4 DE-Desert";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"3P5";"DE-Le Souffleur";"3P5 DE-Le Souffleur";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"3P6";"DE-Baie Mahault";"3P6 DE-Baie Mahault";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"3PL";"La Roche Jaune (Plouguiel)";"3PL La Roche Jaune (Plouguiel)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"3TL";"Port de l'Ayguade";"3TL Port de l'Ayguade";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"4AC";"Port le Four (Lège-Cap-Ferret)";"4AC Port le Four (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"4BI";"Etang de Biguglia";"4BI Etang de Biguglia";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"4BR";"Porscave (Lampaul-Plouarzel)";"4BR Porscave (Lampaul-Plouarzel)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"4CH";"Lingreville";"4CH Lingreville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"4NI";"Monaco, Port de Fonvieille";"4NI Monaco, Port de Fonvieille";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"4P1";"BH-Gustavia";"4P1 BH-Gustavia";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"4P2";"BH-Anse du grand cul de sac";"4P2 BH-Anse du grand cul de sac";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"4P3";"BH-Anse de Marigot";"4P3 BH-Anse de Marigot";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"4P4";"BH-Anse de Lorient";"4P4 BH-Anse de Lorient";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"4P5";"BH-Corosol";"4P5 BH-Corosol";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"4P6";"BH-Baie de St Jean";"4P6 BH-Baie de St Jean";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"4PL";"L'Arcouëst / Cornec (Ploubazlanec)";"4PL L'Arcouëst / Cornec (Ploubazlanec)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"4TL";"Salins d'Hyères, Pothuau";"4TL Salins d'Hyères, Pothuau";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"5AC";"Les Jacquets (Lège-Cap-Ferret)";"5AC Les Jacquets (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"5CH";"Genêts";"5CH Genêts";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"5NI";"Monaco, autres ports";"5NI Monaco, autres ports";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"5P1";"SM-Marigot (Marina Royale)";"5P1 SM-Marigot (Marina Royale)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"5P2";"SM-Sandy Ground";"5P2 SM-Sandy Ground";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"5P3";"SM-Quartier d'Orléans";"5P3 SM-Quartier d'Orléans";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"5P4";"SM-Baie Orientale";"5P4 SM-Baie Orientale";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"5P5";"SM-Cul de sac";"5P5 SM-Cul de sac";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"5P6";"SM-Grand Case";"5P6 SM-Grand Case";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"5P7";"SM-St James";"5P7 SM-St James";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"5P8";"SM-Anse Marcel";"5P8 SM-Anse Marcel";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"5PL";"Le Passage (Pleudaniel)";"5PL Le Passage (Pleudaniel)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"5TL";"La Londe des Maures, Miramar";"5TL La Londe des Maures, Miramar";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"6CH";"Montmartin-sur-mer";"6CH Montmartin-sur-mer";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"6PL";"Toul Broch (Ploubazlanec)";"6PL Toul Broch (Ploubazlanec)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"6TL";"Port-Cros (Ile de)";"6TL Port-Cros (Ile de)";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"7CH";"Hauteville-sur-mer";"7CH Hauteville-sur-mer";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"7PL";"Trélévern";"7PL Trélévern";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"7TL";"Ramatuelle, Pointe de la Bonne Terrasse";"7TL Ramatuelle, Pointe de la Bonne Terrasse";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"8CH";"Sainte-Marie-du-Mont";"8CH Sainte-Marie-du-Mont";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"8TL";"Les Marines de Cogolin et Port Grimaud";"8TL Les Marines de Cogolin et Port Grimaud";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"9CH";"Carentan";"9CH Carentan";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"9TL";"San Peire, la Garonnette";"9TL San Peire, la Garonnette";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"AAC";"Cap-Ferret (Lège-Cap-Ferret)";"AAC Cap-Ferret (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"AAD";"Brézellec (Plogoff)";"AAD Brézellec (Plogoff)";"AD Audierne";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"AAJ";"Porto";"AAJ Porto";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"AAY";"Quiberon";"AAY Quiberon";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ABA";"Capbreton";"ABA Capbreton";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ABD";"Aberdeen";"ABD Aberdeen";;;;;;"102 Firth of Forth";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"ABI";"Campoloro";"ABI Campoloro";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ABJ";"Abidjan";"ABJ Abidjan";;;;;;"66 Ouest Afrique";;"34 Atlantique centre-est";"CIV Côte-d'Ivoire"
+6;"Port";"ABL";"Calais";"ABL Calais";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ABR";"Brignogan-Plage";"ABR Brignogan-Plage";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ABX";"Blaye";"ABX Blaye";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ACC";"Mousterlin (Fouesnant)";"ACC Mousterlin (Fouesnant)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ACE";"Arrecife de Lanzarote";"ACE Arrecife de Lanzarote";;;;;;"52 Canaries";;"34 Atlantique centre-est";"ESP Espagne"
+6;"Port";"ACH";"Ravenoville";"ACH Ravenoville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ACI";"Alderney";"ACI Alderney";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"ACN";"Honfleur";"ACN Honfleur";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ACY";"Saint Laurent du Maroni";"ACY Saint Laurent du Maroni";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"ADK";"Grand-Fort-Philippe";"ADK Grand-Fort-Philippe";"DK Dunkerque";"59 Nord";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ADP";"Le Tréport";"ADP Le Tréport";"DP Dieppe";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ADZ";"Roscanvel (Camaret-sur-Mer)";"ADZ Roscanvel (Camaret-sur-Mer)";"DZ Douarnenez";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"AES";"Alesund";"AES Alesund";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"AF1";"FF-Pointe des Nègres";"AF1 FF-Pointe des Nègres";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AF2";"FF-Texaco";"AF2 FF-Texaco";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AF3";"FF-Bas Lycée";"AF3 FF-Bas Lycée";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AF4";"FF-Canal Moreau";"AF4 FF-Canal Moreau";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AF5";"FF-Canal Alaric";"AF5 FF-Canal Alaric";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AF6";"FF-Volga Plage";"AF6 FF-Volga Plage";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AF7";"FF-Coco l'Echelle";"AF7 FF-Coco l'Echelle";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AF8";"FF-Etang Mancini";"AF8 FF-Etang Mancini";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AF9";"FF-Pointe des Grives";"AF9 FF-Pointe des Grives";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AFA";"FF-Canal Levassor";"AFA FF-Canal Levassor";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AFC";"Saint-Aubin-sur-Mer";"AFC Saint-Aubin-sur-Mer";"FC Fécamp";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"AGL";"Ardglass";"AGL Ardglass";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"AGO";"Agotnes";"AGO Agotnes";;;;;;;;;"NOR Norvège"
+6;"Port";"AGV";"Saint-Guénolé (Penmarch)";"AGV Saint-Guénolé (Penmarch)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"AKM";"Aakrehamn";"AKM Aakrehamn";;;;;;;;;"NOR Norvège"
+6;"Port";"ALH";"Antifer (La Poterie-Cap-d'Antifer)";"ALH Antifer (La Poterie-Cap-d'Antifer)";"LH Le Havre";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ALO";"Kerroch (Ploemeur)";"ALO Kerroch (Ploemeur)";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ALR";"Charron Le Pave";"ALR Charron Le Pave";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ALS";"Saint-Gilles-Croix-de-Vie";"ALS Saint-Gilles-Croix-de-Vie";"LS Les Sables-d'Olonne";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"AMA";"Sausset-les-Pins";"AMA Sausset-les-Pins";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"AMN";"Port-des-Barques";"AMN Port-des-Barques";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"AMT";"Saintes-Maries-de-la-Mer, Port Cardian";"AMT Saintes-Maries-de-la-Mer, Port Cardian";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"AMX";"Locquirec";"AMX Locquirec";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ANA";"Basse-Indre (Indre)";"ANA Basse-Indre (Indre)";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ANI";"Cannes, vieux port";"ANI Cannes, vieux port";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ANO";"Baie de Bourgneuf (ens. de communes)";"ANO Baie de Bourgneuf (ens. de communes)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ANR";"Antwerpen";"ANR Antwerpen";;;;;;"62 Sandettie";;"27C Mer du Nord";"BEL Belgique"
+6;"Port";"ANT";"Antsiranana";"ANT Antsiranana";;;;;;"67 Est Afrique";;"51 Océan indien ouest";"MDG Madagascar"
+6;"Port";"AP1";"PP-Lauricisque";"AP1 PP-Lauricisque";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AP2";"PP-Bergevin";"AP2 PP-Bergevin";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AP3";"PP-LaDarse";"AP3 PP-LaDarse";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AP4";"PP-Carenage";"AP4 PP-Carenage";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"AP5";"PP-Marina Pointe-A Pitre";"AP5 PP-Marina Pointe-A Pitre";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"APL";"Bréhec (plusieurs communes)";"APL Bréhec (plusieurs communes)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"APV";"Banyuls-sur-Mer";"APV Banyuls-sur-Mer";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ARE";"Arenys de Mar";"ARE Arenys de Mar";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"ARK";"Arklow";"ARK Arklow";;;;;;"56 Mer d'Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"ARU";"La Possession";"ARU La Possession";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"ASB";"Saint-Jacut-de-la-Mer";"ASB Saint-Jacut-de-la-Mer";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ASM";"Le Vivier-sur-Mer";"ASM Le Vivier-sur-Mer";"SM Saint-Malo";"35 Ille-et-Vilaine";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ASN";"Piriac-sur-Mer";"ASN Piriac-sur-Mer";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ASP";"Miquelon";"ASP Miquelon";"SP Saint-Pierre-et-Miquelon";;"SP Saint-Pierre";"SP Saint-Pierre et Miquelon";;"11 Saint-Pierre-et-Miquelon";;"21 Atlantique nord-ouest";"SPM Saint-Pierre-et-Miquelon"
+6;"Port";"AST";"Valras-Plage";"AST Valras-Plage";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"AT1";"Les Issambres, Port Ferréol";"AT1 Les Issambres, Port Ferréol";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"AT2";"Boulouris, le Toukan";"AT2 Boulouris, le Toukan";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"AT3";"Drammont, la Poussai";"AT3 Drammont, la Poussai";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"AT4";"Agay";"AT4 Agay";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ATB";"Aultbea";"ATB Aultbea";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"ATL";"Bandol";"ATL Bandol";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ATM";"Amsterdam";"ATM Amsterdam";;;;;;"51 Brown Bank";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"AVA";"Larmor-Baden";"AVA Larmor-Baden";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"AVE";"Pampatar";"AVE Pampatar";;;;;;"09 Guyane";;"41 Atlantique sud-ouest";"VEN Venezuela"
+6;"Port";"AVL";"Aviles";"AVL Aviles";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"AYE";"La Meule (L'Ile-d'Yeu)";"AYE La Meule (L'Ile-d'Yeu)";"YE L'Ile-d'Yeu";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"AYR";"Ayr";"AYR Ayr";;;;;;"58 Nord Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"BAC";"Andernos-les-Bains";"BAC Andernos-les-Bains";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BAD";"Sein (Île-de-Sein)";"BAD Sein (Île-de-Sein)";"AD Audierne";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BAJ";"Cargèse";"BAJ Cargèse";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"BAR";"Barcelone";"BAR Barcelone";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"BAY";"Crach";"BAY Crach";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BBA";"Guéthary / Bidart / Biarritz";"BBA Guéthary / Bidart / Biarritz";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BBG";"Blankenberge";"BBG Blankenberge";;;;;;"62 Sandettie";;"27C Mer du Nord";"BEL Belgique"
+6;"Port";"BBI";"Macinaggio";"BBI Macinaggio";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"BBL";"Nord-Boulogne (Boulogne-sur-Mer)";"BBL Nord-Boulogne (Boulogne-sur-Mer)";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BBR";"Kerlouan";"BBR Kerlouan";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BBX";"Bourg-sur-Gironde (Bourg)";"BBX Bourg-sur-Gironde (Bourg)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BCC";"Beg Meil (Fouesnant)";"BCC Beg Meil (Fouesnant)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BCE";"Barcaldine";"BCE Barcaldine";;;;;;"58 Nord Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"BCH";"Les Gougins (Saint-Marcouf)";"BCH Les Gougins (Saint-Marcouf)";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BCN";"Trouville-sur-Mer";"BCN Trouville-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BCY";"Mana";"BCY Mana";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"BDP";"Pourville (Hautot-sur-Mer)";"BDP Pourville (Hautot-sur-Mer)";"DP Dieppe";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BDZ";"Camaret (Camaret-sur-Mer)";"BDZ Camaret (Camaret-sur-Mer)";"DZ Douarnenez";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BEG";"Bergen";"BEG Bergen";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"BEL";"Belfast";"BEL Belfast";;;;;;"58 Nord Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"BF1";"LM-Californie";"BF1 LM-Californie";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BF2";"LM-Lamentin (Bourg)";"BF2 LM-Lamentin (Bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BF3";"LM-Morne Cabrit";"BF3 LM-Morne Cabrit";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BF4";"LM-Calebassier";"BF4 LM-Calebassier";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BFC";"Veules-les-Roses";"BFC Veules-les-Roses";"FC Fécamp";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BFF";"Banff";"BFF Banff";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"BGV";"Lesconil (Plobannalec)";"BGV Lesconil (Plobannalec)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BHN";"Bearhaven";"BHN Bearhaven";;;;;;"54 Firth of Moray";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"BIL";"Bilbao";"BIL Bilbao";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"BJR";"Bajares";"BJR Bajares";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"BLD";"Ballstad";"BLD Ballstad";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"NOR Norvège"
+6;"Port";"BLL";"Ballina";"BLL Ballina";;;;;;;;;"IRL Irlande"
+6;"Port";"BLO";"Lomener (Ploemeur)";"BLO Lomener (Ploemeur)";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BLR";"Port-du-Plomb (Nieul-sur-Mer)";"BLR Port-du-Plomb (Nieul-sur-Mer)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BLS";"L'Aiguillon-sur-Mer";"BLS L'Aiguillon-sur-Mer";"LS Les Sables-d'Olonne";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BLY";"Blyth";"BLY Blyth";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"BMA";"Carry-le-Rouet";"BMA Carry-le-Rouet";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"BMN";"Bourcefranc-le-Chapus";"BMN Bourcefranc-le-Chapus";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BMT";"Port-Saint-Louis-du-Rhône";"BMT Port-Saint-Louis-du-Rhône";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"BMX";"Plougasnou (Le Diben-Primel)";"BMX Plougasnou (Le Diben-Primel)";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BNA";"Autres ports de la Loire (ens. de communes)";"BNA Autres ports de la Loire (ens. de communes)";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BNI";"Golfe Juan (Vallauris)";"BNI Golfe Juan (Vallauris)";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"BNO";"L'Epoids (Beauvoir-sur-Mer)";"BNO L'Epoids (Beauvoir-sur-Mer)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BOO";"Bodo";"BOO Bodo";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"BP1";"GO- La grande baie (Le Gosier)";"BP1 GO- La grande baie (Le Gosier)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BP2";"GO-Le Gosier Bourg";"BP2 GO-Le Gosier Bourg";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BP3";"GO-Anse du Mont";"BP3 GO-Anse du Mont";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BP4";"GO-Petit Havre";"BP4 GO-Petit Havre";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BP5";"GO-Anse canot";"BP5 GO-Anse canot";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"BPL";"Port-Lazo (Plouézec)";"BPL Port-Lazo (Plouézec)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BPV";"Argelès-sur-Mer, Le Racou";"BPV Argelès-sur-Mer, Le Racou";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"BRB";"Brunsbuttel";"BRB Brunsbuttel";;;;;;"98 Borkum";;"27C Mer du Nord";"DEU Allemagne"
+6;"Port";"BRM";"Bermeo";"BRM Bermeo";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"BRP";"Bridport";"BRP Bridport";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"BRS";"Bristol";"BRS Bristol";;;;;;"103 Nord Bishop Trévose";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"BRT";"Bridlington";"BRT Bridlington";;;;;;"101 Farn deeps";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"BRU";"Saint Paul";"BRU Saint Paul";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"BSB";"Le Guildo (Saint-Cast-le-Guildo)";"BSB Le Guildo (Saint-Cast-le-Guildo)";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BSD";"Blacksod point";"BSD Blacksod point";;;;;;"61 Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"BSH";"Brighton";"BSH Brighton";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"BSM";"Cancale";"BSM Cancale";"SM Saint-Malo";"35 Ille-et-Vilaine";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"BSN";"La Turballe";"BSN La Turballe";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BST";"Grau d'Agde";"BST Grau d'Agde";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"BTL";"Sanary-sur-Mer";"BTL Sanary-sur-Mer";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"BTM";"Baltimore";"BTM Baltimore";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"BTY";"Bantry";"BTY Bantry";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"BUR";"Burela";"BUR Burela";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"BVA";"Séné";"BVA Séné";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"BVE";"Carupano";"BVE Carupano";;;;;;"09 Guyane";;"41 Atlantique sud-ouest";"VEN Venezuela"
+6;"Port";"BXM";"Brixham";"BXM Brixham";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"CAC";"Gujan-Mestras";"CAC Gujan-Mestras";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CAD";"Bestrée (Plogoff)";"CAD Bestrée (Plogoff)";"AD Audierne";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CAJ";"Propriano";"CAJ Propriano";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"CAN";"Iles Canaries";"CAN Iles Canaries";;;;;;"52 Canaries";;"34 Atlantique centre-est";"ESP Espagne"
+6;"Port";"CAO";"Carino-Pedra";"CAO Carino-Pedra";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"CAR";"Cartagène";"CAR Cartagène";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"CAY";"Locmariaquer";"CAY Locmariaquer";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CBA";"Saint-Jean-de-Luz, Ciboure";"CBA Saint-Jean-de-Luz, Ciboure";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CBH";"Cobh";"CBH Cobh";;;;;;"71 Sud Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"CBI";"Centuri";"CBI Centuri";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"CBL";"Etaples";"CBL Etaples";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CBR";"Plouguerneau";"CBR Plouguerneau";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CBX";"Pauillac";"CBX Pauillac";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CCC";"Cap Coz (Fouesnant)";"CCC Cap Coz (Fouesnant)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CCH";"Saint-Vaast-la-Hougue";"CCH Saint-Vaast-la-Hougue";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CCN";"Dives-sur-Mer";"CCN Dives-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CCY";"Awala Yalimapo";"CCY Awala Yalimapo";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"CDP";"Quiberville";"CDP Quiberville";"DP Dieppe";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CDX";"Cadix";"CDX Cadix";;;;;;"97 Sud Espagne";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"CDZ";"Morgat (Crozon)";"CDZ Morgat (Crozon)";"DZ Douarnenez";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CED";"Cedeira";"CED Cedeira";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"CEL";"Celeiro";"CEL Celeiro";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"CEU";"Ceuta";"CEU Ceuta";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"CF1";"DC-Canal Ducos";"CF1 DC-Canal Ducos";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"CFC";"Saint-Valery-en-Caux";"CFC Saint-Valery-en-Caux";"FC Fécamp";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CFD";"Clifden";"CFD Clifden";;;;;;"61 Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"CGV";"Loctudy";"CGV Loctudy";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CLI";"Celeiro";"CLI Celeiro";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"CLO";"Larmor-Plage";"CLO Larmor-Plage";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CLR";"La Flotte-en-Ré (La Flotte)";"CLR La Flotte-en-Ré (La Flotte)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CMA";"Cassis";"CMA Cassis";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"CMN";"Mornac-sur-Seudre";"CMN Mornac-sur-Seudre";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CMT";"Port-de-Bouc, Anse Aubran";"CMT Port-de-Bouc, Anse Aubran";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"CMX";"Térenez (Plougasnou)";"CMX Térenez (Plougasnou)";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CNA";"Préfailles";"CNA Préfailles";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CNI";"Antibes, tous les ports";"CNI Antibes, tous les ports";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"CNO";"Fromentine (La Barre-de-Monts)";"CNO Fromentine (La Barre-de-Monts)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CNU";"Craignure";"CNU Craignure";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"COR";"La Corogne";"COR La Corogne";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"COV";"Coverack";"COV Coverack";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"COW";"Cowes harbor";"COW Cowes harbor";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"CP1";"SA-PP Sainte Anne (Bourg)";"CP1 SA-PP Sainte Anne (Bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"CP2";"SA-PP Sainte Anne (Plage municipale)";"CP2 SA-PP Sainte Anne (Plage municipale)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"CP3";"SA-Castaing";"CP3 SA-Castaing";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"CP4";"SA-Plage de Bois Jolan";"CP4 SA-Plage de Bois Jolan";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"CP5";"SA-Les Galbas";"CP5 SA-Les Galbas";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"CPL";"Pors-Even (Ploubazlanec)";"CPL Pors-Even (Ploubazlanec)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CPT";"Le Cap (Afrique du sud)";"CPT Le Cap (Afrique du sud)";;;;;;"67 Est Afrique";;"51 Océan indien ouest";"ZAF Afrique du Sud"
+6;"Port";"CPV";"Saint-Cyprien";"CPV Saint-Cyprien";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"CRK";"Crookhaven";"CRK Crookhaven";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"CRN";"Cromarty";"CRN Cromarty";;;;;;"54 Firth of Moray";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"CRU";"Saint Gilles";"CRU Saint Gilles";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"CSB";"Saint-Cast-le-Guildo";"CSB Saint-Cast-le-Guildo";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CSM";"Dinard";"CSM Dinard";"SM Saint-Malo";"35 Ille-et-Vilaine";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"CSN";"Le Croisic";"CSN Le Croisic";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CST";"Cap d'Agde";"CST Cap d'Agde";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"CTB";"Castletown bearhaven";"CTB Castletown bearhaven";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"CTL";"Le Brusc (Six-Fours-les-Plages)";"CTL Le Brusc (Six-Fours-les-Plages)";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"CTM";"Chatham";"CTM Chatham";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"CTN";"Castletown";"CTN Castletown";;;;;;"56 Mer d'Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"CTO";"Costelloe";"CTO Costelloe";;;;;;"61 Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"CTY";"Castlebay";"CTY Castlebay";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"CUR";"Castro-Urdiales";"CUR Castro-Urdiales";;;;;;;;;"ESP Espagne"
+6;"Port";"CUX";"Cuxhaven";"CUX Cuxhaven";;;;;;"98 Borkum";;"27C Mer du Nord";"DEU Allemagne"
+6;"Port";"CVA";"Sarzeau";"CVA Sarzeau";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"CVE";"Puerto Sucre";"CVE Puerto Sucre";;;;;;"09 Guyane";;"41 Atlantique sud-ouest";"VEN Venezuela"
+6;"Port";"CVY";"Clovelly";"CVY Clovelly";;;;;;"103 Nord Bishop Trévose";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"DAC";"La Teste-de-Buch";"DAC La Teste-de-Buch";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DAD";"Saint-Evette (Esquibien)";"DAD Saint-Evette (Esquibien)";"AD Audierne";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DAJ";"Bonifacio";"DAJ Bonifacio";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"DAK";"Dakar";"DAK Dakar";;;;;;"66 Ouest Afrique";;"34 Atlantique centre-est";"SEN Sénégal"
+6;"Port";"DAR";"Darlowo";"DAR Darlowo";;;;;;;;;"POL Pologne"
+6;"Port";"DAY";"La Trinité-sur-Mer";"DAY La Trinité-sur-Mer";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DBA";"Hendaye";"DBA Hendaye";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DBI";"Saint-Florent";"DBI Saint-Florent";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"DBL";"Le Crotoy";"DBL Le Crotoy";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DBR";"Aber Wrac'h (Landéda)";"DBR Aber Wrac'h (Landéda)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DBX";"Le Verdon-sur-Mer";"DBX Le Verdon-sur-Mer";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DCC";"La Forêt-Fouesnant";"DCC La Forêt-Fouesnant";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DCH";"Barfleur";"DCH Barfleur";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DCN";"Ouistreham";"DCN Ouistreham";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DCY";"Iracoubo-Organabo";"DCY Iracoubo-Organabo";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"DDK";"Dundalk ";"DDK Dundalk ";;;;;;;;;"IRL Irlande"
+6;"Port";"DDZ";"Tréboul (Douarnenez)";"DDZ Tréboul (Douarnenez)";"DZ Douarnenez";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DEN";"Denia";"DEN Denia";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"DF1";"TI-Magasin Zéline ";"DF1 TI-Magasin Zéline ";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DF2";"TI-Bord de Mer (Trois Ilets)";"DF2 TI-Bord de Mer (Trois Ilets)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DF3";"TI-Pointe Galy";"DF3 TI-Pointe Galy";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DF4";"TI-Anse Mitan";"DF4 TI-Anse Mitan";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DF5";"TI-Anse Marette";"DF5 TI-Anse Marette";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DF6";"TI-Anse à l'Ane";"DF6 TI-Anse à l'Ane";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DFC";"Veulettes-sur-Mer";"DFC Veulettes-sur-Mer";"FC Fécamp";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DGT";"Dingle";"DGT Dingle";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"DGV";"Bénodet";"DGV Bénodet";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DHR";"Den Helder";"DHR Den Helder";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"NLD Pays-Bas"
+6;"Port";"DLG";"Dun laoghaire";"DLG Dun laoghaire";;;;;;"56 Mer d'Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"DLO";"Locmiquélic";"DLO Locmiquélic";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DLR";"Saint-Martin-de-Ré";"DLR Saint-Martin-de-Ré";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DMA";"La Ciotat";"DMA La Ciotat";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"DMN";"La Tremblade";"DMN La Tremblade";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DMR";"Dunmore East";"DMR Dunmore East";;;;;;"71 Sud Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"DMT";"Etang de Berre, Saint-Chamas";"DMT Etang de Berre, Saint-Chamas";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"DMX";"Carantec";"DMX Carantec";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DNA";"Pornic";"DNA Pornic";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DNI";"Villefranche-sur-Mer, tous les ports";"DNI Villefranche-sur-Mer, tous les ports";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"DNO";"L'Herbaudière (Noirmoutier-en-l'Île)";"DNO L'Herbaudière (Noirmoutier-en-l'Île)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DP1";"FR-Anse à la barque";"DP1 FR-Anse à la barque";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DP2";"FR-Saint François (Bourg)";"DP2 FR-Saint François (Bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DP3";"FR-Entre port de pêche et plaisance";"DP3 FR-Entre port de pêche et plaisance";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DP4";"FR-Marina de St François";"DP4 FR-Marina de St François";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DP5";"FR-Anse du mancenillier";"DP5 FR-Anse du mancenillier";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DP6";"FR-Anse kahouane";"DP6 FR-Anse kahouane";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"DPL";"Ile-de-Bréhat";"DPL Ile-de-Bréhat";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DPV";"Canet-en-Roussillon";"DPV Canet-en-Roussillon";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"DRG";"Drogheda";"DRG Drogheda";;;;;;"56 Mer d'Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"DRU";"Saint Leu";"DRU Saint Leu";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"DRY";"Derry";"DRY Derry";;;;;;"58 Nord Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"DSB";"La Fresnaye (Erquy)";"DSB La Fresnaye (Erquy)";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DSM";"Saint-Briac-sur-Mer";"DSM Saint-Briac-sur-Mer";"SM Saint-Malo";"35 Ille-et-Vilaine";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"DSN";"Le Pouliguen";"DSN Le Pouliguen";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DST";"Etang de Thau, Marseillan";"DST Etang de Thau, Marseillan";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"DTL";"La Seyne-sur-Mer";"DTL La Seyne-sur-Mer";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"DTM";"Dartmouth harbor";"DTM Dartmouth harbor";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"DUB";"Dublin";"DUB Dublin";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"IRL Irlande"
+6;"Port";"DUR";"Durban (Afrique du sud)";"DUR Durban (Afrique du sud)";;;;;;"67 Est Afrique";;"51 Océan indien ouest";"ZAF Afrique du Sud"
+6;"Port";"DVA";"Damgan, Penerf";"DVA Damgan, Penerf";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"DVE";"La Guaira";"DVE La Guaira";;;;;;"09 Guyane";;"41 Atlantique sud-ouest";"VEN Venezuela"
+6;"Port";"DVG";"Dunvegan";"DVG Dunvegan";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"DVR";"Dover harbor";"DVR Dover harbor";;;;;;"62 Sandettie";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"EAC";"Le Canon (Lège-Cap-Ferret)";"EAC Le Canon (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"EAD";"Pors Poulhan (Plouhinec)";"EAD Pors Poulhan (Plouhinec)";"AD Audierne";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"EAJ";"Porto-Vecchio";"EAJ Porto-Vecchio";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"EAS";"San sebastian";"EAS San sebastian";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"EAY";"Bono";"EAY Bono";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"EBA";"Mimizan";"EBA Mimizan";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"EBI";"Ile-Rousse";"EBI Ile-Rousse";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"EBL";"Saint-Valéry-sur-Somme";"EBL Saint-Valéry-sur-Somme";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"EBR";"Landéda (le vill)";"EBR Landéda (le vill)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"EBX";"Portes Neuves (Saint-Ciers-sur-Gironde)";"EBX Portes Neuves (Saint-Ciers-sur-Gironde)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ECC";"Trévignon (Trégunc)";"ECC Trévignon (Trégunc)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ECH";"Cosqueville";"ECH Cosqueville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ECN";"Lion-sur-Mer";"ECN Lion-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ECY";"Sinnamary";"ECY Sinnamary";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"EF1";"AA-Anse Noire";"EF1 AA-Anse Noire";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EF2";"AA-Anse Dufour";"EF2 AA-Anse Dufour";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EF3";"AA-Grande Anse";"EF3 AA-Grande Anse";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EF4";"AA-Anses d'Arlets (Bourg)";"EF4 AA-Anses d'Arlets (Bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EF5";"AA-Petite Anse (Marigot-coopemar)";"EF5 AA-Petite Anse (Marigot-coopemar)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EF6";"AA-Petite Anse (Degras)";"EF6 AA-Petite Anse (Degras)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EFC";"Yport";"EFC Yport";"FC Fécamp";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"EGE";"Egersund";"EGE Egersund";;;;;;;;;"NOR Norvège"
+6;"Port";"EGV";"Kérity (Penmarch)";"EGV Kérity (Penmarch)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ELO";"Port-Louis";"ELO Port-Louis";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ELR";"Ars-en-Ré";"ELR Ars-en-Ré";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"EMA";"La Redonne, Méjean";"EMA La Redonne, Méjean";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"EMN";"Royan";"EMN Royan";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"EMT";"Ensemble de l'Etang de Berre";"EMT Ensemble de l'Etang de Berre";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"EMX";"Pont de la Corde (Carantec)";"EMX Pont de la Corde (Carantec)";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ENA";"Cordemais";"ENA Cordemais";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ENI";"Menton, vieux port, Garavan";"ENI Menton, vieux port, Garavan";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"EP1";"MO-L'autre bord";"EP1 MO-L'autre bord";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EP2";"MO-Rivière d'Audoin";"EP2 MO-Rivière d'Audoin";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EP3";"MO-Le moule";"EP3 MO-Le moule";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EP4";"MO-Baie du nord ouest";"EP4 MO-Baie du nord ouest";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"EPL";"Loguivy de la mer (Ploubazlanec)";"EPL Loguivy de la mer (Ploubazlanec)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"EPN";"Estepona";"EPN Estepona";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"ESP Espagne"
+6;"Port";"EPV";"Etang de Salse-Leucate, Port Barcarès";"EPV Etang de Salse-Leucate, Port Barcarès";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ERU";"Etang salé";"ERU Etang salé";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"ESB";"Erquy";"ESB Erquy";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ESN";"Mindin (Saint-Brevin-les-Pins)";"ESN Mindin (Saint-Brevin-les-Pins)";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ESS";"Essaouira";"ESS Essaouira";;;;;;"66 Ouest Afrique";;"34 Atlantique centre-est";"MAR Maroc"
+6;"Port";"EST";"Frontignan";"EST Frontignan";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ETL";"Carqueiranne, les salettes";"ETL Carqueiranne, les salettes";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"EUR";"Europoort";"EUR Europoort";;;;;;"62 Sandettie";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"EVA";"Tréhiguier-en-Pénestin (Pénestin)";"EVA Tréhiguier-en-Pénestin (Pénestin)";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"EVD";"Enseivada de aldan";"EVD Enseivada de aldan";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"EVE";"Maracaibo";"EVE Maracaibo";;;;;;"09 Guyane";;"41 Atlantique sud-ouest";"VEN Venezuela"
+6;"Port";"EXM";"Exmouth harbor";"EXM Exmouth harbor";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"FAC";"Petit Piquey (Lège-Cap-Ferret)";"FAC Petit Piquey (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FAD";"Penhors (Pouldreuzic)";"FAD Penhors (Pouldreuzic)";"AD Audierne";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FAJ";"Solenzara";"FAJ Solenzara";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"FAO";"Faro";"FAO Faro";;;;;;;;;"PRT Portugal"
+6;"Port";"FAW";"Fawley";"FAW Fawley";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"FAY";"Ile-d'Houat";"FAY Ile-d'Houat";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FBA";"Contis";"FBA Contis";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FBI";"Calvi";"FBI Calvi";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"FBL";"Le Hourdel (Cayeux-sur-Mer)";"FBL Le Hourdel (Cayeux-sur-Mer)";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"FBR";"Saint-Pabu";"FBR Saint-Pabu";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"FBX";"Callonges (Saint-Ciers-sur-Gironde)";"FBX Callonges (Saint-Ciers-sur-Gironde)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FCC";"Raguénès (Névez)";"FCC Raguénès (Névez)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FCH";"Querqueville la petite";"FCH Querqueville la petite";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"FCN";"Luc-sur-Mer";"FCN Luc-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"FCY";"Kourou";"FCY Kourou";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"FF1";"DI-Anse Cafard";"FF1 DI-Anse Cafard";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"FF2";"DI-Diamant (Bourg)";"FF2 DI-Diamant (Bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"FF3";"DI-La Cherry";"FF3 DI-La Cherry";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"FF4";"DI-Marigot (Diamant)";"FF4 DI-Marigot (Diamant)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"FF5";"DI-Taupinière";"FF5 DI-Taupinière";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"FF6";"DI-Pointe Giraud";"FF6 DI-Pointe Giraud";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"FFC";"Etretat";"FFC Etretat";"FC Fécamp";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"FGV";"Lechiagat (Treffiagat)";"FGV Lechiagat (Treffiagat)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FIS";"Fishguard";"FIS Fishguard";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"FLE";"Fleetwood";"FLE Fleetwood";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"FLO";"Port Lay (Groix)";"FLO Port Lay (Groix)";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FLR";"Angoulins";"FLR Angoulins";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FMA";"L'Estaque";"FMA L'Estaque";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"FMN";"Meschers-sur-Gironde";"FMN Meschers-sur-Gironde";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FMT";"Etang de Berre, Marignane";"FMT Etang de Berre, Marignane";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"FMX";"Pempoul (Saint-Pol-de-Léon)";"FMX Pempoul (Saint-Pol-de-Léon)";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"FNA";"Couëron";"FNA Couëron";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FNI";"St Laurent du Var";"FNI St Laurent du Var";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"FNO";"Le Collet";"FNO Le Collet";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FNT";"Fenit";"FNT Fenit";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"FOL";"Folkestone harbor";"FOL Folkestone harbor";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"FOS";"Fosnavag";"FOS Fosnavag";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"NOR Norvège"
+6;"Port";"FOY";"Fowey";"FOY Fowey";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"FP1";"AB-Anse Bertrand";"FP1 AB-Anse Bertrand";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"FP2";"PL-Port Louis";"FP2 PL-Port Louis";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"FPL";"Lézardrieux";"FPL Lézardrieux";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"FPV";"Port-Leucate";"FPV Port-Leucate";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"FRL";"Ferrol del caudillo";"FRL Ferrol del caudillo";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"FRU";"Saint Pierre";"FRU Saint Pierre";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"FSB";"Dahouët (Pléneuf-Val-André)";"FSB Dahouët (Pléneuf-Val-André)";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"FSH";"Fraserburgh";"FSH Fraserburgh";;;;;;"54 Firth of Moray";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"FSN";"Paimboeuf";"FSN Paimboeuf";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FST";"Palavas-les-Flots";"FST Palavas-les-Flots";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"FTL";"Giens, Ports du Niel, de la Tour Fondue";"FTL Giens, Ports du Niel, de la Tour Fondue";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"FUE";"Fuenterrabia";"FUE Fuenterrabia";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"FUG";"Fuglafjordur (Fuglafirdi)";"FUG Fuglafjordur (Fuglafirdi)";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"FRO Iles Féroé"
+6;"Port";"FVA";"Arradon";"FVA Arradon";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"FVE";"Boca del Rio";"FVE Boca del Rio";;;;;;"09 Guyane";;"41 Atlantique sud-ouest";"VEN Venezuela"
+6;"Port";"FXT";"Felixstowe";"FXT Felixstowe";;;;;;"62 Sandettie";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"GAC";"Grand Piquey (Lège-Cap-Ferret)";"GAC Grand Piquey (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GAJ";"Girolata";"GAJ Girolata";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"GAR";"Gairloch";"GAR Gairloch";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"GAY";"Hoedic";"GAY Hoedic";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GBA";"Adour (ens. communes)";"GBA Adour (ens. communes)";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GBD";"Gibostad";"GBD Gibostad";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"GBI";"Pino (Scallu)";"GBI Pino (Scallu)";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"GBR";"Portsall";"GBR Portsall";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"GBX";"La Belle Etoile (Saint-Androny)";"GBX La Belle Etoile (Saint-Androny)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GCC";"Port Manec'h (Névez)";"GCC Port Manec'h (Névez)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GCH";"Omonville";"GCH Omonville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"GCN";"Langrune-sur-Mer";"GCN Langrune-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"GCY";"Le Larivot (Matoury)";"GCY Le Larivot (Matoury)";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"GDR";"Glandore";"GDR Glandore";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"GF1";"SL-Trois Rivières";"GF1 SL-Trois Rivières";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"GF2";"SL-Corps de Garde";"GF2 SL-Corps de Garde";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"GF3";"SL-Sainte Luce (Bourg)";"GF3 SL-Sainte Luce (Bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"GGA";"Glengariff";"GGA Glengariff";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"GGV";"Larvor (Loctudy)";"GGV Larvor (Loctudy)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GHI";"Greenhithe";"GHI Greenhithe";;;;;;"62 Sandettie";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"GIB";"Gibraltar";"GIB Gibraltar";;;;;;"97 Sud Espagne";;"37 Méditerranée";"GIB Gibraltar"
+6;"Port";"GIT";"Gitalia";"GIT Gitalia";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"GJN";"Gijon";"GJN Gijon";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"GLO";"Port Tudy (Groix)";"GLO Port Tudy (Groix)";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GLR";"Fouras (port sud)";"GLR Fouras (port sud)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GLY";"Galway";"GLY Galway";;;;;;"61 Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"GMA";"Saumaty";"GMA Saumaty";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"GMN";"Talmont-sur-Gironde";"GMN Talmont-sur-Gironde";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GMT";"Darse de l'Amarrée et port Dromar";"GMT Darse de l'Amarrée et port Dromar";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"GMX";"Roscoff";"GMX Roscoff";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"GNA";"Le Migron (Frossay)";"GNA Le Migron (Frossay)";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GNE";"Gent (Ghent)";"GNE Gent (Ghent)";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"BEL Belgique"
+6;"Port";"GNI";"Théoule";"GNI Théoule";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"GNO";"Les Brochets (Bouin)";"GNO Les Brochets (Bouin)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GNW";"Greenwich";"GNW Greenwich";;;;;;"62 Sandettie";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"GOO";"Goole";"GOO Goole";;;;;;"69 Smiths";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"GP1";"PC-Petit canal - la Darse";"GP1 PC-Petit canal - la Darse";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"GPL";"Pleubian(Port-Béni)";"GPL Pleubian(Port-Béni)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"GPV";"Port-la-Nouvelle";"GPV Port-la-Nouvelle";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"GRI";"Grimsby";"GRI Grimsby";;;;;;"69 Smiths";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"GRN";"Greenore";"GRN Greenore";;;;;;;;;"IRL Irlande"
+6;"Port";"GRU";"Langevin";"GRU Langevin";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"GRY";"Gorey";"GRY Gorey";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"GSB";"Binic";"GSB Binic";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"GST";"Le-Grau-du-Roi";"GST Le-Grau-du-Roi";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"GTL";"Hyères, St Pierre sur mer";"GTL Hyères, St Pierre sur mer";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"GTY";"Great yarmouth";"GTY Great yarmouth";;;;;;"69 Smiths";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"GUE";"Guetaria";"GUE Guetaria";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"GVA";"Camoël";"GVA Camoël";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"GVE";"Boca de Pozo";"GVE Boca de Pozo";;;;;;"09 Guyane";;"41 Atlantique sud-ouest";"VEN Venezuela"
+6;"Port";"GVS";"Gravesend";"GVS Gravesend";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"HAC";"Piraillan (Lège-Cap-Ferret)";"HAC Piraillan (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HAJ";"Sagone";"HAJ Sagone";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"HAL";"Halifax";"HAL Halifax";;;;;;"17 Atlantique Nord-Ouest";;"21 Atlantique nord-ouest";"CAN Canada"
+6;"Port";"HAM";"Hamn";"HAM Hamn";;;;;;;;;"NOR Norvège"
+6;"Port";"HAY";"Belle-Île-en-Mer (ens. de communes)";"HAY Belle-Île-en-Mer (ens. de communes)";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HBI";"Erbalunga";"HBI Erbalunga";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"HBO";"Hobro";"HBO Hobro";;;;;;"73 Skagerrak et Cattégat";;"27C Mer du Nord";"DNK Danemark"
+6;"Port";"HBR";"Trémazan (Landuvez)";"HBR Trémazan (Landuvez)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"HBX";"Asques";"HBX Asques";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HCC";"Kerdruc (Névez)";"HCC Kerdruc (Névez)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HCH";"Goury (Auderville)";"HCH Goury (Auderville)";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"HCN";"Courseulles-sur-Mer";"HCN Courseulles-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"HCY";"Montsinéry";"HCY Montsinéry";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"HF1";"RP-Rivière Pilote (Bourg)";"HF1 RP-Rivière Pilote (Bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"HF2";"RP-Poirier";"HF2 RP-Poirier";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"HF3";"RP-Anse Figuier";"HF3 RP-Anse Figuier";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"HGT";"Hugh town";"HGT Hugh town";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"HGV";"Tudy (Île-Tudy)";"HGV Tudy (Île-Tudy)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HHM";"Hanstholm";"HHM Hanstholm";;;;;;"55 Jutland";;"27C Mer du Nord";"DNK Danemark"
+6;"Port";"HLO";"Locmaria (Groix)";"HLO Locmaria (Groix)";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HLR";"Ile-d'Aix";"HLR Ile-d'Aix";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HLY";"Holyhead";"HLY Holyhead";;;;;;"56 Mer d'Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"HMA";"Vieux Port de Marseille";"HMA Vieux Port de Marseille";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"HMN";"Saint-Trojan-les-Bains";"HMN Saint-Trojan-les-Bains";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HMT";"Cabanes de Beauduc";"HMT Cabanes de Beauduc";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"HMX";"Batz (Ile-de-Batz)";"HMX Batz (Ile-de-Batz)";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"HNA";"La Martinière (Le Pellerin)";"HNA La Martinière (Le Pellerin)";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HNI";"La Rague";"HNI La Rague";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"HNO";"Les Champs (Bouin)";"HNO Les Champs (Bouin)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HP1";"MN-Canal des Rotours";"HP1 MN-Canal des Rotours";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"HP2";"MN-(Vieux bourg ) Morne à l'eau";"HP2 MN-(Vieux bourg ) Morne à l'eau";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"HP3";"MN-Anse Babin";"HP3 MN-Anse Babin";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"HP4";"MN-Canal Perrin";"HP4 MN-Canal Perrin";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"HPL";"Tréguier";"HPL Tréguier";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"HPV";"Gruissan";"HPV Gruissan";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"HRD";"Harstad";"HRD Harstad";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"HRI";"Hareid";"HRI Hareid";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"NOR Norvège"
+6;"Port";"HRU";"Saint Philippe";"HRU Saint Philippe";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"HSB";"Saint-Quay-Portrieux";"HSB Saint-Quay-Portrieux";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"HSI";"Helsingor";"HSI Helsingor";;;;;;"62 Sandettie";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"HSL";"Hellevoetsluis";"HSL Hellevoetsluis";;;;;;"62 Sandettie";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"HST";"Etang de Mauguio, Cabanes de Pérols,Mauguio";"HST Etang de Mauguio, Cabanes de Pérols,Mauguio";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"HSY";"Husoy";"HSY Husoy";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"HTL";"Le Lavandou";"HTL Le Lavandou";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"HTP";"Hartlepool";"HTP Hartlepool";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"HVA";"Arzon";"HVA Arzon";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"HVE";"Güiria";"HVE Güiria";;;;;;"09 Guyane";;"41 Atlantique sud-ouest";"VEN Venezuela"
+6;"Port";"HVH";"Hoek van Holland";"HVH Hoek van Holland";;;;;;;;;"NLD Pays-Bas"
+6;"Port";"HYL";"Hayle";"HYL Hayle";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"IAC";"Lège (Lège-Cap-Ferret)";"IAC Lège (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"IAY";"Le Palais";"IAY Le Palais";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"IBR";"Argenton (Porspoder)";"IBR Argenton (Porspoder)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"IBX";"Issan (Soussans)";"IBX Issan (Soussans)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ICC";"Rosbras (Riec-sur-Belon)";"ICC Rosbras (Riec-sur-Belon)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ICH";"Diélette (Flamanville)";"ICH Diélette (Flamanville)";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ICN";"Ver-sur-Mer";"ICN Ver-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"IF1";"MR-La Duprey";"IF1 MR-La Duprey";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IF2";"MR-Le Marin (bourg)";"IF2 MR-Le Marin (bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IF3";"MR-Canal O'Neil";"IF3 MR-Canal O'Neil";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IF4";"MR-Cul de Sac Ferré (cap Marin)";"IF4 MR-Cul de Sac Ferré (cap Marin)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IGV";"Sainte-Marine (Combrit)";"IGV Sainte-Marine (Combrit)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"IJN";"Ijmuiden";"IJN Ijmuiden";;;;;;"51 Brown Bank";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"ILO";"Gâvres";"ILO Gâvres";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"ILR";"Bourg Chapon (Charron)";"ILR Bourg Chapon (Charron)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"IMA";"Vallon des Auffes";"IMA Vallon des Auffes";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"IMN";"Le Château-d'Oléron";"IMN Le Château-d'Oléron";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"IMT";"Les Salins de Giraud";"IMT Les Salins de Giraud";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"IMX";"Santec";"IMX Santec";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"INA";"Trentemoult (Nantes)";"INA Trentemoult (Nantes)";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"INI";"La Napoule";"INI La Napoule";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"INO";"Le Grand Etier de Sallertaine (La Barre-de-Monts)";"INO Le Grand Etier de Sallertaine (La Barre-de-Monts)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"IP1";"BM-Gabarre cote la jaille";"IP1 BM-Gabarre cote la jaille";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IP2";"BM-Baie Mahault (débarcadère)";"IP2 BM-Baie Mahault (débarcadère)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IP3";"BM-Baie Mahault (face ANPE)";"IP3 BM-Baie Mahault (face ANPE)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IP4";"BM-Baie Dupuy";"IP4 BM-Baie Dupuy";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IP5";"BM-Moudong";"IP5 BM-Moudong";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IP6";"BM-Anse de la Chapelle";"IP6 BM-Anse de la Chapelle";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"IPL";"Plougrescant";"IPL Plougrescant";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"IPV";"Etang de Bages-Sigean, Peyriac de mer";"IPV Etang de Bages-Sigean, Peyriac de mer";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"IRU";"Anse des cascades";"IRU Anse des cascades";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"IST";"Etangs de Vic, Moures, Arnel, Prévost, P. Blanches";"IST Etangs de Vic, Moures, Arnel, Prévost, P. Blanches";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ITL";"Saint-Tropez, vieux port";"ITL Saint-Tropez, vieux port";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"IVA";"Arzal";"IVA Arzal";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"IVD";"Invergordon";"IVD Invergordon";;;;;;"54 Firth of Moray";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"JAC";"La Vigne (Lège-Cap-Ferret)";"JAC La Vigne (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JAJ";"Porticcio";"JAJ Porticcio";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"JAY";"Sauzon";"JAY Sauzon";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JBI";"Sisco";"JBI Sisco";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"JBR";"Lanildut";"JBR Lanildut";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"JBX";"Lamarque (Saint-Yzans-de-Médoc)";"JBX Lamarque (Saint-Yzans-de-Médoc)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JCC";"Belon (Riec-sur-Belon)";"JCC Belon (Riec-sur-Belon)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JCH";"Carteret (Barneville-Carteret)";"JCH Carteret (Barneville-Carteret)";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"JCN";"Asnelles";"JCN Asnelles";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"JCY";"Rémire Montjoly";"JCY Rémire Montjoly";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"JF1";"SA-FF Sainte Anne (Bourg)";"JF1 SA-FF Sainte Anne (Bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"JF2";"SA-Anse Tonnoir";"JF2 SA-Anse Tonnoir";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"JF3";"SA-Les Salines";"JF3 SA-Les Salines";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"JF4";"SA-Cap Chevalier";"JF4 SA-Cap Chevalier";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"JF5";"SA-Anse au Bois";"JF5 SA-Anse au Bois";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"JLO";"Etel";"JLO Etel";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JLR";"Corps de Garde (Charron)";"JLR Corps de Garde (Charron)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JMA";"La Madrague de Montredon";"JMA La Madrague de Montredon";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"JMN";"Boyardville (Saint-Georges-d'Oléron)";"JMN Boyardville (Saint-Georges-d'Oléron)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JMT";"Port de Carteau";"JMT Port de Carteau";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"JMX";"Moguériec (Sibiril)";"JMX Moguériec (Sibiril)";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"JNA";"Gravette (La Plaine-sur-Mer)";"JNA Gravette (La Plaine-sur-Mer)";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JNI";"La Figueirette";"JNI La Figueirette";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"JNO";"La Fosse (Barbâtre)";"JNO La Fosse (Barbâtre)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"JP1";"LM-Blachon";"JP1 LM-Blachon";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"JPL";"Port-Blanc (Trévou-Tréguignec)";"JPL Port-Blanc (Trévou-Tréguignec)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"JPV";"Etang de l'Ayrolle";"JPV Etang de l'Ayrolle";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"JRU";"Sainte Rose";"JRU Sainte Rose";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"JST";"Etang de Thau, Mèze, le Mourre Blanc";"JST Etang de Thau, Mèze, le Mourre Blanc";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"JTL";"Saint-Raphaël, vieux port";"JTL Saint-Raphaël, vieux port";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KAC";"L'Herbe (Lège-Cap-Ferret)";"KAC L'Herbe (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KAJ";"Chiavari";"KAJ Chiavari";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KBI";"Pietracorbara";"KBI Pietracorbara";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KBR";"Molène (Ile-Molène)";"KBR Molène (Ile-Molène)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"KBX";"La Mareschale (Saint-Seurin-de-Cadourne)";"KBX La Mareschale (Saint-Seurin-de-Cadourne)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KCC";"Brigneau (Moëlan-sur-Mer)";"KCC Brigneau (Moëlan-sur-Mer)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KCH";"Portbail";"KCH Portbail";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"KCN";"Arromanches-les-Bains";"KCN Arromanches-les-Bains";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"KCY";"Régina";"KCY Régina";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"KEL";"Kiel";"KEL Kiel";;;;;;"99 Mer Baltique";;"27C Mer du Nord";"DEU Allemagne"
+6;"Port";"KET";"Kettletoft, Sanday";"KET Kettletoft, Sanday";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"KF1";"VC-Paquemar";"KF1 VC-Paquemar";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KF2";"VC-Massy-Massy";"KF2 VC-Massy-Massy";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KF3";"VC-Pointe Faula";"KF3 VC-Pointe Faula";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KF4";"VC-Port du Vauclin";"KF4 VC-Port du Vauclin";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KF5";"VC-Marché du Vauclin";"KF5 VC-Marché du Vauclin";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KF6";"VC-Château Paille";"KF6 VC-Château Paille";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KF7";"VC-Anse Maroquet";"KF7 VC-Anse Maroquet";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KF8";"VC-Baie des Mulets (sud)";"KF8 VC-Baie des Mulets (sud)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KF9";"VC-Baie des Mulets (nord)";"KF9 VC-Baie des Mulets (nord)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KFA";"VC-Pointe des Sables";"KFA VC-Pointe des Sables";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KFB";"VC-Pointe Jacob (La Plaine)";"KFB VC-Pointe Jacob (La Plaine)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KIL";"Saint Kilda";"KIL Saint Kilda";;;;;;"104 Bressay";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"KKH";"Kirkehamn";"KKH Kirkehamn";;;;;;;;;"NOR Norvège"
+6;"Port";"KLN";"King's Lynn";"KLN King's Lynn";;;;;;"69 Smiths";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"KLO";"Groix";"KLO Groix";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KLR";"Marans";"KLR Marans";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KMA";"Port des Goudes";"KMA Port des Goudes";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KMN";"La Cotinière (Saint-Pierre d'Oléron)";"KMN La Cotinière (Saint-Pierre d'Oléron)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KMT";"Fos sur Mer, port St Gervais";"KMT Fos sur Mer, port St Gervais";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KMX";"Cléder";"KMX Cléder";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"KNA";"Le Collet (Bourgneuf-en-Retz)";"KNA Le Collet (Bourgneuf-en-Retz)";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KNI";"Cannes, Nourée Rouge";"KNI Cannes, Nourée Rouge";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KNO";"Le Bonhomme (La Guérinière)";"KNO Le Bonhomme (La Guérinière)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KP1";"SR-Morne rouge";"KP1 SR-Morne rouge";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KP2";"SR-Viard";"KP2 SR-Viard";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KP3";"SR-Sainte Rose (bourg)";"KP3 SR-Sainte Rose (bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KP4";"SR-Madame";"KP4 SR-Madame";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KP5";"SR-Vinty";"KP5 SR-Vinty";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KP6";"SR-Clugny";"KP6 SR-Clugny";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"KPL";"Perros-Guirec";"KPL Perros-Guirec";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"KPV";"Cerbère";"KPV Cerbère";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KRU";"Saint Benoît";"KRU Saint Benoît";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"KSL";"Kinsale";"KSL Kinsale";;;;;;"71 Sud Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"KST";"Etang de Thau, Bouzigues";"KST Etang de Thau, Bouzigues";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KSU";"Kristiansund";"KSU Kristiansund";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"KTL";"Cavalaire sur Mer";"KTL Cavalaire sur Mer";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"KVA";"Iles du golfe du Morbihan (ens. de communes)";"KVA Iles du golfe du Morbihan (ens. de communes)";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"KVI";"Klaksvik";"KVI Klaksvik";;;;;;"95 Nord Féroé";;"27B Atlantique nord-est";"FRO Iles Féroé"
+6;"Port";"KYG";"Killybegs";"KYG Killybegs";;;;;;"58 Nord Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"KYK";"Kyleakin";"KYK Kyleakin";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"KYL";"Kyle of lochalsh";"KYL Kyle of lochalsh";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"LAC";"Claouey (Lège-Cap-Ferret)";"LAC Claouey (Lège-Cap-Ferret)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"LAJ";"Porto pollo";"LAJ Porto pollo";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"LAR";"Larne";"LAR Larne";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"LBD";"Lochboisdale (Loch Baghasdail), South Uist";"LBD Lochboisdale (Loch Baghasdail), South Uist";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"LBI";"Porticciolo";"LBI Porticciolo";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"LBN";"Lisbonne";"LBN Lisbonne";;;;;;"74 Portugal";;"27B Atlantique nord-est";"PRT Portugal"
+6;"Port";"LBR";"Ouessant";"LBR Ouessant";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"LBX";"Port de Goulée (Valeyrac)";"LBX Port de Goulée (Valeyrac)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"LCC";"Merrien (Moëlan-sur-Mer)";"LCC Merrien (Moëlan-sur-Mer)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"LCH";"Saint-Germain-sur-Ay";"LCH Saint-Germain-sur-Ay";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"LCN";"Port-en-Bessin (Port-en-Bessin-Huppain)";"LCN Port-en-Bessin (Port-en-Bessin-Huppain)";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"LCY";"Ouanary";"LCY Ouanary";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"LDY";"Londonderry";"LDY Londonderry";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"LEI";"Leith";"LEI Leith";;;;;;"102 Firth of Forth";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"LEK";"Lequeitio (lekeitio/leteitio)";"LEK Lequeitio (lekeitio/leteitio)";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"LF1";"FR-Cap Est";"LF1 FR-Cap Est";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LF2";"FR-Pointe Cerisier";"LF2 FR-Pointe Cerisier";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LF3";"FR-Le Simon";"LF3 FR-Le Simon";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LF4";"FR-Dostaly";"LF4 FR-Dostaly";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LF5";"FR-Frégate sud (Frégate)";"LF5 FR-Frégate sud (Frégate)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LF6";"FR-Frégate nord (Monerot)";"LF6 FR-Frégate nord (Monerot)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LF7";"FR-Ilets du François";"LF7 FR-Ilets du François";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LF8";"FR-Trou Monérot (quartier Presqu'île)";"LF8 FR-Trou Monérot (quartier Presqu'île)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LF9";"FR-Presqu'île (port)";"LF9 FR-Presqu'île (port)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFA";"FR-Le François (bourg) - La jetée";"LFA FR-Le François (bourg) - La jetée";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFB";"FR-Pointe Degras (sud)";"LFB FR-Pointe Degras (sud)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFC";"FR-Pointe Degras (nord)";"LFC FR-Pointe Degras (nord)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFD";"FR-Baie Thalémon";"LFD FR-Baie Thalémon";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFE";"FR-Pointe Thalémon (sud)";"LFE FR-Pointe Thalémon (sud)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFF";"FR-Pointe Thalémon (nord)";"LFF FR-Pointe Thalémon (nord)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFG";"FR-Cul de sac des Roseaux ";"LFG FR-Cul de sac des Roseaux ";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFH";"FR-Mansarde Rancée 2";"LFH FR-Mansarde Rancée 2";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFI";"FR-Mansarde Rancée 3";"LFI FR-Mansarde Rancée 3";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LFJ";"FR-Pointe La Rose (ouest)";"LFJ FR-Pointe La Rose (ouest)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LHR";"Lochinver";"LHR Lochinver";;;;;;"54 Firth of Moray";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"LIT";"Littlehampton";"LIT Littlehampton";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"LIX";"Porto de leixoes";"LIX Porto de leixoes";;;;;;"74 Portugal";;"27B Atlantique nord-est";"PRT Portugal"
+6;"Port";"LLR";"Les Boucholeurs (Châtelaillon-Plage)";"LLR Les Boucholeurs (Châtelaillon-Plage)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"LMA";"Calanque de Sormiou";"LMA Calanque de Sormiou";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"LMD";"Lochmaddy (LMA)";"LMD Lochmaddy (LMA)";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"LMN";"Saint-Seurin-d'Uzet (Chenac-Saint-Seurin-d'Uzet)";"LMN Saint-Seurin-d'Uzet (Chenac-Saint-Seurin-d'Uzet)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"LMP";"Lampedusa";"LMP Lampedusa";;;;;;"94 Mer Ionienne";;"37 Méditerranée";"ITA Italie"
+6;"Port";"LMT";"Etang de Berre, Istres -les heures Claires";"LMT Etang de Berre, Istres -les heures Claires";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"LMX";"Plouescat - Pors-Guen";"LMX Plouescat - Pors-Guen";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"LNI";"Cap d'Ail, Port St Antoine";"LNI Cap d'Ail, Port St Antoine";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"LNO";"Le Morin (La Guérinière)";"LNO Le Morin (La Guérinière)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"LOE";"Loch Ewe";"LOE Loch Ewe";;;;;;"58 Nord Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"LOL";"Lochaline";"LOL Lochaline";;;;;;"105 Nord Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"LOO";"Looe harbor";"LOO Looe harbor";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"LOW";"Lowestoft";"LOW Lowestoft";;;;;;"69 Smiths";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"LP1";"DH-Anse Rifflet";"LP1 DH-Anse Rifflet";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LP2";"DH-Grande anse de Deshaies";"LP2 DH-Grande anse de Deshaies";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LP3";"DH-Deshaies (bourg)";"LP3 DH-Deshaies (bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LP4";"DH-Anse Ferry";"LP4 DH-Anse Ferry";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"LPA";"Las Palmas";"LPA Las Palmas";;;;;;"52 Canaries";;"34 Atlantique centre-est";"ESP Espagne"
+6;"Port";"LPL";"Trégastel";"LPL Trégastel";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"LPV";"Collioure";"LPV Collioure";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"LRU";"Saint André";"LRU Saint André";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"LST";"Marseillan-plage";"LST Marseillan-plage";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"LTL";"St Elme";"LTL St Elme";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"LVA";"Billiers";"LVA Billiers";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"LVL";"La Valette";"LVL La Valette";;;;;;"94 Mer Ionienne";;"37 Méditerranée";"MLT Malte"
+6;"Port";"LVP";"Liverpool";"LVP Liverpool";;;;;;"56 Mer d'Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"LWK";"Lerwick";"LWK Lerwick";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"LYM";"Lyme regis";"LYM Lyme regis";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"MAC";"Arès";"MAC Arès";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"MAJ";"Campomoro";"MAJ Campomoro";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"MAL";"Maloy";"MAL Maloy";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"MAN";"Mandal";"MAN Mandal";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"NOR Norvège"
+6;"Port";"MBR";"Lampaul-Plouarzel (Pospaul)";"MBR Lampaul-Plouarzel (Pospaul)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"MBX";"Saint-Vivien-de-Médoc";"MBX Saint-Vivien-de-Médoc";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"MCC";"Doëlan (Clohars-Carnoët)";"MCC Doëlan (Clohars-Carnoët)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"MCD";"Macduff";"MCD Macduff";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"MCH";"Pirou";"MCH Pirou";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"MCN";"Vierville-sur-Mer / Saint-Laurent-sur-Mer";"MCN Vierville-sur-Mer / Saint-Laurent-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"MCY";"Saint Georges";"MCY Saint Georges";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"MDH";"Milford Haven";"MDH Milford Haven";;;;;;"63 Smalls";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"MF1";"RB-Pointe La Rose (est)";"MF1 RB-Pointe La Rose (est)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MF2";"RB-Pointe La Rose (nord)";"MF2 RB-Pointe La Rose (nord)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MF3";"RB-Sable Blanc (est)";"MF3 RB-Sable Blanc (est)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MF4";"RB-Sable Blanc (ouest)";"MF4 RB-Sable Blanc (ouest)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MF5";"RB-Pointe Hyacinthe (est)";"MF5 RB-Pointe Hyacinthe (est)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MF6";"RB-Pointe Hyacinthe (nord)";"MF6 RB-Pointe Hyacinthe (nord)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MF7";"RB-Pointe Hyacinthe (ouest)";"MF7 RB-Pointe Hyacinthe (ouest)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MF8";"RB-Pointe Royale";"MF8 RB-Pointe Royale";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MF9";"RB-Pont Dore";"MF9 RB-Pont Dore";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFA";"RB-Four à Chaux";"MFA RB-Four à Chaux";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFB";"RB-Pontalery";"MFB RB-Pontalery";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFC";"RB-Le Robert (bourg)";"MFC RB-Le Robert (bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFD";"RB-Pointe Lynch";"MFD RB-Pointe Lynch";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFE";"RB-Pointe Fort";"MFE RB-Pointe Fort";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFF";"RB-Pointe l'Ecurie (est)";"MFF RB-Pointe l'Ecurie (est)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFG";"RB-Pointe l'Ecurie (sud)";"MFG RB-Pointe l'Ecurie (sud)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFH";"RB-Pointe Rouge (sud)";"MFH RB-Pointe Rouge (sud)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFI";"RB-Pointe Rouge (nord)";"MFI RB-Pointe Rouge (nord)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFJ";"RB-Baie de Cayol";"MFJ RB-Baie de Cayol";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFK";"RB-Petit Galion-Pointe Jean Claude";"MFK RB-Petit Galion-Pointe Jean Claude";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MFL";"RB-Ilets du Robert";"MFL RB-Ilets du Robert";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MGT";"Margate";"MGT Margate";;;;;;"62 Sandettie";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"MID";"Middelburg";"MID Middelburg";;;;;;"62 Sandettie";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"MLG";"Meling";"MLG Meling";;;;;;"100 Mer de Norvège";;"27B Atlantique nord-est";"NOR Norvège"
+6;"Port";"MLO";"Le Magouer (Plouhinec)";"MLO Le Magouer (Plouhinec)";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"MLR";"Port nord (Fouras)";"MLR Port nord (Fouras)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"MMA";"Port de Morgiou";"MMA Port de Morgiou";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"MMN";"Mortagne-sur-Gironde";"MMN Mortagne-sur-Gironde";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"MMT";"Etang de Berre, Berre - Port de passet";"MMT Etang de Berre, Berre - Port de passet";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"MMX";"Port du Bloscon - Roscoff";"MMX Port du Bloscon - Roscoff";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"MNI";"Port Gallice";"MNI Port Gallice";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"MP1";"PN-Petite Anse (Pointe noire)";"MP1 PN-Petite Anse (Pointe noire)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MP2";"PN-Baille Argent (Pointe noire)";"MP2 PN-Baille Argent (Pointe noire)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MP3";"PN-Anse Marigo";"MP3 PN-Anse Marigo";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MP4";"PN-Pointe noire (Bourg)";"MP4 PN-Pointe noire (Bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MP5";"PN-Anse Guyonneau";"MP5 PN-Anse Guyonneau";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MP6";"PN-Plage caraïbe";"MP6 PN-Plage caraïbe";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"MPL";"Ploumanac'h (Perros-Guirec)";"MPL Ploumanac'h (Perros-Guirec)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"MPV";"Port St Ange";"MPV Port St Ange";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"MRN";"Marin";"MRN Marin";;;;;;"53 Finisterre Vigo";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"MRS";"Muros";"MRS Muros";;;;;;"53 Finisterre Vigo";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"MRU";"Sainte Marie";"MRU Sainte Marie";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"MSL";"Maassluis";"MSL Maassluis";;;;;;"62 Sandettie";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"MSR";"Misurata";"MSR Misurata";;;;;;"94 Mer Ionienne";;"37 Méditerranée";"LBY Libye"
+6;"Port";"MST";"Etang de Thau, Balaruc";"MST Etang de Thau, Balaruc";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"MTK";"Moutriku";"MTK Moutriku";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"MTL";"Port de Bormes les Mimosas, La Favière";"MTL Port de Bormes les Mimosas, La Favière";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"MVG";"Mevagissey harbor";"MVG Mevagissey harbor";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"NAC";"Taussat (Lanton)";"NAC Taussat (Lanton)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"NAJ";"Tizzano";"NAJ Tizzano";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"NBI";"Santa Severa";"NBI Santa Severa";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"NBR";"Le Conquet";"NBR Le Conquet";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"NBX";"Le Pain de Sucre (Bayon-sur-Gironde)";"NBX Le Pain de Sucre (Bayon-sur-Gironde)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"NCC";"Le Pouldu (Clohars-Carnoët)";"NCC Le Pouldu (Clohars-Carnoët)";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"NCH";"Gouville-sur-Mer";"NCH Gouville-sur-Mer";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"NCN";"Grandcamp (Grandcamp-Maisy)";"NCN Grandcamp (Grandcamp-Maisy)";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"NES";"South Ness";"NES South Ness";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"NF1";"TR-Galion (Quartier Bac)";"NF1 TR-Galion (Quartier Bac)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NF2";"TR-Anse Dijon";"NF2 TR-Anse Dijon";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NF3";"TR-Anse Belune";"NF3 TR-Anse Belune";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NF4";"TR-Spoutourne";"NF4 TR-Spoutourne";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NF5";"TR-Tartane";"NF5 TR-Tartane";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NF6";"TR-Ecole maritime (Autre Bord)";"NF6 TR-Ecole maritime (Autre Bord)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NF7";"TR-Les Raisiniers";"NF7 TR-Les Raisiniers";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NF8";"TR-Petit Brésil";"NF8 TR-Petit Brésil";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NF9";"TR-La Crique";"NF9 TR-La Crique";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NFA";"TR-Anse Cosmy";"NFA TR-Anse Cosmy";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NFB";"TR-Anse Belgrade";"NFB TR-Anse Belgrade";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NLN";"Newlyn";"NLN Newlyn";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"NLR";"Port neuf (Rochefort)";"NLR Port neuf (Rochefort)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"NMA";"Calanque de Port-Miou";"NMA Calanque de Port-Miou";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"NMN";"Port-Maubert (Saint-Fort-sur-Gironde)";"NMN Port-Maubert (Saint-Fort-sur-Gironde)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"NMT";"Etang de Berre, La Mède";"NMT Etang de Berre, La Mède";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"NNI";"Juan les Pins";"NNI Juan les Pins";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"NP1";"BO-Anse Colas Mahault";"NP1 BO-Anse Colas Mahault";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NP2";"BO-Malendure";"NP2 BO-Malendure";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NP3";"BO-Anse à Galets";"NP3 BO-Anse à Galets";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NP4";"BO-Pigeon section la lise";"NP4 BO-Pigeon section la lise";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NP5";"BO-Pigeon section fromager";"NP5 BO-Pigeon section fromager";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NP6";"BO-Pigeon section coton";"NP6 BO-Pigeon section coton";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NP7";"BO-Anse à sable";"NP7 BO-Anse à sable";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NP8";"BO-Bouillante stat therm-Anse Marsolle";"NP8 BO-Bouillante stat therm-Anse Marsolle";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NP9";"BO-Anse de Bouillante";"NP9 BO-Anse de Bouillante";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NPA";"BO-Pointe de l'Ermitage";"NPA BO-Pointe de l'Ermitage";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NPB";"BO-Anse à Cardonnet";"NPB BO-Anse à Cardonnet";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NPC";"BO-Anse à Thomas";"NPC BO-Anse à Thomas";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NPD";"BO-Anse du Dépôt";"NPD BO-Anse du Dépôt";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NPE";"BO-Grande anse Duche";"NPE BO-Grande anse Duche";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NPF";"BO-Trois Tortues";"NPF BO-Trois Tortues";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NPG";"BO-Anse à la Barque (Bouillante)";"NPG BO-Anse à la Barque (Bouillante)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"NPL";"Ile-Grande (Pleumeur-Bodou)";"NPL Ile-Grande (Pleumeur-Bodou)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"NPT";"Nieuwpoort";"NPT Nieuwpoort";;;;;;"62 Sandettie";;"27C Mer du Nord";"BEL Belgique"
+6;"Port";"NPV";"Grau de Leucate";"NPV Grau de Leucate";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"NQY";"Newquay";"NQY Newquay";;;;;;"103 Nord Bishop Trévose";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"NRU";"Saint Denis";"NRU Saint Denis";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"NSD";"North sunderland";"NSD North sunderland";;;;;;"101 Farn deeps";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"NST";"Etang d'Ingril, Les Aresquiers";"NST Etang d'Ingril, Les Aresquiers";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"NTL";"Ste Maxime";"NTL Ste Maxime";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"NWH";"Newhaven";"NWH Newhaven";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"NYN";"Nynashamn";"NYN Nynashamn";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"SWE Suède"
+6;"Port";"OAC";"Cassy (Lanton)";"OAC Cassy (Lanton)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"OAJ";"Figari (port de Pianottoli-Caldarello)";"OAJ Figari (port de Pianottoli-Caldarello)";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"OBI";"Barcaggio";"OBI Barcaggio";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"OBN";"Oban";"OBN Oban";;;;;;"105 Nord Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"OBR";"Lauberlac'h (Le Conquet)";"OBR Lauberlac'h (Le Conquet)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"OBX";"Saint-André-de-Cubzac";"OBX Saint-André-de-Cubzac";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"OCH";"Blainville-sur-Mer";"OCH Blainville-sur-Mer";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"OCN";"Isigny (Isigny-sur-Mer)";"OCN Isigny (Isigny-sur-Mer)";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"OF1";"SM-Luciole";"OF1 SM-Luciole";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"OF2";"SM-Derrière Morne";"OF2 SM-Derrière Morne";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"OF3";"SM-Anse Dufour";"OF3 SM-Anse Dufour";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"OF4";"SM-Sainte Marie (Bourg)";"OF4 SM-Sainte Marie (Bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"OLR";"Rochefort";"OLR Rochefort";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"OMN";"Vitrezay (Saint-Bonnet-sur-Gironde)";"OMN Vitrezay (Saint-Bonnet-sur-Gironde)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"OMT";"Port de Ponteau";"OMT Port de Ponteau";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"OND";"Ondarroa";"OND Ondarroa";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"OP1";"VH-Anse à la Barque";"OP1 VH-Anse à la Barque";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"OP2";"VH-Marigot";"OP2 VH-Marigot";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"OP3";"VH-Vieux Habitants (Bourg)";"OP3 VH-Vieux Habitants (Bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"OP4";"VH-Anse du val de l'orge";"OP4 VH-Anse du val de l'orge";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"OPL";"Trébeurden";"OPL Trébeurden";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"OPV";"Etang de Salse-Leucate, Port-Fitou";"OPV Etang de Salse-Leucate, Port-Fitou";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ORK";"Cork";"ORK Cork";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"OST";"Carnon-Plage";"OST Carnon-Plage";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"OTE";"Oostende";"OTE Oostende";;;;;;"62 Sandettie";;"27C Mer du Nord";"BEL Belgique"
+6;"Port";"OTL";"St Aygulf";"OTL St Aygulf";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"PAC";"Lanton";"PAC Lanton";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"PAJ";"La Tonnara";"PAJ La Tonnara";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"PAS";"Pasajes";"PAS Pasajes";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"PBI";"Tolare";"PBI Tolare";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"PBR";"Le Tinduff (Plougastel-Daoulas)";"PBR Le Tinduff (Plougastel-Daoulas)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"PBX";"Soussans";"PBX Soussans";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"PCH";"Agon-Coutainville";"PCH Agon-Coutainville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"PCN";"Villerville";"PCN Villerville";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"PDS";"Padstow";"PDS Padstow";;;;;;"103 Nord Bishop Trévose";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"PEN";"Penzance";"PEN Penzance";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"PF1";"MG-Le Marigot";"PF1 MG-Le Marigot";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"PHD";"Peterhead";"PHD Peterhead";;;;;;"102 Firth of Forth";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"PHU";"Phuket";"PHU Phuket";;;;;;"68 Asie";;"57 Océan indien est";"THA Thaïlande"
+6;"Port";"PIH";"Portishead";"PIH Portishead";;;;;;"103 Nord Bishop Trévose";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"PLD";"Portland harbor";"PLD Portland harbor";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"PLN";"Port Ellen";"PLN Port Ellen";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"PLR";"Tonnay-Charente";"PLR Tonnay-Charente";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"PLU";"Port-Louis (île Maurice)";"PLU Port-Louis (île Maurice)";;;;;;"67 Est Afrique";;"51 Océan indien ouest";"MUS Maurice"
+6;"Port";"PMH";"Plymouth";"PMH Plymouth";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"PMN";"Les Monards (Barzan)";"PMN Les Monards (Barzan)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"PMT";"Anse des laurons";"PMT Anse des laurons";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"PNI";"Port de Crouton";"PNI Port de Crouton";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"POO";"Poole harbor";"POO Poole harbor";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"PP1";"BA-La Madeleine";"PP1 BA-La Madeleine";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"PP2";"BA-Baillif Quai (Bourg)";"PP2 BA-Baillif Quai (Bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"PP3";"BA-Tour du père Labat";"PP3 BA-Tour du père Labat";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"PPL";"Beg Hent (Lannion)";"PPL Beg Hent (Lannion)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"PPV";"Les Cabanes de Fleury";"PPV Les Cabanes de Fleury";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"PST";"Sète-Mole et canaux";"PST Sète-Mole et canaux";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"PTE";"Porthleven";"PTE Porthleven";;;;;;"64 Sud Bishop";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"PTH";"Portsmouth";"PTH Portsmouth";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"PTL";"Fréjus";"PTL Fréjus";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"PTM";"Tanger Med";"PTM Tanger Med";;;;;;;;;"MAR Maroc"
+6;"Port";"PTR";"Portrush";"PTR Portrush";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"QAC";"Audenge";"QAC Audenge";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"QAJ";"Sant'Amanza";"QAJ Sant'Amanza";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"QBI";"Giottani";"QBI Giottani";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"QBR";"Rostiviec (Loperhet)";"QBR Rostiviec (Loperhet)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"QBX";"Macau";"QBX Macau";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"QCH";"Regnéville-sur-Mer";"QCH Regnéville-sur-Mer";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"QCN";"Bernières-sur-Mer";"QCN Bernières-sur-Mer";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"QF1";"BP-Basse Pointe";"QF1 BP-Basse Pointe";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"QMN";"Brouage (Hiers-Brouage)";"QMN Brouage (Hiers-Brouage)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"QMT";"Carro";"QMT Carro";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"QMX";"Morlaix";"QMX Morlaix";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"QNI";"Port de Salis";"QNI Port de Salis";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"QP1";"BT-Rivière des pères";"QP1 BT-Rivière des pères";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"QP2";"BT-Basse terre (quai saintois)";"QP2 BT-Basse terre (quai saintois)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"QPL";"Le Yaudet (Lannion)";"QPL Le Yaudet (Lannion)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"QPV";"Etang de Bages-Sigean, Bages";"QPV Etang de Bages-Sigean, Bages";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"QST";"Etang de Thau, Pte Courte, Barrou, Zup";"QST Etang de Thau, Pte Courte, Barrou, Zup";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"QTL";"St Cyr sur mer, la Madrague";"QTL St Cyr sur mer, la Madrague";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"RAC";"Le Teich";"RAC Le Teich";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"RAT";"Rathmullan";"RAT Rathmullan";;;;;;"58 Nord Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"RBI";"Algajola (port de San Damiano)";"RBI Algajola (port de San Damiano)";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"RBR";"Pors Beach (Logonna-Daoulas)";"RBR Pors Beach (Logonna-Daoulas)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"RBS";"Ribadesella";"RBS Ribadesella";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"RBX";"Talais";"RBX Talais";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"RCH";"Bricqueville-sur-Mer";"RCH Bricqueville-sur-Mer";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"REI";"Reine";"REI Reine";;;;;;;;;"NOR Norvège"
+6;"Port";"REK";"Rekefjord";"REK Rekefjord";;;;;;;;;"NOR Norvège"
+6;"Port";"RF1";"GR-Grand rivière";"RF1 GR-Grand rivière";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"RIB";"Ribadeo";"RIB Ribadeo";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"RIE";"Rye";"RIE Rye";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"RIV";"Riveira (Santa Uxía de Ribeira)";"RIV Riveira (Santa Uxía de Ribeira)";;;;;;"53 Finisterre Vigo";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"RMA";"Port de Frioul (Ile de)";"RMA Port de Frioul (Ile de)";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"RMG";"Ramsgate";"RMG Ramsgate";;;;;;"62 Sandettie";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"RMN";"Le Douhet (Saint-Denis-d'Oléron)";"RMN Le Douhet (Saint-Denis-d'Oléron)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"RMT";"Lavéra";"RMT Lavéra";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"RNI";"Port Vauban";"RNI Port Vauban";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ROS";"Rosaveel";"ROS Rosaveel";;;;;;"61 Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"ROT";"Rota";"ROT Rota";;;;;;;;;"ESP Espagne"
+6;"Port";"RP1";"GY-Face IRPM";"RP1 GY-Face IRPM";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"RP2";"GY-Marina de Rivière Sens";"RP2 GY-Marina de Rivière Sens";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"RPL";"Locquémeau (Trédrez-Locquémeau)";"RPL Locquémeau (Trédrez-Locquémeau)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"RPV";"Etang de Salse-Leucate,Salse - la Rouquette";"RPV Etang de Salse-Leucate,Salse - la Rouquette";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"RSA";"Rosas";"RSA Rosas";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"RSS";"Rosslare";"RSS Rosslare";;;;;;"56 Mer d'Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"RST";"La Grande Motte";"RST La Grande Motte";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"RTL";"Port de la Coudoulière";"RTL Port de la Coudoulière";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"RTM";"Rotterdam";"RTM Rotterdam";;;;;;;;;"NLD Pays-Bas"
+6;"Port";"RVK";"Risaviki";"RVK Risaviki";;;;;;;;;"NOR Norvège"
+6;"Port";"SAC";"La Hume (Gujan-Mestras)";"SAC La Hume (Gujan-Mestras)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"SAN";"Santona";"SAN Santona";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"SBI";"Sant'Ambroggio";"SBI Sant'Ambroggio";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"SBJ";"Esbjerg";"SBJ Esbjerg";;;;;;"75 Sud Jutland";;"27C Mer du Nord";"DNK Danemark"
+6;"Port";"SBR";"Moulin Mer (Logonna-Daoulas)";"SBR Moulin Mer (Logonna-Daoulas)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"SBX";"Saint-Estèphe";"SBX Saint-Estèphe";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"SCA";"Scarborough";"SCA Scarborough";;;;;;"101 Farn deeps";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"SCB";"Salcombe";"SCB Salcombe";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"SCD";"Schiedam";"SCD Schiedam";;;;;;"62 Sandettie";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"SCH";"Donville-les-Bains";"SCH Donville-les-Bains";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"SCI";"San ciprian";"SCI San ciprian";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"SCR";"Scrabster";"SCR Scrabster";;;;;;"54 Firth of Moray";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"SCT";"Santa Cruz de Tenerife";"SCT Santa Cruz de Tenerife";;;;;;"52 Canaries";;"34 Atlantique centre-est";"ESP Espagne"
+6;"Port";"SF1";"PR-Anse Céron";"SF1 PR-Anse Céron";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SF2";"PR-Anse Belleville";"SF2 PR-Anse Belleville";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SF3";"PR-Les Abymes";"SF3 PR-Les Abymes";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SF4";"PR-Bourg du Prêcheur";"SF4 PR-Bourg du Prêcheur";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SF5";"PR-Pointe Lamare";"SF5 PR-Pointe Lamare";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SF6";"PR-Cimetière";"SF6 PR-Cimetière";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SF7";"PR-Charmeuse";"SF7 PR-Charmeuse";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SFG";"Sant Feliu de Guixols";"SFG Sant Feliu de Guixols";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"SHI";"Shields (north and south)";"SHI Shields (north and south)";;;;;;"101 Farn deeps";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"SHN";"Scheveningen";"SHN Scheveningen";;;;;;"51 Brown Bank";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"SHO";"Shoreham-by-Sea";"SHO Shoreham-by-Sea";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"SHS";"Sheerness";"SHS Sheerness";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"SIE";"Sines";"SIE Sines";;;;;;;;;"PRT Portugal"
+6;"Port";"SJL";"Strangford";"SJL Strangford";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"SKG";"Skagen";"SKG Skagen";;;;;;"73 Skagerrak et Cattégat";;"27C Mer du Nord";"DNK Danemark"
+6;"Port";"SKL";"Skull";"SKL Skull";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"SKU";"Skudeneshavn";"SKU Skudeneshavn";;;;;;;;;"NOR Norvège"
+6;"Port";"SMA";"Pointe Rouge";"SMA Pointe Rouge";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"SMN";"L'Eguille";"SMN L'Eguille";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"SNI";"La Galère";"SNI La Galère";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"SNS";"Stromness";"SNS Stromness";;;;;;"54 Firth of Moray";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"SNT";"Santander";"SNT Santander";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"SOU";"Southampton";"SOU Southampton";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"SP1";"VF-Pointe Mazarin";"SP1 VF-Pointe Mazarin";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SP2";"VF-Anse Dupuy";"SP2 VF-Anse Dupuy";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SP3";"VF-Vieux fort";"SP3 VF-Vieux fort";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SP4";"VF-Pointe à Launay";"SP4 VF-Pointe à Launay";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"SPL";"Buguélès (Penvénan)";"SPL Buguélès (Penvénan)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"SPO";"Santa Pola";"SPO Santa Pola";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"SPT";"St Peter port";"SPT St Peter port";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"SRV";"Sorvagur";"SRV Sorvagur";;;;;;"95 Nord Féroé";;"27B Atlantique nord-est";"FRO Iles Féroé"
+6;"Port";"SSS";"Sharpness";"SSS Sharpness";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"SST";"Etang de Pérols, Port de Carême";"SST Etang de Pérols, Port de Carême";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"STA";"St Aubinr";"STA St Aubinr";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"STH";"St Helier";"STH St Helier";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"STI";"St Ives";"STI St Ives";;;;;;"103 Nord Bishop Trévose";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"STL";"St Mandrier sur mer";"STL St Mandrier sur mer";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"STM";"Stellendam";"STM Stellendam";;;;;;"51 Brown Bank";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"STS";"St Sampson";"STS St Sampson";;;;;;"72 Manche ouest";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"STW";"Stornoway";"STW Stornoway";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"SUL";"Sullom voe";"SUL Sullom voe";;;;;;"104 Bressay";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"SWY";"Scalloway";"SWY Scalloway";;;;;;"104 Bressay";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"TAB";"Tarbert (Royaume-Uni)";"TAB Tarbert (Royaume-Uni)";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"TAC";"La Passerelle (Gujan-Mestras)";"TAC La Passerelle (Gujan-Mestras)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"TAR";"Tarbert (Irlande)";"TAR Tarbert (Irlande)";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"TBI";"Galéria";"TBI Galéria";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"TBR";"Kérascouët (Hôpital-Camfrout)";"TBR Kérascouët (Hôpital-Camfrout)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"TBX";"Saint-Christoly-Médoc";"TBX Saint-Christoly-Médoc";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"TCH";"Chausey (Granville)";"TCH Chausey (Granville)";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"TF1";"SP-Sainte Philomène";"TF1 SP-Sainte Philomène";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"TF2";"SP-Fond Corre";"TF2 SP-Fond Corre";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"TF3";"SP-La Galère";"TF3 SP-La Galère";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"TF4";"SP-Bourg de Saint Pierre";"TF4 SP-Bourg de Saint Pierre";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"THM";"Thema";"THM Thema";;;;;;"66 Ouest Afrique";;"34 Atlantique centre-est";"GHA Ghana"
+6;"Port";"THO";"Thorshavn";"THO Thorshavn";;;;;;"95 Nord Féroé";;"27B Atlantique nord-est";"FRO Iles Féroé"
+6;"Port";"THY";"Thyboron";"THY Thyboron";;;;;;"55 Jutland";;"27C Mer du Nord";"DNK Danemark"
+6;"Port";"TJA";"Tjotta";"TJA Tjotta";;;;;;;;;"NOR Norvège"
+6;"Port";"TMA";"Calanque de Callelongue";"TMA Calanque de Callelongue";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"TMN";"Chaillevette";"TMN Chaillevette";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"TNI";"Baulieu";"TNI Baulieu";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"TNM";"Teignmouth";"TNM Teignmouth";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"TNZ";"Terneuzen";"TNZ Terneuzen";;;;;;"62 Sandettie";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"TOB";"Tobermory";"TOB Tobermory";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"TOR";"Torrevieja";"TOR Torrevieja";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"TP1";"TR-Plage de la grande anse";"TP1 TR-Plage de la grande anse";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"TP2";"TR-Bord de mer (Trois Rivières)";"TP2 TR-Bord de mer (Trois Rivières)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"TPL";"Landrellec (Pleumeur-Bodou)";"TPL Landrellec (Pleumeur-Bodou)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"TRF";"Tarifa";"TRF Tarifa";;;;;;;;;"ESP Espagne"
+6;"Port";"TRN";"Troon";"TRN Troon";;;;;;"58 Nord Irlande";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"TST";"Etang de Mauguio, Cabanes de Lunel";"TST Etang de Mauguio, Cabanes de Lunel";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"TTL";"Port St Louis du Mourillon";"TTL Port St Louis du Mourillon";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"TUB";"Tuborg havn";"TUB Tuborg havn";;;;;;"73 Skagerrak et Cattégat";;"27C Mer du Nord";"DNK Danemark"
+6;"Port";"TVO";"Tvoroyri";"TVO Tvoroyri";;;;;;"96 Sud Féroé";;"27B Atlantique nord-est";"FRO Iles Féroé"
+6;"Port";"UAC";"Larros (Gujan-Mestras)";"UAC Larros (Gujan-Mestras)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"UBI";"Bravone";"UBI Bravone";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"UBR";"Landévennec";"UBR Landévennec";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"UBX";"Meyran";"UBX Meyran";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"UCH";"Granville";"UCH Granville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"UF1";"CB-Carbet Sud";"UF1 CB-Carbet Sud";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"UF2";"CB-Carbet Nord";"UF2 CB-Carbet Nord";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"ULP";"Ullapool";"ULP Ullapool";;;;;;"60 Ouest Hébrides";;"27B Atlantique nord-est";"GBR Royaume-Uni"
+6;"Port";"UMN";"Soubise";"UMN Soubise";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"UNI";"St Jean Cap Ferrat";"UNI St Jean Cap Ferrat";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"UP1";"CB-Anse salé";"UP1 CB-Anse salé";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"UP2";"CB-Anse du Bananier";"UP2 CB-Anse du Bananier";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"UP3";"CB-Anse Saint Sauveur";"UP3 CB-Anse Saint Sauveur";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"UP4";"CB-Capesterre Belle Eau (Bourg)";"UP4 CB-Capesterre Belle Eau (Bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"UP5";"CB-Plage de roseau";"UP5 CB-Plage de roseau";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"UP6";"CB-Sainte Marie";"UP6 CB-Sainte Marie";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"UP7";"CB-Four à chaux";"UP7 CB-Four à chaux";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"UPL";"Pors-Gelin";"UPL Pors-Gelin";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"USK";"Ustka";"USK Ustka";;;;;;"99 Mer Baltique";;"27C Mer du Nord";"POL Pologne"
+6;"Port";"VAC";"Le Canal (Gujan-Mestras)";"VAC Le Canal (Gujan-Mestras)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"VAL";"Valentia";"VAL Valentia";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"VBI";"Meria";"VBI Meria";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"VBR";"Le Frêt (Crozon)";"VBR Le Frêt (Crozon)";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"VBX";"Libourne";"VBX Libourne";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"VCH";"Avranches";"VCH Avranches";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"VDC";"Viana do Castelo";"VDC Viana do Castelo";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"PRT Portugal"
+6;"Port";"VF1";"BF-Fond Capot";"VF1 BF-Fond Capot";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"VF2";"BF-Bourg de Bellefontaine";"VF2 BF-Bourg de Bellefontaine";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"VF3";"BF-Fond Boucher";"VF3 BF-Fond Boucher";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"VIC";"Victoria (Seychelles)";"VIC Victoria (Seychelles)";;;;;;"67 Est Afrique";;"51 Océan indien ouest";"SYC Seychelles"
+6;"Port";"VIG";"Vigo";"VIG Vigo";;;;;;"53 Finisterre Vigo";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"VIL";"Vilagarcia (de arousa)";"VIL Vilagarcia (de arousa)";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"VLC";"Valencia";"VLC Valencia";;;;;;"91 Baléares";;"37 Méditerranée";"ESP Espagne"
+6;"Port";"VMN";"Saint-Nazaire-sur-Charente (Charron)";"VMN Saint-Nazaire-sur-Charente (Charron)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"VNI";"Villefranche, Port de la Darse";"VNI Villefranche, Port de la Darse";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"VP1";"GV-Sainte claire";"VP1 GV-Sainte claire";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"VP2";"GV-Goyave (Bourg)";"VP2 GV-Goyave (Bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"VP3";"GV-Sarcelle";"VP3 GV-Sarcelle";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"VPL";"Plougrescant, Pors-Hir";"VPL Plougrescant, Pors-Hir";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"VRE";"Vila Real de Santo Antonio";"VRE Vila Real de Santo Antonio";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"PRT Portugal"
+6;"Port";"VSN";"Vlissingen";"VSN Vlissingen";;;;;;"62 Sandettie";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"VTL";"Port des Oursinières";"VTL Port des Oursinières";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"VTY";"Ventry";"VTY Ventry";;;;;;"65 Sud-Ouest Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"VVR";"Vivero";"VVR Vivero";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"WAC";"Arcachon HC (ens. de communes)";"WAC Arcachon HC (ens. de communes)";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"WAT";"Waterford";"WAT Waterford";;;;;;"71 Sud Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"WBA";"Bayonne HC (ens. de communes)";"WBA Bayonne HC (ens. de communes)";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"WBX";"Estuaire de la Gironde (ens. de communes)";"WBX Estuaire de la Gironde (ens. de communes)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"WES";"Westport";"WES Westport";;;;;;;;;"IRL Irlande"
+6;"Port";"WF1";"CP-Bourg de Case Pilote";"WF1 CP-Bourg de Case Pilote";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"WF2";"CP-Fond Bourlet";"WF2 CP-Fond Bourlet";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"WHL";"Whitehall Village, Stronsay";"WHL Whitehall Village, Stronsay";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"WIC";"Wicklow";"WIC Wicklow";;;;;;"56 Mer d'Irlande";;"27B Atlantique nord-est";"IRL Irlande"
+6;"Port";"WIK";"Wick";"WIK Wick";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"WKO";"Warkworth";"WKO Warkworth";;;;;;;;;"GBR Royaume-Uni"
+6;"Port";"WLR";"La Rochelle HC (ens. de communes)";"WLR La Rochelle HC (ens. de communes)";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"WLS";"Les Sables-d'Olonne HC (ens. de communes)";"WLS Les Sables-d'Olonne HC (ens. de communes)";"LS Les Sables-d'Olonne";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"WLW";"Woolwich";"WLW Woolwich";;;;;;"62 Sandettie";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"WMN";"Marennes HC (ens. de communes)";"WMN Marennes HC (ens. de communes)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"WNA";"Estuaire de la Loire (ens. de communes)";"WNA Estuaire de la Loire (ens. de communes)";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"WNO";"Noirmoutier HC (ens. de communes)";"WNO Noirmoutier HC (ens. de communes)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"WP1";"PB-Petit bourg - la Vinaigrerie";"WP1 PB-Petit bourg - la Vinaigrerie";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"WRY";"Pierowall";"WRY Pierowall";;;;;;"54 Firth of Moray";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"WTB";"Whitby";"WTB Whitby";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"GBR Royaume-Uni"
+6;"Port";"WTW";"Wallsend";"WTW Wallsend";;;;;;"101 Farn deeps";;"27C Mer du Nord";"GBR Royaume-Uni"
+6;"Port";"XAC";"Arcachon";"XAC Arcachon";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XAD";"Audierne";"XAD Audierne";"AD Audierne";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XAJ";"Ajaccio (Tino Rossi)";"XAJ Ajaccio (Tino Rossi)";"AJ Ajaccio";"2A Corse-du-Sud";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"XAY";"Auray";"XAY Auray";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XBA";"Bayonne";"XBA Bayonne";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XBI";"Bastia";"XBI Bastia";"BI Bastia";"2B Haute-Corse";"CO Corse";"CO Corse";"94 Corse";"93 Corse-Sardaigne";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"XBL";"Boulogne-sur-Mer";"XBL Boulogne-sur-Mer";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XBR";"Brest";"XBR Brest";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XBX";"Bordeaux";"XBX Bordeaux";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XCC";"Concarneau";"XCC Concarneau";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XCH";"Cherbourg";"XCH Cherbourg";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XCN";"Caen";"XCN Caen";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XCY";"Cayenne";"XCY Cayenne";"CY Cayenne";"973 Guyane";"GY Guyane";"GY Guyane";"03 Guyane";"09 Guyane";"02 DOM";"41 Atlantique sud-ouest";"FRA France"
+6;"Port";"XDI";"Dzaoudzi";"XDI Dzaoudzi";"DI Dzaoudzi";;"MY Mayotte";"MY Mayotte";;"13 Mayotte";;"51 Océan indien ouest";"MYT Mayotte"
+6;"Port";"XDK";"Dunkerque";"XDK Dunkerque";"DK Dunkerque";"59 Nord";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XDP";"Dieppe";"XDP Dieppe";"DP Dieppe";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XDZ";"Douarnenez";"XDZ Douarnenez";"DZ Douarnenez";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XF1";"SH-Fond Bernier";"XF1 SH-Fond Bernier";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XF2";"SH-Fond Lahaye";"XF2 SH-Fond Lahaye";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XF3";"SH-Anse Madame";"XF3 SH-Anse Madame";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XF4";"SH-Schoelcher (Bourg)";"XF4 SH-Schoelcher (Bourg)";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XF5";"SH-Anse Gouraud";"XF5 SH-Anse Gouraud";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XFC";"Fécamp";"XFC Fécamp";"FC Fécamp";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XFF";"Fort-de-France";"XFF Fort-de-France";"FF Fort-de-France";"972 Martinique";"MA Martinique";"MA Martinique";"02 Martinique";"08 Martinique";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XFK";"Port-aux-Francais";"XFK Port-aux-Francais";"FK Port-aux-Français";;;;;"15 TAAF";;"58 Antarctique";"ATF TAAF (Terres australes françaises)"
+6;"Port";"XGV";"Guilvinec";"XGV Guilvinec";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XLH";"Le Havre";"XLH Le Havre";"LH Le Havre";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XLO";"Lorient";"XLO Lorient";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XLR";"La Rochelle";"XLR La Rochelle";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XLS";"Les Sables-d'Olonne";"XLS Les Sables-d'Olonne";"LS Les Sables-d'Olonne";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XMA";"Marseille";"XMA Marseille";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"XMN";"Marennes";"XMN Marennes";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XMT";"Martigues";"XMT Martigues";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"XMU";"Mata-Utu";"XMU Mata-Utu";"MU Mata-Utu";;;;;"12 Polynésie française";;"71 Pacifique centre-ouest";"PYF Polynésie française"
+6;"Port";"XMX";"Morlaix";"XMX Morlaix";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XNA";"Nantes";"XNA Nantes";"NA Nantes";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XNC";"Nouméa";"XNC Nouméa";"NC Nouméa";;"NC Nouvelle Calédonie";"NC Nouvelle Calédonie";;"14 Nouvelle-Calédonie";;"71 Pacifique centre-ouest";"NCL Nouvelle-Calédonie"
+6;"Port";"XNI";"Nice";"XNI Nice";"NI Nice";"06 Alpes-Maritimes";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"XNO";"Noirmoutier-en-l'Île";"XNO Noirmoutier-en-l'Île";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XON";"Moroni";"XON Moroni";"ON Moroni";;;;;"13 Mayotte";;"51 Océan indien ouest";"MYT Mayotte"
+6;"Port";"XP1";"TH-Terre de Haut (Bourg)";"XP1 TH-Terre de Haut (Bourg)";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XP2";"TH-Petite anse";"XP2 TH-Petite anse";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XP3";"TH-Anse Fond cure";"XP3 TH-Anse Fond cure";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XP4";"TH-Anse Morel";"XP4 TH-Anse Morel";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XP5";"TH-Plage de Marigot";"XP5 TH-Plage de Marigot";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XP6";"TH-Anse Mire";"XP6 TH-Anse Mire";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XPL";"Paimpol";"XPL Paimpol";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XPP";"Pointe-à-Pitre";"XPP Pointe-à-Pitre";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"XPV";"Port-Vendres";"XPV Port-Vendres";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"XPY";"Papeete";"XPY Papeete";"PY Papeete";;"TA Tahiti";"TA Tahiti";;"12 Polynésie française";;"71 Pacifique centre-ouest";"PYF Polynésie française"
+6;"Port";"XRO";"Rouen";"XRO Rouen";"RO Rouen";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XRU";"Le Port";"XRU Le Port";"RU Saint-Denis de la Réunion";"974 La Réunion";"RU Réunion";"RU Réunion";"04 Réunion";"10 Réunion";"02 DOM";"51 Océan indien ouest";"FRA France"
+6;"Port";"XSB";"Saint-Brieuc";"XSB Saint-Brieuc";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XSM";"Saint-Malo";"XSM Saint-Malo";"SM Saint-Malo";"35 Ille-et-Vilaine";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"XSN";"Saint-Nazaire";"XSN Saint-Nazaire";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XSP";"Saint-Pierre";"XSP Saint-Pierre";"SP Saint-Pierre-et-Miquelon";;"SP Saint-Pierre";"SP Saint-Pierre et Miquelon";;"11 Saint-Pierre-et-Miquelon";;"21 Atlantique nord-ouest";"SPM Saint-Pierre-et-Miquelon"
+6;"Port";"XST";"Sète, tous les ports";"XST Sète, tous les ports";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"XTL";"Toulon";"XTL Toulon";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"XVA";"Vannes";"XVA Vannes";"VA Vannes";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"XXX";"Indéterminé";"XXX Indéterminé";;;;;;"16 Mer du Nord - Manche - Atlantique";;"27 Mer du Nord - Manche - Atlantique";"FRA France"
+6;"Port";"XYE";"Yeu port Joinville (L'Ile-d'Yeu)";"XYE Yeu port Joinville (L'Ile-d'Yeu)";"YE L'Ile-d'Yeu";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"YBX";"Gironde (ensemble des ports)";"YBX Gironde (ensemble des ports)";"BX Bordeaux";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"YMO";"Yarmouth harbor";"YMO Yarmouth harbor";;;;;;"70 Manche est";;"27A Manche";"GBR Royaume-Uni"
+6;"Port";"YNC";"Nouméa (ensemble des ports)";"YNC Nouméa (ensemble des ports)";;;;;;"14 Nouvelle-Calédonie";;"71 Pacifique centre-ouest";"FRA France"
+6;"Port";"YP1";"TB-Grande Anse";"YP1 TB-Grande Anse";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"YP2";"TB-Anse a dos";"YP2 TB-Anse a dos";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"YP3";"TB-Petite anse";"YP3 TB-Petite anse";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"YP4";"TB-Grande baie";"YP4 TB-Grande baie";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"YP5";"TB-Anse des Muriers";"YP5 TB-Anse des Muriers";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"YSN";"Saint-Nazaire (ensemble des ports)";"YSN Saint-Nazaire (ensemble des ports)";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+6;"Port";"YTL";"Toulon (ensemble des ports)";"YTL Toulon (ensemble des ports)";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+6;"Port";"ZAA";"Zaandam";"ZAA Zaandam";;;;;;"51 Brown Bank";;"27C Mer du Nord";"NLD Pays-Bas"
+6;"Port";"ZBG";"Zeebrugge";"ZBG Zeebrugge";;;;;;"62 Sandettie";;"27C Mer du Nord";"BEL Belgique"
+6;"Port";"ZCH";"Utah Beach";"ZCH Utah Beach";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+6;"Port";"ZMY";"Zumaia";"ZMY Zumaia";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+6;"Port";"ZP1";"GB-Folle Anse";"ZP1 GB-Folle Anse";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"ZP2";"GB-Grand bourg de Marie Galante";"ZP2 GB-Grand bourg de Marie Galante";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"ZP3";"GB-Plage de Murat";"ZP3 GB-Plage de Murat";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"ZP4";"GB-Les Basses";"ZP4 GB-Les Basses";"PP Pointe-à-Pitre";"971 Guadeloupe";"GA Guadeloupe";"GA Guadeloupe";"01 Guadeloupe";"07 Guadeloupe";"02 DOM";"31 Atlantique centre-ouest";"FRA France"
+6;"Port";"ZTL";"Giens, la Madrague";"ZTL Giens, la Madrague";"TL Toulon";"83 Var";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"AAY";"Quiberon";"AAY Quiberon";"AY Auray";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"ACN";"Honfleur";"ACN Honfleur";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"ADK";"Grand-Fort-Philippe";"ADK Grand-Fort-Philippe";"DK Dunkerque";"59 Nord";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"AGV";"Saint-Guénolé (Penmarch)";"AGV Saint-Guénolé (Penmarch)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"ALS";"Saint-Gilles-Croix-de-Vie";"ALS Saint-Gilles-Croix-de-Vie";"LS Les Sables-d'Olonne";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"BDZ";"Camaret";"BDZ Camaret (Camaret-sur-Mer)";"DZ Douarnenez";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"BGV";"Lesconil (Plobannalec)";"BGV Lesconil (Plobannalec)";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"BJR";"Bajares";"BJR Bajares";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"BSM";"Cancale";"BSM Cancale";"SM Saint-Malo";"35 Ille-et-Vilaine";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"BSN";"La Turballe";"BSN La Turballe";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"BUR";"Burela";"BUR Burela";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"CAN";"Iles Canaries";"CAN Iles Canaries";;;;;;"52 Canaries";;"34 Atlantique centre-est";"ESP Espagne"
+7;"Criée";"CAO";"Carino";"CAO Carino-Pedra";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"CBA";"Saint-Jean-de-Luz";"CBA Saint-Jean-de-Luz, Ciboure";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"CBL";"Etaples";"CBL Etaples";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"CED";"Cedeira";"CED Cedeira";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"CGV";"Loctudy";"CGV Loctudy";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"CLI";"Celeiro";"CLI Celeiro";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"CMT";"Port-de-Bouc";"CMT Port-de-Bouc, Anse Aubran";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"COR";"La Corogne";"COR La Corogne";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"CSN";"Le Croisic";"CSN Le Croisic";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"CST";"Agde";"CST Cap d'Agde";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"DBA";"Hendaye";"DBA Hendaye";"BA Bayonne";"40 Landes";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"DNO";"L'Herbaudière (Noirmoutier-en-l'Île)";"DNO L'Herbaudière (Noirmoutier-en-l'Île)";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"EMN";"Royan";"EMN Royan";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"EPL";"Loguivy de la mer (Ploubazlanec)";"EPL Loguivy de la mer (Ploubazlanec)";"PL Paimpol";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"ESB";"Erquy";"ESB Erquy";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"GMX";"Roscoff";"GMX Roscoff";"MX Morlaix";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"GPV";"Port-la-Nouvelle";"GPV Port-la-Nouvelle";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"GST";"Le-Grau-du-Roi";"GST Le-Grau-du-Roi";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"HSB";"Saint-Quay-Portrieux";"HSB Saint-Quay-Portrieux";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"KMN";"La Cotinière (Saint-Pierre-d'Oléron)";"KMN La Cotinière (Saint-Pierre d'Oléron)";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"LCN";"Port-en-Bessin (Port-en-Bessin-Huppain)";"LCN Port-en-Bessin (Port-en-Bessin-Huppain)";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"MTK";"Moutriku";"MTK Moutriku";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"NCN";"Grandcamp (Grandcamp-Maisy)";"NCN Grandcamp (Grandcamp-Maisy)";"CN Caen";"14 Calvados";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"OND";"Ondarroa";"OND Ondarroa";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"PAS";"Pasajes";"PAS Pasajes";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"SAN";"Santona";"SAN Santona";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"SNT";"Santander";"SNT Santander";;;;;;"57 Nord Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"UCH";"Granville";"UCH Granville";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"VIG";"Vigo";"VIG Vigo";;;;;;"53 Finisterre Vigo";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"VVR";"Vivero";"VVR Vivero";;;;;;"59 Nord-ouest Espagne";;"27B Atlantique nord-est";"ESP Espagne"
+7;"Criée";"XAC";"Arcachon";"XAC Arcachon";"AC Arcachon";"33 Gironde";"AQ Aquitaine";"AQ Aquitaine";"72 Aquitaine";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XAD";"Audierne";"XAD Audierne";"AD Audierne";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XBL";"Boulogne-sur-Mer";"XBL Boulogne-sur-Mer";"BL Boulogne-sur-Mer";"62 Pas-de-Calais";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"XBR";"Brest";"XBR Brest";"BR Brest";"29 Finistère";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"XCC";"Concarneau";"XCC Concarneau";"CC Concarneau";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XCH";"Cherbourg";"XCH Cherbourg";"CH Cherbourg";"50 Manche";"BN Basse Normandie";"BN Basse Normandie";"25 Basse-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"XDK";"Dunkerque";"XDK Dunkerque";"DK Dunkerque";"59 Nord";"NP Nord Pas de Calais";"NP Nord Pas de Calais";"31 Nord - Pas-de-Calais";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"XDP";"Dieppe";"XDP Dieppe";"DP Dieppe";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"XDZ";"Douarnenez";"XDZ Douarnenez";"DZ Douarnenez";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XFC";"Fécamp";"XFC Fécamp";"FC Fécamp";"76 Seine-Maritime";"HN Haute Normandie";"HN Haute Normandie";"23 Haute-Normandie";"01 Nord / Normandie";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"XGV";"Guilvinec";"XGV Guilvinec";"GV Guilvinec";"29 Finistère";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XLO";"Lorient";"XLO Lorient";"LO Lorient";"56 Morbihan";"SB Sud Bretagne";"BR Bretagne";"53 Bretagne";"03 Bretagne sud";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XLR";"La Rochelle";"XLR La Rochelle";"LR La Rochelle";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XLS";"Les Sables-d'Olonne";"XLS Les Sables-d'Olonne";"LS Les Sables-d'Olonne";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XMA";"Marseille";"XMA Marseille";"MA Marseille";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"XMN";"Marennes";"XMN Marennes";"MN Marennes";"17 Charente-Maritime";"PC Poitou - Charentes";"PC Poitou - Charentes";"54 Poitou - Charentes";"05 Sud-Ouest";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XNO";"Noirmoutier-en-l'Île";"XNO Noirmoutier-en-l'Île";"NO Noirmoutier";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XPV";"Port-Vendres";"XPV Port-Vendres";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"XSB";"Saint-Brieuc";"XSB Saint-Brieuc";"SB Saint-Brieuc";"22 Côtes-d'Armor";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"XSM";"Saint-Malo";"XSM Saint-Malo";"SM Saint-Malo";"35 Ille-et-Vilaine";"NB Nord Bretagne";"BR Bretagne";"53 Bretagne";"02 Bretagne nord";"01 France métropolitaine";"27A Manche";"FRA France"
+7;"Criée";"XSN";"Saint-Nazaire";"XSN Saint-Nazaire";"SN Saint-Nazaire";"44 Loire-Atlantique";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"XST";"Sète";"XST Sète, tous les ports";"ST Sète";"34 Hérault";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"XYE";"Yeu port Joinville (L'Ile-d'Yeu)";"XYE Yeu port Joinville (L'Ile-d'Yeu)";"YE L'Ile-d'Yeu";"85 Vendée";"PL Pays de la Loire";"PL Pays de la Loire";"52 Pays de la Loire";"04 Pays de la Loire";"01 France métropolitaine";"27B Atlantique nord-est";"FRA France"
+7;"Criée";"YMT";"OP Copemart";"XMT Martigues";"MT Martigues";"13 Bouches-du-Rhône";"PA Provence-Alpes-Côte d'Azur";"PA Provence-Alpes-Côte d'Azur";"93 Provence - Alpes - Côte d'Azur";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
+7;"Criée";"YPV";"OP Proquaport";"XPV Port-Vendres";"PV Port-Vendres";"66 Pyrénées-Orientales";"LR Languedoc-Roussillon";"LR Languedoc-Roussillon";"91 Languedoc - Roussillon";"92 Sud-est France";"01 France métropolitaine";"37 Méditerranée";"FRA France"
Added: trunk/wao-business/src/test/java/fr/ifremer/wao/io/csv2/ImportTest.java
===================================================================
--- trunk/wao-business/src/test/java/fr/ifremer/wao/io/csv2/ImportTest.java (rev 0)
+++ trunk/wao-business/src/test/java/fr/ifremer/wao/io/csv2/ImportTest.java 2011-01-18 15:34:17 UTC (rev 923)
@@ -0,0 +1,49 @@
+package fr.ifremer.wao.io.csv2;
+
+import fr.ifremer.wao.entity.TerrestrialLocation;
+import org.apache.commons.io.IOUtils;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.nuiton.topia.persistence.EntityVisitor;
+import org.nuiton.topia.persistence.TopiaEntity;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+public class ImportTest {
+
+ @Test
+ public void testStartImport() throws Exception {
+ String csv =
+ "TLIEU_COD;TLIEU_LIB;LIEU_COD;LIEU_LIB;Port;Quartier maritime;Département INSEE;Sous-région IFREMER;Région Ifremer;Région INSEE;Façade maritime;Type de Région;Littoral FAO;PAYS\n" +
+ "7;Criée;AAY;Quiberon;AAY Quiberon;AY Auray;56 Morbihan;SB Sud Bretagne;BR Bretagne;53 Bretagne;03 Bretagne sud;01 France métropolitaine;27B Atlantique nord-est;FRA France\n" +
+ "6;Port;1AC;La Barbotière (Gujan-Mestras);1AC La Barbotière (Gujan-Mestras);AC Arcachon;33 Gironde;AQ Aquitaine;AQ Aquitaine;72 Aquitaine;05 Sud-Ouest;01 France métropolitaine;27B Atlantique nord-est;FRA France\n" +
+ "6;Port;ZTL;Giens, la Madrague;ZTL Giens, la Madrague;TL Toulon;83 Var;PA Provence-Alpes-Côte d'Azur;PA Provence-Alpes-Côte d'Azur;93 Provence - Alpes - Côte d'Azur;92 Sud-est France;01 France métropolitaine;37 Méditerranée;FRA France\n" +
+ "6;Port;XPY;Papeete;XPY Papeete;PY Papeete;;TA Tahiti;TA Tahiti;;12 Polynésie française;;71 Pacifique centre-ouest;PYF Polynésie française\n" +
+ "6;Port;TJA;Tjotta;TJA Tjotta;;;;;;;;;NOR Norvège\n";
+
+ ImportModel<TerrestrialLocation> model = new TerrestrialLocationImportModel();
+
+
+ List<TerrestrialLocation> locations = new ArrayList<TerrestrialLocation>();
+ List<String> locationsCodes = new ArrayList<String>();
+
+ Import<TerrestrialLocation> terrestrialLocationImport =
+ new Import<TerrestrialLocation>(model, IOUtils.toInputStream(csv));
+
+ Iterator<TerrestrialLocation> it = terrestrialLocationImport.startImport();
+
+ while (it.hasNext()) {
+ TerrestrialLocation location = it.next();
+ locations.add(location);
+ locationsCodes.add(location.getCode());
+ }
+
+ Assert.assertEquals(5, locations.size());
+ Assert.assertTrue(locationsCodes.contains("1AC"));
+ Assert.assertTrue(locationsCodes.contains("XPY"));
+ Assert.assertTrue(locationsCodes.contains("TJA"));
+ }
+}
1
0
[Suiviobsmer-commits] r922 - in trunk: wao-business/src/main/java/fr/ifremer/wao wao-business/src/main/java/fr/ifremer/wao/entity wao-business/src/main/java/fr/ifremer/wao/service wao-business/src/main/resources/i18n wao-business/src/main/xmi wao-business/src/test/java/fr/ifremer/wao/entity wao-business/src/test/java/fr/ifremer/wao/service wao-ui/src/main/java/fr/ifremer/wao/ui/pages wao-ui/src/main/resources/i18n wao-ui/src/main/webapp
by bleny@users.labs.libre-entreprise.org 18 Jan '11
by bleny@users.labs.libre-entreprise.org 18 Jan '11
18 Jan '11
Author: bleny
Date: 2011-01-18 15:21:27 +0000 (Tue, 18 Jan 2011)
New Revision: 922
Log:
add terrestrial location import ; add locations in sampleRows and contacts
Modified:
trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java
trunk/wao-business/src/main/java/fr/ifremer/wao/entity/ContactImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.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-business/src/main/xmi/wao.zargo
trunk/wao-business/src/test/java/fr/ifremer/wao/entity/BoatImplTest.java
trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceBoatImplTest.java
trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceContactInternalTest.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java
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/ContactForm.tml
trunk/wao-ui/src/main/webapp/SampleRowForm.tml
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java 2011-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -734,9 +734,9 @@
"coastFAOCode CHARACTER VARYING(255)," +
"coastFAOName CHARACTER VARYING(255))");
- queries.add("ALTER TABLE SampleRow ADD terrestrialLocation CHARACTER VARYING(255) NOT NULL;");
+ queries.add("ALTER TABLE SampleRow ADD terrestrialLocation CHARACTER VARYING(255);");
queries.add("ALTER TABLE SampleRow ADD CONSTRAINT TerrestrialLocation_fkey FOREIGN KEY (terrestrialLocation) REFERENCES TerrestrialLocation(topiaId);");
- queries.add("ALTER TABLE Contact ADD terrestrialLocation CHARACTER VARYING(255) NOT NULL;");
+ queries.add("ALTER TABLE Contact ADD terrestrialLocation CHARACTER VARYING(255);");
queries.add("ALTER TABLE Contact ADD CONSTRAINT TerrestrialLocation_fkey FOREIGN KEY (terrestrialLocation) REFERENCES TerrestrialLocation(topiaId);");
}
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/entity/ContactImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/entity/ContactImpl.java 2011-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/entity/ContactImpl.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -124,4 +124,10 @@
public void setSamplingStrategy(SamplingStrategy samplingStrategy) {
setSamplingStrategyOrdinal(samplingStrategy.ordinal());
}
+
+ @Override
+ public void setSampleRow(SampleRow sampleRow) {
+ super.setSampleRow(sampleRow);
+ setObsProgram(sampleRow.getObsProgram());
+ }
}
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -138,6 +138,13 @@
contact.sizeSecondaryObservers();
contact.getSampleRow().sizeSampleMonth();
contact.getBoat().getName();
+
+ if (contact.getObsProgram() == ObsProgram.OBSVENTE) {
+ // load
+ contact.getSampleRow().getTerrestrialLocation();
+ contact.getTerrestrialLocation();
+ }
+
return contact;
}
@@ -202,8 +209,10 @@
}
@Override
- public Contact executeGetNewContact(ObsProgram obsProgram, WaoUser user, SampleRow row, Boat boat) throws WaoBusinessException {
+ public Contact executeGetNewContact(WaoUser user, SampleRow row, Boat boat) throws WaoBusinessException {
+ ObsProgram obsProgram = row.getObsProgram();
+
if (obsProgram.equals(ObsProgram.OBSMER)) {
if (boat == null) {
throw new NullPointerException("boat can not be null for program " + obsProgram);
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -31,6 +31,7 @@
import fr.ifremer.wao.WaoException;
import fr.ifremer.wao.WaoQueryBuilder;
import fr.ifremer.wao.WaoQueryHelper;
+import fr.ifremer.wao.bean.ContactFilter;
import fr.ifremer.wao.bean.SamplingFilter;
import fr.ifremer.wao.entity.FishingGearDCF;
import fr.ifremer.wao.entity.FishingGearDCFDAO;
@@ -48,7 +49,6 @@
import fr.ifremer.wao.io.csv2.Import;
import fr.ifremer.wao.io.csv2.ImportModel;
import fr.ifremer.wao.io.csv2.TerrestrialLocationImportModel;
-import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringUtils;
import org.nuiton.topia.TopiaContext;
import org.nuiton.topia.TopiaException;
@@ -58,13 +58,13 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
-import java.util.ArrayList;
import java.util.Arrays;
+import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
+import java.util.Map;
/**
* ServiceReferentialImpl
@@ -297,12 +297,14 @@
TerrestrialLocation location = dao.findByDistrictCode(districtCode);
TerrestrialLocation district = new TerrestrialLocationImpl();
- Binder locationBinder = BinderFactory.newBinder(TerrestrialLocation.class);
+ Binder<TerrestrialLocation, TerrestrialLocation> locationBinder =
+ BinderFactory.newBinder(TerrestrialLocation.class);
locationBinder.copyExcluding(location, district, TerrestrialLocation.PROPERTY_NAME,
TerrestrialLocation.PROPERTY_CODE, TerrestrialLocation.PROPERTY_PORT_CODE,
TerrestrialLocation.PROPERTY_PORT_NAME, TerrestrialLocation.PROPERTY_LOCATION_TYPE_ORDINAL,
TerrestrialLocation.TOPIA_ID, TerrestrialLocation.TOPIA_CREATE_DATE,
TerrestrialLocation.TOPIA_VERSION);
+ district.setLocationType(null);
dao.create(district);
}
@@ -321,4 +323,30 @@
}
}
+
+ @Override
+ protected List<TerrestrialLocation> executeGetAllTerrestrialDistricts(TopiaContext transaction, SamplingFilter filter) throws Exception {
+ TerrestrialLocationDAO dao = WaoDAOHelper.getTerrestrialLocationDAO(transaction);
+ List<TerrestrialLocation> result = dao.findAllByLocationTypeOrdinal(null);
+ return result;
+ }
+
+ @Override
+ protected List<TerrestrialLocation> executeGetAllTerrestrialLocations(TopiaContext transaction,
+ ContactFilter filter, String districtCode) throws Exception {
+ TerrestrialLocationDAO dao = WaoDAOHelper.getTerrestrialLocationDAO(transaction);
+ Map<String, Object> properties = new HashMap<String, Object>();
+ properties.put(TerrestrialLocation.PROPERTY_DISTRICT_CODE, districtCode);
+ List<TerrestrialLocation> result = dao.findAllByProperties(properties);
+
+ TerrestrialLocation removeDistrict = null;
+ for (TerrestrialLocation locationResult : result) {
+ if (locationResult.getLocationType() == null) {
+ removeDistrict = locationResult;
+ }
+ }
+ result.remove(removeDistrict);
+
+ return result;
+ }
}
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -552,6 +552,11 @@
result.sizeSampleMonth();
result.sizeElligibleBoat();
+ if (result.getObsProgram() == ObsProgram.OBSVENTE) {
+ // load specific field
+ result.getTerrestrialLocation();
+ }
+
return result;
}
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties 2011-01-18 15:21:27 UTC (rev 922)
@@ -136,6 +136,8 @@
wao.error.serviceNews.getNewNews=
wao.error.serviceNews.getNews=
wao.error.serviceNews.saveNews=
+wao.error.serviceReferential.getAllTerrestrialDistricts=
+wao.error.serviceReferential.getAllTerrestrialLocations=
wao.error.serviceReferential.getCodesDCF5Contains=
wao.error.serviceReferential.getFacades=
wao.error.serviceReferential.getFishingZones=
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties 2011-01-18 15:21:27 UTC (rev 922)
@@ -156,6 +156,8 @@
wao.error.serviceNews.getNewNews=
wao.error.serviceNews.getNews=Impossible de r\u00E9cup\u00E9rer l'ensemble des news
wao.error.serviceNews.saveNews=Impossible d'enregistrer la news ayant pour titre '%1$s'
+wao.error.serviceReferential.getAllTerrestrialDistricts=
+wao.error.serviceReferential.getAllTerrestrialLocations=
wao.error.serviceReferential.getCodesDCF5Contains=
wao.error.serviceReferential.getFacades=Impossible de charger la liste des facades
wao.error.serviceReferential.getFishingZones=Impossible de charger la liste des secteurs de p\u00EAche
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/entity/BoatImplTest.java
===================================================================
--- trunk/wao-business/src/test/java/fr/ifremer/wao/entity/BoatImplTest.java 2011-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/test/java/fr/ifremer/wao/entity/BoatImplTest.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -132,7 +132,7 @@
serviceSampling.createUpdateSampleRow(row, boats, new SampleRowLogImpl());
ServiceContact serviceContact = manager.getServiceContact();
- Contact contact1 = serviceContact.getNewContact(ObsProgram.OBSMER, user, row, boat);
+ Contact contact1 = serviceContact.getNewContact(user, row, boat);
contact1.setContactState(ContactState.CONTACT_START);
serviceContact.saveContact(contact1, false);
@@ -232,7 +232,7 @@
ServiceContact serviceContact = manager.getServiceContact();
// First contact : OK
- Contact contact1 = serviceContact.getNewContact(ObsProgram.OBSMER, user, row, boat);
+ Contact contact1 = serviceContact.getNewContact(user, row, boat);
contact1.setContactState(ContactState.BOARDING_DONE);
Date begin = DateUtil.createDate(3, 5, 2010);
contact1.setObservationBeginDate(begin);
@@ -245,7 +245,7 @@
int result = boat.getNbBoarding(fromDate);
Assert.assertEquals(1, result);
- Contact contact2 = serviceContact.getNewContact(ObsProgram.OBSMER, user, row, boat);
+ Contact contact2 = serviceContact.getNewContact(user, row, boat);
// Second contact with ValidationProgram = FALSE
contact2.setContactState(ContactState.BOARDING_DONE);
begin = DateUtil.createDate(3, 8, 2010);
@@ -257,7 +257,7 @@
result = boat.getNbBoarding(fromDate);
Assert.assertEquals(1, result);
- Contact contact3 = serviceContact.getNewContact(ObsProgram.OBSMER, user, row, boat);
+ Contact contact3 = serviceContact.getNewContact(user, row, boat);
// Third contact with tideBeginDate < fromDate
contact3.setContactState(ContactState.BOARDING_DONE);
begin = DateUtil.createDate(3, 3, 2010);
@@ -268,7 +268,7 @@
result = boat.getNbBoarding(fromDate);
Assert.assertEquals(1, result);
- Contact contact4 = serviceContact.getNewContact(ObsProgram.OBSMER, user2, row2, boat);
+ Contact contact4 = serviceContact.getNewContact(user2, row2, boat);
// Fourth contact : OK with an other company
contact4.setContactState(ContactState.BOARDING_DONE);
begin = DateUtil.createDate(3, 5, 2010);
Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceBoatImplTest.java
===================================================================
--- trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceBoatImplTest.java 2011-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceBoatImplTest.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -297,7 +297,7 @@
transaction.closeContext();
ServiceContact serviceContact = manager.getServiceContact();
- Contact contact1 = serviceContact.getNewContact(ObsProgram.OBSMER, user, row, boat);
+ Contact contact1 = serviceContact.getNewContact(user, row, boat);
contact1.setContactState(ContactState.CONTACT_START);
serviceContact.saveContact(contact1, false);
Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceContactInternalTest.java
===================================================================
--- trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceContactInternalTest.java 2011-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceContactInternalTest.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -32,6 +32,7 @@
import fr.ifremer.wao.bean.SamplingStrategy;
import fr.ifremer.wao.entity.Boat;
import fr.ifremer.wao.entity.BoatDAO;
+import fr.ifremer.wao.entity.BoatImpl;
import fr.ifremer.wao.entity.Company;
import fr.ifremer.wao.entity.CompanyDAO;
import fr.ifremer.wao.entity.Contact;
@@ -175,7 +176,7 @@
if (needBoat) {
BoatDAO boatDAO = WaoDAOHelper.getBoatDAO(transaction);
- boat = boatDAO.create(Boat.PROPERTY_IMMATRICULATION, 175846);
+ boat = boatDAO.create(Boat.PROPERTY_IMMATRICULATION, 175846, Boat.PROPERTY_ACTIVE, true);
when(contact.getBoat()).thenReturn(boat);
}
@@ -675,8 +676,15 @@
/** PREPARE DATA **/
prepareData(true, true);
+// TopiaContext transaction = manager.getContext().beginTransaction();
+// ContactDAO dao = WaoDAOHelper.getContactDAO(transaction);
+// List<Contact> allContact = dao.findAll();
+// for (Contact contact : allContact) {
+// dao.delete(contact);
+// }
+
// Don't use a mock in this case
- Contact newContact = service.getNewContact(ObsProgram.OBSVENTE, observer, sampleRow, boat);
+ Contact newContact = service.getNewContact(observer, sampleRow, boat);
newContact.setTopiaCreateDate(DateUtil.createDate(2, 3, 2010));
/** EXEC METHOD **/
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -851,10 +851,7 @@
// Get boat from list
boat = getBoats().get(boatImmatriculation);
//contacts.createNewContact(boat, sampleRow);
- Contact newContact = serviceContact.getNewContact(user.getProfile().getObsProgram(),
- user.getUser(),
- sampleRow,
- boat);
+ Contact newContact = serviceContact.getNewContact(user.getUser(), sampleRow, boat);
contacts.setContactSelectedId(newContact.getTopiaId());
return contacts;
}
@@ -863,10 +860,7 @@
// Get sampleRow from elligibleBoat list
ElligibleBoat elligible = getCompanyBoatInfos().getElligibleBoat(sampleRowCode);
sampleRow = elligible.getSampleRow();
- Contact newContact = serviceContact.getNewContact(user.getProfile().getObsProgram(),
- user.getUser(),
- sampleRow,
- getBoatSelected());
+ Contact newContact = serviceContact.getNewContact(user.getUser(), sampleRow, getBoatSelected());
// contacts.createNewContact(getBoatSelected(), sampleRow);
contacts.setContactSelectedId(newContact.getTopiaId());
return contacts;
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java 2011-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -3,15 +3,19 @@
import fr.ifremer.wao.WaoBusinessException;
import fr.ifremer.wao.WaoException;
import fr.ifremer.wao.bean.ConnectedUser;
+import fr.ifremer.wao.bean.ContactFilterImpl;
import fr.ifremer.wao.bean.ContactState;
import fr.ifremer.wao.bean.DataReliability;
import fr.ifremer.wao.bean.ObsProgram;
+import fr.ifremer.wao.bean.SamplingFilterImpl;
import fr.ifremer.wao.bean.UserRole;
import fr.ifremer.wao.bean.ValidationResult;
import fr.ifremer.wao.entity.Contact;
import fr.ifremer.wao.entity.SampleRow;
+import fr.ifremer.wao.entity.TerrestrialLocation;
import fr.ifremer.wao.entity.WaoUser;
import fr.ifremer.wao.service.ServiceContact;
+import fr.ifremer.wao.service.ServiceReferential;
import fr.ifremer.wao.service.ServiceUser;
import fr.ifremer.wao.ui.components.Layout;
import fr.ifremer.wao.ui.data.GenericSelectModel;
@@ -21,7 +25,9 @@
import org.apache.commons.lang.StringUtils;
import org.apache.tapestry5.Block;
import org.apache.tapestry5.EventContext;
+import org.apache.tapestry5.OptionModel;
import org.apache.tapestry5.RenderSupport;
+import org.apache.tapestry5.SelectModel;
import org.apache.tapestry5.annotations.Component;
import org.apache.tapestry5.annotations.Environmental;
import org.apache.tapestry5.annotations.Import;
@@ -32,6 +38,8 @@
import org.apache.tapestry5.annotations.SessionState;
import org.apache.tapestry5.corelib.components.Form;
import org.apache.tapestry5.corelib.components.Zone;
+import org.apache.tapestry5.internal.OptionModelImpl;
+import org.apache.tapestry5.internal.SelectModelImpl;
import org.apache.tapestry5.ioc.Messages;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.apache.tapestry5.ioc.services.PropertyAccess;
@@ -44,7 +52,9 @@
import java.util.Date;
import java.util.List;
+import static org.nuiton.i18n.I18n.n_;
+
/**
* In this page, user will be able to edit a contact. Fields depends on right
* level and validations.
@@ -160,6 +170,9 @@
contact = serviceContact.getContact(contactId);
mainObserverId = contact.getMainObserver().getTopiaId();
+ if (contact.getTerrestrialLocation() != null) {
+ terrestrialLocationId = contact.getTerrestrialLocation().getTopiaId();
+ }
if (oldContact == contact) {
throw new IllegalStateException("il faut deux instances différentes");
}
@@ -290,7 +303,25 @@
return connectedUser.getProfile().getObsProgram() == ObsProgram.OBSVENTE;
}
+ @Inject
+ private ServiceReferential serviceReferential;
+ private GenericSelectModel<TerrestrialLocation> terrestrialLocationSelectModel;
+
+ @Property
+ private String terrestrialLocationId;
+
+ public GenericSelectModel<TerrestrialLocation> getTerrestrialLocationSelectModel() {
+ if (terrestrialLocationSelectModel == null) {
+ List<TerrestrialLocation> locations =
+ serviceReferential.getAllTerrestrialLocations(new ContactFilterImpl(),
+ contact.getSampleRow().getTerrestrialLocation().getDistrictCode());
+ terrestrialLocationSelectModel = new GenericSelectModel<TerrestrialLocation>(locations, TerrestrialLocation.class,
+ TerrestrialLocation.PROPERTY_NAME, TerrestrialLocation.TOPIA_ID, propertyAccess);
+ }
+ return terrestrialLocationSelectModel;
+ }
+
/************************ ADMIN FIELDS ************************************/
@@ -323,147 +354,6 @@
saveContact = true;
}
-// @Log
-// void onValidateFormFromContactForm() {
-//
-// contactForm.clearErrors();
-//
-// if ( ! saveContact) {
-// return;
-// }
-//
-// if (mainObserverId != null) {
-// WaoUser mainObserver = getObserverSelectModel().findObject(mainObserverId);
-// contact.setMainObserver(mainObserver);
-// if (logger.isDebugEnabled()) {
-// logger.debug("main observer is " + mainObserver);
-// }
-// }
-//
-// contact.setSecondaryObservers(getSecondaryObservers());
-//
-// if (contact.getMainObserver() == null) {
-// contactForm.recordError("Il faut au moins un observateur référant");
-// }
-//
-// if (contact.getSecondaryObservers().contains(contact.getMainObserver())) {
-// contactForm.recordError("L'utilisateur référant ne doit pas se trouver aussi parmi les observateurs secondaires");
-// }
-//
-// // Validation for saving contact depends on contactState (only edition
-// // form)
-// ContactState contactState = contact.getContactState();
-// if (logger.isDebugEnabled()) {
-// logger.debug("For state : " + contactState);
-// }
-//
-// Date begin = contact.getObservationBeginDate();
-// Date end = contact.getObservationEndDate();
-// Date input = contact.getDataInputDate();
-// SampleRow row = contact.getSampleRow();
-//
-// if (logger.isDebugEnabled()) {
-// logger.debug(String.format("begin = %s, end = %s, input = %s", begin, end, input));
-// }
-//
-// if (begin != null && !row.isValid(begin)) {
-// contactForm.recordError(
-// "La date de début de la marée doit correspondre à un " +
-// "mois valide (non vide) de la ligne " + row.getCode());
-// }
-//
-// if (begin != null && end != null && end.before(begin)) {
-// contactForm.recordError("La date de fin de la marée" +
-// " ne peut pas être antérieure à celle de début");
-// }
-//
-// Date current = manager.getCurrentDate();
-//
-// if (end != null && end.after(current)) {
-// contactForm.recordError("La date de fin de la marée" +
-// " ne peut pas être postérieure à la date du jour");
-// }
-//
-// if (end != null && input != null && end.after(input)) {
-// contactForm.recordError("La date de saisie des" +
-// " données ne peut pas être antérieure à la date de" +
-// " fin de la marée");
-// }
-//
-// if (input != null && input.after(current)) {
-// contactForm.recordError("La date de saisie des" +
-// " données ne peut pas être postérieure à la date" +
-// " du jour");
-// }
-//
-// // Non abouti, Refus ou Refus Définitif
-// if (contactState.isUnfinishedState()) {
-// String newComment = contact.getComment();
-//
-// boolean commentDefined = StringUtils.isNotEmpty(newComment);
-// boolean commentChanged = commentDefined &&
-// !newComment.equals(oldContact.getComment());
-//
-// // Ano #2540 : NPE on oldState, extract boolean for
-// // previous unfinishedState case
-// boolean previousUnfinishedState = commentDefined &&
-// oldContact.getContactState() != null && oldContact.getContactState().isUnfinishedState();
-//
-// // Ano #2440 : no restriction if previous state is unfinished
-// if (previousUnfinishedState || commentChanged) {
-//
-// // RAZ des champs
-// contact.setObservationBeginDate(null);
-// contact.setObservationEndDate(null);
-// contact.setNbObservants(0);
-// contact.setMammalsCapture(false);
-// contact.setMammalsObservation(false);
-// contact.setDataInputDate(null);
-//
-// } else {
-// contactForm.recordError("Vous devez ajouter" +
-// " un commentaire pour l'état" +
-// " '" + contactState.libelle() + "'");
-// }
-// // Embarquement Réalisé
-// } else if (contactState.equals(ContactState.BOARDING_DONE)) {
-//
-// if (begin == null) {
-// contactForm.recordError("La date de début de" +
-// " marée est obligatoire pour l'état" +
-// " '" + contactState.libelle() + "'");
-// }
-// if (end == null) {
-// contactForm.recordError("La date de fin de" +
-// " marée est obligatoire pour l'état" +
-// " '" + contactState.libelle() + "'");
-// }
-// if (contact.getNbObservants() == 0) {
-// contactForm.recordError("Il ne peut y" +
-// " avoir aucun observateur pour l'état" +
-// " '" + contactState.libelle() + "'");
-// }
-//
-// if (logger.isDebugEnabled()) {
-// logger.debug("ValidationProgram = " + contact.isValidationProgram());
-// }
-//
-// if (BooleanUtils.isTrue(contact.isValidationProgram())) {
-//
-// // it's an admin validation, data-reliability field must be filled
-// if (logger.isDebugEnabled()) {
-// logger.debug("field data reliability is " +
-// contact.getDataReliability());
-// }
-//
-// if (contact.getDataReliability() == null ||
-// contact.getDataReliability() == DataReliability.UNKNOWN) {
-// contactForm.recordError("Il faut préciser la qualité des données avant de valider");
-// }
-// }
-// }
-// }
-
@Log
void onValidateFormFromContactForm() {
contactForm.clearErrors();
@@ -473,12 +363,17 @@
contact.setMainObserver(mainObserver);
}
contact.setSecondaryObservers(getSecondaryObservers());
+ if (terrestrialLocationId != null) {
+ TerrestrialLocation terrestrialLocation = getTerrestrialLocationSelectModel().findObject(terrestrialLocationId);
+ contact.setTerrestrialLocation(terrestrialLocation);
+ }
ValidationResult validationResult = serviceContact.validateContact(contact);
if ( ! validationResult.isSuccess()) {
contactForm.recordError(validationResult.getMessage());
}
}
+
@Log
Object onFailureFromContactForm() {
// refresh zone to show errors
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java 2011-01-18 15:21:27 UTC (rev 922)
@@ -43,6 +43,7 @@
import fr.ifremer.wao.entity.SampleRow;
import fr.ifremer.wao.entity.SampleRowLog;
import fr.ifremer.wao.entity.TargetSpeciesDCF;
+import fr.ifremer.wao.entity.TerrestrialLocation;
import fr.ifremer.wao.service.ServiceBoat;
import fr.ifremer.wao.service.ServiceReferential;
import fr.ifremer.wao.service.ServiceSampling;
@@ -66,11 +67,14 @@
import org.apache.tapestry5.annotations.SessionState;
import org.apache.tapestry5.beaneditor.BeanModel;
import org.apache.tapestry5.corelib.components.Form;
+import org.apache.tapestry5.internal.OptionGroupModelImpl;
import org.apache.tapestry5.internal.OptionModelImpl;
import org.apache.tapestry5.internal.SelectModelImpl;
+import org.apache.tapestry5.ioc.Messages;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.apache.tapestry5.ioc.services.PropertyAccess;
import org.apache.tapestry5.services.BeanModelSource;
+import org.chenillekit.tapestry.core.internal.GenericSelectionModel;
import org.nuiton.topia.persistence.TopiaEntity;
import org.nuiton.util.PeriodDates;
import org.nuiton.util.StringUtil;
@@ -84,6 +88,8 @@
import java.util.LinkedList;
import java.util.List;
+import static org.nuiton.i18n.I18n.n_;
+
/**
* SampleRowForm
*
@@ -110,6 +116,9 @@
@Inject
private ServiceBoat serviceBoat;
+ @Inject
+ private Messages messages;
+
@SessionState
@Property
private ConnectedUser user;
@@ -164,8 +173,16 @@
}
immatriculations = getSampleRow().getMainElligibleBoatsAsString();
+
+ if (getSampleRow().getTerrestrialLocation() != null) {
+ terrestrialLocationId = getSampleRow().getTerrestrialLocation().getTopiaId();
+ }
}
+ public boolean showObsVente() {
+ return user.getProfile().getObsProgram() == ObsProgram.OBSVENTE;
+ }
+
/*************************** PROFESSION ***********************************/
/** Select model which contains all professions **/
@@ -328,6 +345,22 @@
edited = true;
}
+ /*************************** TERRESTRIAL LOCATION *************************/
+
+ private GenericSelectModel<TerrestrialLocation> terrestrialLocationSelectModel;
+
+ @Property
+ private String terrestrialLocationId;
+
+ public GenericSelectModel<TerrestrialLocation> getTerrestrialLocationSelectModel() {
+ if (terrestrialLocationSelectModel == null) {
+ List<TerrestrialLocation> locations = serviceReferential.getAllTerrestrialDistricts(new SamplingFilterImpl());
+ terrestrialLocationSelectModel = new GenericSelectModel<TerrestrialLocation>(locations, TerrestrialLocation.class,
+ TerrestrialLocation.PROPERTY_DISTRICT_NAME, TerrestrialLocation.TOPIA_ID, propertyAccess);
+ }
+ return terrestrialLocationSelectModel;
+ }
+
/*************************** PROGRAM & MONTHS *****************************/
@Inject
@@ -596,6 +629,12 @@
@Log
void onValidateFormFromSampleRowForm() throws WaoException {
sampleRowForm.clearErrors();
+
+ if (StringUtils.isNotEmpty(terrestrialLocationId)) {
+ getSampleRow().setTerrestrialLocation(
+ getTerrestrialLocationSelectModel().findObject(terrestrialLocationId));
+ }
+
try {
// Only for save or periodChanged (refreshMonth)
if (!cancel && !edited) {
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-01-18 15:21:27 UTC (rev 922)
@@ -78,9 +78,10 @@
wao.ui.field.Contact.mainObserver=Main observer
wao.ui.field.Contact.mammalsCapture=Accidental capture
wao.ui.field.Contact.mammalsObservation=Exceptional observation
-wao.ui.field.Contact.nbObservants=Observants number
+wao.ui.field.Contact.nbObservants=Observers number
wao.ui.field.Contact.samplingStrategy=Sampling strategy followed
wao.ui.field.Contact.secondaryObservers=Observers
+wao.ui.field.Contact.terrestrialLocation=Place
wao.ui.field.Contact.validationCompany=Company validation
wao.ui.field.Contact.validationProgram=Program validation
wao.ui.field.FishingZone.facadeName=Facade
@@ -92,6 +93,7 @@
wao.ui.field.SampleRow.professionCode=Profession code
wao.ui.field.SampleRow.programName=Program
wao.ui.field.SampleRow.samplingStrategy=Sampling strategy
+wao.ui.field.SampleRow.terrestrialLocation=Maritime district
wao.ui.field.User.firstName=Fisrt name
wao.ui.field.User.lastName=Last name
wao.ui.field.User.login=Login
@@ -175,6 +177,8 @@
wao.ui.misc.observer=Observer
wao.ui.misc.observers=Observers
wao.ui.misc.onDate=on
+wao.ui.misc.or=or
+wao.ui.misc.other=Other
wao.ui.misc.refused=Refused
wao.ui.misc.since=since
wao.ui.misc.total=Total
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-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-01-18 15:21:27 UTC (rev 922)
@@ -81,6 +81,7 @@
wao.ui.field.Contact.nbObservants=Nombre d'observateurs
wao.ui.field.Contact.samplingStrategy=Strat\u00E9gie d'\u00E9chantillonnage suivie
wao.ui.field.Contact.secondaryObservers=Observateurs
+wao.ui.field.Contact.terrestrialLocation=Lieu
wao.ui.field.Contact.validationCompany=Validation soci\u00E9t\u00E9
wao.ui.field.Contact.validationProgram=Validation programme
wao.ui.field.FishingZone.facadeName=Fa\u00E7ade
@@ -92,6 +93,7 @@
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.terrestrialLocation=Quartier maritime
wao.ui.field.User.firstName=Pr\u00E9nom
wao.ui.field.User.lastName=Nom
wao.ui.field.User.login=Identifiant
@@ -175,6 +177,8 @@
wao.ui.misc.observer=Observateur
wao.ui.misc.observers=Observateurs
wao.ui.misc.onDate=le
+wao.ui.misc.or=ou
+wao.ui.misc.other=Autre
wao.ui.misc.refused=R\u00E9fus\u00E9
wao.ui.misc.since=depuis le
wao.ui.misc.total=Total
Modified: trunk/wao-ui/src/main/webapp/ContactForm.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/ContactForm.tml 2011-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-ui/src/main/webapp/ContactForm.tml 2011-01-18 15:21:27 UTC (rev 922)
@@ -140,6 +140,10 @@
</div>
<t:if test="showObsVente()">
<div>
+ <label for="terrestrialLocation">${message:wao.ui.field.SampleRow.terrestrialLocation}</label>
+ ${contact.terrestrialLocation.name} (${getLabelForEnum(contact.terrestrialLocation.locationType)})
+ </div>
+ <div>
<label>${message:wao.ui.field.Contact.samplingStrategy}</label>
${contact.samplingStrategy}
</div>
@@ -211,6 +215,16 @@
</div>
<t:if test="showObsVente()">
<div>
+ <label for="terrestrialLocation">
+ ${message:wao.ui.field.Contact.terrestrialLocation}
+ </label>
+ <input t:id="terrestrialLocation"
+ t:type="select"
+ t:model="terrestrialLocationSelectModel"
+ t:value="terrestrialLocationId"
+ t:validate="required" />
+ </div>
+ <div>
<label for="actualSamplingStrategy">${message:wao.ui.field.Contact.samplingStrategy}</label>
<input t:type="select" t:id="actualSamplingStrategy" t:value="contact.samplingStrategy" t:validate="required" />
</div>
Modified: trunk/wao-ui/src/main/webapp/SampleRowForm.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/SampleRowForm.tml 2011-01-17 13:13:47 UTC (rev 921)
+++ trunk/wao-ui/src/main/webapp/SampleRowForm.tml 2011-01-18 15:21:27 UTC (rev 922)
@@ -78,6 +78,10 @@
${fishingZone.code}
</li>
</ul>
+ <p>
+ <label for="terrestrialLocation">${message:wao.ui.field.SampleRow.terrestrialLocation}</label>
+ ${sampleRow.terrestrialLocation}
+ </p>
<p:else>
<!-- EDITION -->
<div class="select">
@@ -96,6 +100,18 @@
${fishingZone.code}
</div>
</div>
+ <t:if t:test="showObsVente()">
+ <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>
+ </t:if>
</p:else>
</t:if>
<div class="t-beaneditor-row">
@@ -116,11 +132,11 @@
<p:else>
<!-- EDITION PROGRAM -->
<div class="select">
- <t:label t:for="program"/>* :
+ <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"/>-->
- ou <input t:type="textfield" t:id="programName" value="programName" />
+ ${message:wao.ui.misc.or} <input t:type="textfield" t:id="programName" value="programName" />
</div>
</p:else>
</t:if>
1
0
[Suiviobsmer-commits] r921 - in trunk/wao-business/src/main: java/fr/ifremer/wao java/fr/ifremer/wao/service resources/i18n xmi
by bleny@users.labs.libre-entreprise.org 17 Jan '11
by bleny@users.labs.libre-entreprise.org 17 Jan '11
17 Jan '11
Author: bleny
Date: 2011-01-17 13:13:47 +0000 (Mon, 17 Jan 2011)
New Revision: 921
Log:
add terrestrial locations import
Modified:
trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContextImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.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
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContextImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContextImpl.java 2011-01-14 15:46:02 UTC (rev 920)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContextImpl.java 2011-01-17 13:13:47 UTC (rev 921)
@@ -26,6 +26,7 @@
import fr.ifremer.wao.entity.ActivityCalendar;
import fr.ifremer.wao.io.csv.ImportHelper;
+import fr.ifremer.wao.service.ServiceReferential;
import fr.ifremer.wao.service.ServiceUser;
import org.apache.commons.lang.RandomStringUtils;
import org.apache.commons.lang.StringUtils;
@@ -51,6 +52,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.io.InputStream;
import java.nio.charset.Charset;
import java.util.Date;
import java.util.Locale;
@@ -250,7 +252,10 @@
serviceUser.createDefaultAdmin();
// import all DCF codes
- getServiceFactory().getServiceReferential().importDCFcodes();
+ ServiceReferential serviceReferential = getServiceFactory().getServiceReferential();
+ serviceReferential.importDCFcodes();
+ InputStream terrestrialLocationsCsv = getClass().getResourceAsStream("/terrestrialLocations.csv");
+ serviceReferential.importTerrestrialLocations(terrestrialLocationsCsv);
if (log.isInfoEnabled()) {
log.info("wao is started !");
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-01-14 15:46:02 UTC (rev 920)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2011-01-17 13:13:47 UTC (rev 921)
@@ -40,18 +40,30 @@
import fr.ifremer.wao.entity.ProfessionDAO;
import fr.ifremer.wao.entity.TargetSpeciesDCF;
import fr.ifremer.wao.entity.TargetSpeciesDCFDAO;
+import fr.ifremer.wao.entity.TerrestrialLocation;
+import fr.ifremer.wao.entity.TerrestrialLocationDAO;
+import fr.ifremer.wao.entity.TerrestrialLocationImpl;
import fr.ifremer.wao.io.csv.ImportHelper;
import fr.ifremer.wao.io.csv.WaoCsvHeader.FISHING_ZONE;
+import fr.ifremer.wao.io.csv2.Import;
+import fr.ifremer.wao.io.csv2.ImportModel;
+import fr.ifremer.wao.io.csv2.TerrestrialLocationImportModel;
+import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringUtils;
import org.nuiton.topia.TopiaContext;
import org.nuiton.topia.TopiaException;
import org.nuiton.topia.framework.TopiaQuery;
+import org.nuiton.util.beans.Binder;
+import org.nuiton.util.beans.BinderFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Iterator;
import java.util.List;
/**
@@ -247,4 +259,66 @@
}
}
+ /**
+ *
+ * @param input a CVS file with terrestrial locations
+ */
+ @Override
+ protected void executeImportTerrestrialLocations(TopiaContext transaction, InputStream input) throws Exception {
+
+ TerrestrialLocationDAO dao = WaoDAOHelper.getTerrestrialLocationDAO(transaction);
+
+ int count = dao.count();
+
+ if (count == 0) {
+
+ ImportModel<TerrestrialLocation> model = new TerrestrialLocationImportModel();
+ Import<TerrestrialLocation> terrestrialLocationImport = new Import<TerrestrialLocation>(model, input);
+
+ Iterator<TerrestrialLocation> locationIterator = terrestrialLocationImport.startImport();
+ while (locationIterator.hasNext()) {
+ TerrestrialLocation location = locationIterator.next();
+ dao.create(location);
+ }
+
+ if (log.isInfoEnabled()) {
+ count = dao.count();
+ log.info(count + " terrestrial locations imported");
+ }
+
+ // add districts
+ WaoQueryHelper.TerrestrialLocationProperty terrestrialLocationProperty =
+ WaoQueryHelper.newTerrestrialLocationProperty();
+ TopiaQuery query = dao.createQuery(terrestrialLocationProperty.$alias());
+ query.addDistinct()
+ .setSelect(terrestrialLocationProperty.districtCode());
+ List<String> districtCodes = transaction.findByQuery(query);
+ for (String districtCode : districtCodes) {
+ TerrestrialLocation location = dao.findByDistrictCode(districtCode);
+ TerrestrialLocation district = new TerrestrialLocationImpl();
+
+ Binder locationBinder = BinderFactory.newBinder(TerrestrialLocation.class);
+ locationBinder.copyExcluding(location, district, TerrestrialLocation.PROPERTY_NAME,
+ TerrestrialLocation.PROPERTY_CODE, TerrestrialLocation.PROPERTY_PORT_CODE,
+ TerrestrialLocation.PROPERTY_PORT_NAME, TerrestrialLocation.PROPERTY_LOCATION_TYPE_ORDINAL,
+ TerrestrialLocation.TOPIA_ID, TerrestrialLocation.TOPIA_CREATE_DATE,
+ TerrestrialLocation.TOPIA_VERSION);
+
+ dao.create(district);
+ }
+
+ if (log.isInfoEnabled()) {
+ count = dao.count() - count;
+ log.info(count + " terrestrial district imported");
+ }
+
+ transaction.commitTransaction();
+
+ } else {
+ if (log.isInfoEnabled()) {
+ log.info("database already contains " + count + " terrestrial locations, not importing");
+ }
+ }
+
+ }
}
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-01-14 15:46:02 UTC (rev 920)
+++ trunk/wao-business/src/main/resources/i18n/wao-business_en_GB.properties 2011-01-17 13:13:47 UTC (rev 921)
@@ -1,4 +1,6 @@
DataReliability.RELIABLE=
+LocationType.AUCTION=
+LocationType.PORT=
SynthesisId.GRAPH_BOARDING=
SynthesisId.GRAPH_SAMPLING=
SynthesisId.IND_ALLEGRO_REACTIVITY=
@@ -141,6 +143,7 @@
wao.error.serviceReferential.getSectors=
wao.error.serviceReferential.importDCFcodes=
wao.error.serviceReferential.importFishingZoneCsv=
+wao.error.serviceReferential.importTerrestrialLocations=
wao.error.serviceSampling.createSampleRowLog=
wao.error.serviceSampling.createUpdateSampleRow=
wao.error.serviceSampling.deleteSampleRow=
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-01-14 15:46:02 UTC (rev 920)
+++ trunk/wao-business/src/main/resources/i18n/wao-business_fr_FR.properties 2011-01-17 13:13:47 UTC (rev 921)
@@ -9,6 +9,8 @@
DataReliability.NOT_RELIABLE=Non exploitable
DataReliability.RELIABLE=Exploitable
DataReliability.UNKNOWN=Inconnue
+LocationType.AUCTION=
+LocationType.PORT=
SamplingStrategy.SIMULTANEOUS_ALL_SPECIES=Toutes esp\u00E8ces commerciales
SamplingStrategy.SIMULTANEOUS_G1_G2_SPECIES=Simultan\u00E9 \: esp\u00E8ces G1+G2
SamplingStrategy.SIMULTANEOUS_G1_SPECIES=Simultan\u00E9 \: esp\u00E8ces G1
@@ -161,6 +163,7 @@
wao.error.serviceReferential.getSectors=Impossible de charger la liste des zones de p\u00EAche
wao.error.serviceReferential.importDCFcodes=Impossible de cr\u00E9er le r\u00E9f\u00E9rentiel des codes DCF
wao.error.serviceReferential.importFishingZoneCsv=Probl\u00E8me d'import du fichier CSV. V\u00E9rifiez l'en-t\u00EAte du fichier \: [ PECHE_DIVISION,PECHE_ZONE,PECHE_FACADE ]. Voir documentation pour plus de d\u00E9tails.
+wao.error.serviceReferential.importTerrestrialLocations=
wao.error.serviceSampling.createSampleRowLog=
wao.error.serviceSampling.createUpdateSampleRow=Impossible de sauvegarder la ligne d'\u00E9chantillon
wao.error.serviceSampling.deleteSampleRow=Impossible de supprimer la ligne d'\u00E9chantillon \: %1$s
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
1
0
[Suiviobsmer-commits] r920 - in trunk/wao-business/src/main: java/fr/ifremer/wao java/fr/ifremer/wao/bean java/fr/ifremer/wao/entity xmi
by bleny@users.labs.libre-entreprise.org 14 Jan '11
by bleny@users.labs.libre-entreprise.org 14 Jan '11
14 Jan '11
Author: bleny
Date: 2011-01-14 15:46:02 +0000 (Fri, 14 Jan 2011)
New Revision: 920
Log:
start adding TerrestrialLocation reference
Added:
trunk/wao-business/src/main/java/fr/ifremer/wao/bean/LocationType.java
trunk/wao-business/src/main/java/fr/ifremer/wao/entity/TerrestrialLocationImpl.java
Modified:
trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java
trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java
trunk/wao-business/src/main/xmi/wao.zargo
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java 2011-01-14 08:45:45 UTC (rev 919)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/PostgresMigrationCallback.java 2011-01-14 15:46:02 UTC (rev 920)
@@ -703,4 +703,40 @@
queries.add("ALTER TABLE Contact ADD completeSampling BOOLEAN;");
}
+
+ @Override
+ protected void addTerrestrialLocationOnSampleRowAndContact_2_0(List<String> queries) {
+ queries.add("CREATE TABLE TerrestrialLocation (" +
+ "topiaId CHARACTER VARYING(255) PRIMARY KEY," +
+ "topiaVersion BIGINT NOT NULL," +
+ "topiaCreateDate TIMESTAMP WITHOUT TIME ZONE NOT NULL," +
+ "locationTypeOrdinal SMALLINT," +
+ "code CHARACTER VARYING(255)," +
+ "name CHARACTER VARYING(255)," +
+ "portCode CHARACTER VARYING(255)," +
+ "portName CHARACTER VARYING(255)," +
+ "districtCode CHARACTER VARYING(255)," +
+ "districtName CHARACTER VARYING(255)," +
+ "departmentCode CHARACTER VARYING(255)," +
+ "departmentName CHARACTER VARYING(255)," +
+ "subRegionIfremerCode CHARACTER VARYING(255)," +
+ "subRegionIfremerName CHARACTER VARYING(255)," +
+ "regionIfremerCode CHARACTER VARYING(255)," +
+ "regionIfremerName CHARACTER VARYING(255)," +
+ "regionCode CHARACTER VARYING(255)," +
+ "regionName CHARACTER VARYING(255)," +
+ "regionTypeCode CHARACTER VARYING(255)," +
+ "regionTypeName CHARACTER VARYING(255)," +
+ "countryCode CHARACTER VARYING(255)," +
+ "countryName CHARACTER VARYING(255)," +
+ "seaboardCode CHARACTER VARYING(255)," +
+ "seaboardName CHARACTER VARYING(255)," +
+ "coastFAOCode CHARACTER VARYING(255)," +
+ "coastFAOName CHARACTER VARYING(255))");
+
+ queries.add("ALTER TABLE SampleRow ADD terrestrialLocation CHARACTER VARYING(255) NOT NULL;");
+ queries.add("ALTER TABLE SampleRow ADD CONSTRAINT TerrestrialLocation_fkey FOREIGN KEY (terrestrialLocation) REFERENCES TerrestrialLocation(topiaId);");
+ queries.add("ALTER TABLE Contact ADD terrestrialLocation CHARACTER VARYING(255) NOT NULL;");
+ queries.add("ALTER TABLE Contact ADD CONSTRAINT TerrestrialLocation_fkey FOREIGN KEY (terrestrialLocation) REFERENCES TerrestrialLocation(topiaId);");
+ }
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java 2011-01-14 08:45:45 UTC (rev 919)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoMigrationCallBack.java 2011-01-14 15:46:02 UTC (rev 920)
@@ -121,6 +121,8 @@
protected abstract void addSampleRowAndContactsObsVenteColumns_2_0(List<String> queries);
+ protected abstract void addTerrestrialLocationOnSampleRowAndContact_2_0(List<String> queries);
+
protected static final Version[] VERSIONS = new Version[] {
VersionUtil.valueOf("1.0"),
VersionUtil.valueOf("1.1"),
@@ -427,6 +429,8 @@
addSampleRowAndContactsObsVenteColumns_2_0(queries);
+ addTerrestrialLocationOnSampleRowAndContact_2_0(queries);
+
String[] strings = queries.toArray(new String[queries.size()]);
executeSQL(tx, true, true, strings);
}
Added: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/LocationType.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/LocationType.java (rev 0)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/LocationType.java 2011-01-14 15:46:02 UTC (rev 920)
@@ -0,0 +1,26 @@
+package fr.ifremer.wao.bean;
+
+import static org.nuiton.i18n.I18n.n_;
+
+public enum LocationType {
+
+ PORT(n_("LocationType.PORT")),
+ AUCTION(n_("LocationType.AUCTION"));
+
+ protected String i18nKey;
+
+ LocationType(String i18nKey) {
+ this.i18nKey = i18nKey;
+ }
+
+ public static LocationType valueOf(Integer locationTypeOrdinal) {
+ if (locationTypeOrdinal != null) {
+ for (LocationType locationType : LocationType.values()) {
+ if (locationType.ordinal() == locationTypeOrdinal) {
+ return locationType;
+ }
+ }
+ }
+ return null;
+ }
+}
Added: trunk/wao-business/src/main/java/fr/ifremer/wao/entity/TerrestrialLocationImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/entity/TerrestrialLocationImpl.java (rev 0)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/entity/TerrestrialLocationImpl.java 2011-01-14 15:46:02 UTC (rev 920)
@@ -0,0 +1,20 @@
+package fr.ifremer.wao.entity;
+
+import fr.ifremer.wao.bean.LocationType;
+
+public class TerrestrialLocationImpl extends TerrestrialLocationAbstract {
+
+ @Override
+ public LocationType getLocationType() {
+ return LocationType.valueOf(getLocationTypeOrdinal());
+ }
+
+ @Override
+ public void setLocationType(LocationType locationType) {
+ if (locationType == null) {
+ setLocationTypeOrdinal(null);
+ } else {
+ setLocationTypeOrdinal(locationType.ordinal());
+ }
+ }
+}
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
1
0
[Suiviobsmer-commits] r919 - trunk/wao-business/src/main/xmi
by bleny@users.labs.libre-entreprise.org 14 Jan '11
by bleny@users.labs.libre-entreprise.org 14 Jan '11
14 Jan '11
Author: bleny
Date: 2011-01-14 08:45:45 +0000 (Fri, 14 Jan 2011)
New Revision: 919
Log:
diagram layout
Modified:
trunk/wao-business/src/main/xmi/wao.zargo
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
1
0
[Suiviobsmer-commits] r918 - trunk/wao-ui/src/main/resources/i18n
by bleny@users.labs.libre-entreprise.org 13 Jan '11
by bleny@users.labs.libre-entreprise.org 13 Jan '11
13 Jan '11
Author: bleny
Date: 2011-01-13 10:48:13 +0000 (Thu, 13 Jan 2011)
New Revision: 918
Log:
fix a translation
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-01-13 08:55:58 UTC (rev 917)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-01-13 10:48:13 UTC (rev 918)
@@ -209,7 +209,7 @@
wao.ui.synthesis.boarding.description=In these results, only sample rows with average tide time below 48 hours are considered.
wao.ui.synthesis.boarding.mostUsedBoat=Most used boat with %s boardings \: %s (%s)
wao.ui.synthesis.boarding.title=Boatssolicitations
-wao.ui.synthesis.complianceBoarding.description=Respect of the defined number of observants pour each tides.
+wao.ui.synthesis.complianceBoarding.description=Respect of the defined number of observants for each tides.
wao.ui.synthesis.complianceBoarding.title=Respect of the number of observers
wao.ui.synthesis.contactsStates.description=Theses results consider all contacts states except those that are refused by the program.
wao.ui.synthesis.contactsStates.title=Contact states
1
0
[Suiviobsmer-commits] r917 - in trunk/wao-ui/src/main: java/fr/ifremer/wao/ui/components java/fr/ifremer/wao/ui/services resources/fr/ifremer/wao/ui/components resources/i18n webapp/img webapp/img/source
by bleny@users.labs.libre-entreprise.org 13 Jan '11
by bleny@users.labs.libre-entreprise.org 13 Jan '11
13 Jan '11
Author: bleny
Date: 2011-01-13 08:55:58 +0000 (Thu, 13 Jan 2011)
New Revision: 917
Log:
add a button to change language in top menu
Added:
trunk/wao-ui/src/main/webapp/img/Flag_fr_gb.png
trunk/wao-ui/src/main/webapp/img/source/Flag_fr_gb.svg
Modified:
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/Layout.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/AppModule.java
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/Layout.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
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/Layout.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/Layout.java 2011-01-12 11:25:28 UTC (rev 916)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/Layout.java 2011-01-13 08:55:58 UTC (rev 917)
@@ -41,10 +41,12 @@
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.ioc.Messages;
import org.apache.tapestry5.ioc.annotations.Inject;
+import org.apache.tapestry5.services.PersistentLocale;
import org.apache.tapestry5.services.Request;
import org.slf4j.Logger;
import java.util.LinkedHashMap;
+import java.util.Locale;
import java.util.Map;
import static org.nuiton.i18n.I18n._;
@@ -203,11 +205,27 @@
}
+ /********************************* ACTIONS *******************************/
+
@Log
Object onActionFromExit() {
serviceAuthentication.setConnectedUser(null);
request.getSession(false).invalidate();
return Index.class;
}
+
+ @Inject
+ private PersistentLocale localeService;
+
+ @Log
+ Object onActionFromChangeLocale() {
+ Locale currentLocale = localeService.get();
+ if (Locale.FRENCH.equals(currentLocale)) {
+ localeService.set(Locale.ENGLISH);
+ } else {
+ localeService.set(Locale.FRENCH);
+ }
+ return this;
+ }
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/AppModule.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/AppModule.java 2011-01-12 11:25:28 UTC (rev 916)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/AppModule.java 2011-01-13 08:55:58 UTC (rev 917)
@@ -194,7 +194,7 @@
// you can extend this list of locales (it's a comma separated series of locale names;
// the first locale name is the default when there's no reasonable match).
- configuration.add(SymbolConstants.SUPPORTED_LOCALES, "fr");
+ configuration.add(SymbolConstants.SUPPORTED_LOCALES, "fr,en");
// The factory default is true but during the early stages of an application
// overriding to false is a good idea. In addition, this is often overridden
Modified: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/Layout.tml
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/Layout.tml 2011-01-12 11:25:28 UTC (rev 916)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/components/Layout.tml 2011-01-13 08:55:58 UTC (rev 917)
@@ -66,19 +66,22 @@
${format:wao.ui.layout.userDescription=currentUser.fullName,currentUser.company.name,currentUser.profile.description}
</div>
<div id="user-actions" class="fright">
+ <a t:type="actionlink" t:id="changeLocale" title="${message:wao.ui.action.changeLocale}">
+ <img src="${asset:context:img/Flag_fr_gb.png}" alt="${message:wao.ui.action.changeLocale}" />
+ </a>
<a t:type="pagelink" t:page="index" title="${message:wao.ui.page.Index.title}">
- <img src="${asset:context:img/home.png}" alt="${message:wao.ui.page.Index.title}" title="${message:wao.ui.page.Index.title}" />
+ <img src="${asset:context:img/home.png}" alt="${message:wao.ui.page.Index.title}" />
</a>
<t:unless t:test="currentUser.guest">
<a t:type="pagelink" t:page="cartography" title="${message:wao.ui.page.Cartography.title}" target="_blank">
- <img src="${asset:context:img/cartography.png}" alt="${message:wao.ui.page.Cartography.title}" title="${message:wao.ui.page.Cartography.title}"/>
+ <img src="${asset:context:img/cartography.png}" alt="${message:wao.ui.page.Cartography.title}" />
</a>
</t:unless>
<a t:type="pagelink" t:page="userProfileForm" title="${message:wao.ui.page.UserProfileForm.title}">
- <img src="${asset:context:img/user.png}" alt="${message:wao.ui.page.UserProfileForm.title}" title="${message:wao.ui.page.UserProfileForm.title}"/>
+ <img src="${asset:context:img/user.png}" alt="${message:wao.ui.page.UserProfileForm.title}" />
</a>
<a t:type="actionlink" t:id="exit" title="${message:wao.ui.action.logout}">
- <img src="${asset:context:img/exit.png}" alt="${message:wao.ui.action.logout}" title="${message:wao.ui.action.logout}"/>
+ <img src="${asset:context:img/exit.png}" alt="${message:wao.ui.action.logout}" />
</a>
</div>
</div>
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-01-12 11:25:28 UTC (rev 916)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-01-13 08:55:58 UTC (rev 917)
@@ -3,22 +3,23 @@
wao.ui.action.addNewContactFromBoat=Create a new contact for this boat and the selected sample row (in filters)
wao.ui.action.back=Back to previous screen
wao.ui.action.cancel=Cancel
+wao.ui.action.changeLocale=Change language
wao.ui.action.contactAdmin=Contact an admin
wao.ui.action.create=Create
wao.ui.action.createCompany=Create a company
wao.ui.action.createUser=Create a user
wao.ui.action.delete=Delete
wao.ui.action.deleteCompany=Delete company
-wao.ui.action.deleteCompany.confirm=Are you sure you want to delete\\ this company ?
+wao.ui.action.deleteCompany.confirm=Are you sure you want to delete this company ?
wao.ui.action.deleteContact=Delete contact
wao.ui.action.deleteContact.confirm=Are you sure you want to delete this contact ?
wao.ui.action.deleteNews=Delete this news
wao.ui.action.deleteNews.confirm=Are you sure you want to delete this news ?
wao.ui.action.deleteUser=Delete this user
-wao.ui.action.deleteUser.confirm=Are your sure you want to delete this\\ user ?
+wao.ui.action.deleteUser.confirm=Are your sure you want to delete this user ?
wao.ui.action.edit=Edit
wao.ui.action.enlargeView=Enlarge view
-wao.ui.action.exportBoats=Export boats with\\ private infos
+wao.ui.action.exportBoats=Export boats with private infos
wao.ui.action.filter=Filter
wao.ui.action.hideFilters=Hide filters
wao.ui.action.login=Connection
@@ -37,26 +38,26 @@
wao.ui.action.showFilters=Show filters
wao.ui.action.unvalidateContact=Unvalidate contact
wao.ui.action.viewIndicatorsHistory=View indicators historic
-wao.ui.boatList=List of\\ %s\\ boats
+wao.ui.boatList=List of %s boats
wao.ui.boatinfo.title=Infos about %s
wao.ui.boats.associatedLine=Sample row(s) associated with this boat
-wao.ui.boats.nbBoarding=%s boarding(s)\\ with\\ %s\\ with your company
-wao.ui.contact.lastContact=Last contact\\ with\\ this\\ boat for your company
-wao.ui.contacts.createFromBoat=Create a\\ new contact\\ for this\\ boat\\ and this sample\\ row
-wao.ui.contacts.createFromBoat.fail=Contact\\ creation failed
-wao.ui.contacts.createFromBoat.warn=Warning \:\\this sample-row is out of date, are your sure you want\\ to\\ create a new contact ?
+wao.ui.boats.nbBoarding=%s boarding(s) with %s with your company
+wao.ui.contact.lastContact=Last contact with this boat for your company
+wao.ui.contacts.createFromBoat=Create a new contact for this boat and this sample row
+wao.ui.contacts.createFromBoat.fail=Contact creation failed
+wao.ui.contacts.createFromBoat.warn=Warning \:this sample-row is out of date, are your sure you want to create a new contact ?
wao.ui.disclaimer=The website "SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER" is declared to the CNIL with the number \: 1414476
-wao.ui.disclaimer.boats=Data\\ your provide remains property of your\\ company.\\Outside your\\ company,\\ only an administrator may access\\ to your data for maintenance purpose. The administrator is\\ someone from\\ Ifremer.
+wao.ui.disclaimer.boats=Data your provide remains property of your company.Outside your company, only an administrator may access to your data for maintenance purpose. The administrator is someone from Ifremer.
wao.ui.email=e-mail address
wao.ui.entity.Boat=Boat
wao.ui.entity.Company=Company
wao.ui.entity.Contact=Contact
wao.ui.entity.SampleRow=Sample row
wao.ui.entity.fishingGearDCF=Gear DCF code
-wao.ui.entity.targetSpeciesDCF=Target species\\ DCF code
+wao.ui.entity.targetSpeciesDCF=Target species DCF code
wao.ui.field.Boat.boatLength=Length
wao.ui.field.Boat.buildYear=Build year
-wao.ui.field.Boat.capacity=Capacity of the ship in\\ specialized staff
+wao.ui.field.Boat.capacity=Capacity of the ship in specialized staff
wao.ui.field.Boat.districtCode=District
wao.ui.field.Boat.immatriculation=Registration number
wao.ui.field.Boat.name=Name
@@ -75,8 +76,8 @@
wao.ui.field.Contact.dataReliability=Data reliability
wao.ui.field.Contact.endDate=Observation end
wao.ui.field.Contact.mainObserver=Main observer
-wao.ui.field.Contact.mammalsCapture=Accidental\\ capture
-wao.ui.field.Contact.mammalsObservation=Exceptional\\ observation
+wao.ui.field.Contact.mammalsCapture=Accidental capture
+wao.ui.field.Contact.mammalsObservation=Exceptional observation
wao.ui.field.Contact.nbObservants=Observants number
wao.ui.field.Contact.samplingStrategy=Sampling strategy followed
wao.ui.field.Contact.secondaryObservers=Observers
@@ -85,8 +86,8 @@
wao.ui.field.FishingZone.facadeName=Facade
wao.ui.field.FishingZone.sectorName=Sector
wao.ui.field.SampleRow.code=Line code
-wao.ui.field.SampleRow.dcf5Code=DCF5\\ code
-wao.ui.field.SampleRow.fishingZones=Fishing\\ zone(s)
+wao.ui.field.SampleRow.dcf5Code=DCF5 code
+wao.ui.field.SampleRow.fishingZones=Fishing zone(s)
wao.ui.field.SampleRow.profession=Profession
wao.ui.field.SampleRow.professionCode=Profession code
wao.ui.field.SampleRow.programName=Program
@@ -95,26 +96,26 @@
wao.ui.field.User.lastName=Last name
wao.ui.field.User.login=Login
wao.ui.field.UserProfile.userRole=Role
-wao.ui.field.WaoUser.login=identifier
+wao.ui.field.WaoUser.login=Identifier
wao.ui.field.WaoUser.password=Password
wao.ui.filters.filters=Search filters
wao.ui.filters.refresh=Refresh filters
wao.ui.forgotPassword=Forgot password ?
-wao.ui.form.SampleRow.boatsDescription=This field\\ contains\\ registration numbers of\\ the ships\\ that are\\eligible for this ligne. You can\\ use any separator\\ to separate\\ numbers (space, dot, line-return, comma)
-wao.ui.form.SampleRow.missingBeginDate=Begin date\\ missing to generate\\ line code
-wao.ui.form.SampleRow.others=Others data of the\\ sample row
+wao.ui.form.SampleRow.boatsDescription=This field contains registration numbers of the ships that areeligible for this ligne. You can use any separator to separate numbers (space, dot, line-return, comma)
+wao.ui.form.SampleRow.missingBeginDate=Begin date missing to generate line code
+wao.ui.form.SampleRow.others=Others data of the sample row
wao.ui.form.SampleRow.program=Associated program and observation effort by months
wao.ui.form.addComment=Add a comment
-wao.ui.form.addRole=Add this r\u00F4le
-wao.ui.form.boardingFrom=Boardings since\\
+wao.ui.form.addRole=Add this ru00F4le
+wao.ui.form.boardingFrom=Boardings since
wao.ui.form.contactsFile=Contacts file
wao.ui.form.definePasswordManually=Define password manually
wao.ui.form.editComment=Edit comment
-wao.ui.form.editionAuthor=Modification's author\\
+wao.ui.form.editionAuthor=Modification's author
wao.ui.form.estimatedTides=View estimated effort
-wao.ui.form.estimatedTides.description=The estimated\\ observation effort\\ is\\ the number of contact that are\\ validated\\\\ by the company or not.\\ Contacts refused by program are ignored.
+wao.ui.form.estimatedTides.description=The estimated observation effort is the number of contact that are validated by the company or not. Contacts refused by program are ignored.
wao.ui.form.generatePassword=Generate password
-wao.ui.form.otherBoatInfos=Other\\ boat\\ infos
+wao.ui.form.otherBoatInfos=Other boat infos
wao.ui.form.period=Period
wao.ui.form.period.from=from
wao.ui.form.period.to=to
@@ -126,16 +127,16 @@
wao.ui.form.removeRole=remove this role
wao.ui.form.repeatPassword=Repeat password
wao.ui.form.roles=Roles
-wao.ui.form.sortByTideBegin=Sort by observation\\ begin date
-wao.ui.import.activityCalendarImportLabel=of the activity\\ calendar
-wao.ui.import.activityCalendarImportRunning=Activity calendar import is running. You can keep browsing\\ while waiting\\ for\\ the upload end
-wao.ui.import.activityCalendarLabel=of the activity\\ calendars
-wao.ui.import.activityCalendarUserAccessesLabel=of user accesses\\ to\\ the activity calendars
+wao.ui.form.sortByTideBegin=Sort by observation begin date
+wao.ui.import.activityCalendarImportLabel=of the activity calendar
+wao.ui.import.activityCalendarImportRunning=Activity calendar import is running. You can keep browsing while waiting for the upload end
+wao.ui.import.activityCalendarLabel=of the activity calendars
+wao.ui.import.activityCalendarUserAccessesLabel=of user accesses to the activity calendars
wao.ui.import.boatDistrictLabel=of the coordinates of boat districts
wao.ui.import.boatsLabel=of boats
wao.ui.import.description=File %s %s \:
wao.ui.import.fishingZoneLabel=of fishing zones
-wao.ui.import.fullDescription=Import %s\\ (%s format with UTF-8 characters set)
+wao.ui.import.fullDescription=Import %s (%s format with UTF-8 characters set)
wao.ui.import.longTitle=CSV Import/Export (UTF-8)
wao.ui.import.samplingPlanLabel=of the sampling plan
wao.ui.import.title=%s import
@@ -144,13 +145,13 @@
wao.ui.indicator.coefficient=Coefficient
wao.ui.indicator.editions=Editions
wao.ui.indicator.indicator=Indicator
-wao.ui.indicator.legend=In yellow, the\\ current\\ position\\ of the company on this indicator
+wao.ui.indicator.legend=In yellow, the current position of the company on this indicator
wao.ui.indicator.levels=Levels
-wao.ui.indicator.useRightDecimalSymbol=User '.' to for non-round values\\
+wao.ui.indicator.useRightDecimalSymbol=User '.' to for non-round values
wao.ui.indicators.coefficientsSum=Coefficients sum
-wao.ui.indicators.title=Providers quality\\ indicators
-wao.ui.invalidLogin=Invalid\\ identifier
-wao.ui.layout.userDescription=You are %s\\ of company\\ %s (%s)
+wao.ui.indicators.title=Providers quality indicators
+wao.ui.invalidLogin=Invalid identifier
+wao.ui.layout.userDescription=You are %s of company %s (%s)
wao.ui.message.chooseProfile=Choose your profile \:
wao.ui.misc.N/A=non available
wao.ui.misc.accepted=Accepted
@@ -165,7 +166,7 @@
wao.ui.misc.creating=Creating...
wao.ui.misc.import-export=Import/export
wao.ui.misc.information=Information
-wao.ui.misc.logFile.description=Show log\\ file for\\ %s
+wao.ui.misc.logFile.description=Show log file for %s
wao.ui.misc.no=no
wao.ui.misc.noComment=no comment
wao.ui.misc.notValidated=Not validated
@@ -194,37 +195,37 @@
wao.ui.page.UserProfileForm.title=Profile management
wao.ui.publishedByProgram=Pusblished by program
wao.ui.publishedByYourCompany=Published by company
-wao.ui.sampleRow.creation=Creation of\\ a sample row
+wao.ui.sampleRow.creation=Creation of a sample row
wao.ui.sampleRow.edition=Edtion of line %s
-wao.ui.sampleRowLog.title=%s\\ line historic
-wao.ui.samplingPlan.addSampleRow=Add a line in\\ the sampling plan
-wao.ui.samplingPlan.export=Export\\\\ the sampling\\ plan from %s to %s
-wao.ui.samplingPlan.showActual=Show realisez observations\\ effor\\\\for validated contacts only\\
-wao.ui.samplingPlan.showExpected=Show estimated observations effort for\\ contacts validated by company or not
+wao.ui.sampleRowLog.title=%s line historic
+wao.ui.samplingPlan.addSampleRow=Add a line in the sampling plan
+wao.ui.samplingPlan.export=Export the sampling plan from %s to %s
+wao.ui.samplingPlan.showActual=Show realisez observations efforfor validated contacts only
+wao.ui.samplingPlan.showExpected=Show estimated observations effort for contacts validated by company or not
wao.ui.samplingPlan.title=Sampling plan
-wao.ui.synthesis.allegroReactivity.description=This result is an average\\ of the\\ number of days between the Allegro input date and\\ the\\ date of the observation end.
-wao.ui.synthesis.allegroReactivity.title=Allegro\\ input reactivity in relation to\\ tide end date
-wao.ui.synthesis.boarding.boardingCount=Total \: %s\\ invalid\\ boardings on %s boardings.
-wao.ui.synthesis.boarding.description=In these results, only\\ sample rows\\ with average tide time below 48 hours are considered.\\
-wao.ui.synthesis.boarding.mostUsedBoat=Most used\\ boat with\\ %s boardings \:\\ %s (%s)
-wao.ui.synthesis.boarding.title=Boats\\solicitations
-wao.ui.synthesis.complianceBoarding.description=Respect of the\\ defined\\ number of observants pour each\\ tides.
-wao.ui.synthesis.complianceBoarding.title=Respect of the number of\\ observers
-wao.ui.synthesis.contactsStates.description=Theses results consider\\ all\\ contacts states except\\ those\\ that are\\ refused by\\ the program.
+wao.ui.synthesis.allegroReactivity.description=This result is an average of the number of days between the Allegro input date and the date of the observation end.
+wao.ui.synthesis.allegroReactivity.title=Allegro input reactivity in relation to tide end date
+wao.ui.synthesis.boarding.boardingCount=Total \: %s invalid boardings on %s boardings.
+wao.ui.synthesis.boarding.description=In these results, only sample rows with average tide time below 48 hours are considered.
+wao.ui.synthesis.boarding.mostUsedBoat=Most used boat with %s boardings \: %s (%s)
+wao.ui.synthesis.boarding.title=Boatssolicitations
+wao.ui.synthesis.complianceBoarding.description=Respect of the defined number of observants pour each tides.
+wao.ui.synthesis.complianceBoarding.title=Respect of the number of observers
+wao.ui.synthesis.contactsStates.description=Theses results consider all contacts states except those that are refused by the program.
wao.ui.synthesis.contactsStates.title=Contact states
-wao.ui.synthesis.dataReliability.description=Percentage of the number of tides\\ providing\\ reliable data\\ in relation to\\ the\\ total number of realized tides.
+wao.ui.synthesis.dataReliability.description=Percentage of the number of tides providing reliable data in relation to the total number of realized tides.
wao.ui.synthesis.dataReliability.title=Data reliability
-wao.ui.synthesis.dataSampling.title=Tides\\ data (realized / expected)
-wao.ui.synthesis.globalSynthesis.globalResult=Result\\of the\\ global synthesis
+wao.ui.synthesis.dataSampling.title=Tides data (realized / expected)
+wao.ui.synthesis.globalSynthesis.globalResult=Resultof the global synthesis
wao.ui.synthesis.globalSynthesis.title=Global synthesis
wao.ui.synthesis.globalSynthesis.title.estimated=Global synthesis (according to estimations)
-wao.ui.synthesis.log.description=This page show every modifications done\\ since the\\ beginning\\ of the bounds of each levels and the coefficients\\ of each indicators.
+wao.ui.synthesis.log.description=This page show every modifications done since the beginning of the bounds of each levels and the coefficients of each indicators.
wao.ui.synthesis.log.empty=No modification until now
wao.ui.synthesis.log.entry.author=Modification's author
wao.ui.synthesis.log.entry.comment=Associated comment
wao.ui.synthesis.log.entry.date=Modification date
wao.ui.synthesis.log.entry.summary=Modifications done
-wao.ui.synthesis.log.title=Global synthesis parameters\\ historic
+wao.ui.synthesis.log.title=Global synthesis parameters historic
wao.ui.unavailableOperation=Unavailable operation
wao.ui.userList=Users list
wao.ui.validLogin=Valid identifier
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-01-12 11:25:28 UTC (rev 916)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-01-13 08:55:58 UTC (rev 917)
@@ -3,6 +3,7 @@
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
Added: trunk/wao-ui/src/main/webapp/img/Flag_fr_gb.png
===================================================================
(Binary files differ)
Property changes on: trunk/wao-ui/src/main/webapp/img/Flag_fr_gb.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/wao-ui/src/main/webapp/img/source/Flag_fr_gb.svg
===================================================================
--- trunk/wao-ui/src/main/webapp/img/source/Flag_fr_gb.svg (rev 0)
+++ trunk/wao-ui/src/main/webapp/img/source/Flag_fr_gb.svg 2011-01-13 08:55:58 UTC (rev 917)
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ version="1.1"
+ width="47.999996"
+ height="31.999998"
+ id="svg2"
+ inkscape:version="0.47 r22583"
+ sodipodi:docname="Flag_fr_gb.svg"
+ inkscape:export-filename="/home/bleny/projets/wao/wao-ui/src/main/webapp/img/Flag_fr_gb.png"
+ inkscape:export-xdpi="78.750008"
+ inkscape:export-ydpi="78.750008">
+ <metadata
+ id="metadata14">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs12">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 300 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="900 : 300 : 1"
+ inkscape:persp3d-origin="450 : 200 : 1"
+ id="perspective16" />
+ <inkscape:perspective
+ id="perspective2924"
+ inkscape:persp3d-origin="600 : 200 : 1"
+ inkscape:vp_z="1200 : 300 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 300 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1280"
+ inkscape:window-height="729"
+ id="namedview10"
+ showgrid="false"
+ inkscape:zoom="4.6494017"
+ inkscape:cx="-18.276407"
+ inkscape:cy="6.3559302"
+ inkscape:window-x="0"
+ inkscape:window-y="24"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg2" />
+ <g
+ id="g2927"
+ transform="matrix(0.83072596,0,0,1.0826785,-0.92177949,-0.2401779)">
+ <path
+ id="path2908"
+ d="M 0,0 V 30 H 60 V 0 z"
+ style="fill:#00247d" />
+ <path
+ id="path2910"
+ d="M 0,0 60,30 M 60,0 0,30"
+ style="stroke:#ffffff;stroke-width:6" />
+ <path
+ id="path2912"
+ clip-path="url(#t)"
+ d="M 0,0 60,30 M 60,0 0,30"
+ style="stroke:#cf142b;stroke-width:4" />
+ <path
+ id="path2914"
+ d="M 30,0 V 30 M 0,15 h 60"
+ style="stroke:#ffffff;stroke-width:10" />
+ <path
+ id="path2916"
+ d="M 30,0 V 30 M 0,15 h 60"
+ style="stroke:#cf142b;stroke-width:6" />
+ </g>
+ <path
+ style="fill:#ed2939"
+ d="M 48 0.09375 L 0 32 L 48 32 L 48 0.09375 z "
+ id="rect4" />
+ <path
+ style="fill:#ffffff"
+ d="M 32 10.71875 L 0 32 L 32 32 L 32 10.71875 z "
+ id="rect6" />
+ <path
+ style="fill:#002395"
+ d="M 16 21.375 L 0 32 L 16 32 L 16 21.375 z "
+ id="rect8" />
+ <path
+ style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 0,32 48.131108,0"
+ id="path2934"
+ sodipodi:nodetypes="cc" />
+</svg>
1
0
[Suiviobsmer-commits] r916 - trunk/wao-ui/src/main/resources/i18n
by bleny@users.labs.libre-entreprise.org 12 Jan '11
by bleny@users.labs.libre-entreprise.org 12 Jan '11
12 Jan '11
Author: bleny
Date: 2011-01-12 11:25:28 +0000 (Wed, 12 Jan 2011)
New Revision: 916
Log:
en_GB translation of UI
Modified:
trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties
trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.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-01-12 09:42:20 UTC (rev 915)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-01-12 11:25:28 UTC (rev 916)
@@ -1,257 +1,230 @@
-${message\:wao.ui.action.unvalidateContact"\ />=
-</a>=
-</div>=
-</p\:actionsCell>=
-</t\:if>=
-</t\:layout>=
-</t\:zone>=
-ContactState.BOARDING_DONE=
-ContactState.BOARDING_EXPECTED=
-ContactState.BOAT_DEFINITIVE_REFUSED=
-ContactState.BOAT_REFUSED=
-ContactState.BOAT_UNAVAILABLE=
-ContactState.CONTACT_START=
-DataReliability.DOUBTFUL=
-DataReliability.NOT_PROVIDED=
-DataReliability.NOT_RELIABLE=
-DataReliability.RELIABLE=
-DataReliability.UNKNOWN=
-SamplingStrategy.SIMULTANEOUS_ALL_SPECIES=
-SamplingStrategy.SIMULTANEOUS_G1_G2_SPECIES=
-SamplingStrategy.SIMULTANEOUS_G1_SPECIES=
-SamplingStrategy.SPECIFIC_STOCK=
-code-label=
-dup-label=
-nContactsFound=
-shipOwner-label=
-wao.filters.filters=
-wao.ui.action.acceptContact=
-wao.ui.action.add=
-wao.ui.action.addNewContactFromBoat=
-wao.ui.action.back=
-wao.ui.action.cancel=
-wao.ui.action.contactAdmin=
-wao.ui.action.create=
-wao.ui.action.createCompany=
-wao.ui.action.createUser=
-wao.ui.action.delete=
-wao.ui.action.deleteCompany=
-wao.ui.action.deleteCompany.confirm=
-wao.ui.action.deleteContact=
-wao.ui.action.deleteContact.confirm=
-wao.ui.action.deleteNews=
-wao.ui.action.deleteNews.confirm=
-wao.ui.action.deleteUser=
-wao.ui.action.deleteUser.confirm=
-wao.ui.action.edit=
-wao.ui.action.enlargeView=
-wao.ui.action.exportBoats=
-wao.ui.action.filter=
-wao.ui.action.hideFilters=
-wao.ui.action.login=
-wao.ui.action.logout=
-wao.ui.action.modify=
-wao.ui.action.reduceView=
-wao.ui.action.refresh=
-wao.ui.action.refuseContact=
-wao.ui.action.remove=
-wao.ui.action.resetFields=
-wao.ui.action.revert=
-wao.ui.action.runExport=
-wao.ui.action.runImport=
-wao.ui.action.runSearch=
-wao.ui.action.save=
-wao.ui.action.showDetails=
-wao.ui.action.showFilters=
-wao.ui.action.unvalidateContact=
-wao.ui.action.viewIndicatorsHistory=
-wao.ui.boatList=
-wao.ui.boatinfo.title=
-wao.ui.boats.associatedLine=
-wao.ui.boats.nbBoarding=
-wao.ui.contact.lastContact=
-wao.ui.contacts.createFromBoat=
-wao.ui.contacts.createFromBoat.fail=
-wao.ui.contacts.createFromBoat.warn=
-wao.ui.disclaimer=
-wao.ui.disclaimer.boats=
-wao.ui.email=
-wao.ui.entity.Boat=
-wao.ui.entity.Company=
-wao.ui.entity.Contact=
-wao.ui.entity.SampleRow=
-wao.ui.entity.fishingGearDCF=
-wao.ui.entity.targetSpeciesDCF=
-wao.ui.field.Boat.boatLength=
-wao.ui.field.Boat.buildYear=
-wao.ui.field.Boat.capacity=
-wao.ui.field.Boat.districtCode=
-wao.ui.field.Boat.immatriculation=
-wao.ui.field.Boat.name=
-wao.ui.field.Boat.shipOwner=
-wao.ui.field.BoatDistrict.code=
-wao.ui.field.Company.active=
-wao.ui.field.Company.name=
-wao.ui.field.Contact.beginDate=
-wao.ui.field.Contact.comment=
-wao.ui.field.Contact.commentAdmin=
-wao.ui.field.Contact.commentCoordinator=
-wao.ui.field.Contact.completeSampling=
-wao.ui.field.Contact.contactState=
-wao.ui.field.Contact.creationDate=
-wao.ui.field.Contact.dataInputDate=
-wao.ui.field.Contact.dataReliability=
-wao.ui.field.Contact.endDate=
-wao.ui.field.Contact.mainObserver=
-wao.ui.field.Contact.mammalsCapture=
-wao.ui.field.Contact.mammalsObservation=
-wao.ui.field.Contact.nbObservants=
-wao.ui.field.Contact.samplingStrategy=
-wao.ui.field.Contact.secondaryObservers=
-wao.ui.field.Contact.validationCompany=
-wao.ui.field.Contact.validationProgram=
-wao.ui.field.FishingZone.facadeName=
-wao.ui.field.FishingZone.sectorName=
-wao.ui.field.SampleRow.code=
-wao.ui.field.SampleRow.dcf5Code=
-wao.ui.field.SampleRow.fishingZones=
-wao.ui.field.SampleRow.profession=
-wao.ui.field.SampleRow.professionCode=
-wao.ui.field.SampleRow.programName=
-wao.ui.field.SampleRow.samplingStrategy=
-wao.ui.field.User.firstName=
-wao.ui.field.User.lastName=
-wao.ui.field.User.login=
-wao.ui.field.UserProfile.userRole=
-wao.ui.field.WaoUser.login=
-wao.ui.field.WaoUser.password=
-wao.ui.filters.filters=
-wao.ui.filters.refresh=
-wao.ui.forgotPassword=
-wao.ui.form.SampleRow.boatsDescription=
-wao.ui.form.SampleRow.missingBeginDate=
-wao.ui.form.SampleRow.others=
-wao.ui.form.SampleRow.program=
-wao.ui.form.addComment=
-wao.ui.form.addRole=
-wao.ui.form.boardingFrom=
-wao.ui.form.contactsFile=
-wao.ui.form.definePasswordManually=
-wao.ui.form.editComment=
-wao.ui.form.editionAuthor=
-wao.ui.form.estimatedTides=
-wao.ui.form.estimatedTides.description=
-wao.ui.form.generatePassword=
-wao.ui.form.otherBoatInfos=
-wao.ui.form.period=
-wao.ui.form.period.from=
-wao.ui.form.period.to=
-wao.ui.form.periodFrom=
-wao.ui.form.periodFromTo=
-wao.ui.form.program=
-wao.ui.form.programEvaluation=
-wao.ui.form.readOnly=
-wao.ui.form.removeRole=
-wao.ui.form.repeatPassword=
-wao.ui.form.roles=
-wao.ui.form.sortByTideBegin=
-wao.ui.import.activityCalendarImportLabel=
-wao.ui.import.activityCalendarImportRunning=
-wao.ui.import.activityCalendarLabel=
-wao.ui.import.activityCalendarUserAccessesLabel=
-wao.ui.import.boatDistrictLabel=
-wao.ui.import.boatsLabel=
-wao.ui.import.description=
-wao.ui.import.fishingZoneLabel=
-wao.ui.import.fullDescription=
-wao.ui.import.longTitle=
-wao.ui.import.samplingPlanLabel=
-wao.ui.import.title=
-wao.ui.indicator.bounds=
-wao.ui.indicator.coefficient=
-wao.ui.indicator.editions=
-wao.ui.indicator.indicator=
-wao.ui.indicator.legend=
-wao.ui.indicator.levels=
-wao.ui.indicator.useRightDecimalSymbol=
-wao.ui.indicators.coefficientsSum=
-wao.ui.indicators.title=
-wao.ui.invalidLogin=
-wao.ui.layout.userDescription=
-wao.ui.layout.userDescription\=currentUser.fullName,currentUser.company.name,currentUser.profile.description=
-wao.ui.message.chooseProfile=
-wao.ui.misc.N/A=
-wao.ui.misc.accepted=
-wao.ui.misc.advancedSearch=
-wao.ui.misc.by=
-wao.ui.misc.changeOn=
-wao.ui.misc.comment=
-wao.ui.misc.commentAddedOn=
-wao.ui.misc.comments=
-wao.ui.misc.companies=
-wao.ui.misc.createdOnF=
-wao.ui.misc.creating=
-wao.ui.misc.import-export=
-wao.ui.misc.information=
-wao.ui.misc.logFile.description=
-wao.ui.misc.no=
-wao.ui.misc.noComment=
-wao.ui.misc.notValidated=
-wao.ui.misc.observationReport=
-wao.ui.misc.observations=
-wao.ui.misc.observer=
-wao.ui.misc.observers=
-wao.ui.misc.onDate=
-wao.ui.misc.refused=
-wao.ui.misc.since=
-wao.ui.misc.total=
-wao.ui.misc.undefined=
-wao.ui.misc.validated=
-wao.ui.misc.yes=
-wao.ui.nContactsFound=
-wao.ui.news.content=
-wao.ui.news.title=
-wao.ui.page.Administration.title=
-wao.ui.page.Boats.title=
-wao.ui.page.Cartography.title=
-wao.ui.page.Contacts.title=
-wao.ui.page.Index.title=
-wao.ui.page.SamplingPlan.title=
-wao.ui.page.Synthesis.title=
-wao.ui.page.UserProfileForm.title=
-wao.ui.publishedByProgram=
-wao.ui.publishedByYourCompany=
-wao.ui.sampleRow.creation=
-wao.ui.sampleRow.edition=
-wao.ui.sampleRowLog.title=
-wao.ui.samplingPlan.addSampleRow=
-wao.ui.samplingPlan.export=
-wao.ui.samplingPlan.showActual=
-wao.ui.samplingPlan.showExpected=
-wao.ui.samplingPlan.title=
-wao.ui.synthesis.allegroReactivity.description=
-wao.ui.synthesis.allegroReactivity.title=
-wao.ui.synthesis.boarding.boardingCount=
-wao.ui.synthesis.boarding.description=
-wao.ui.synthesis.boarding.mostUsedBoat=
-wao.ui.synthesis.boarding.title=
-wao.ui.synthesis.complianceBoarding.description=
-wao.ui.synthesis.complianceBoarding.title=
-wao.ui.synthesis.contactsStates.description=
-wao.ui.synthesis.contactsStates.title=
-wao.ui.synthesis.dataReliability.description=
-wao.ui.synthesis.dataReliability.title=
-wao.ui.synthesis.dataSampling.title=
-wao.ui.synthesis.globalSynthesis.globalResult=
-wao.ui.synthesis.globalSynthesis.title=
-wao.ui.synthesis.globalSynthesis.title.estimated=
-wao.ui.synthesis.log.description=
-wao.ui.synthesis.log.empty=
-wao.ui.synthesis.log.entry.author=
-wao.ui.synthesis.log.entry.comment=
-wao.ui.synthesis.log.entry.date=
-wao.ui.synthesis.log.entry.summary=
-wao.ui.synthesis.log.title=
-wao.ui.unavailableOperation=
-wao.ui.userList=
-wao.ui.validLogin=
+wao.ui.action.acceptContact=Validate contact
+wao.ui.action.add=Add
+wao.ui.action.addNewContactFromBoat=Create a new contact for this boat and the selected sample row (in filters)
+wao.ui.action.back=Back to previous screen
+wao.ui.action.cancel=Cancel
+wao.ui.action.contactAdmin=Contact an admin
+wao.ui.action.create=Create
+wao.ui.action.createCompany=Create a company
+wao.ui.action.createUser=Create a user
+wao.ui.action.delete=Delete
+wao.ui.action.deleteCompany=Delete company
+wao.ui.action.deleteCompany.confirm=Are you sure you want to delete\\ this company ?
+wao.ui.action.deleteContact=Delete contact
+wao.ui.action.deleteContact.confirm=Are you sure you want to delete this contact ?
+wao.ui.action.deleteNews=Delete this news
+wao.ui.action.deleteNews.confirm=Are you sure you want to delete this news ?
+wao.ui.action.deleteUser=Delete this user
+wao.ui.action.deleteUser.confirm=Are your sure you want to delete this\\ user ?
+wao.ui.action.edit=Edit
+wao.ui.action.enlargeView=Enlarge view
+wao.ui.action.exportBoats=Export boats with\\ private infos
+wao.ui.action.filter=Filter
+wao.ui.action.hideFilters=Hide filters
+wao.ui.action.login=Connection
+wao.ui.action.logout=Logout
+wao.ui.action.reduceView=Reduce view
+wao.ui.action.refresh=Refresh
+wao.ui.action.refuseContact=Refuse contact
+wao.ui.action.remove=Remove
+wao.ui.action.resetFields=Reset form
+wao.ui.action.revert=Revert
+wao.ui.action.runExport=Run export
+wao.ui.action.runImport=Run import
+wao.ui.action.runSearch=Run search
+wao.ui.action.save=Save
+wao.ui.action.showDetails=Show details
+wao.ui.action.showFilters=Show filters
+wao.ui.action.unvalidateContact=Unvalidate contact
+wao.ui.action.viewIndicatorsHistory=View indicators historic
+wao.ui.boatList=List of\\ %s\\ boats
+wao.ui.boatinfo.title=Infos about %s
+wao.ui.boats.associatedLine=Sample row(s) associated with this boat
+wao.ui.boats.nbBoarding=%s boarding(s)\\ with\\ %s\\ with your company
+wao.ui.contact.lastContact=Last contact\\ with\\ this\\ boat for your company
+wao.ui.contacts.createFromBoat=Create a\\ new contact\\ for this\\ boat\\ and this sample\\ row
+wao.ui.contacts.createFromBoat.fail=Contact\\ creation failed
+wao.ui.contacts.createFromBoat.warn=Warning \:\\this sample-row is out of date, are your sure you want\\ to\\ create a new contact ?
+wao.ui.disclaimer=The website "SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER" is declared to the CNIL with the number \: 1414476
+wao.ui.disclaimer.boats=Data\\ your provide remains property of your\\ company.\\Outside your\\ company,\\ only an administrator may access\\ to your data for maintenance purpose. The administrator is\\ someone from\\ Ifremer.
+wao.ui.email=e-mail address
+wao.ui.entity.Boat=Boat
+wao.ui.entity.Company=Company
+wao.ui.entity.Contact=Contact
+wao.ui.entity.SampleRow=Sample row
+wao.ui.entity.fishingGearDCF=Gear DCF code
+wao.ui.entity.targetSpeciesDCF=Target species\\ DCF code
+wao.ui.field.Boat.boatLength=Length
+wao.ui.field.Boat.buildYear=Build year
+wao.ui.field.Boat.capacity=Capacity of the ship in\\ specialized staff
+wao.ui.field.Boat.districtCode=District
+wao.ui.field.Boat.immatriculation=Registration number
+wao.ui.field.Boat.name=Name
+wao.ui.field.Boat.shipOwner=Shipowner
+wao.ui.field.BoatDistrict.code=District code
+wao.ui.field.Company.active=Active
+wao.ui.field.Company.name=Name
+wao.ui.field.Contact.beginDate=Observation start
+wao.ui.field.Contact.comment=Observer comment
+wao.ui.field.Contact.commentAdmin=Program comment
+wao.ui.field.Contact.commentCoordinator=Coordinator comment
+wao.ui.field.Contact.completeSampling=Complete sampling
+wao.ui.field.Contact.contactState=Contact state
+wao.ui.field.Contact.creationDate=Contact creation date
+wao.ui.field.Contact.dataInputDate=Allegro data input
+wao.ui.field.Contact.dataReliability=Data reliability
+wao.ui.field.Contact.endDate=Observation end
+wao.ui.field.Contact.mainObserver=Main observer
+wao.ui.field.Contact.mammalsCapture=Accidental\\ capture
+wao.ui.field.Contact.mammalsObservation=Exceptional\\ observation
+wao.ui.field.Contact.nbObservants=Observants number
+wao.ui.field.Contact.samplingStrategy=Sampling strategy followed
+wao.ui.field.Contact.secondaryObservers=Observers
+wao.ui.field.Contact.validationCompany=Company validation
+wao.ui.field.Contact.validationProgram=Program validation
+wao.ui.field.FishingZone.facadeName=Facade
+wao.ui.field.FishingZone.sectorName=Sector
+wao.ui.field.SampleRow.code=Line code
+wao.ui.field.SampleRow.dcf5Code=DCF5\\ code
+wao.ui.field.SampleRow.fishingZones=Fishing\\ zone(s)
+wao.ui.field.SampleRow.profession=Profession
+wao.ui.field.SampleRow.professionCode=Profession code
+wao.ui.field.SampleRow.programName=Program
+wao.ui.field.SampleRow.samplingStrategy=Sampling strategy
+wao.ui.field.User.firstName=Fisrt name
+wao.ui.field.User.lastName=Last name
+wao.ui.field.User.login=Login
+wao.ui.field.UserProfile.userRole=Role
+wao.ui.field.WaoUser.login=identifier
+wao.ui.field.WaoUser.password=Password
+wao.ui.filters.filters=Search filters
+wao.ui.filters.refresh=Refresh filters
+wao.ui.forgotPassword=Forgot password ?
+wao.ui.form.SampleRow.boatsDescription=This field\\ contains\\ registration numbers of\\ the ships\\ that are\\eligible for this ligne. You can\\ use any separator\\ to separate\\ numbers (space, dot, line-return, comma)
+wao.ui.form.SampleRow.missingBeginDate=Begin date\\ missing to generate\\ line code
+wao.ui.form.SampleRow.others=Others data of the\\ sample row
+wao.ui.form.SampleRow.program=Associated program and observation effort by months
+wao.ui.form.addComment=Add a comment
+wao.ui.form.addRole=Add this r\u00F4le
+wao.ui.form.boardingFrom=Boardings since\\
+wao.ui.form.contactsFile=Contacts file
+wao.ui.form.definePasswordManually=Define password manually
+wao.ui.form.editComment=Edit comment
+wao.ui.form.editionAuthor=Modification's author\\
+wao.ui.form.estimatedTides=View estimated effort
+wao.ui.form.estimatedTides.description=The estimated\\ observation effort\\ is\\ the number of contact that are\\ validated\\\\ by the company or not.\\ Contacts refused by program are ignored.
+wao.ui.form.generatePassword=Generate password
+wao.ui.form.otherBoatInfos=Other\\ boat\\ infos
+wao.ui.form.period=Period
+wao.ui.form.period.from=from
+wao.ui.form.period.to=to
+wao.ui.form.periodFrom=Period from
+wao.ui.form.periodFromTo=Period from %s to %s
+wao.ui.form.program=Program
+wao.ui.form.programEvaluation=Program evaluation
+wao.ui.form.readOnly=read-only
+wao.ui.form.removeRole=remove this role
+wao.ui.form.repeatPassword=Repeat password
+wao.ui.form.roles=Roles
+wao.ui.form.sortByTideBegin=Sort by observation\\ begin date
+wao.ui.import.activityCalendarImportLabel=of the activity\\ calendar
+wao.ui.import.activityCalendarImportRunning=Activity calendar import is running. You can keep browsing\\ while waiting\\ for\\ the upload end
+wao.ui.import.activityCalendarLabel=of the activity\\ calendars
+wao.ui.import.activityCalendarUserAccessesLabel=of user accesses\\ to\\ the activity calendars
+wao.ui.import.boatDistrictLabel=of the coordinates of boat districts
+wao.ui.import.boatsLabel=of boats
+wao.ui.import.description=File %s %s \:
+wao.ui.import.fishingZoneLabel=of fishing zones
+wao.ui.import.fullDescription=Import %s\\ (%s format with UTF-8 characters set)
+wao.ui.import.longTitle=CSV Import/Export (UTF-8)
+wao.ui.import.samplingPlanLabel=of the sampling plan
+wao.ui.import.title=%s import
+wao.ui.indicator.andMore=%s and more
+wao.ui.indicator.bounds=Bounds
+wao.ui.indicator.coefficient=Coefficient
+wao.ui.indicator.editions=Editions
+wao.ui.indicator.indicator=Indicator
+wao.ui.indicator.legend=In yellow, the\\ current\\ position\\ of the company on this indicator
+wao.ui.indicator.levels=Levels
+wao.ui.indicator.useRightDecimalSymbol=User '.' to for non-round values\\
+wao.ui.indicators.coefficientsSum=Coefficients sum
+wao.ui.indicators.title=Providers quality\\ indicators
+wao.ui.invalidLogin=Invalid\\ identifier
+wao.ui.layout.userDescription=You are %s\\ of company\\ %s (%s)
+wao.ui.message.chooseProfile=Choose your profile \:
+wao.ui.misc.N/A=non available
+wao.ui.misc.accepted=Accepted
+wao.ui.misc.advancedSearch=Advanced search
+wao.ui.misc.by=by
+wao.ui.misc.changeOn=Edited on
+wao.ui.misc.comment=Comment
+wao.ui.misc.commentAddedOn=Comment added on
+wao.ui.misc.comments=Comments
+wao.ui.misc.companies=Companies
+wao.ui.misc.createdOnF=Created on
+wao.ui.misc.creating=Creating...
+wao.ui.misc.import-export=Import/export
+wao.ui.misc.information=Information
+wao.ui.misc.logFile.description=Show log\\ file for\\ %s
+wao.ui.misc.no=no
+wao.ui.misc.noComment=no comment
+wao.ui.misc.notValidated=Not validated
+wao.ui.misc.observationReport=Observation report
+wao.ui.misc.observations=Observations
+wao.ui.misc.observer=Observer
+wao.ui.misc.observers=Observers
+wao.ui.misc.onDate=on
+wao.ui.misc.refused=Refused
+wao.ui.misc.since=since
+wao.ui.misc.total=Total
+wao.ui.misc.undefined=Undefined
+wao.ui.misc.validated=Validated
+wao.ui.misc.yes=Yes
+wao.ui.nContactsFound=%s contacts found
+wao.ui.news.content=Text
+wao.ui.news.title=Title
+wao.ui.page.Administration.title=Administration
+wao.ui.page.Boats.title=Boats
+wao.ui.page.Cartography.title=Cartography
+wao.ui.page.ContactForm.title=Contact edition
+wao.ui.page.Contacts.title=Contacts
+wao.ui.page.Index.title=Home
+wao.ui.page.SamplingPlan.title=Sampling plan
+wao.ui.page.Synthesis.title=Synthesis
+wao.ui.page.UserProfileForm.title=Profile management
+wao.ui.publishedByProgram=Pusblished by program
+wao.ui.publishedByYourCompany=Published by company
+wao.ui.sampleRow.creation=Creation of\\ a sample row
+wao.ui.sampleRow.edition=Edtion of line %s
+wao.ui.sampleRowLog.title=%s\\ line historic
+wao.ui.samplingPlan.addSampleRow=Add a line in\\ the sampling plan
+wao.ui.samplingPlan.export=Export\\\\ the sampling\\ plan from %s to %s
+wao.ui.samplingPlan.showActual=Show realisez observations\\ effor\\\\for validated contacts only\\
+wao.ui.samplingPlan.showExpected=Show estimated observations effort for\\ contacts validated by company or not
+wao.ui.samplingPlan.title=Sampling plan
+wao.ui.synthesis.allegroReactivity.description=This result is an average\\ of the\\ number of days between the Allegro input date and\\ the\\ date of the observation end.
+wao.ui.synthesis.allegroReactivity.title=Allegro\\ input reactivity in relation to\\ tide end date
+wao.ui.synthesis.boarding.boardingCount=Total \: %s\\ invalid\\ boardings on %s boardings.
+wao.ui.synthesis.boarding.description=In these results, only\\ sample rows\\ with average tide time below 48 hours are considered.\\
+wao.ui.synthesis.boarding.mostUsedBoat=Most used\\ boat with\\ %s boardings \:\\ %s (%s)
+wao.ui.synthesis.boarding.title=Boats\\solicitations
+wao.ui.synthesis.complianceBoarding.description=Respect of the\\ defined\\ number of observants pour each\\ tides.
+wao.ui.synthesis.complianceBoarding.title=Respect of the number of\\ observers
+wao.ui.synthesis.contactsStates.description=Theses results consider\\ all\\ contacts states except\\ those\\ that are\\ refused by\\ the program.
+wao.ui.synthesis.contactsStates.title=Contact states
+wao.ui.synthesis.dataReliability.description=Percentage of the number of tides\\ providing\\ reliable data\\ in relation to\\ the\\ total number of realized tides.
+wao.ui.synthesis.dataReliability.title=Data reliability
+wao.ui.synthesis.dataSampling.title=Tides\\ data (realized / expected)
+wao.ui.synthesis.globalSynthesis.globalResult=Result\\of the\\ global synthesis
+wao.ui.synthesis.globalSynthesis.title=Global synthesis
+wao.ui.synthesis.globalSynthesis.title.estimated=Global synthesis (according to estimations)
+wao.ui.synthesis.log.description=This page show every modifications done\\ since the\\ beginning\\ of the bounds of each levels and the coefficients\\ of each indicators.
+wao.ui.synthesis.log.empty=No modification until now
+wao.ui.synthesis.log.entry.author=Modification's author
+wao.ui.synthesis.log.entry.comment=Associated comment
+wao.ui.synthesis.log.entry.date=Modification date
+wao.ui.synthesis.log.entry.summary=Modifications done
+wao.ui.synthesis.log.title=Global synthesis parameters\\ historic
+wao.ui.unavailableOperation=Unavailable operation
+wao.ui.userList=Users list
+wao.ui.validLogin=Valid identifier
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-01-12 09:42:20 UTC (rev 915)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-01-12 11:25:28 UTC (rev 916)
@@ -1,62 +1,62 @@
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.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.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.nbBoarding=%s embarquement(s) dont %s dans votre soci\u00e9t\u00e9
-wao.ui.contact.lastContact=Dernier contact avec le navire pour votre soci\u00e9t\u00e9
-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 "SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER" 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.boats.associatedLine=Ligne(s) du plan associ\u00E9e(s) \u00E0 ce navire
+wao.ui.boats.nbBoarding=%s embarquement(s) dont %s dans votre soci\u00E9t\u00E9
+wao.ui.contact.lastContact=Dernier contact avec le navire pour votre soci\u00E9t\u00E9
+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.Company=Soci\u00e9t\u00e9
+wao.ui.entity.Company=Soci\u00E9t\u00E9
wao.ui.entity.Contact=Contact
-wao.ui.entity.SampleRow=Ligne du plan d'\u00e9chantillonnage
+wao.ui.entity.SampleRow=Ligne du plan d'\u00E9chantillonnage
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.capacity=Capacit\u00e9 d'accueil du navire en personnels sp\u00e9cialis\u00e9s
+wao.ui.field.Boat.buildYear=Ann\u00E9e de construction
+wao.ui.field.Boat.capacity=Capacit\u00E9 d'accueil du navire en personnels sp\u00E9cialis\u00E9s
wao.ui.field.Boat.districtCode=Quartier
wao.ui.field.Boat.immatriculation=Immatriculation
wao.ui.field.Boat.name=Nom
@@ -64,167 +64,167 @@
wao.ui.field.BoatDistrict.code=Code quartier
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 compl\u00e9t\u00e9
-wao.ui.field.Contact.contactState=\u00c9tat du contact
-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.completeSampling=\u00C9chantillonnage compl\u00E9t\u00E9
+wao.ui.field.Contact.contactState=\u00C9tat du contact
+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\u00e9rant
+wao.ui.field.Contact.mainObserver=Observateur r\u00E9f\u00E9rent
wao.ui.field.Contact.mammalsCapture=Capture accidentelle
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.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.dcf5Code=Code DCF Niv. 5
-wao.ui.field.SampleRow.fishingZones=Zone(s) de p\u00eache
-wao.ui.field.SampleRow.profession=M\u00e9tier
-wao.ui.field.SampleRow.professionCode=Code m\u00e9tier
+wao.ui.field.SampleRow.fishingZones=Zone(s) de p\u00EAche
+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.User.firstName=Pr\u00e9nom
+wao.ui.field.SampleRow.samplingStrategy=Strat\u00E9gie d'\u00E9chantillonnage
+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.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 de mar\u00e9e (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.samplingPlanLabel=du plan d'\u00E9chantillonnage
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.N/A=non renseign\u00e9e
-wao.ui.misc.accepted=Accept\u00e9
-wao.ui.misc.advancedSearch=Recherche avanc\u00e9e
+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.import-export=Import/export
wao.ui.misc.information=Informations
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
wao.ui.misc.observers=Observateurs
wao.ui.misc.onDate=le
-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=Cartography
+wao.ui.page.Cartography.title=Cartographie
+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.page.ContactForm.title=Modification d'un contact
-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.addSampleRow=Ajouter une ligne au plan d'\u00e9chantillonnage
-wao.ui.samplingPlan.export=Exporter le plan d'\u00e9chantillonnage du %s au %s
-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 dans Allegro et la date de fin de la mar\u00e9e.
-wao.ui.synthesis.allegroReactivity.title=R\u00e9activit\u00e9 de la saisie dans Allegro par rapport \u00e0 la date de fin de la mar\u00e9e
+wao.ui.samplingPlan.addSampleRow=Ajouter une ligne au plan d'\u00E9chantillonnage
+wao.ui.samplingPlan.export=Exporter le plan d'\u00E9chantillonnage du %s au %s
+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 dans Allegro et la date de fin de la mar\u00E9e.
+wao.ui.synthesis.allegroReactivity.title=R\u00E9activit\u00E9 de la saisie dans Allegro par rapport \u00E0 la date de fin de la mar\u00E9e
wao.ui.synthesis.boarding.boardingCount=Au total, %s embarquements invalides sur %s embarquements.
-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 embarquements \: %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 embarquements \: %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] r915 - in trunk/wao-ui/src/main: resources/i18n webapp
by bleny@users.labs.libre-entreprise.org 12 Jan '11
by bleny@users.labs.libre-entreprise.org 12 Jan '11
12 Jan '11
Author: bleny
Date: 2011-01-12 09:42:20 +0000 (Wed, 12 Jan 2011)
New Revision: 915
Log:
i18n fix
Modified:
trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties
trunk/wao-ui/src/main/webapp/ContactForm.tml
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-01-12 09:33:36 UTC (rev 914)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-01-12 09:42:20 UTC (rev 915)
@@ -1,62 +1,62 @@
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.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.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.nbBoarding=%s embarquement(s) dont %s dans votre soci\u00E9t\u00E9
-wao.ui.contact.lastContact=Dernier contact avec le navire pour votre soci\u00E9t\u00E9
-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 "SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER" 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.boats.associatedLine=Ligne(s) du plan associ\u00e9e(s) \u00e0 ce navire
+wao.ui.boats.nbBoarding=%s embarquement(s) dont %s dans votre soci\u00e9t\u00e9
+wao.ui.contact.lastContact=Dernier contact avec le navire pour votre soci\u00e9t\u00e9
+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 "SUIVI DU REALISE DU PLAN D'ECHANTILLONNAGE DES OBSERVATIONS A LA MER" 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.Company=Soci\u00E9t\u00E9
+wao.ui.entity.Company=Soci\u00e9t\u00e9
wao.ui.entity.Contact=Contact
-wao.ui.entity.SampleRow=Ligne du plan d'\u00E9chantillonnage
+wao.ui.entity.SampleRow=Ligne du plan d'\u00e9chantillonnage
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.capacity=Capacit\u00E9 d'accueil du navire en personnels sp\u00E9cialis\u00E9s
+wao.ui.field.Boat.buildYear=Ann\u00e9e de construction
+wao.ui.field.Boat.capacity=Capacit\u00e9 d'accueil du navire en personnels sp\u00e9cialis\u00e9s
wao.ui.field.Boat.districtCode=Quartier
wao.ui.field.Boat.immatriculation=Immatriculation
wao.ui.field.Boat.name=Nom
@@ -64,123 +64,123 @@
wao.ui.field.BoatDistrict.code=Code quartier
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 compl\u00E9t\u00E9
-wao.ui.field.Contact.contactState=\u00C9tat du contact
-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.completeSampling=\u00c9chantillonnage compl\u00e9t\u00e9
+wao.ui.field.Contact.contactState=\u00c9tat du contact
+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\u00E9rant
+wao.ui.field.Contact.mainObserver=Observateur r\u00e9f\u00e9rant
wao.ui.field.Contact.mammalsCapture=Capture accidentelle
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.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.dcf5Code=Code DCF Niv. 5
-wao.ui.field.SampleRow.fishingZones=Zone(s) de p\u00EAche
-wao.ui.field.SampleRow.profession=M\u00E9tier
-wao.ui.field.SampleRow.professionCode=Code m\u00E9tier
+wao.ui.field.SampleRow.fishingZones=Zone(s) de p\u00eache
+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.User.firstName=Pr\u00E9nom
+wao.ui.field.SampleRow.samplingStrategy=Strat\u00e9gie d'\u00e9chantillonnage
+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.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 de mar\u00E9e (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 de mar\u00e9e (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.samplingPlanLabel=du plan d'\u00e9chantillonnage
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.N/A=non renseign\u00E9e
-wao.ui.misc.accepted=Accept\u00E9
-wao.ui.misc.advancedSearch=Recherche avanc\u00E9e
+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.import-export=Import/export
wao.ui.misc.information=Informations
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
wao.ui.misc.observers=Observateurs
wao.ui.misc.onDate=le
-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
@@ -188,42 +188,43 @@
wao.ui.page.Cartography.title=Cartography
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.page.ContactForm.title=Modification d'un contact
+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.addSampleRow=Ajouter une ligne au plan d'\u00E9chantillonnage
-wao.ui.samplingPlan.export=Exporter le plan d'\u00E9chantillonnage du %s au %s
-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 dans Allegro et la date de fin de la mar\u00E9e.
-wao.ui.synthesis.allegroReactivity.title=R\u00E9activit\u00E9 de la saisie dans Allegro par rapport \u00E0 la date de fin de la mar\u00E9e
+wao.ui.samplingPlan.addSampleRow=Ajouter une ligne au plan d'\u00e9chantillonnage
+wao.ui.samplingPlan.export=Exporter le plan d'\u00e9chantillonnage du %s au %s
+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 dans Allegro et la date de fin de la mar\u00e9e.
+wao.ui.synthesis.allegroReactivity.title=R\u00e9activit\u00e9 de la saisie dans Allegro par rapport \u00e0 la date de fin de la mar\u00e9e
wao.ui.synthesis.boarding.boardingCount=Au total, %s embarquements invalides sur %s embarquements.
-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 embarquements \: %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 embarquements \: %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/ContactForm.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/ContactForm.tml 2011-01-12 09:33:36 UTC (rev 914)
+++ trunk/wao-ui/src/main/webapp/ContactForm.tml 2011-01-12 09:42:20 UTC (rev 915)
@@ -3,7 +3,7 @@
<t:layout t:pageTitle="Modification d'un contact" t:contentId="so-contact-form"
xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" xmlns:p="tapestry:parameter">
<h1 class="acenter mtop30">
- Modification d'un contact
+ ${message:wao.ui.page.ContactForm.title}
</h1>
<div class="mtop30" />
@@ -264,7 +264,7 @@
<div>
<label for="dataReliability">${message:wao.ui.field.Contact.dataReliability}</label>
<t:if t:test="canEditDataReliability()">
- <input t:type="select" t:id="dataReliability" value="contact.dataReliability" />
+ <input t:type="select" t:id="dataReliability" value="contact.dataReliability" t:validate="required" />
<p:else>
${getLabelForEnum(contact.dataReliability)}
</p:else>
1
0
[Suiviobsmer-commits] r914 - in trunk/wao-ui/src/main: resources/fr/ifremer/wao/ui/pages resources/i18n webapp
by bleny@users.labs.libre-entreprise.org 12 Jan '11
by bleny@users.labs.libre-entreprise.org 12 Jan '11
12 Jan '11
Author: bleny
Date: 2011-01-12 09:33:36 +0000 (Wed, 12 Jan 2011)
New Revision: 914
Log:
remove use of .properties files used for i18n expect when necessary
Added:
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration_fr.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats_fr.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts_fr.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm_fr.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm_fr.properties
Removed:
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Connexion.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/ContactForm.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts1.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Index.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SamplingPlan.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Synthesis.properties
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm.properties
Modified:
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/Index.tml
trunk/wao-ui/src/main/webapp/UserProfileForm.tml
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,51 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-fishingZoneCsvFile-label: Fichier CSV des zones de p\u00eache
-companies-label: Liste des soci\u00e9t\u00e9s
-name-label: Nom*
-address1-label: Adresse
-address2-label: Compl\u00e9ment d'adresse
-postalCode-label: Code postal
-city-label: Ville
-phoneNumber-label: T\u00e9l\u00e9phone
-email-label: E-mail
-users-label: Liste des utilisateurs
-firstName-label: Pr\u00e9nom*
-lastName-label: Nom*
-loginAdministration-label: Identifiant de connexion (email)*
-active-label: Actif
-generatePassword-label: G\u00e9n\u00e9rer le password
-userRole-label: R\u00f4le
-readOnly-label: Lecture seule
-# follow statement doesn't work with BeanEditForm
-userForm-errors-banner: L'utilisateur n'a pas \u00e9t\u00e9 sauvegard\u00e9 \u00e0 cause des erreurs suivantes :
-
-errors-banner: Impossible de modifier les changements des param\u00e8tres des inticateurs :
-
-# UserRole
-UserRole.ADMIN: Administrateur
-UserRole.OBSERVER: Observateur
-UserRole.COORDINATOR: Coordinateur
-UserRole.GUEST: Invit\u00e9
Copied: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration_fr.properties (from rev 911, trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration.properties)
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration_fr.properties (rev 0)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration_fr.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -0,0 +1,33 @@
+###
+# #%L
+# Wao :: Web Interface
+#
+#
+# $Id$
+# $HeadURL$
+# %%
+# Copyright (C) 2009 - 2010 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%
+###
+
+# Company form
+name-label: Nom*
+address1-label: Adresse
+address2-label: Compl\u00e9ment d'adresse
+postalCode-label: Code postal
+city-label: Ville
+phoneNumber-label: T\u00e9l\u00e9phone
+email-label: E-mail
Property changes on: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Administration_fr.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,62 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-boatsCsvFile-label: Fichier CSV des navires
-activityCalendarsCsvFile-label: Fichier CSV des calendriers d'activit\u00e9
-
-# FILTERS
-sampleRow-label: M\u00e9tier
-facadeName-label: Fa\u00e7ade
-sectorName-label: Zone
-profession-label: M\u00e9tier du plan
-boatName-label: Navire
-districtCode-label: Quartier
-name-label: Nom
-
-company-label: Soci\u00e9t\u00e9
-
-# BOATS LIST
-immatriculation-label: Imma.
-buildYear-label: Ann\u00e9e
-boatLength-label: Long.
-
-# BOAT INFOS
-referenceDate-label: Date
-state-label: Etat
-createdBy-label: Observateur
-sampleRowCode-label: Code plan
-contactFirstName-label: Pr\u00e9nom
-contactLastName-label: Nom
-contactPhoneNumber-label: T\u00e9l\u00e9phone
-contactEmail-label: E-mail
-contactAddress1-label: Adresse
-contactAddress2-label: Compl\u00e9ment d'adresse
-contactCity-label: Ville
-contactPostalCode-label: Code postal
-contactPostalCode-validate: Le code postal doit avoir une valeur num\u00e9rique
-contactSiret-label: N\u00b0 SIRET
-shipOwner-label: Armateur
-fromDate-label: Sollicitations du navire depuis le
-dup-label: Capacit\u00e9 d'accueil du navire en personnels sp\u00e9cialis\u00e9s
-comment-label: Commentaire
Copied: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats_fr.properties (from rev 911, trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats.properties)
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats_fr.properties (rev 0)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats_fr.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -0,0 +1,51 @@
+###
+# #%L
+# Wao :: Web Interface
+#
+#
+# $Id$
+# $HeadURL$
+# %%
+# Copyright (C) 2009 - 2010 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%
+###
+
+# GRID
+name-label: Nom
+immatriculation-label: Imma.
+districtCode-label: Quartier
+boatLength-label: Long.
+buildYear-label: Ann\u00e9e
+
+# right panel form
+company-label: Soci\u00e9t\u00e9
+
+# BOAT INFOS
+referenceDate-label: Date
+state-label: Etat
+createdBy-label: Observateur
+sampleRowCode-label: Code plan
+contactFirstName-label: Pr\u00e9nom
+contactLastName-label: Nom
+contactPhoneNumber-label: T\u00e9l\u00e9phone
+contactEmail-label: E-mail
+contactAddress1-label: Adresse
+contactAddress2-label: Compl\u00e9ment d'adresse
+contactCity-label: Ville
+contactPostalCode-label: Code postal
+contactPostalCode-validate: Le code postal doit avoir une valeur num\u00e9rique
+contactSiret-label: N\u00b0 SIRET
+comment-label: Commentaire
Property changes on: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Boats_fr.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Connexion.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Connexion.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Connexion.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,23 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-login-label: Identifiant (email)
-password-label: Mot de passe
-userRole-label: R\u00f4le
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/ContactForm.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/ContactForm.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/ContactForm.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,14 +0,0 @@
-# form labels
-mainObserver-label: Observateur r\u00e9f\u00e9rant
-secondaryObserver-label: Observateur
-nbObservants-label: Nombre d'observateurs
-contactState-label: \u00c9tat du contact
-beginDate-label: D\u00e9but d'observation
-endDate-label: Fin d'observation
-mammalsObservation-label: Observations de mammif\u00e8res
-mammalsCapture-label: Capture accidentelle de mammif\u00e8res
-inputDate-label: Date de saisie des donn\u00e9es dans Allegro
-observerComment-label: Commentaire observateur
-coordinatorComment-label: Commentaire soci\u00e9t\u00e9
-adminComment-label: Commentaire administrateur
-dataReliability-label: Qualit\u00e9 de la donn\u00e9e
\ No newline at end of file
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,70 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-# ContactForm labels
-facadeName-label: Facade
-sectorName-label: Secteur
-observer-label: Observateur r\u00e9f\u00e9rant
-contactsCsvFile-label: Fichier des contacts
-fromDate-label: Depuis le
-reliabilityFilter-label: Qualit\u00e9
-mainObserver-label: Observateur r\u00e9f\u00e9rant
-
-# Grid labels
-createdBy-label: Observateur
-company-label: Soci\u00e9t\u00e9
-sampleRow-label: M\u00e9tier
-boat-label: Navire
-state-label: Etat
-topiaCreateDate-label: Cr\u00e9ation
-observationBeginDate-label: D\u00e9but de l'observation
-observationEndDate-label: Fin de l'observation
-nbObservants-label: Nb obs.
-lastState-label: Etat
-programName-label: Programme
-boatName-label: Navire
-boatImmatriculation-label: N\u00b0
-boatDistrictCode-label: CQ
-mammals-label: Observations et captures accidentelles
-dataInputDate-label: Saisie des donn\u00e9es dans Allegro
-comment-label: Commentaire observateur
-program-label: Programme
-professionCode-label: Code m\u00e9tier
-professionLibelle-label: Libell\u00e9 m\u00e9tier
-professionSpecies-label: Esp\u00e8ces cibles
-fishingZoneFacade-label: Fa\u00e7ade
-fishingZoneSector-label: Zone
-fishingZoneDivision-label: Division
-validation-label: Validations
-commentAdmin-label: Commentaire programme
-commentCoordinator-label: Commentaire soci\u00e9t\u00e9
-dataReliability-label: Qualit\u00e9 de la donn\u00e9e
-sortedByBoardingDate-label: Trier par date de d\u00e9but de mar\u00e9e (du plus r\u00e9cent au plus ancien)
-expectedSamplingStrategy-label: Strat\u00e9gie d'\u00e9chantillonnage attendue
-actualSamplingStrategy-label: Strat\u00e9gie d'\u00e9chantillonnage utilis\u00e9e
-completeSampling-label: \u00c9chantillonnage complet
-
-
-# Form labels
-contactsForm-errors-banner: Le contact n'a pas \u00e9t\u00e9 sauvegard\u00e9 \u00e0 cause des erreurs suivantes :
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts1.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts1.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts1.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,46 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-# ContactForm labels
-state-label: Etat
-boat-label: Navire
-tide-label: Mar\u00e9e
-
-# Grid labels
-createdBy-label: Observateur
-company-label: Soci\u00e9t\u00e9
-facade-label: Fa\u00e7ade
-sector-label: R\u00e9gion
-creationDate-label: Cr\u00e9ation
-beginTideDate-label: D\u00e9but de la mar\u00e9e
-endTideDate-label: Fin de la mar\u00e9e
-nbObservants-label: Nb obs.
-lastState-label: Etat
-programName-label: Programme
-boatName-label: Navire
-boatImmatriculation-label: N\u00b0
-boatDistrictCode-label: CQ
-mammals-label: Mammif\u00e8res
-editDate-label: Modification
-comment-label: Commentaires
Copied: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts_fr.properties (from rev 911, trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts.properties)
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts_fr.properties (rev 0)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts_fr.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -0,0 +1,57 @@
+###
+# #%L
+# Wao :: Web Interface
+#
+#
+# $Id$
+# $HeadURL$
+# %%
+# Copyright (C) 2009 - 2010 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%
+###
+
+# Grid labels
+company-label: Soci\u00e9t\u00e9
+sampleRow-label: M\u00e9tier
+boat-label: Navire
+state-label: Etat
+topiaCreateDate-label: Cr\u00e9ation
+observationBeginDate-label: D\u00e9but de l'observation
+observationEndDate-label: Fin de l'observation
+nbObservants-label: Nb obs.
+lastState-label: Etat
+programName-label: Programme
+boatName-label: Navire
+boatImmatriculation-label: N\u00b0
+boatDistrictCode-label: CQ
+mammals-label: Observations et captures accidentelles
+dataInputDate-label: Saisie des donn\u00e9es dans Allegro
+comment-label: Commentaire observateur
+program-label: Programme
+professionCode-label: Code m\u00e9tier
+professionLibelle-label: Libell\u00e9 m\u00e9tier
+professionSpecies-label: Esp\u00e8ces cibles
+fishingZoneFacade-label: Fa\u00e7ade
+fishingZoneSector-label: Zone
+fishingZoneDivision-label: Division
+validation-label: Validations
+commentAdmin-label: Commentaire programme
+commentCoordinator-label: Commentaire soci\u00e9t\u00e9
+dataReliability-label: Qualit\u00e9 de la donn\u00e9e
+sortedByBoardingDate-label: Trier par date de d\u00e9but de mar\u00e9e (du plus r\u00e9cent au plus ancien)
+expectedSamplingStrategy-label: Strat\u00e9gie d'\u00e9chantillonnage attendue
+actualSamplingStrategy-label: Strat\u00e9gie d'\u00e9chantillonnage utilis\u00e9e
+completeSampling-label: \u00c9chantillonnage complet
Property changes on: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Contacts_fr.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Index.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Index.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Index.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,26 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-title-label: Titre
-content-label: Texte :
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,52 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-# FOR PROFESSION PART
-professionSelect-label: Code m\u00e9tier
-dcf5codes-label: Code DCF Niv. 5*
-meshSize-label: Maillage (mm)
-size-label: Taille (mm)
-other-label: Autre information
-libelle-label: Libell\u00e9
-species-label: Esp\u00e8ces cibles
-
-# FOR FISHING-ZONE PART
-fishingZoneSelect-label: Code zone de p\u00eache
-fishingZonesInfos-label: Autre information
-
-# FOR PROGRAM/PERIOD PART
-program-label: Programme
-programPeriodBegin-label: P\u00e9riode
-
-# OTHER
-code-label: Code de la ligne
-company-label: Soci\u00e9t\u00e9
-boats-label: Navires \u00e9ligibles
-nbObservants-label: Nombre d'observateurs
-averageTideTime-label: Dur\u00e9e moyenne d'une mar\u00e9e
-comment-label: Commentaire sur la ligne
-samplingStrategy-label: Stat\u00e9gie d'\u00e9chantillonnage
-
-# FORM
-errors-banner: La ligne n'a pas \u00e9t\u00e9 sauvegard\u00e9 \u00e0 cause des erreurs suivantes :
Copied: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm_fr.properties (from rev 911, trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm.properties)
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm_fr.properties (rev 0)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm_fr.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -0,0 +1,52 @@
+###
+# #%L
+# Wao :: Web Interface
+#
+#
+# $Id$
+# $HeadURL$
+# %%
+# Copyright (C) 2009 - 2010 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%
+###
+# FOR PROFESSION PART
+professionSelect-label: Code m\u00e9tier
+dcf5codes-label: Code DCF Niv. 5*
+meshSize-label: Maillage (mm)
+size-label: Taille (mm)
+other-label: Autre information
+libelle-label: Libell\u00e9
+species-label: Esp\u00e8ces cibles
+
+# FOR FISHING-ZONE PART
+fishingZoneSelect-label: Code zone de p\u00eache
+fishingZonesInfos-label: Autre information
+
+# FOR PROGRAM/PERIOD PART
+program-label: Programme
+programPeriodBegin-label: P\u00e9riode
+
+# OTHER
+code-label: Code de la ligne
+company-label: Soci\u00e9t\u00e9
+boats-label: Navires \u00e9ligibles
+nbObservants-label: Nombre d'observateurs
+averageTideTime-label: Dur\u00e9e moyenne d'une mar\u00e9e
+comment-label: Commentaire sur la ligne
+samplingStrategy-label: Stat\u00e9gie d'\u00e9chantillonnage
+
+# FORM
+errors-banner: La ligne n'a pas \u00e9t\u00e9 sauvegard\u00e9 \u00e0 cause des erreurs suivantes :
Property changes on: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SampleRowForm_fr.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SamplingPlan.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SamplingPlan.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SamplingPlan.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,38 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-samplingPlanCsvFile-label: Fichier CSV du plan d'\u00e9chantillonnage
-periodBegin-label: P\u00e9riode du
-periodEnd-label: Jusqu'au
-company-label: Soci\u00e9t\u00e9
-programName-label: Programme
-codeDCF5-label: M\u00e9tier code DCF5
-facadeName-label: Fa\u00e7ade
-sectorName-label: Zone
-selectedSampleRow-label: Code ligne
-fishingGearDCF-label: Engins code DCF
-targetSpeciesDCF-label: Ensembles d\'esp\u00e8ces-cible code DCF
-samplingStrategy-label: Strat\u00e9gie d'\u00e9chantillonnage
-
-sampleRow-delete-confirmMessage: \u00cates-vous s\u00fbr de vouloir supprimer d\u00e9finitivement la ligne %1$s du plan d\'\u00e9chantillonnage ?
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Synthesis.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Synthesis.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/Synthesis.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,53 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-periodBegin-label: D\u00e9but
-periodEnd-label: Fin
-boatName-label: Nom
-boatImmatriculation-label: N\u00b0
-boatDistrictCode-label: Quartier
-facadeName-label: Fa\u00e7ade
-sectorName-label: Zone
-sampleRowId-label: Code ligne
-company-label: Soci\u00e9t\u00e9
-programName-label: Programme
-estimatedTides-label: Voir l'effort d'observations estim\u00e9
-fishingGearDCF-label: Engins code DCF
-targetSpeciesDCF-label: Ensembles d\'esp\u00e8ces-cible code DCF
-
-companyForBoarding-label: Soci\u00e9t\u00e9
-
-periodBeginForContactStates-label: du
-periodEndForContactStates-label: au
-
-periodBeginForAllegroReactivity-label: du
-periodEndForAllegroReactivity-label: au
-
-# Validation messages
-filtersForm-periodBegin-required-message: La date de d\u00e9but est obligatoire
-filtersForm-periodEnd-required-message: La date de fin est obligatoire
-filterPeriodForContactStates-periodBeginForContactStates-required-message: La date de d\u00e9but est obligatoire
-filterPeriodForContactStates-periodEndForContactStates-required-message: La date de fin est obligatoire
-#filterPeriodForAllegroReactivity-periodBeginForAllegroReactivity-required-message: La date de d\u00e9but est obligatoire
-#filterPeriodForAllegroReactivity-periodEndForAllegroReactivity-required-message: La date de fin est obligatoire
Deleted: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm.properties 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -1,32 +0,0 @@
-###
-# #%L
-# Wao :: Web Interface
-#
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2009 - 2010 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%
-###
-firstName-label: Pr\u00e9nom
-lastName-label: Nom
-login-label: Id. connexion (email)
-name-label: Pr\u00e9nom et nom
-phoneNumber-label: T\u00e9l\u00e9phone
-password-label: Nouveau mot de passe
-password2-label: V\u00e9rification mot de passe
-active-label: Actif
Copied: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm_fr.properties (from rev 911, trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm.properties)
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm_fr.properties (rev 0)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm_fr.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -0,0 +1,30 @@
+###
+# #%L
+# Wao :: Web Interface
+#
+#
+# $Id$
+# $HeadURL$
+# %%
+# Copyright (C) 2009 - 2010 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%
+###
+firstName-label: Pr\u00e9nom
+lastName-label: Nom
+login-label: Id. connexion (email)
+name-label: Pr\u00e9nom et nom
+phoneNumber-label: T\u00e9l\u00e9phone
+active-label: Actif
Property changes on: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/UserProfileForm_fr.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
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-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -209,6 +209,8 @@
wao.ui.misc.validated=
wao.ui.misc.yes=
wao.ui.nContactsFound=
+wao.ui.news.content=
+wao.ui.news.title=
wao.ui.page.Administration.title=
wao.ui.page.Boats.title=
wao.ui.page.Cartography.title=
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-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties 2011-01-12 09:33:36 UTC (rev 914)
@@ -181,6 +181,8 @@
wao.ui.misc.validated=Valid\u00E9
wao.ui.misc.yes=Oui
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=Cartography
Modified: trunk/wao-ui/src/main/webapp/Index.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/Index.tml 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/webapp/Index.tml 2011-01-12 09:33:36 UTC (rev 914)
@@ -54,7 +54,7 @@
</p>
<h2 class="${headerStyle}">
<t:if t:test="editionMode">
- <t:label t:for="title" /> : <input t:type="textfield" t:id="title" value="news.title" class="width200" t:validate="required"/>
+ <label for="title">${message:wao.ui.news.title}</label> : <input t:type="textfield" t:id="title" value="news.title" class="width200" t:validate="required"/>
<p:else>
${news.title}
</p:else>
@@ -82,7 +82,7 @@
</t:if>
<div class="news-content">
<t:if t:test="editionMode">
- <t:label t:for="content" /><br />
+ <label for="content">${message:wao.ui.news.content} :</label><br />
<!--<input t:type="textarea" t:id="content" value="news.content" t:validate="required" />-->
<textarea t:type="easyfck/fckeditor" t:id="content" width="800px" height="200px" value="news.content" t:configuration="fckconf" t:validate="required" />
<p:else>
Modified: trunk/wao-ui/src/main/webapp/UserProfileForm.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/UserProfileForm.tml 2011-01-11 22:16:25 UTC (rev 913)
+++ trunk/wao-ui/src/main/webapp/UserProfileForm.tml 2011-01-12 09:33:36 UTC (rev 914)
@@ -41,10 +41,6 @@
<label t:for="password2" />${message:wao.ui.form.repeatPassword}</label>
<input t:type="passwordfield" t:id="password2" value="password2"/>
</p:password2>
-<!-- <p:login>
- <label>${message:login}</label>
- ${user.login}
- </p:login>-->
</form>
</fieldset>
1
0