diff --git a/src/app/calculators/cloisons/en.json b/src/app/calculators/cloisons/en.json index 2a41cd7cf134e047a9369211cb88e120b0f95bf6..93888b09378d9180d255086724077d0dc286a49d 100644 --- a/src/app/calculators/cloisons/en.json +++ b/src/app/calculators/cloisons/en.json @@ -12,19 +12,19 @@ "select_structure_SeuilRectangulaire": "Rectangular weir", "select_structure_VanneRectangulaire": "Rectangular gate", - "select_loidebit_VanneRectangulaire_GateCunge80": "Cunge (1980)", + "select_loidebit_GateCunge80": "Cunge (1980)", - "select_loidebit_Orifice_OrificeSubmerged": "Submerged orifice", - "select_loidebit_Orifice_OrificeFree": "Free orifice", + "select_loidebit_OrificeSubmerged": "Submerged orifice", + "select_loidebit_OrificeFree": "Free orifice", - "select_loidebit_SeuilRectangulaire_WeirSubmergedLarinier": "Submerged slot (Larinier 1992)", - "select_loidebit_SeuilRectangulaire_WeirVillemonte": "Villemonte 1947", - "select_loidebit_SeuilRectangulaire_WeirCunge80": "Cunge (1980)", + "select_loidebit_WeirSubmergedLarinier": "Submerged slot (Larinier 1992)", + "select_loidebit_WeirVillemonte": "Villemonte 1947", + "select_loidebit_WeirCunge80": "Cunge (1980)", - "select_loidebit_SeuilTriangulaire_TriangularWeirFree": "V-notch sharp-crested weir (Villemonte)", - "select_loidebit_SeuilTriangulaire_TriangularWeirBroad": "V-notch broad-crested weir (Bos)", + "select_loidebit_TriangularWeirFree": "V-notch sharp-crested weir (Villemonte)", + "select_loidebit_TriangularWeirBroad": "V-notch broad-crested weir (Bos)", - "select_loidebit_SeuilTriangulaireTrunc_TriangularTruncWeirFree": "Truncated triangular weir (Villemonte)", + "select_loidebit_TriangularTruncWeirFree": "Truncated triangular weir (Villemonte)", "UNIT_PV": "W/m³", "UNIT_Q": "m³/s", diff --git a/src/app/calculators/cloisons/fr.json b/src/app/calculators/cloisons/fr.json index bf30fb990e193a7ab9ee85903d74e85db7d313e8..ec7b047726bd0e962c3bbfd59578330922535922 100644 --- a/src/app/calculators/cloisons/fr.json +++ b/src/app/calculators/cloisons/fr.json @@ -3,26 +3,6 @@ "P": "Pelle", "W": "Ouverture de vanne", - "select_structure_SeuilTriangulaire": "Seuil triangulaire", - "select_structure_SeuilTriangulaireTrunc": "Seuil triangulaire tronqué", - "select_structure_Orifice": "Orifice", - "select_structure_SeuilRectangulaire": "Seuil rectangulaire", - "select_structure_VanneRectangulaire": "Vanne rectangulaire", - - "select_loidebit_VanneRectangulaire_GateCunge80": "Cunge (1980)", - - "select_loidebit_Orifice_OrificeSubmerged": "Orifice noyé", - "select_loidebit_Orifice_OrificeFree": "Orifice dénoyé", - - "select_loidebit_SeuilRectangulaire_WeirSubmergedLarinier": "Fente noyée (Larinier 1992)", - "select_loidebit_SeuilRectangulaire_WeirVillemonte": "Villemonte 1947", - "select_loidebit_SeuilRectangulaire_WeirCunge80": "Cunge (1980)", - - "select_loidebit_SeuilTriangulaire_TriangularWeirFree": "Déversoir triangulaire mince (Villemonte)", - "select_loidebit_SeuilTriangulaire_TriangularWeirBroad": "Déversoir triangulaire épais (Bos)", - - "select_loidebit_SeuilTriangulaireTrunc_TriangularTruncWeirFree": "Déversoir triangulaire tronqué (Villemonte)", - "UNIT_PV": "W/m³", "UNIT_Q": "m³/s", "UNIT_YMOY": "m", diff --git a/src/app/calculators/dever/en.json b/src/app/calculators/dever/en.json index 3f6315e256439b80ca2eff760bb4a93a5ba518b8..c5fb1f2d29fa442f40e17e47664cc8fa22b8ef0e 100644 --- a/src/app/calculators/dever/en.json +++ b/src/app/calculators/dever/en.json @@ -9,9 +9,9 @@ "select_structure_SeuilTriangulaire": "Triangular weir", "select_structure_SeuilTriangulaireTrunc": "Truncated triangular weir", - "select_loidebit_SeuilRectangulaire_WeirFree": "Free flow rectangular weir", - "select_loidebit_SeuilTriangulaire_TriangularWeirFree": "Triangular weir (Villemonte)", - "select_loidebit_SeuilTriangulaireTrunc_TriangularTruncWeirFree": "Truncated triangular weir (Villemonte)", + "select_loidebit_WeirFree": "Free flow rectangular weir", + "select_loidebit_TriangularWeirFree": "Triangular weir (Villemonte)", + "select_loidebit_TriangularTruncWeirFree": "Truncated triangular weir (Villemonte)", "UNIT_Q": "m³/s", "UNIT_EC": "m", diff --git a/src/app/calculators/dever/fr.json b/src/app/calculators/dever/fr.json index a550e3b5e961bccdd8d66aa6204800861f871ad0..78cdc5ad68c7b9a5984218cc452647ad1978c0d4 100644 --- a/src/app/calculators/dever/fr.json +++ b/src/app/calculators/dever/fr.json @@ -5,14 +5,6 @@ "L": "Largeur du déversoir", "Cd": "Coefficient de débit", - "select_structure_SeuilRectangulaire": "Déversoir rectangulaire", - "select_structure_SeuilTriangulaire": "Déversoir triangulaire", - "select_structure_SeuilTriangulaireTrunc": "Déversoir triangulaire tronqué", - - "select_loidebit_SeuilRectangulaire_WeirFree": "Déversoir rectangulaire dénoyé", - "select_loidebit_SeuilTriangulaire_TriangularWeirFree": "Déversoir triangulaire (Villemonte)", - "select_loidebit_SeuilTriangulaireTrunc_TriangularTruncWeirFree": "Déversoir triangulaire tronqué (Villemonte)", - "UNIT_Q": "m³/s", "UNIT_EC": "m", "UNIT_V": "m/s" diff --git a/src/app/calculators/parallelstructure/config.json b/src/app/calculators/parallelstructure/config.json index 804ee1c9142522f75565cadc47423d90dec79721..9f3553940b5930db91ba79c00aab52cfcc2e2520 100644 --- a/src/app/calculators/parallelstructure/config.json +++ b/src/app/calculators/parallelstructure/config.json @@ -28,22 +28,22 @@ "property": "loiDebit", "source": "device_loi_debit", "help": { - "SeuilRectangulaire_KIVI": "structures/kivi.html", - "SeuilRectangulaire_WeirVillemonte": "structures/kivi.html", - "SeuilRectangulaire_WeirCem88d": "structures/cem_88_d.html", - "SeuilRectangulaire_WeirCem88v": "structures/cem_88_v.html", - "SeuilRectangulaire_WeirCunge80": "structures/cunge_80.html", - "VanneRectangulaire_GateCem88d": "structures/cem_88_d.html", - "VanneRectangulaire_GateCem88v": "structures/cem_88_v.html", - "VanneRectangulaire_GateCunge80": "structures/cunge_80.html", - "Orifice_OrificeSubmerged": "structures/orifice_noye.html", - "Orifice_OrificeFree": "structures/orifice_denoye.html", - "SeuilRectangulaire_WeirSubmergedLarinier": "structures/fente_noyee.html", - "SeuilRectangulaire_WeirSubmerged": "structures/seuil_noye.html", - "SeuilRectangulaire_WeirFree": "structures/seuil_denoye.html", - "SeuilTriangulaire_TriangularWeirFree": "structures/dever_triang.html", - "SeuilTriangulaire_TriangularWeirBroad": "structures/dever_triang.html", - "SeuilTriangulaireTrunc_TriangularTruncWeirFree": "structures/dever_triang_tronque.html" + "KIVI": "structures/kivi.html", + "WeirVillemonte": "structures/kivi.html", + "WeirCem88d": "structures/cem_88_d.html", + "WeirCem88v": "structures/cem_88_v.html", + "WeirCunge80": "structures/cunge_80.html", + "GateCem88d": "structures/cem_88_d.html", + "GateCem88v": "structures/cem_88_v.html", + "GateCunge80": "structures/cunge_80.html", + "OrificeSubmerged": "structures/noye.html", + "OrificeFree": "structures/denoye.html", + "WeirSubmergedLarinier": "structures/fente_noyee.html", + "WeirSubmerged": "structures/seuil_noye.html", + "WeirFree": "structures/seuil_denoye.html", + "TriangularWeirFree": "structures/dever_triang.html", + "TriangularWeirBroad": "structures/dever_triang.html", + "TriangularTruncWeirFree": "structures/dever_triang_tronque.html" } }, "S", diff --git a/src/app/calculators/parallelstructure/en.json b/src/app/calculators/parallelstructure/en.json index 9b4431705381ed425ee37be97281ca9c40386aa1..133a40b338aeb610b923fafae6bdaf6b53202298 100644 --- a/src/app/calculators/parallelstructure/en.json +++ b/src/app/calculators/parallelstructure/en.json @@ -8,28 +8,28 @@ "select_structure_SeuilTriangulaire": "Triangular weir", "select_structure_SeuilTriangulaireTrunc": "Truncated triangular weir", - "select_loidebit_Orifice_OrificeSubmerged": "Submerged orifice", - "select_loidebit_Orifice_OrificeFree": "Free orifice", + "select_loidebit_OrificeSubmerged": "Submerged orifice", + "select_loidebit_OrificeFree": "Free orifice", - "select_loidebit_VanneRectangulaire_GateCem88d": "Weir/Orifice Cemagref 88", - "select_loidebit_VanneRectangulaire_GateCem88v": "Weir/Undershot gate Cemagref 88", - "select_loidebit_VanneRectangulaire_GateCunge80": "Cunge (1980)", - "select_loidebit_VanneRectangulaire_RectangularOrificeFree": "Free flow gate", - "select_loidebit_VanneRectangulaire_RectangularOrificeSubmerged": "Submerged gate", + "select_loidebit_GateCem88d": "Weir/Orifice Cemagref 88", + "select_loidebit_GateCem88v": "Weir/Undershot gate Cemagref 88", + "select_loidebit_GateCunge80": "Cunge (1980)", + "select_loidebit_RectangularOrificeFree": "Free flow gate", + "select_loidebit_RectangularOrificeSubmerged": "Submerged gate", - "select_loidebit_SeuilTriangulaire_TriangularWeirFree": "V-notch sharp-crested weir (Villemonte)", - "select_loidebit_SeuilTriangulaire_TriangularWeirBroad": "V-notch broad-crested weir (Bos)", + "select_loidebit_TriangularWeirFree": "V-notch sharp-crested weir (Villemonte)", + "select_loidebit_TriangularWeirBroad": "V-notch broad-crested weir (Bos)", - "select_loidebit_SeuilTriangulaireTrunc_TriangularTruncWeirFree": "Truncated triangular weir (Villemonte)", + "select_loidebit_TriangularTruncWeirFree": "Truncated triangular weir (Villemonte)", - "select_loidebit_SeuilRectangulaire_WeirCem88d": "Weir/Orifice Cemagref 88", - "select_loidebit_SeuilRectangulaire_WeirCem88v": "Weir/Undershot gate Cemagref 88", - "select_loidebit_SeuilRectangulaire_WeirSubmergedLarinier": "Submerged slot (Larinier 1992)", - "select_loidebit_SeuilRectangulaire_WeirSubmerged": "Submerged weir", - "select_loidebit_SeuilRectangulaire_WeirVillemonte": "Villemonte 1957", - "select_loidebit_SeuilRectangulaire_WeirFree": "Free flow weir", - "select_loidebit_SeuilRectangulaire_KIVI": "Kindsvater-Carter and Villemonte", - "select_loidebit_SeuilRectangulaire_WeirCunge80": "Cunge (1980)", + "select_loidebit_WeirCem88d": "Weir/Orifice Cemagref 88", + "select_loidebit_WeirCem88v": "Weir/Undershot gate Cemagref 88", + "select_loidebit_WeirSubmergedLarinier": "Submerged slot (Larinier 1992)", + "select_loidebit_WeirSubmerged": "Submerged weir", + "select_loidebit_WeirVillemonte": "Villemonte 1957", + "select_loidebit_WeirFree": "Free flow weir", + "select_loidebit_KIVI": "Kindsvater-Carter and Villemonte", + "select_loidebit_WeirCunge80": "Cunge (1980)", "UNIT_Q": "m³/s" } diff --git a/src/app/calculators/parallelstructure/fr.json b/src/app/calculators/parallelstructure/fr.json index e4cf67bfbf17624610fe95049186489bbba52f0d..f3332bbb2ea9c3dfd894468eb83651cfd58ce582 100644 --- a/src/app/calculators/parallelstructure/fr.json +++ b/src/app/calculators/parallelstructure/fr.json @@ -2,34 +2,5 @@ "Q": "Débit total", "W": "Ouverture de vanne", - "select_structure_Orifice": "Orifice", - "select_structure_SeuilRectangulaire": "Seuil rectangulaire", - "select_structure_SeuilTriangulaire": "Seuil triangulaire", - "select_structure_SeuilTriangulaireTrunc": "Seuil triangulaire tronqué", - "select_structure_VanneRectangulaire": "Vanne rectangulaire", - - "select_loidebit_Orifice_OrificeSubmerged": "Orifice noyé", - "select_loidebit_Orifice_OrificeFree": "Orifice dénoyé", - - "select_loidebit_VanneRectangulaire_GateCem88d": "Déversoir/Orifice Cemagref 88", - "select_loidebit_VanneRectangulaire_GateCem88v": "Déversoir/Vanne de fond Cemagref 88", - "select_loidebit_VanneRectangulaire_GateCunge80": "Cunge (1980)", - "select_loidebit_VanneRectangulaire_RectangularOrificeFree": "Vanne dénoyée", - "select_loidebit_VanneRectangulaire_RectangularOrificeSubmerged": "Vanne noyée", - - "select_loidebit_SeuilTriangulaire_TriangularWeirFree": "Déversoir triangulaire mince (Villemonte)", - "select_loidebit_SeuilTriangulaire_TriangularWeirBroad": "Déversoir triangulaire épais (Bos)", - - "select_loidebit_SeuilTriangulaireTrunc_TriangularTruncWeirFree": "Déversoir triangulaire tronqué (Villemonte)", - - "select_loidebit_SeuilRectangulaire_WeirCem88d": "Déversoir/Orifice Cemagref 88", - "select_loidebit_SeuilRectangulaire_WeirCem88v": "Déversoir/Vanne de fond Cemagref 88", - "select_loidebit_SeuilRectangulaire_WeirSubmergedLarinier": "Fente noyée (Larinier 1992)", - "select_loidebit_SeuilRectangulaire_WeirSubmerged": "Seuil noyé", - "select_loidebit_SeuilRectangulaire_WeirVillemonte": "Villemonte 1957", - "select_loidebit_SeuilRectangulaire_WeirFree": "Seuil dénoyé", - "select_loidebit_SeuilRectangulaire_KIVI": "Kindsvater-Carter et Villemonte", - "select_loidebit_SeuilRectangulaire_WeirCunge80": "Cunge (1980)", - "UNIT_Q": "m³/s" } diff --git a/src/app/components/pab-table/pab-table.component.ts b/src/app/components/pab-table/pab-table.component.ts index a73cac1dd232653f79e953b51306026c5f001fc7..f2c806d291931c4e878f6dfeeb18e81e76ec6a96 100644 --- a/src/app/components/pab-table/pab-table.component.ts +++ b/src/app/components/pab-table/pab-table.component.ts @@ -1,5 +1,7 @@ import { Component, Input, Output, EventEmitter, OnInit, AfterViewInit } from "@angular/core"; +import { LoiDebit } from "jalhyd"; + import { MatDialog } from "@angular/material/dialog"; import { @@ -527,7 +529,7 @@ export class PabTableComponent implements AfterViewInit, OnInit { // admissible LoiDebit const loisCloisons = cloison.getLoisAdmissiblesArray().map(l => { // @TODO move up ? (same for all cloisons) return { - label: this.i18nService.localizeLoiDebit(l), + label: this.localizeLoiDebit(l), value: l }; }); @@ -662,7 +664,7 @@ export class PabTableComponent implements AfterViewInit, OnInit { // admissible LoiDebit const loisAval = this.model.downWall.getLoisAdmissiblesArray().map(l => { return { - label: this.i18nService.localizeLoiDebit(l), + label: this.localizeLoiDebit(l), value: l }; }); @@ -761,6 +763,13 @@ export class PabTableComponent implements AfterViewInit, OnInit { this.updateValidity(); } + /** + * Finds the localized title for a LoiDebit item + */ + private localizeLoiDebit(l: LoiDebit) { + return this.i18nService.localizeText("INFO_PAB_LOIDEBIT_" + LoiDebit[l].toUpperCase()); + } + private findMaxNumberOfDevices(): number { let maxNbDevices = 1; for (const w of this.model.children) { diff --git a/src/app/formulaire/elements/formulaire-element.ts b/src/app/formulaire/elements/formulaire-element.ts index 19b0d58276670c7833b9c6a8129c76af7d3538c5..ae565987e01e88268b738794de0e47c727d8fffc 100644 --- a/src/app/formulaire/elements/formulaire-element.ts +++ b/src/app/formulaire/elements/formulaire-element.ts @@ -75,12 +75,7 @@ export abstract class FormulaireElement extends FormulaireNode { if (!key) { key = this._confId; } - if (loc[key] !== undefined) { - this._label = this.intlService.localizeText(key, loc); - } else { - // Recherche du code dans locale/message.xx.json - this._label = this.intlService.localizeText("INFO_LIB_" + key.toLocaleUpperCase()); - } + this._label = this.intlService.localizeText(key, loc); for (const f of this.getKids()) { f.updateLocalisation(loc); } diff --git a/src/app/formulaire/elements/select-field.ts b/src/app/formulaire/elements/select-field.ts index d92d48f46e9517e0227398100f0f1e6c8a9578c4..220fc7e2d473621b7dfd91742a9751b2732e6df9 100644 --- a/src/app/formulaire/elements/select-field.ts +++ b/src/app/formulaire/elements/select-field.ts @@ -128,7 +128,8 @@ export class SelectField extends Field { for (const e of this._entries) { // some Select fields already have a translated label at this time; translate others if (e.label === undefined) { - e.label = ServiceFactory.instance.i18nService.localizeText(e.id, loc); + const aId = e.id.split("_"); + e.label = ServiceFactory.instance.i18nService.localizeText(`${aId[1].toUpperCase()}_${aId[2]}`, loc); } } } @@ -195,7 +196,7 @@ export class SelectField extends Field { const la = (nub as ParallelStructure).getLoisAdmissibles(); const stName = StructureType[cst]; for (const ld of la[stName]) { - const e: SelectEntry = new SelectEntry(this._entriesBaseId + stName + "_" + LoiDebit[ld], ld); + const e: SelectEntry = new SelectEntry(this._entriesBaseId + LoiDebit[ld], ld); this.addEntry(e); } break; diff --git a/src/app/services/internationalisation.service.ts b/src/app/services/internationalisation.service.ts index c8e35a07e64775931f34bb29996cd8d1b7f1d723..8cdb16d87e44b3b127f9292c98741dd495e152c2 100644 --- a/src/app/services/internationalisation.service.ts +++ b/src/app/services/internationalisation.service.ts @@ -1,6 +1,6 @@ import { Injectable, isDevMode } from "@angular/core"; -import { Message, MessageCode, Observable, Observer, LoiDebit, Nub } from "jalhyd"; +import { Message, MessageCode, Observable, Observer, Nub } from "jalhyd"; import { StringMap } from "../stringmap"; import { ApplicationSetupService } from "./app-setup.service"; @@ -113,37 +113,24 @@ export class I18nService extends Observable implements Observer { * @param textKey id du texte (ex: "ERROR_PARAM_NULL") */ public localizeText(textKey: string, msg?: StringMap) { - if (isDevMode()) { - // expose missing translations - if (msg) { - if (msg[textKey] === undefined) { - return `*** message not found: ${textKey} ***`; - } - return msg[textKey]; - } else { - if (! this._Messages) { - return `*** messages not loaded: ${this._currentLanguage} ***`; - } - if (this._Messages[textKey] === undefined) { - return `*** message not found: ${textKey} ***`; - } - return this._Messages[textKey]; - } + const messages = msg || this._Messages; + if (! messages) { + return `*** messages not loaded: ${this._currentLanguage} ***`; + } + if (messages[textKey] !== undefined) { + return messages[textKey]; } else { - const messages = msg || this._Messages; - if (! messages) { - return `*** messages not loaded: ${this._currentLanguage} ***`; + // try general message + if(msg !== undefined && this._Messages["INFO_LIB_"+textKey.toUpperCase()] !== undefined) { + return this._Messages["INFO_LIB_"+textKey.toUpperCase()]; } - if (messages[textKey] === undefined) { + if (!isDevMode()) { // try fallback language before giving up - if (this._fallbackMessages[textKey] === undefined) { - return `*** message not found: ${textKey} ***`; - } else { + if (this._fallbackMessages[textKey] !== undefined) { return this._fallbackMessages[textKey]; } - } else { - return messages[textKey]; } + return `*** message not found: ${textKey} ***`; } } @@ -171,13 +158,6 @@ export class I18nService extends Observable implements Observer { return m; } - /** - * Finds the localized title for a LoiDebit item - */ - public localizeLoiDebit(l: LoiDebit) { - return this.localizeText("INFO_LOIDEBIT_" + LoiDebit[l]); - } - private replaceAll(str: string, find: string, replace: string) { return str.replace(new RegExp(find, "g"), replace); } diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json index a46fe1ad2f282f5d1cee978e28c6289af47697e7..4e946f2d584bbf4fb4a342a6df2a225b3a879d81 100644 --- a/src/locale/messages.fr.json +++ b/src/locale/messages.fr.json @@ -243,6 +243,26 @@ "INFO_LIB_J": "Perte de charge", "INFO_LIB_L": "Largeur du déversoir", "INFO_LIB_LB": "Longueur du bassin", + "INFO_LIB_LOIDEBIT_KIVI": "Seuil mince (Kindsvater-Carter + Villemonte)", + "INFO_LIB_LOIDEBIT_WEIRSUBMERGEDLARINIER": "Fente noyée (Larinier)", + "INFO_LIB_LOIDEBIT_ORIFICESUBMERGED": "Orifice noyé", + "INFO_LIB_LOIDEBIT_ORIFICEFREE": "Orifice dénoyé", + "INFO_LIB_LOIDEBIT_TRIANGULARWEIRBROAD": "Seuil épais (Bos)", + "INFO_LIB_LOIDEBIT_TRIANGULARWEIRFREE": "Seuil mince (Villemonte)", + "INFO_LIB_LOIDEBIT_TRIANGULARTRUNCWEIRFREE": "Seuil mince (Villemonte)", + "INFO_LIB_LOIDEBIT_GATECEM88D": "Seuil épais / Orifice (Cemagref)", + "INFO_LIB_LOIDEBIT_GATECEM88V": "Seuil épais / Vanne de fond (Cemagref)", + "INFO_LIB_LOIDEBIT_WEIRCEM88D": "Seuil épais (Cemagref)", + "INFO_LIB_LOIDEBIT_WEIRCEM88V": "Seuil épais (Cemagref)", + "INFO_LIB_LOIDEBIT_CUNGE80": "Seuil épais / orifice (Cunge)", + "INFO_LIB_LOIDEBIT_WEIRCUNGE80": "Seuil épais (Cunge)", + "INFO_LIB_LOIDEBIT_GATECUNGE80": "Seuil épais / orifice (Cunge)", + "INFO_LIB_LOIDEBIT_RECTANGULARORIFICEFREE": "Vanne de fond dénoyée", + "INFO_LIB_LOIDEBIT_RECTANGULARORIFICESUBMERGED": "Vanne de fond noyée", + "INFO_LIB_LOIDEBIT_VANLEVLARINIER": "Fente noyée régulée (Larinier)", + "INFO_LIB_LOIDEBIT_VANLEVVILLEMONTE": "Échancrure régulée (Villemonte)", + "INFO_LIB_LOIDEBIT_WEIRFREE": "Seuil dénoyé", + "INFO_LIB_LOIDEBIT_WEIRVILLEMONTE": "Échancrure (Villemonte)", "INFO_LIB_Y": "Ligne d'eau", "INFO_LIB_MINZDV": "Cote minimale de la crête", "INFO_LIB_MAXZDV": "Cote maximale de la crête", @@ -272,6 +292,11 @@ "INFO_LIB_SELECT_STRUCTURE_SEUIL_RECT": "Seuil rectangulaire", "INFO_LIB_SELECT_STRUCTURE": "Ouvrage", "INFO_LIB_STRUCT_CONTAINER": "Ouvrages", + "INFO_LIB_STRUCTURE_Orifice": "Orifice", + "INFO_LIB_STRUCTURE_SEUILRECTANGULAIRE": "Seuil rectangulaire", + "INFO_LIB_STRUCTURE_SEUILTRIANGULAIRE": "Seuil triangulaire", + "INFO_LIB_STRUCTURE_SEUILTRIANGULAIRETRUNC": "Seuil triangulaire tronqué", + "INFO_LIB_STRUCTURE_VANNERECTANGULAIRE": "Vanne rectangulaire", "INFO_LIB_TAU0": "Force tractrice", "INFO_LIB_TOR": "Ligne d'eau torrentielle", "INFO_LIB_TOTAL": "Total", @@ -302,26 +327,6 @@ "INFO_LINKED_VALUE_RESULT": "%s (%s)", "INFO_LINKED_VALUE_SECTION_RESULT": "%s (%s, section)", "INFO_LINKED_VALUE_SECTION": "%s (%s, section)", - "INFO_LOIDEBIT_KIVI": "Kindsvater-Carter et Villemonte", - "INFO_LOIDEBIT_WeirSubmergedLarinier": "Fente noyée (Larinier)", - "INFO_LOIDEBIT_OrificeSubmerged": "Orifice noyé", - "INFO_LOIDEBIT_OrificeFree": "Orifice dénoyé", - "INFO_LOIDEBIT_TriangularWeirBroad": "Déversoir triangulaire épais (Bos)", - "INFO_LOIDEBIT_TriangularWeirFree": "Déversoir triangulaire mince (Villemonte)", - "INFO_LOIDEBIT_TriangularTruncWeirFree": "Déversoir triangulaire tronqué (Villemonte)", - "INFO_LOIDEBIT_GateCem88d": "Déversoir/Orifice Cemagref 88", - "INFO_LOIDEBIT_GateCem88v": "Déversoir/Vanne de fond Cemagref 88", - "INFO_LOIDEBIT_WeirCem88d": "Déversoir/Orifice Cemagref 88", - "INFO_LOIDEBIT_WeirCem88v": "Déversoir/Vanne de fond Cemagref 88", - "INFO_LOIDEBIT_Cunge80": "Cunge (1980)", - "INFO_LOIDEBIT_WeirCunge80": "Seuil épais / orifice (Cunge)", - "INFO_LOIDEBIT_GateCunge80": "Seuil épais (Cunge)", - "INFO_LOIDEBIT_RectangularOrificeFree": "Vanne dénoyé", - "INFO_LOIDEBIT_RectangularOrificeSubmerged": "Vanne noyé", - "INFO_LOIDEBIT_VanLevLarinier": "Fente noyée régulée (Larinier)", - "INFO_LOIDEBIT_VanLevVillemonte": "Échancrure régulée (Villemonte)", - "INFO_LOIDEBIT_WeirFree": "Seuil dénoyé", - "INFO_LOIDEBIT_WeirVillemonte": "Échancrure (Villemonte)", "INFO_MACRORUGO_TITRE_COURT": "Macro-rugo.", "INFO_MACRORUGO_TITRE": "Passe à macro-rugosités", "INFO_MENU_DIAGRAM_TITLE": "Diagramme des modules", @@ -365,6 +370,16 @@ "INFO_PAB_HEADER_PARAMETERS": "Paramètres", "INFO_PAB_HEADER_VALUES": "Valeurs", "INFO_PAB_CLOISON_OUVRAGE_N": "Cloison : ouvrage n° %s", + "INFO_PAB_LOIDEBIT_KIVI": "Kindsvater-Carter et Villemonte", + "INFO_PAB_LOIDEBIT_WeirSubmergedLarinier": "Fente noyée (Larinier)", + "INFO_PAB_LOIDEBIT_OrificeSubmerged": "Orifice noyé", + "INFO_PAB_LOIDEBIT_TriangularWeirBroad": "Déversoir triangulaire épais (Bos)", + "INFO_PAB_LOIDEBIT_TriangularWeirFree": "Déversoir triangulaire mince (Villemonte)", + "INFO_PAB_LOIDEBIT_TriangularTruncWeirFree": "Déversoir triangulaire tronqué (Villemonte)", + "INFO_PAB_LOIDEBIT_GateCunge80": "Seuil épais / orifice (Cunge)", + "INFO_PAB_LOIDEBIT_VanLevLarinier": "Fente noyée régulée (Larinier)", + "INFO_PAB_LOIDEBIT_VanLevVillemonte": "Échancrure régulée (Villemonte)", + "INFO_PAB_LOIDEBIT_WeirVillemonte": "Échancrure (Villemonte)", "INFO_PARAMETRES_FIXES": "Tous les paramètres doivent être fixés", "INFO_PAB_TITRE_COURT": "PAB", "INFO_PAB_TITRE": "Passe à bassins",