Skip to content
Snippets Groups Projects
Commit 49e35f31 authored by Timothee P's avatar Timothee P :sunflower:
Browse files

add possibility to customize colors for boolean custom fields

parent 04ce1f74
No related branches found
No related tags found
No related merge requests found
...@@ -336,18 +336,22 @@ const mapService = { ...@@ -336,18 +336,22 @@ const mapService = {
const fieldType = customfield_set.find((el) => el.name === colors_style.custom_field_name).field_type; const fieldType = customfield_set.find((el) => el.name === colors_style.custom_field_name).field_type;
const currentValue = properties[colors_style.custom_field_name]; const currentValue = properties[colors_style.custom_field_name];
if (currentValue) { switch (fieldType) {
switch (fieldType) { case 'list' :
case 'list' : if (currentValue) {
color = colors_style.colors[currentValue]; color = colors_style.colors[currentValue];
opacity = colors_style.opacities[currentValue]; opacity = colors_style.opacities[currentValue];
break;
case 'char': //* if the custom field is supposed to be a string
//* check if its current value is empty or not, to select a color | https://redmine.neogeo.fr/issues/14048
color = colors_style.value.colors[currentValue ? 'Non vide' : 'Vide'];
opacity = colors_style.value.opacities[currentValue ? 'Non vide' : 'Vide'];
break;
} }
break;
case 'char': //* if the custom field is supposed to be a string
//* check if its current value is empty or not, to select a color | https://redmine.neogeo.fr/issues/14048
color = colors_style.value.colors[currentValue ? 'Non vide' : 'Vide'];
opacity = colors_style.value.opacities[currentValue ? 'Non vide' : 'Vide'];
break;
case 'boolean':
color = colors_style.value.colors[currentValue ? 'Coché' : 'Décoché'];
opacity = colors_style.value.opacities[currentValue ? 'Coché' : 'Décoché'];
break;
} }
} }
return { color, opacity }; return { color, opacity };
......
...@@ -174,9 +174,9 @@ export default { ...@@ -174,9 +174,9 @@ export default {
]), ]),
customizableFields() { customizableFields() {
if (this.feature_type) { if (this.feature_type) {
let options = this.feature_type.customfield_set.filter(el => el.field_type === 'list' || el.field_type === 'char'); let options = this.feature_type.customfield_set.filter(el => el.field_type === 'list' || el.field_type === 'char' || el.field_type === 'boolean');
options = options.map((el) => { options = options.map((el) => {
return { name: [el.name, `(${el.field_type === 'list' ? 'Liste de valeurs' : 'Chaîne de caractères'})`], value: el }; return { name: [el.name, this.getFieldLabel(el.field_type)], value: el };
}); });
return options; return options;
} }
...@@ -189,6 +189,8 @@ export default { ...@@ -189,6 +189,8 @@ export default {
return customFieldSet.options; return customFieldSet.options;
} else if (customFieldSet.field_type === 'char') { } else if (customFieldSet.field_type === 'char') {
return ['Vide', 'Non vide']; return ['Vide', 'Non vide'];
} else if (customFieldSet.field_type === 'boolean') {
return ['Décoché', 'Coché'];
} }
} }
return []; return [];
...@@ -336,6 +338,17 @@ export default { ...@@ -336,6 +338,17 @@ export default {
return feature_type.colors_style.value.opacities[optionName]; return feature_type.colors_style.value.opacities[optionName];
} }
return null; return null;
},
getFieldLabel(fieldType) {
switch (fieldType) {
case 'list':
return'Liste de valeurs';
case 'char':
return 'Chaîne de caractères';
case 'boolean':
return 'Champs de types booléen';
}
} }
} }
}; };
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment