/**
* utilitaires pour la qualité des données et deviner les puissances de stations de recharge
*/
export const valid_qa_message = '✔ Aucun problème de qualité' // message affiché lorsque tout est bon
export const show_all_alerts = true // afficher ou non toutes les alertes, ou seulement les alertes critiques
const lcm_utils = {
/**
* fouiller dans les tags les valeurs explicites de puissance déclarée.
* Deviner aussi les puissances non déclarées:
* - type 2 présent, max 43kW
* - type Chademo présent, max 63kW
* https://forum.openstreetmap.fr/t/bornes-de-recharges-et-puissance-chargeurs-quel-est-votre-avis/27828
*
* @param feature
* @returns {number}
*/
guessOutputPowerFromFeature: (feature) => {
let outputPower = 0
let power = 0
if (feature.properties && feature.properties.tags) {
let found_type_2 = false
let found_type_chademo = false
// deviner les puissances max selon les capacités de prises
for (var tag in feature.properties.tags) {
if (tag.indexOf('type2') !== -1) {
found_type_2 = true
power = 43
}
if (tag.indexOf('chademo') !== -1) {
found_type_chademo = true
power = 63
}
let value = feature.properties.tags[tag]
if (value && tag.toLowerCase().indexOf('output') !== -1) {
value = '' + value
if (value.indexOf(';') !== -1) {
// console.log('value output multiple', value)
let explode = value.split(';')
explode.forEach(elem => {
if (value.replace) {
value = value.replace(' ')
value = value.replace('kW', '')
}
let power = parseInt(value)
if (power > outputPower) {
outputPower = power
}
})
} else {
if (value.replace) {
value = value.replace(' ')
value = value.replace('kW', '')
}
let power = parseInt(value)
if (power > outputPower) {
outputPower = power
}
}
}
}
}
feature.properties.outputPower = outputPower
return outputPower
},
displayBadTagsFromFeature: (feature) => {
let content = ''
let content_combo_output = ''
let content_truefalse = ''
let content_puissance_station = ''
// tag de prise sans output
if (feature.properties.tags['socket: type2_combo'] && !feature.properties.tags['socket: type2_combo:output']) {
content_combo_output += ' Prise type 2 combo sans puissance déclarée'
}
// tag de prise sans output
if (!feature.properties.tags['charging_station:output']) {
content_puissance_station += '⚡ Pas de puissance déclarée pour la station'
}
// Vérifier les tags de puissance qui ne devraient pas contenir de point-virgule
for (let tag in feature.properties.tags) {
if (tag.includes(':output')) {
let value = feature.properties.tags[tag];
if (value && value.includes(';')) {
content += `