up labourage

This commit is contained in:
Tykayn 2025-06-30 22:27:00 +02:00 committed by tykayn
parent 7cde6a56aa
commit 1c24ae1fea
4 changed files with 32 additions and 18 deletions

View file

@ -229,37 +229,35 @@ class PublicController extends AbstractController
// Récupérer les données POST
$request = Request::createFromGlobals();
$status = null;
$exception = false;
$exception_message = null;
$osm_kind = 'node';
// Vérifier si des données ont été soumises
if ($request->isMethod('POST')) {
$status = "non modifié";
// Récupérer le type d'objet (node ou way)
$osm_kind = $request->request->get('osm_kind', 'node');
// Récupérer tous les tags du formulaire
$tags = [];
$request_post = $request->request->all();
$request_post = $this->motocultrice->map_post_values($request_post);
foreach ($request_post as $key => $value) {
if (strpos($key, 'commerce_tag_value__') === 0) {
$tagKey = str_replace('commerce_tag_value__', '', $key);
if (!empty($value)) {
$tags[$tagKey] = trim($value);
}
}
}
var_dump($tags);
var_dump('POST brut', $_POST);
var_dump('request->request->all()', $request->request->all());
var_dump('tags extraits', $tags);
// DEBUG : enlever ce die après analyse
die('DEBUG avant envoi OSM');
// Récupérer le token OSM depuis les variables d'environnement
$osm_api_token = $_ENV['APP_OSM_BEARER'];
$exception = false;
$exception_message = "";
try {
$client = new Client();

View file

@ -66,6 +66,8 @@ class FollowUpService
$objects = array_filter($elements, fn($el) => ($el['tags']['natural'] ?? null) === 'tree') ?? [];
} elseif ($type === 'places') {
$objects = [];
} elseif ($type === 'power_pole') {
$objects = array_filter($elements, fn($el) => ($el['tags']['power'] ?? null) === 'pole') ?? [];
} else {
$objects = [];
}
@ -195,6 +197,14 @@ class FollowUpService
|| !empty($tags['leaf_fall'] ?? null);
return $hasTaxonomy && $hasLeaf;
});
} elseif ($type === 'power_pole') {
$completed = array_filter($data['objects'], function($el) {
$tags = $el['tags'] ?? [];
return !empty($tags['ref'] ?? null)
|| !empty($tags['material'] ?? null)
|| !empty($tags['height'] ?? null)
|| !empty($tags['operator'] ?? null);
});
}
if ($type === 'places') {
$completion = $stats->getCompletionPercent();
@ -360,7 +370,8 @@ class FollowUpService
'street_lamp' => 'Lampadaires',
'drinking_water' => 'Eau potable',
'tree' => 'Arbres',
'places' => 'Lieux'
'places' => 'Lieux',
'power_pole' => 'Poteaux électriques',
];
}
@ -388,7 +399,8 @@ class FollowUpService
'street_lamp' => 'bi-lightbulb',
'drinking_water' => 'bi-droplet-half',
'tree' => 'bi-tree',
'places' => 'bi-geo-alt'
'places' => 'bi-geo-alt',
'power_pole' => 'bi-signpost',
];
}

View file

@ -592,6 +592,7 @@ area["ref:INSEE"="$zone"]->.searchArea;
nwr["highway"="street_lamp"](area.searchArea);
nwr["amenity"="drinking_water"](area.searchArea);
nwr["natural"="tree"](area.searchArea);
nw["power"="pole"](area.searchArea);
);
(._;>;);
out meta;