This commit is contained in:
Tykayn 2025-06-27 00:12:14 +02:00 committed by tykayn
parent ad240bc1b7
commit cb34fc3e1b
4 changed files with 24 additions and 10 deletions

View file

@ -247,19 +247,14 @@ class PublicController extends AbstractController
if (strpos($key, 'commerce_tag_value__') === 0) { if (strpos($key, 'commerce_tag_value__') === 0) {
$tagKey = str_replace('commerce_tag_value__', '', $key); $tagKey = str_replace('commerce_tag_value__', '', $key);
if (!empty($value)) { if (!empty($value)) {
// Validation des données selon le type de tag
if ($tagKey === 'addr:postcode') {
// Vérifier que c'est bien un code postal français (5 chiffres)
if (!preg_match('/^\d{5}$/', $value)) {
$status = "Erreur : Le code postal doit être composé de 5 chiffres";
continue;
}
}
$tags[$tagKey] = trim($value); $tags[$tagKey] = trim($value);
} }
} }
} }
var_dump($tags);
// Récupérer le token OSM depuis les variables d'environnement // Récupérer le token OSM depuis les variables d'environnement
$osm_api_token = $_ENV['APP_OSM_BEARER']; $osm_api_token = $_ENV['APP_OSM_BEARER'];
@ -355,6 +350,15 @@ class PublicController extends AbstractController
// Debug de la réponse en cas d'erreur // Debug de la réponse en cas d'erreur
if (method_exists($e, 'getResponse')) { if (method_exists($e, 'getResponse')) {
var_dump($e->getResponse()->getBody()->getContents()); var_dump($e->getResponse()->getBody()->getContents());
// Faire un log d'action lors d'une erreur de soumission
$this->actionLogger->log('ERROR_submit_object_exception', [
'osm_id' => $osm_object_id ?? null,
'version' => $version ?? null,
'changesetID' => $changesetID ?? null,
'body_sent' => $xmlString ?? null,
'exception_message' => $e->getMessage(),
'trace' => $e->getTraceAsString(),
]);
} }
} }
} }
@ -373,7 +377,7 @@ class PublicController extends AbstractController
} }
if (!$stats) { if (!$stats) {
$stats = new Stats(); $stats = new Stats();
$stats->setZipCode($place->getZipCode()); $stats->setZone($place->getZipCode());
} }
$stats->addPlace($place); $stats->addPlace($place);
@ -386,6 +390,7 @@ class PublicController extends AbstractController
$this->entityManager->flush(); $this->entityManager->flush();
$this->entityManager->clear(); $this->entityManager->clear();
return $this->render('public/view.html.twig', [ return $this->render('public/view.html.twig', [
'controller_name' => 'PublicController', 'controller_name' => 'PublicController',
'commerce' => $commerce_overpass, 'commerce' => $commerce_overpass,
@ -397,6 +402,7 @@ class PublicController extends AbstractController
'mapbox_token' => $_ENV['MAPBOX_TOKEN'], 'mapbox_token' => $_ENV['MAPBOX_TOKEN'],
'maptiler_token' => $_ENV['MAPTILER_TOKEN'], 'maptiler_token' => $_ENV['MAPTILER_TOKEN'],
'hide_filled_inputs' => false, 'hide_filled_inputs' => false,
'excluded_tags_to_render' => $this->motocultrice->excluded_tags_to_render,
]); ]);
} }

View file

@ -87,7 +87,9 @@
placeholder="+33 1 23 45 67 89"> placeholder="+33 1 23 45 67 89">
</div> </div>
<div id="advanced_tags" class="d-none"> <div id="advanced_tags" class="d-none">
{% include 'public/edit/tags.html.twig' with { 'excluded_tags_to_render': excluded_tags_to_render, 'commerce_overpass': commerce_overpass, 'hide_filled_inputs': hide_filled_inputs } %} {% include 'public/edit/tags.html.twig' with { 'excluded_tags_to_render': excluded_tags_to_render,
'commerce_overpass': commerce_overpass,
'hide_filled_inputs': hide_filled_inputs } %}
</div> </div>
<div id="validation_messages" class="alert alert-danger d-none"></div> <div id="validation_messages" class="alert alert-danger d-none"></div>

View file

@ -1,6 +1,7 @@
{% block tags %} {% block tags %}
<fieldset> <fieldset>
<div id="tags"> <div id="tags">
{%if excluded_tags_to_render is defined %}
{% for k, v in commerce_overpass.tags_converted %} {% for k, v in commerce_overpass.tags_converted %}
<div class="row mb-3 {% if hide_filled_inputs is defined and v is not empty %}d-none{% endif %}"> <div class="row mb-3 {% if hide_filled_inputs is defined and v is not empty %}d-none{% endif %}">
<div class="col-md-5"> <div class="col-md-5">
@ -40,6 +41,7 @@
</div> </div>
</div> </div>
{% endfor %} {% endfor %}
{% endif %}
</div> </div>
</fieldset> </fieldset>
{% endblock %} {% endblock %}

View file

@ -79,7 +79,11 @@ moyens de paiement proposés
téléphone téléphone
</div> </div>
<div class="col-12 col-md-9"> <div class="col-12 col-md-9">
contact:phone
<input type="text" class="form-control" name="commerce_tag_value__contact:phone" value="{{ commerce.tags_converted['contact:phone'] is defined ? commerce.tags_converted['contact:phone'] : '' }}"> <input type="text" class="form-control" name="commerce_tag_value__contact:phone" value="{{ commerce.tags_converted['contact:phone'] is defined ? commerce.tags_converted['contact:phone'] : '' }}">
<br>
phone:
<input type="text" class="form-control" name="commerce_tag_value__phone" value="{{ commerce.tags_converted['phone'] is defined ? commerce.tags_converted['phone'] : '' }}">
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">