From 83e7bd7d92cbaa9b0a4abf9cdf28cb8a4c0b7bd2 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Thu, 8 Feb 2024 10:23:51 +0000
Subject: [PATCH 01/17] fix: update jalhyd_branch Refs #658

---
 jalhyd_branch | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/jalhyd_branch b/jalhyd_branch
index aa60e2b3f..80cbb4eb0 100644
--- a/jalhyd_branch
+++ b/jalhyd_branch
@@ -1 +1 @@
-340-ajout-de-la-passe-a-rugosite-de-fond
+370-ajout-de-la-passe-a-rugosite-de-fond-cas-d-un-radier-incline
-- 
GitLab


From d3422bd7113d18a22dbbc6916a6e87785709d508 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Thu, 8 Feb 2024 11:16:53 +0000
Subject: [PATCH 02/17] feat: add nub rugofonmultiple structure (fields,
 translation) in nghyd Refs #658

---
 .../calculators/rugofondmultiple/config.json  | 54 +++++++++++++++++++
 src/app/calculators/rugofondmultiple/en.json  | 26 +++++++++
 src/app/calculators/rugofondmultiple/fr.json  | 26 +++++++++
 src/app/config.json                           |  2 +-
 src/locale/messages.en.json                   |  2 +
 src/locale/messages.fr.json                   |  2 +
 6 files changed, 111 insertions(+), 1 deletion(-)
 create mode 100644 src/app/calculators/rugofondmultiple/config.json
 create mode 100644 src/app/calculators/rugofondmultiple/en.json
 create mode 100644 src/app/calculators/rugofondmultiple/fr.json

diff --git a/src/app/calculators/rugofondmultiple/config.json b/src/app/calculators/rugofondmultiple/config.json
new file mode 100644
index 000000000..31d40116e
--- /dev/null
+++ b/src/app/calculators/rugofondmultiple/config.json
@@ -0,0 +1,54 @@
+[
+    {
+        "id": "fs_hydraulique",
+        "type": "fieldset",
+        "fields": [
+            "Q",
+            "Z1"
+        ]
+    },
+    {
+        "id": "fs_geometry_crete",
+        "type": "fieldset",
+        "fields": [
+            "L",
+            "Cd"
+        ]
+    },
+    {
+        "id": "fs_geometry_rampe",
+        "type": "fieldset",
+        "fields": [
+            {
+                "id": "If",
+                "help": "hsl/pente.html"
+            },
+            "d65",
+            "a"
+        ]
+    },
+    {
+        "id": "fs_type",
+        "type": "fieldset",
+        "fields": [
+            {
+                "id": "select_passtype",
+                "type": "select",
+                "property": "rugofondType"
+            },
+            "ZF1",
+            {
+                "id": "ZRR",
+                "allowEmpty": true
+            },
+            {
+                "id": "ZRL",
+                "allowEmpty": true
+            },
+            {
+                "id": "NbT",
+                "allowEmpty": true
+            }
+        ]
+    }
+]
diff --git a/src/app/calculators/rugofondmultiple/en.json b/src/app/calculators/rugofondmultiple/en.json
new file mode 100644
index 000000000..d985c29e9
--- /dev/null
+++ b/src/app/calculators/rugofondmultiple/en.json
@@ -0,0 +1,26 @@
+{
+    "fs_hydraulique": "Hydraulic parameters",
+    "fs_geometry_crete": "Crest geometry",
+    "fs_geometry_rampe": "Ramp geometry",
+    "fs_type": "Ramp type",
+    "fs_pass": "Fish pass parameters",
+    "fs_bloc": "Blocks parameters",
+    "fs_pass_type": "Pass type",
+    "macrorugo_container": "Aprons",
+    "fs_macrorugo": "Apron",
+
+    "select_passtype": "Pass type",
+    "Q": "Flow",
+    "If": "Slope",
+    "a": "Strickler correction factor",
+    "ZF1": "Upstream ramp bottom elevation",
+    "ZRR": "Lower upstream ramp bottom elevation",
+    "ZRL": "Upper upstream ramp bottom elevation",
+    "NbT": "Number of baffles",
+    "L": "Total width of ramp",
+    "Cd": "Discharge coefficient",
+    "d65": "d65",
+
+    "PASSTYPE_0": "Horizontal aprons",
+    "PASSTYPE_1": "Inclined apron"
+}
\ No newline at end of file
diff --git a/src/app/calculators/rugofondmultiple/fr.json b/src/app/calculators/rugofondmultiple/fr.json
new file mode 100644
index 000000000..797c38bb4
--- /dev/null
+++ b/src/app/calculators/rugofondmultiple/fr.json
@@ -0,0 +1,26 @@
+{
+    "fs_hydraulique": "Paramètres hydrauliques",
+    "fs_geometry_crete": "Géométrie de la crête",
+    "fs_geometry_rampe": "Géométrie de la rampe",
+    "fs_type": "Type de rampe",
+    "fs_pass": "Paramètres de la passe",
+    "fs_bloc": "Paramètres des blocs",
+    "fs_pass_type": "Type de passe",
+    "macrorugo_container": "Radiers",
+    "fs_macrorugo": "Radier",
+
+    "select_passtype": "Type de passe",
+    "Q": "Débit",
+    "If": "Pente",
+    "a": "Coefficient correcteur du Strickler",
+    "ZF1": "Cote de fond amont rampe",
+    "ZRR": "Cote de fond bas amont rampe",
+    "ZRL": "Cote de fond haut amont rampe",
+    "NbT": "Nombre de ralentisseurs",
+    "L": "Largeur totale de la rampe", 
+    "Cd": "Coefficient de débit",
+    "d65": "d65",
+    
+    "PASSTYPE_0": "Radier horizontal",
+    "PASSTYPE_1": "Radier incliné"
+}
\ No newline at end of file
diff --git a/src/app/config.json b/src/app/config.json
index bf12d9f31..b21ee7df5 100644
--- a/src/app/config.json
+++ b/src/app/config.json
@@ -31,7 +31,7 @@
                 "path": "passe-naturelle.jpg",
                 "credits": "S. Richard / OFB"
             },
-            "calculators": [ 11, 17, 27, 37, 38 ]
+            "calculators": [ 11, 17, 27, 37, 38, 39 ]
         },
         {
             "name": "VERIFICATION",
diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json
index 137f6c6f2..71613dca4 100755
--- a/src/locale/messages.en.json
+++ b/src/locale/messages.en.json
@@ -518,6 +518,8 @@
     "INFO_PAR_TITRE": "Baffle fishway: setup",
     "INFO_RUGOFOND_TITRE": "Bed roughness fishpasses",
     "INFO_RUGOFOND_TITRE_COURT": "Bed roughness",
+    "INFO_RUGOFONDMULTIPLE_TITRE": "Multiple bed roughness fishpasses",
+    "INFO_RUGOFONDMULTIPLE_TITRE_COURT": "Multiple bed roughness",
     "INFO_PAR_DESCRIPTION": "planes Denil Fatou superactive mixte chevrons canoe",
     "INFO_PAR_TITRE_COURT": "HF: setup",
     "INFO_PARSIMULATION_TITRE": "Baffle fishway: simulation",
diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index 62d4e610b..fd6fbffb0 100755
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -519,6 +519,8 @@
     "INFO_PAR_TITRE": "Passe à ralentisseurs&nbsp;: calage",
     "INFO_RUGOFOND_TITRE": "Passe à rugosité de fond",
     "INFO_RUGOFOND_TITRE_COURT": "Rugofond",
+    "INFO_RUGOFONDMULTIPLE_TITRE": "Passe à rugosité de fond multiple",
+    "INFO_RUGOFONDMULTIPLE_TITRE_COURT": "Rugofond multiple",
     "INFO_PAR_DESCRIPTION": "plans Denil Fatou fonds suractifs mixte chevrons canoë",
     "INFO_PAR_TITRE_COURT": "PAR&nbsp;: calage",
     "INFO_PARSIMULATION_TITRE": "Passe à ralentisseurs&nbsp;: simulation",
-- 
GitLab


From 7ed2e0e53c21d0f580f9788a16f29314d7634295 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Mon, 12 Feb 2024 16:34:24 +0000
Subject: [PATCH 03/17] feat: add fieldset to display discretized aprons in
 case of inclined rugofond type Refs #658

---
 .../calculators/rugofondmultiple/config.json  | 23 ++++++++++++++++++-
 src/app/calculators/rugofondmultiple/en.json  |  6 ++---
 src/app/calculators/rugofondmultiple/fr.json  |  6 ++---
 3 files changed, 28 insertions(+), 7 deletions(-)

diff --git a/src/app/calculators/rugofondmultiple/config.json b/src/app/calculators/rugofondmultiple/config.json
index 31d40116e..1268a4654 100644
--- a/src/app/calculators/rugofondmultiple/config.json
+++ b/src/app/calculators/rugofondmultiple/config.json
@@ -36,7 +36,6 @@
                 "type": "select",
                 "property": "rugofondType"
             },
-            "ZF1",
             {
                 "id": "ZRR",
                 "allowEmpty": true
@@ -50,5 +49,27 @@
                 "allowEmpty": true
             }
         ]
+    },
+    {
+        "id": "fs_rugofond",
+        "type": "fieldset_template",
+        "calcType": "RugoFond",
+        "fields": [
+            {
+                "id": "ZF1",
+                "help": "pam/macrorugo.html#rugosite-de-fond"
+            }
+        ]
+    },
+    {
+        "id": "rugofond_container",
+        "type": "template_container",
+        "templates": [
+            "fs_rugofond"
+        ]
+    },
+    {
+        "type": "options",
+        "help": "pam/macrorugo_complexe.html"
     }
 ]
diff --git a/src/app/calculators/rugofondmultiple/en.json b/src/app/calculators/rugofondmultiple/en.json
index d985c29e9..b5a8bcb3a 100644
--- a/src/app/calculators/rugofondmultiple/en.json
+++ b/src/app/calculators/rugofondmultiple/en.json
@@ -6,8 +6,8 @@
     "fs_pass": "Fish pass parameters",
     "fs_bloc": "Blocks parameters",
     "fs_pass_type": "Pass type",
-    "macrorugo_container": "Aprons",
-    "fs_macrorugo": "Apron",
+    "rugofond_container": "Aprons",
+    "fs_rugofond": "Apron",
 
     "select_passtype": "Pass type",
     "Q": "Flow",
@@ -16,7 +16,7 @@
     "ZF1": "Upstream ramp bottom elevation",
     "ZRR": "Lower upstream ramp bottom elevation",
     "ZRL": "Upper upstream ramp bottom elevation",
-    "NbT": "Number of baffles",
+    "NbT": "Number of flow sections",
     "L": "Total width of ramp",
     "Cd": "Discharge coefficient",
     "d65": "d65",
diff --git a/src/app/calculators/rugofondmultiple/fr.json b/src/app/calculators/rugofondmultiple/fr.json
index 797c38bb4..6a0e83cff 100644
--- a/src/app/calculators/rugofondmultiple/fr.json
+++ b/src/app/calculators/rugofondmultiple/fr.json
@@ -6,8 +6,8 @@
     "fs_pass": "Paramètres de la passe",
     "fs_bloc": "Paramètres des blocs",
     "fs_pass_type": "Type de passe",
-    "macrorugo_container": "Radiers",
-    "fs_macrorugo": "Radier",
+    "rugofond_container": "Radiers",
+    "fs_rugofond": "Radier",
 
     "select_passtype": "Type de passe",
     "Q": "Débit",
@@ -16,7 +16,7 @@
     "ZF1": "Cote de fond amont rampe",
     "ZRR": "Cote de fond bas amont rampe",
     "ZRL": "Cote de fond haut amont rampe",
-    "NbT": "Nombre de ralentisseurs",
+    "NbT": "Nombre de tranche d'écoulement",
     "L": "Largeur totale de la rampe", 
     "Cd": "Coefficient de débit",
     "d65": "d65",
-- 
GitLab


From d819689473b3e2ccc5932dbc5317764bbcca937b Mon Sep 17 00:00:00 2001
From: David Dorchies <david.dorchies@inrae.fr>
Date: Tue, 20 Feb 2024 16:26:20 +0000
Subject: [PATCH 04/17] ci: use test runners instead of stable

- due to current bug https://forgemia.inra.fr/adminforgemia/support/-/issues/216
---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index af628beb2..8868651a1 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -9,7 +9,7 @@ stages:
   - releases-version
 
 default:
-  tags: [docker]
+  tags: [test]
   image: $CI_REGISTRY/cassiopee/nghyd:latest
 
 variables:
-- 
GitLab


From b785861231ac55617f19ea26c645856615d47ade Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Mon, 26 Feb 2024 10:57:48 +0000
Subject: [PATCH 05/17] fix: change field label form ZRR and ZRL in
 macrorugocompound and rugofond multiple Refs #658

---
 src/app/calculators/macrorugocompound/en.json | 4 ++--
 src/app/calculators/macrorugocompound/fr.json | 4 ++--
 src/app/calculators/rugofondmultiple/fr.json  | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/app/calculators/macrorugocompound/en.json b/src/app/calculators/macrorugocompound/en.json
index 502bbb580..e333dde61 100644
--- a/src/app/calculators/macrorugocompound/en.json
+++ b/src/app/calculators/macrorugocompound/en.json
@@ -13,8 +13,8 @@
     "PBD": "Diameter",
     "PBH": "Height",
     "Cd0": "Shape (1 for round, 2 for square)",
-    "ZRL": "Upper upstream ramp bottom elevation",
-    "ZRR": "Lower upstream ramp bottom elevation",
+    "ZRL": "Left ramp bottom elevation",
+    "ZRR": "Right ramp bottom elevation",
     "BR": "Total width",
     "ZF1": "Upstream ramp bottom elevation",
     "B": "Width",
diff --git a/src/app/calculators/macrorugocompound/fr.json b/src/app/calculators/macrorugocompound/fr.json
index 08b69103f..8c276fbd0 100644
--- a/src/app/calculators/macrorugocompound/fr.json
+++ b/src/app/calculators/macrorugocompound/fr.json
@@ -13,8 +13,8 @@
     "PBD": "Diamètre",
     "PBH": "Hauteur",
     "Cd0": "Forme (1 pour rond, 2 pour carré)",
-    "ZRL": "Cote de fond haut amont rampe",
-    "ZRR": "Cote de fond bas amont rampe",
+    "ZRL": "Cote de radier gauche",
+    "ZRR": "Cote de radier droit",
     "BR": "Largeur totale",
     "ZF1": "Cote de fond amont rampe",
     "B": "Largeur",
diff --git a/src/app/calculators/rugofondmultiple/fr.json b/src/app/calculators/rugofondmultiple/fr.json
index 6a0e83cff..0c9df4eeb 100644
--- a/src/app/calculators/rugofondmultiple/fr.json
+++ b/src/app/calculators/rugofondmultiple/fr.json
@@ -14,8 +14,8 @@
     "If": "Pente",
     "a": "Coefficient correcteur du Strickler",
     "ZF1": "Cote de fond amont rampe",
-    "ZRR": "Cote de fond bas amont rampe",
-    "ZRL": "Cote de fond haut amont rampe",
+    "ZRR": "Cote de radier gauche",
+    "ZRL": "Cote de radier droit",
     "NbT": "Nombre de tranche d'écoulement",
     "L": "Largeur totale de la rampe", 
     "Cd": "Coefficient de débit",
-- 
GitLab


From 02d38a666bb84ec48238df88b03935d062d06649 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Mon, 26 Feb 2024 15:03:42 +0000
Subject: [PATCH 06/17] feat: add translation  for apron and lateral
 inclination Refs #658

---
 src/app/calculators/rugofondmultiple/config.json | 4 ++++
 src/locale/messages.en.json                      | 2 ++
 src/locale/messages.fr.json                      | 2 ++
 3 files changed, 8 insertions(+)

diff --git a/src/app/calculators/rugofondmultiple/config.json b/src/app/calculators/rugofondmultiple/config.json
index 1268a4654..c41539eb8 100644
--- a/src/app/calculators/rugofondmultiple/config.json
+++ b/src/app/calculators/rugofondmultiple/config.json
@@ -47,6 +47,10 @@
             {
                 "id": "NbT",
                 "allowEmpty": true
+            }, 
+            {
+                "id": "ZF1",
+                "help": "pam/macrorugo.html#rugosite-de-fond"
             }
         ]
     },
diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json
index 71613dca4..b460930e5 100755
--- a/src/locale/messages.en.json
+++ b/src/locale/messages.en.json
@@ -229,6 +229,7 @@
     "INFO_CHILD_TYPE_OUVRAGE_PLUR": "devices",
     "INFO_CHILD_TYPE_OUVRAGE_SHORT": "D",
     "INFO_CHILD_TYPE_MACRORUGO": "apron",
+    "INFO_CHILD_TYPE_RUGOFOND": "apron",
     "INFO_CHILD_TYPE_MACRORUGO_PLUR": "aprons",
     "INFO_CHILD_TYPE_MACRORUGO_SHORT": "A",
     "INFO_CHILD_TYPE_PUISSANCE": "power",
@@ -409,6 +410,7 @@
     "INFO_LIB_BMIN": "Minimal slot or weir width",
     "INFO_LIB_PMINS": "Minimal basin width",
     "INFO_LIB_PMINP": "Minimal basin width",
+    "INFO_LIB_LINCL": "Lateral inclination",
     "INFO_LIB_LMINS": "Minimal basin length",
     "INFO_LIB_LMINP": "Minimal basin length",
     "INFO_LIB_HMIN": "Minimal head on weir",
diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index fd6fbffb0..23e1f00ca 100755
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -229,6 +229,7 @@
     "INFO_CHILD_TYPE_OUVRAGE_PLUR": "ouvrages",
     "INFO_CHILD_TYPE_OUVRAGE_SHORT": "O",
     "INFO_CHILD_TYPE_MACRORUGO": "radier",
+    "INFO_CHILD_TYPE_RUGOFOND": "radier",
     "INFO_CHILD_TYPE_MACRORUGO_PLUR": "radiers",
     "INFO_CHILD_TYPE_MACRORUGO_SHORT": "R",
     "INFO_CHILD_TYPE_PUISSANCE": "puissance",
@@ -410,6 +411,7 @@
     "INFO_LIB_BMIN": "Largeur minimale de fente ou échancrure latérale",
     "INFO_LIB_PMINS": "Profondeur minimale de bassin",
     "INFO_LIB_PMINP": "Profondeur minimale de bassin",
+    "INFO_LIB_LINCL": "Dévers latéral",
     "INFO_LIB_LMINS": "Longueur minimale de bassin",
     "INFO_LIB_LMINP": "Longueur minimale de bassin",
     "INFO_LIB_HMIN": "Charge minimale sur l'échancrure",
-- 
GitLab


From 0fc70af9f7a57b55852228bc29da8104a53406fe Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Tue, 27 Feb 2024 16:24:16 +0000
Subject: [PATCH 07/17] fix: change labels for ZRR and ZRL fields Refs #658

---
 src/app/calculators/rugofondmultiple/en.json | 4 ++--
 src/app/calculators/rugofondmultiple/fr.json | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/app/calculators/rugofondmultiple/en.json b/src/app/calculators/rugofondmultiple/en.json
index b5a8bcb3a..f34135260 100644
--- a/src/app/calculators/rugofondmultiple/en.json
+++ b/src/app/calculators/rugofondmultiple/en.json
@@ -14,8 +14,8 @@
     "If": "Slope",
     "a": "Strickler correction factor",
     "ZF1": "Upstream ramp bottom elevation",
-    "ZRR": "Lower upstream ramp bottom elevation",
-    "ZRL": "Upper upstream ramp bottom elevation",
+    "ZRR": "Upper upstream ramp bottom elevation",
+    "ZRL": "Lower upstream ramp bottom elevation",
     "NbT": "Number of flow sections",
     "L": "Total width of ramp",
     "Cd": "Discharge coefficient",
diff --git a/src/app/calculators/rugofondmultiple/fr.json b/src/app/calculators/rugofondmultiple/fr.json
index 0c9df4eeb..95b7744ff 100644
--- a/src/app/calculators/rugofondmultiple/fr.json
+++ b/src/app/calculators/rugofondmultiple/fr.json
@@ -14,8 +14,8 @@
     "If": "Pente",
     "a": "Coefficient correcteur du Strickler",
     "ZF1": "Cote de fond amont rampe",
-    "ZRR": "Cote de radier gauche",
-    "ZRL": "Cote de radier droit",
+    "ZRR": "Cote de fond haut amont",
+    "ZRL": "Cote de fond bas amont",
     "NbT": "Nombre de tranche d'écoulement",
     "L": "Largeur totale de la rampe", 
     "Cd": "Coefficient de débit",
-- 
GitLab


From 4075bd424ae030b5b06c5400323b02c09d278029 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Thu, 29 Feb 2024 15:02:24 +0000
Subject: [PATCH 08/17] fix: add translation for warning message rugofond
 multiple Refs #658

---
 src/locale/messages.en.json | 6 +++---
 src/locale/messages.fr.json | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json
index b460930e5..086df219d 100755
--- a/src/locale/messages.en.json
+++ b/src/locale/messages.en.json
@@ -82,9 +82,7 @@
     "ERROR_STRUCTURE_Q_TROP_ELEVE": "The flow passing through the other devices is too high: the requested parameter is not calculable.",
     "ERROR_STRUCTURE_ZDV_PAS_CALCULABLE": "Parameter \"Crest elevation\" cannot be calculated with this discharge law",
     "ERROR_STRUCTURE_Z_EGAUX_Q_NON_NUL": "Upstream and downstream elevations are equal but flow is not null",
-    "ERROR_ELEVATION_Z1_LOWER_THAN_ZF1": "Upstream elevation is lower than the upstream bottom elevation of the ramp",
-    "ERROR_ELEVATION_Z1_EQUAL_TO_ZF1": "Upstream elevation is equal to the upstream bottom elevation of the ramp",
-    "ERROR_COEF_DEBIT_NULL": "Calculation is impossible when discharge coefficient is null",
+    "WARNING_COEF_DEBIT_NULL": "Calculation is impossible when discharge coefficient is null",
     "ERROR_D65_NULL": "Calculation is impossible when d65 is null",
     "INFO_CALCULATOR_CALC_NAME": "Calculator name",
     "INFO_CALCULATOR_CALCULER": "Compute",
@@ -724,6 +722,8 @@
     "WARNING_SESSION_LOAD_NOTES_MERGED": "Notes have been merged",
     "WARNING_VALUE_ROUNDED_TO_INTEGER": "Value of %symbol% was rounded to %rounded%",
     "WARNING_VARIATED_LENGTH_LIMITED_BY_LINKED_RESULT": "Number of results is limited by linked result %symbol%",
+    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Apron n°%number%: zero flow because upstream elevation is lower than the upstream bottom elevation of the ramp",
+    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Apron n°%number%: zero flow because upstream elevation is equal to the upstream bottom elevation of the ramp",
     "ERROR_PAR_P_DEVIATES_MORE_THAN_10_5_PCT": "Given spacing value is more than 10% lower or more than 5% greater than standard value %stdP%",
     "ERROR_PAR_QSTAR_OUT_OF_RANGE": "Flow value %val% is outside of validity interval [ %min%, %max% ] given by abacuses",
     "ERROR_PAR_HA_OUT_OF_RANGE": "Upstream head value %val% is outside of validity interval [ %min%, %max% ] given by abacuses",
diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index 23e1f00ca..afd458cce 100755
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -82,9 +82,7 @@
     "ERROR_STRUCTURE_Q_TROP_ELEVE": "Le débit passant par les autres ouvrages est trop élevé&nbsp;: le paramètre demandé n'est pas calculable.",
     "ERROR_STRUCTURE_ZDV_PAS_CALCULABLE": "Le paramètre \"Cote de radier\" ne peut pas être calculé avec cette loi de débit",
     "ERROR_STRUCTURE_Z_EGAUX_Q_NON_NUL": "Les cotes amont aval sont égales et le débit n'est pas nul",
-    "ERROR_ELEVATION_Z1_LOWER_THAN_ZF1": "La cote amont est plus basse que la cote de fond amont de la rampe",
-    "ERROR_ELEVATION_Z1_EQUAL_TO_ZF1": "La cote de l'eau amont est égale à la cote de fond amont de la rampe",
-    "ERROR_COEF_DEBIT_NULL": "Le calcul impossible à cause d'un coefficient de débit nul",
+    "WARNING_COEF_DEBIT_NULL": "Débit nul à cause d'un coefficient de débit nul",
     "ERROR_D65_NULL": "Le calcul impossible à cause d'un d65 nul",
     "INFO_CALCULATOR_CALC_NAME": "Nom du module de calcul",
     "INFO_CALCULATOR_CALCULER": "Calculer",
@@ -725,6 +723,8 @@
     "WARNING_SESSION_LOAD_NOTES_MERGED": "Les notes ont été fusionnées",
     "WARNING_VALUE_ROUNDED_TO_INTEGER": "La valeur de %symbol% a été arrondie à %rounded%",
     "WARNING_VARIATED_LENGTH_LIMITED_BY_LINKED_RESULT": "Le nombre de résultats est limité par le résultat lié %symbol%",
+    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Radier n°%number%: débit nul car la cote amont est plus basse que la cote de fond amont de la rampe",
+    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Radier n°%number%: débit nul car la cote de l'eau amont est égale à la cote de fond amont de la rampe",
     "ERROR_PAR_P_DEVIATES_MORE_THAN_10_5_PCT": "La valeur d'espacement fournie est plus de 10% plus petite ou plus de 5% plus grande que la valeur standard %stdP%",
     "ERROR_PAR_QSTAR_OUT_OF_RANGE": "La valeur %val% du débit sort de l'intervalle de validité [ %min%, %max% ] donné par les abaques",
     "ERROR_PAR_HA_OUT_OF_RANGE": "La valeur %val% de la charge amont sort de l'intervalle de validité [ %min%, %max% ] donné par les abaques",
-- 
GitLab


From b17135f976ab3cec850191d264363d1b930a0739 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Mon, 4 Mar 2024 10:43:40 +0000
Subject: [PATCH 09/17] fix: add devices number for variated parameters in
 result Refs #664

---
 src/app/calculators/rugofondmultiple/config.json | 11 -----------
 .../fixedvar-results/var-results.component.ts    | 10 ++++++----
 src/app/results/var-results.ts                   | 16 +++++++++++++---
 src/locale/messages.fr.json                      |  1 +
 4 files changed, 20 insertions(+), 18 deletions(-)

diff --git a/src/app/calculators/rugofondmultiple/config.json b/src/app/calculators/rugofondmultiple/config.json
index c41539eb8..44639f128 100644
--- a/src/app/calculators/rugofondmultiple/config.json
+++ b/src/app/calculators/rugofondmultiple/config.json
@@ -64,16 +64,5 @@
                 "help": "pam/macrorugo.html#rugosite-de-fond"
             }
         ]
-    },
-    {
-        "id": "rugofond_container",
-        "type": "template_container",
-        "templates": [
-            "fs_rugofond"
-        ]
-    },
-    {
-        "type": "options",
-        "help": "pam/macrorugo_complexe.html"
     }
 ]
diff --git a/src/app/components/fixedvar-results/var-results.component.ts b/src/app/components/fixedvar-results/var-results.component.ts
index f48623acc..301959195 100644
--- a/src/app/components/fixedvar-results/var-results.component.ts
+++ b/src/app/components/fixedvar-results/var-results.component.ts
@@ -19,6 +19,9 @@ import { longestVarParam } from "../../../app/util/util";
 })
 export class VarResultsComponent extends ResultsComponentDirective implements Observer, OnInit {
 
+    @ViewChild("tableContainer")
+        table: ElementRef;
+
     /** size of the longest variated parameter */
     public size: number;
 
@@ -34,9 +37,6 @@ export class VarResultsComponent extends ResultsComponentDirective implements Ob
     /** messages de log issus des résultats variés */
     protected _messages: Message[];
 
-    @ViewChild("tableContainer")
-    table: ElementRef;
-
     constructor(
         protected intlService: I18nService,
         protected logEntriesDetailsDialog: MatDialog
@@ -68,6 +68,7 @@ export class VarResultsComponent extends ResultsComponentDirective implements Ob
             if (this._messages.length > 0) { // has log messages
                 this._headers.push("logMessagesColumn");
             }
+            console.log("headers", this._varResults.variableParamHeaders);
             this._headers = this._headers.concat(this._varResults.variableParamHeaders);
             this._headers = this._headers.concat(this._varResults.resultHeaders);
 
@@ -125,12 +126,13 @@ export class VarResultsComponent extends ResultsComponentDirective implements Ob
                     for (const c of sn.getChildren()) {
                         if (c.result) {
                             for (const k of c.result.resultElements[i].keys) {
+                                // console.log("k", k);
                                 const er: number = c.result.resultElements[i].getValue(k);
+                                // console.log("er", er);
                                 list.push(this.intlService.formatResult(k, er));
                             }
                         }
                     }
-
                     this._results.push(list);
                 }
             }
diff --git a/src/app/results/var-results.ts b/src/app/results/var-results.ts
index c8c814d89..7f58101cb 100644
--- a/src/app/results/var-results.ts
+++ b/src/app/results/var-results.ts
@@ -340,8 +340,9 @@ export class VarResults extends CalculatedParamResults implements PlottableData
     }
 
     public update() {
-        // refresh param headers
-        this._variableParamHeaders = this._variatedParams.map((v) => {
+        // refresh param headers and build source nub headers
+        const parentVariatedParameters = this._variatedParams.filter(v => v.param.nubCalcType === this.result.sourceNub.calcType);
+        this._variableParamHeaders = parentVariatedParameters.map((v) => {
             let h = this.expandLabelFromSymbol(v.param);
             h += this.getHelpLink(v.param.symbol);
             return h;
@@ -382,6 +383,7 @@ export class VarResults extends CalculatedParamResults implements PlottableData
         let ct = sn.calcType;
         if (sn.parent) {
             ct = sn.parent.calcType;
+            console.log("ct", ct);
         }
         // entêtes des résultats
         this._resultHeaders = [];
@@ -410,9 +412,17 @@ export class VarResults extends CalculatedParamResults implements PlottableData
                     rh += this.getHelpLink(k);
                     this._resultHeaders.push(rh);
                 }
+                // build header for children variated parameters
+                for (const v of c.findVariatedParams()) {
+                    let h = sprintf(ServiceFactory.i18nService.localizeText("INFO_STUFF_N"), cn)
+                        + (c.findPositionInParent() + 1) + " : "
+                        + ServiceFactory.formulaireService.expandVariableNameAndUnit(ct, v.param.symbol);
+                    h += this.getHelpLink(v.param.symbol);
+                    this.variableParamHeaders.push(h);
+                }
+                // this.variableParamHeaders.push()
             }
         }
-
         this.resetDefaultAxisIfNeeded();
     }
 
diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index afd458cce..d608687aa 100755
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -422,6 +422,7 @@
     "INFO_LIB_PVMAXLIM": "Puissance volumique dissipée maximale limite",
     "INFO_LIB_PAB_CHART_SEUILS": "Seuils (%s)",
     "INFO_LIB_SUBMERGENCE": "Ennoiement",
+    "INFO_LIB_": "Débit du radier",
     "INFO_LINKED_VALUE_CHILD": "%s (%s, %s %s)",
     "INFO_LINKED_VALUE_EXTRA_RESULT_OF": "%s (%s)",
     "INFO_LINKED_VALUE_EXTRA_RESULT": "%s (%s)",
-- 
GitLab


From fe0297e8d921b1ad78c7ccb9b9c363a3f73744b4 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Tue, 5 Mar 2024 16:00:28 +0000
Subject: [PATCH 10/17] Fix: remove INFO_LIB translation Refs #658

---
 src/locale/messages.fr.json | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index d608687aa..afd458cce 100755
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -422,7 +422,6 @@
     "INFO_LIB_PVMAXLIM": "Puissance volumique dissipée maximale limite",
     "INFO_LIB_PAB_CHART_SEUILS": "Seuils (%s)",
     "INFO_LIB_SUBMERGENCE": "Ennoiement",
-    "INFO_LIB_": "Débit du radier",
     "INFO_LINKED_VALUE_CHILD": "%s (%s, %s %s)",
     "INFO_LINKED_VALUE_EXTRA_RESULT_OF": "%s (%s)",
     "INFO_LINKED_VALUE_EXTRA_RESULT": "%s (%s)",
-- 
GitLab


From 875ab4bbb1b56811f948124b91237b59806c4b72 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Wed, 6 Mar 2024 14:25:06 +0000
Subject: [PATCH 11/17] fix: change warning message content to be more genral
 when ZF1 > Z1 or Z1 = ZF1 Refs #658

---
 src/locale/messages.en.json | 6 +++---
 src/locale/messages.fr.json | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json
index 086df219d..c98a910e9 100755
--- a/src/locale/messages.en.json
+++ b/src/locale/messages.en.json
@@ -82,7 +82,7 @@
     "ERROR_STRUCTURE_Q_TROP_ELEVE": "The flow passing through the other devices is too high: the requested parameter is not calculable.",
     "ERROR_STRUCTURE_ZDV_PAS_CALCULABLE": "Parameter \"Crest elevation\" cannot be calculated with this discharge law",
     "ERROR_STRUCTURE_Z_EGAUX_Q_NON_NUL": "Upstream and downstream elevations are equal but flow is not null",
-    "WARNING_COEF_DEBIT_NULL": "Calculation is impossible when discharge coefficient is null",
+    "WARNING_COEF_DEBIT_NULL": "Apron n°%number%: Value of calculated parameter is null when discharge coefficient is null",
     "ERROR_D65_NULL": "Calculation is impossible when d65 is null",
     "INFO_CALCULATOR_CALC_NAME": "Calculator name",
     "INFO_CALCULATOR_CALCULER": "Compute",
@@ -722,8 +722,8 @@
     "WARNING_SESSION_LOAD_NOTES_MERGED": "Notes have been merged",
     "WARNING_VALUE_ROUNDED_TO_INTEGER": "Value of %symbol% was rounded to %rounded%",
     "WARNING_VARIATED_LENGTH_LIMITED_BY_LINKED_RESULT": "Number of results is limited by linked result %symbol%",
-    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Apron n°%number%: zero flow because upstream elevation is lower than the upstream bottom elevation of the ramp",
-    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Apron n°%number%: zero flow because upstream elevation is equal to the upstream bottom elevation of the ramp",
+    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Apron n°%number%: calculated value is null because upstream elevation is lower than the upstream bottom elevation of the ramp",
+    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Apron n°%number%: calculated value is null because upstream elevation is equal to the upstream bottom elevation of the ramp",
     "ERROR_PAR_P_DEVIATES_MORE_THAN_10_5_PCT": "Given spacing value is more than 10% lower or more than 5% greater than standard value %stdP%",
     "ERROR_PAR_QSTAR_OUT_OF_RANGE": "Flow value %val% is outside of validity interval [ %min%, %max% ] given by abacuses",
     "ERROR_PAR_HA_OUT_OF_RANGE": "Upstream head value %val% is outside of validity interval [ %min%, %max% ] given by abacuses",
diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index afd458cce..587f829c2 100755
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -82,7 +82,7 @@
     "ERROR_STRUCTURE_Q_TROP_ELEVE": "Le débit passant par les autres ouvrages est trop élevé&nbsp;: le paramètre demandé n'est pas calculable.",
     "ERROR_STRUCTURE_ZDV_PAS_CALCULABLE": "Le paramètre \"Cote de radier\" ne peut pas être calculé avec cette loi de débit",
     "ERROR_STRUCTURE_Z_EGAUX_Q_NON_NUL": "Les cotes amont aval sont égales et le débit n'est pas nul",
-    "WARNING_COEF_DEBIT_NULL": "Débit nul à cause d'un coefficient de débit nul",
+    "WARNING_COEF_DEBIT_NULL": "Radier n°%number%: valeur du parametre calculé nul car le coefficient de débit est nul",
     "ERROR_D65_NULL": "Le calcul impossible à cause d'un d65 nul",
     "INFO_CALCULATOR_CALC_NAME": "Nom du module de calcul",
     "INFO_CALCULATOR_CALCULER": "Calculer",
@@ -723,8 +723,8 @@
     "WARNING_SESSION_LOAD_NOTES_MERGED": "Les notes ont été fusionnées",
     "WARNING_VALUE_ROUNDED_TO_INTEGER": "La valeur de %symbol% a été arrondie à %rounded%",
     "WARNING_VARIATED_LENGTH_LIMITED_BY_LINKED_RESULT": "Le nombre de résultats est limité par le résultat lié %symbol%",
-    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Radier n°%number%: débit nul car la cote amont est plus basse que la cote de fond amont de la rampe",
-    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Radier n°%number%: débit nul car la cote de l'eau amont est égale à la cote de fond amont de la rampe",
+    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Radier n°%number%: valeur du parametre calculé nul car la cote amont est plus basse que la cote de fond amont de la rampe",
+    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Radier n°%number%: valeur du parametre calculé nul car la cote de l'eau amont est égale à la cote de fond amont de la rampe",
     "ERROR_PAR_P_DEVIATES_MORE_THAN_10_5_PCT": "La valeur d'espacement fournie est plus de 10% plus petite ou plus de 5% plus grande que la valeur standard %stdP%",
     "ERROR_PAR_QSTAR_OUT_OF_RANGE": "La valeur %val% du débit sort de l'intervalle de validité [ %min%, %max% ] donné par les abaques",
     "ERROR_PAR_HA_OUT_OF_RANGE": "La valeur %val% de la charge amont sort de l'intervalle de validité [ %min%, %max% ] donné par les abaques",
-- 
GitLab


From e157e24245973b5e875b8daeba436dced71fd188 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Thu, 14 Mar 2024 14:29:03 +0000
Subject: [PATCH 12/17] fix: change warning message content when Z1 < ZF1 and
 Z1 = ZFI (zero flow) Refs #658

---
 src/locale/messages.en.json | 4 ++--
 src/locale/messages.fr.json | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json
index c98a910e9..9d8b2aa70 100755
--- a/src/locale/messages.en.json
+++ b/src/locale/messages.en.json
@@ -722,8 +722,8 @@
     "WARNING_SESSION_LOAD_NOTES_MERGED": "Notes have been merged",
     "WARNING_VALUE_ROUNDED_TO_INTEGER": "Value of %symbol% was rounded to %rounded%",
     "WARNING_VARIATED_LENGTH_LIMITED_BY_LINKED_RESULT": "Number of results is limited by linked result %symbol%",
-    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Apron n°%number%: calculated value is null because upstream elevation is lower than the upstream bottom elevation of the ramp",
-    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Apron n°%number%: calculated value is null because upstream elevation is equal to the upstream bottom elevation of the ramp",
+    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Apron n°%number%: calculated flow is null because upstream elevation is lower than the upstream bottom elevation of the ramp",
+    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Apron n°%number%: calculated flow is null because upstream elevation is equal to the upstream bottom elevation of the ramp",
     "ERROR_PAR_P_DEVIATES_MORE_THAN_10_5_PCT": "Given spacing value is more than 10% lower or more than 5% greater than standard value %stdP%",
     "ERROR_PAR_QSTAR_OUT_OF_RANGE": "Flow value %val% is outside of validity interval [ %min%, %max% ] given by abacuses",
     "ERROR_PAR_HA_OUT_OF_RANGE": "Upstream head value %val% is outside of validity interval [ %min%, %max% ] given by abacuses",
diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index 587f829c2..78fe01ef2 100755
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -723,8 +723,8 @@
     "WARNING_SESSION_LOAD_NOTES_MERGED": "Les notes ont été fusionnées",
     "WARNING_VALUE_ROUNDED_TO_INTEGER": "La valeur de %symbol% a été arrondie à %rounded%",
     "WARNING_VARIATED_LENGTH_LIMITED_BY_LINKED_RESULT": "Le nombre de résultats est limité par le résultat lié %symbol%",
-    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Radier n°%number%: valeur du parametre calculé nul car la cote amont est plus basse que la cote de fond amont de la rampe",
-    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Radier n°%number%: valeur du parametre calculé nul car la cote de l'eau amont est égale à la cote de fond amont de la rampe",
+    "WARNING_ELEVATION_Z1_LOWER_THAN_ZF1": "Radier n°%number%: le débit calculé est nul car la cote amont est plus basse que la cote de fond amont de la rampe",
+    "WARNING_ELEVATION_Z1_EQUAL_TO_ZF1": "Radier n°%number%: le débit calculé est nul car la cote de l'eau amont est égale à la cote de fond amont de la rampe",
     "ERROR_PAR_P_DEVIATES_MORE_THAN_10_5_PCT": "La valeur d'espacement fournie est plus de 10% plus petite ou plus de 5% plus grande que la valeur standard %stdP%",
     "ERROR_PAR_QSTAR_OUT_OF_RANGE": "La valeur %val% du débit sort de l'intervalle de validité [ %min%, %max% ] donné par les abaques",
     "ERROR_PAR_HA_OUT_OF_RANGE": "La valeur %val% de la charge amont sort de l'intervalle de validité [ %min%, %max% ] donné par les abaques",
-- 
GitLab


From 859691e5d2b24616105fbf75c117788a2183dd79 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Fri, 15 Mar 2024 09:40:17 +0000
Subject: [PATCH 13/17] fix: delete rugoFond calculator from Nghyd Refs #658

---
 src/app/calculators/rugofond/config.json      | 49 -------------------
 src/app/calculators/rugofond/en.json          | 26 ----------
 src/app/calculators/rugofond/fr.json          | 26 ----------
 .../fixedvar-results/var-results.component.ts |  1 -
 src/app/config.json                           |  2 +-
 5 files changed, 1 insertion(+), 103 deletions(-)
 delete mode 100644 src/app/calculators/rugofond/config.json
 delete mode 100644 src/app/calculators/rugofond/en.json
 delete mode 100644 src/app/calculators/rugofond/fr.json

diff --git a/src/app/calculators/rugofond/config.json b/src/app/calculators/rugofond/config.json
deleted file mode 100644
index e9b92f7f7..000000000
--- a/src/app/calculators/rugofond/config.json
+++ /dev/null
@@ -1,49 +0,0 @@
-[
-    {
-        "id": "fs_hydraulique",
-        "type": "fieldset",
-        "fields": [
-            "Q",
-            "Z1"
-        ]
-    },
-    {
-        "id": "fs_geometry_crete",
-        "type": "fieldset",
-        "fields": [
-            "L",
-            "Cd"
-        ]
-    },
-    {
-        "id": "fs_geometry_rampe",
-        "type": "fieldset",
-        "fields": [
-            {
-                "id": "If",
-                "help": "hsl/pente.html"
-            },
-            "d65",
-            "a"
-        ]
-    },
-    {
-        "id": "fs_type",
-        "type": "fieldset",
-        "fields": [
-            "ZF1",
-            {
-                "id": "ZD1",
-                "allowEmpty": true
-            },
-            {
-                "id": "ZR1",
-                "allowEmpty": true
-            },
-            {
-                "id": "Nb",
-                "allowEmpty": true
-            }
-        ]
-    }
-]
diff --git a/src/app/calculators/rugofond/en.json b/src/app/calculators/rugofond/en.json
deleted file mode 100644
index 4d57cf8c6..000000000
--- a/src/app/calculators/rugofond/en.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
-    "fs_hydraulique": "Hydraulic parameters",
-    "fs_geometry_crete": "Crest geometry",
-    "fs_geometry_rampe": "Ramp geometry",
-    "fs_type": "Ramp type",
-    "fs_pass": "Fish pass parameters",
-    "fs_bloc": "Blocks parameters",
-    "fs_pass_type": "Pass type",
-    "macrorugo_container": "Aprons",
-    "fs_macrorugo": "Apron",
-
-    "select_passtype": "Pass type",
-    "Q": "Flow",
-    "If": "Slope",
-    "a": "Strickler correction factor",
-    "ZF1": "Upstream ramp bottom elevation",
-    "ZD1": "Lower upstream ramp bottom elevation",
-    "ZR1": "Upper upstream ramp bottom elevation",
-    "Nb": "Number of baffles",
-    "L": "Total width of ramp",
-    "Cd": "Discharge coefficient",
-    "d65": "d65",
-
-    "PASSTYPE_0": "Horizontal aprons",
-    "PASSTYPE_1": "Inclined apron"
-}
\ No newline at end of file
diff --git a/src/app/calculators/rugofond/fr.json b/src/app/calculators/rugofond/fr.json
deleted file mode 100644
index 371572308..000000000
--- a/src/app/calculators/rugofond/fr.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
-    "fs_hydraulique": "Paramètres hydrauliques",
-    "fs_geometry_crete": "Géométrie de la crête",
-    "fs_geometry_rampe": "Géométrie de la rampe",
-    "fs_type": "Type de rampe",
-    "fs_pass": "Paramètres de la passe",
-    "fs_bloc": "Paramètres des blocs",
-    "fs_pass_type": "Type de passe",
-    "macrorugo_container": "Radiers",
-    "fs_macrorugo": "Radier",
-
-    "select_passtype": "Type de passe",
-    "Q": "Débit",
-    "If": "Pente",
-    "a": "Coefficient correcteur du Strickler",
-    "ZF1": "Cote de fond amont rampe",
-    "ZD1": "Cote de fond bas amont rampe",
-    "ZR1": "Cote de fond haut amont rampe",
-    "Nb": "Nombre de ralentisseurs",
-    "L": "Largeur totale de la rampe", 
-    "Cd": "Coefficient de débit",
-    "d65": "d65",
-    
-    "PASSTYPE_0": "Radier horizontal",
-    "PASSTYPE_1": "Radier incliné"
-}
\ No newline at end of file
diff --git a/src/app/components/fixedvar-results/var-results.component.ts b/src/app/components/fixedvar-results/var-results.component.ts
index 301959195..cce83891f 100644
--- a/src/app/components/fixedvar-results/var-results.component.ts
+++ b/src/app/components/fixedvar-results/var-results.component.ts
@@ -68,7 +68,6 @@ export class VarResultsComponent extends ResultsComponentDirective implements Ob
             if (this._messages.length > 0) { // has log messages
                 this._headers.push("logMessagesColumn");
             }
-            console.log("headers", this._varResults.variableParamHeaders);
             this._headers = this._headers.concat(this._varResults.variableParamHeaders);
             this._headers = this._headers.concat(this._varResults.resultHeaders);
 
diff --git a/src/app/config.json b/src/app/config.json
index b21ee7df5..bf12d9f31 100644
--- a/src/app/config.json
+++ b/src/app/config.json
@@ -31,7 +31,7 @@
                 "path": "passe-naturelle.jpg",
                 "credits": "S. Richard / OFB"
             },
-            "calculators": [ 11, 17, 27, 37, 38, 39 ]
+            "calculators": [ 11, 17, 27, 37, 38 ]
         },
         {
             "name": "VERIFICATION",
-- 
GitLab


From 976464d85a969809ad8a9317de5bacc84016188a Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Fri, 15 Mar 2024 09:41:46 +0000
Subject: [PATCH 14/17] fix: change ZRR by ZRH and ZRL by ZRB in rugofond
 multiple config.json Refs #658

---
 src/app/calculators/rugofondmultiple/config.json | 4 ++--
 src/app/calculators/rugofondmultiple/en.json     | 4 ++--
 src/app/calculators/rugofondmultiple/fr.json     | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/app/calculators/rugofondmultiple/config.json b/src/app/calculators/rugofondmultiple/config.json
index 44639f128..a48accba6 100644
--- a/src/app/calculators/rugofondmultiple/config.json
+++ b/src/app/calculators/rugofondmultiple/config.json
@@ -37,11 +37,11 @@
                 "property": "rugofondType"
             },
             {
-                "id": "ZRR",
+                "id": "ZRH",
                 "allowEmpty": true
             },
             {
-                "id": "ZRL",
+                "id": "ZRB",
                 "allowEmpty": true
             },
             {
diff --git a/src/app/calculators/rugofondmultiple/en.json b/src/app/calculators/rugofondmultiple/en.json
index f34135260..54f8187ed 100644
--- a/src/app/calculators/rugofondmultiple/en.json
+++ b/src/app/calculators/rugofondmultiple/en.json
@@ -14,8 +14,8 @@
     "If": "Slope",
     "a": "Strickler correction factor",
     "ZF1": "Upstream ramp bottom elevation",
-    "ZRR": "Upper upstream ramp bottom elevation",
-    "ZRL": "Lower upstream ramp bottom elevation",
+    "ZRH": "Upper upstream ramp bottom elevation",
+    "ZRB": "Lower upstream ramp bottom elevation",
     "NbT": "Number of flow sections",
     "L": "Total width of ramp",
     "Cd": "Discharge coefficient",
diff --git a/src/app/calculators/rugofondmultiple/fr.json b/src/app/calculators/rugofondmultiple/fr.json
index 95b7744ff..725789fdd 100644
--- a/src/app/calculators/rugofondmultiple/fr.json
+++ b/src/app/calculators/rugofondmultiple/fr.json
@@ -14,8 +14,8 @@
     "If": "Pente",
     "a": "Coefficient correcteur du Strickler",
     "ZF1": "Cote de fond amont rampe",
-    "ZRR": "Cote de fond haut amont",
-    "ZRL": "Cote de fond bas amont",
+    "ZRH": "Cote de fond haut amont",
+    "ZRB": "Cote de fond bas amont",
     "NbT": "Nombre de tranche d'écoulement",
     "L": "Largeur totale de la rampe", 
     "Cd": "Coefficient de débit",
-- 
GitLab


From 15f3732fe7ad154f447abcaaf611defb80a93aed Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Mon, 18 Mar 2024 15:42:29 +0000
Subject: [PATCH 15/17] refactor: change translation for rugofondMultiple title
 and rugofondMultiple short title Refs #658

---
 src/locale/messages.en.json | 4 ++--
 src/locale/messages.fr.json | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json
index 9d8b2aa70..350cfc16e 100755
--- a/src/locale/messages.en.json
+++ b/src/locale/messages.en.json
@@ -518,8 +518,8 @@
     "INFO_PAR_TITRE": "Baffle fishway: setup",
     "INFO_RUGOFOND_TITRE": "Bed roughness fishpasses",
     "INFO_RUGOFOND_TITRE_COURT": "Bed roughness",
-    "INFO_RUGOFONDMULTIPLE_TITRE": "Multiple bed roughness fishpasses",
-    "INFO_RUGOFONDMULTIPLE_TITRE_COURT": "Multiple bed roughness",
+    "INFO_RUGOFONDMULTIPLE_TITRE": "Bed roughness fishpasses",
+    "INFO_RUGOFONDMULTIPLE_TITRE_COURT": "Bed roughness",
     "INFO_PAR_DESCRIPTION": "planes Denil Fatou superactive mixte chevrons canoe",
     "INFO_PAR_TITRE_COURT": "HF: setup",
     "INFO_PARSIMULATION_TITRE": "Baffle fishway: simulation",
diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index 78fe01ef2..e8b2752fc 100755
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -519,8 +519,8 @@
     "INFO_PAR_TITRE": "Passe à ralentisseurs&nbsp;: calage",
     "INFO_RUGOFOND_TITRE": "Passe à rugosité de fond",
     "INFO_RUGOFOND_TITRE_COURT": "Rugofond",
-    "INFO_RUGOFONDMULTIPLE_TITRE": "Passe à rugosité de fond multiple",
-    "INFO_RUGOFONDMULTIPLE_TITRE_COURT": "Rugofond multiple",
+    "INFO_RUGOFONDMULTIPLE_TITRE": "Passe à rugosité de fond",
+    "INFO_RUGOFONDMULTIPLE_TITRE_COURT": "Rugofond",
     "INFO_PAR_DESCRIPTION": "plans Denil Fatou fonds suractifs mixte chevrons canoë",
     "INFO_PAR_TITRE_COURT": "PAR&nbsp;: calage",
     "INFO_PARSIMULATION_TITRE": "Passe à ralentisseurs&nbsp;: simulation",
-- 
GitLab


From 1089930743ba9a4072e6bca3412f1c25ca156741 Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Tue, 19 Mar 2024 11:18:27 +0000
Subject: [PATCH 16/17] refactor: update label according to jalhyd variable
 name in macrorugocompound and rugofond multiple Refs #658

---
 src/app/calculators/macrorugocompound/config.json | 4 ++--
 src/app/calculators/macrorugocompound/en.json     | 4 ++--
 src/app/calculators/macrorugocompound/fr.json     | 4 ++--
 src/app/calculators/rugofondmultiple/config.json  | 2 +-
 src/app/calculators/rugofondmultiple/en.json      | 2 +-
 src/app/calculators/rugofondmultiple/fr.json      | 2 +-
 6 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/src/app/calculators/macrorugocompound/config.json b/src/app/calculators/macrorugocompound/config.json
index 79290dc66..cea0b83b5 100644
--- a/src/app/calculators/macrorugocompound/config.json
+++ b/src/app/calculators/macrorugocompound/config.json
@@ -47,11 +47,11 @@
                 "property": "inclinedApron"
             },
             {
-                "id": "ZRR",
+                "id": "ZRT",
                 "help": "pam/macrorugo.html#rugosite-de-fond"
             },
             {
-                "id": "ZRL",
+                "id": "ZRB",
                 "help": "pam/macrorugo.html#rugosite-de-fond"
             },
             "BR"
diff --git a/src/app/calculators/macrorugocompound/en.json b/src/app/calculators/macrorugocompound/en.json
index e333dde61..74a0abf89 100644
--- a/src/app/calculators/macrorugocompound/en.json
+++ b/src/app/calculators/macrorugocompound/en.json
@@ -13,8 +13,8 @@
     "PBD": "Diameter",
     "PBH": "Height",
     "Cd0": "Shape (1 for round, 2 for square)",
-    "ZRL": "Left ramp bottom elevation",
-    "ZRR": "Right ramp bottom elevation",
+    "ZRB": "Lower upstream ramp bottom elevation",
+    "ZRT": "Upper upstream ramp bottom elevation",
     "BR": "Total width",
     "ZF1": "Upstream ramp bottom elevation",
     "B": "Width",
diff --git a/src/app/calculators/macrorugocompound/fr.json b/src/app/calculators/macrorugocompound/fr.json
index 8c276fbd0..642bdf907 100644
--- a/src/app/calculators/macrorugocompound/fr.json
+++ b/src/app/calculators/macrorugocompound/fr.json
@@ -13,8 +13,8 @@
     "PBD": "Diamètre",
     "PBH": "Hauteur",
     "Cd0": "Forme (1 pour rond, 2 pour carré)",
-    "ZRL": "Cote de radier gauche",
-    "ZRR": "Cote de radier droit",
+    "ZRB": "Cote de fond bas amont",
+    "ZRT": "Cote de fond haut amont",
     "BR": "Largeur totale",
     "ZF1": "Cote de fond amont rampe",
     "B": "Largeur",
diff --git a/src/app/calculators/rugofondmultiple/config.json b/src/app/calculators/rugofondmultiple/config.json
index a48accba6..9758d8939 100644
--- a/src/app/calculators/rugofondmultiple/config.json
+++ b/src/app/calculators/rugofondmultiple/config.json
@@ -37,7 +37,7 @@
                 "property": "rugofondType"
             },
             {
-                "id": "ZRH",
+                "id": "ZRT",
                 "allowEmpty": true
             },
             {
diff --git a/src/app/calculators/rugofondmultiple/en.json b/src/app/calculators/rugofondmultiple/en.json
index 54f8187ed..e16c1d7d3 100644
--- a/src/app/calculators/rugofondmultiple/en.json
+++ b/src/app/calculators/rugofondmultiple/en.json
@@ -14,7 +14,7 @@
     "If": "Slope",
     "a": "Strickler correction factor",
     "ZF1": "Upstream ramp bottom elevation",
-    "ZRH": "Upper upstream ramp bottom elevation",
+    "ZRT": "Upper upstream ramp bottom elevation",
     "ZRB": "Lower upstream ramp bottom elevation",
     "NbT": "Number of flow sections",
     "L": "Total width of ramp",
diff --git a/src/app/calculators/rugofondmultiple/fr.json b/src/app/calculators/rugofondmultiple/fr.json
index 725789fdd..6a2ab4707 100644
--- a/src/app/calculators/rugofondmultiple/fr.json
+++ b/src/app/calculators/rugofondmultiple/fr.json
@@ -14,7 +14,7 @@
     "If": "Pente",
     "a": "Coefficient correcteur du Strickler",
     "ZF1": "Cote de fond amont rampe",
-    "ZRH": "Cote de fond haut amont",
+    "ZRT": "Cote de fond haut amont",
     "ZRB": "Cote de fond bas amont",
     "NbT": "Nombre de tranche d'écoulement",
     "L": "Largeur totale de la rampe", 
-- 
GitLab


From a858f5f6339e838529784774058e23c9715d462d Mon Sep 17 00:00:00 2001
From: Jean-Pascal <jean-pascal.aubry@inrae.fr>
Date: Tue, 19 Mar 2024 16:48:43 +0000
Subject: [PATCH 17/17] fix: fix backwater curves after updating variable
 params headers building Refs #658

---
 src/app/results/var-results.ts | 25 +++++++++++++++++--------
 1 file changed, 17 insertions(+), 8 deletions(-)

diff --git a/src/app/results/var-results.ts b/src/app/results/var-results.ts
index 7f58101cb..e63eeaa38 100644
--- a/src/app/results/var-results.ts
+++ b/src/app/results/var-results.ts
@@ -7,7 +7,9 @@ import { FormulaireDefinition } from "../formulaire/definition/form-definition";
 
 import { sprintf } from "sprintf-js";
 
-import { ResultElement, ParamFamily, capitalize, Nub, VariatedDetails, ParamDefinition, ParamDomain, ParamDomainValue } from "jalhyd";
+import { ResultElement, ParamFamily, capitalize, Nub, VariatedDetails, ParamDefinition, ParamDomain, ParamDomainValue, acSection } from "jalhyd";
+import { CourbeRemous } from "jalhyd";
+import { SectionNub } from "jalhyd";
 
 export class VarResults extends CalculatedParamResults implements PlottableData {
     /**
@@ -341,12 +343,20 @@ export class VarResults extends CalculatedParamResults implements PlottableData
 
     public update() {
         // refresh param headers and build source nub headers
-        const parentVariatedParameters = this._variatedParams.filter(v => v.param.nubCalcType === this.result.sourceNub.calcType);
-        this._variableParamHeaders = parentVariatedParameters.map((v) => {
-            let h = this.expandLabelFromSymbol(v.param);
-            h += this.getHelpLink(v.param.symbol);
-            return h;
-        });
+        if (this.result.sourceNub instanceof SectionNub) {
+            this._variableParamHeaders = this._variatedParams.map((v) => {
+                let h = this.expandLabelFromSymbol(v.param);
+                h += this.getHelpLink(v.param.symbol);
+                return h;
+            });
+        } else {
+            const parentVariatedParameters = this._variatedParams.filter(v => v.param.nubCalcType === this.result.sourceNub.calcType);
+            this._variableParamHeaders = parentVariatedParameters.map((v) => {
+                let h = this.expandLabelFromSymbol(v.param);
+                h += this.getHelpLink(v.param.symbol);
+                return h;
+            });
+        }
 
         // liste la plus longue
         const lvp = longestVarParam(this._variatedParams);
@@ -383,7 +393,6 @@ export class VarResults extends CalculatedParamResults implements PlottableData
         let ct = sn.calcType;
         if (sn.parent) {
             ct = sn.parent.calcType;
-            console.log("ct", ct);
         }
         // entêtes des résultats
         this._resultHeaders = [];
-- 
GitLab