From f51b3253d15c7a37ae715b98ac2dd5dc281a4f00 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Timoth=C3=A9e?= <tpoussard@neogeo.fr>
Date: Fri, 3 Jun 2022 16:02:33 +0200
Subject: [PATCH] restrict opacity form to polygon & adapt default data value
 to prop type

---
 src/components/FeatureType/SymbologySelector.vue |  4 ++--
 src/views/FeatureType/FeatureTypeSymbology.vue   | 12 ++++++++----
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/src/components/FeatureType/SymbologySelector.vue b/src/components/FeatureType/SymbologySelector.vue
index b2dc1389..3f98932a 100644
--- a/src/components/FeatureType/SymbologySelector.vue
+++ b/src/components/FeatureType/SymbologySelector.vue
@@ -14,7 +14,7 @@
           :name="form.color.html_name"
         >
       </div>
-      <div>
+      <div v-if="geomType === 'polygon'">
         <label>Opacité &nbsp;<span>(%)</span></label>
         <div class="range-container">
           <input
@@ -107,7 +107,7 @@ export default {
           html_name: 'couleur',
           value: '#000000',
         },
-        opacity: 1,
+        opacity: '0.5',
       }
     };
   },
diff --git a/src/views/FeatureType/FeatureTypeSymbology.vue b/src/views/FeatureType/FeatureTypeSymbology.vue
index 57f43bb3..c08a6fcf 100644
--- a/src/views/FeatureType/FeatureTypeSymbology.vue
+++ b/src/views/FeatureType/FeatureTypeSymbology.vue
@@ -99,10 +99,7 @@
                 feature_type.colors_style.value.icons[option] :
                 null
               "
-              :init-opacity="feature_type.colors_style.value ?
-                feature_type.colors_style.value.opacities[option] :
-                null
-              "
+              :init-opacity="getOpacity(feature_type, option)"
               :geom-type="feature_type.customfield_set.geomType"
               @set="setColorsStyle"
             />
@@ -306,6 +303,13 @@ export default {
           console.error(err);
           this.loading = false;
         });
+    },
+
+    getOpacity(feature_type, optionName) {
+      if (feature_type.colors_style.value && feature_type.colors_style.value.opacities) {
+        return feature_type.colors_style.value.opacities[optionName];
+      }
+      return null;
     }
   }
 };
-- 
GitLab