diff --git a/locals.js b/locals.js index 1d6c5fc..6e22d70 100644 --- a/locals.js +++ b/locals.js @@ -17,11 +17,13 @@ } if (data.token[1] === 1) { const structure_englobante = handle1[data.value.numero_national_de_structure] && handle1[data.value.numero_national_de_structure][0] ? handle1[data.value.numero_national_de_structure][0] : 'n/a'; + const structure_local = { id: data.value.numero_national_de_structure , value: handle2[data.value.numero_national_de_structure] }; data.value.structure_englobante = { id: structure_englobante, value: handle2[structure_englobante] }; - data.value.structuration_hierachique = [data.value.structure_englobante]; + data.value.structuration_hierachique = [data.value.structure_englobante, structure_local]; let id = structure_englobante; let i = 0; while (id && handle1[id] && handle1[id][0] && i < 5 ) { + if (data.value.structuration_hierachique.filter(Boolean).some(x => (x && x.id === handle1[id][0]))) break; data.value.structuration_hierachique.unshift({ id: handle1[id][0], value: handle2[handle1[id][0]] }); id = handle1[id][0]; i++;