4 Commits

Author SHA1 Message Date
  vincent a785c9d1a3 php-cs-fixer 2 months ago
  vincent 9326fde71c Corrections diverses 2 months ago
  vincent fdda1ea690 Corrige un bug 2 months ago
  vincent 8f09222672 Corrige un bug 2 months ago
9 changed files with 14 additions and 8 deletions
Unified View
  1. +1
    -1
      php.ini
  2. +1
    -1
      src/Controller/BadgeController.php
  3. +2
    -2
      src/Controller/MapController.php
  4. +1
    -1
      src/Controller/TaskController.php
  5. +5
    -1
      src/Entity/Task.php
  6. +1
    -1
      src/Form/CsvType.php
  7. +1
    -0
      src/Form/TaskType.php
  8. +1
    -1
      src/Service/OverpassClient.php
  9. +1
    -0
      src/Service/TaskLifecycleManager.php

+ 1
- 1
php.ini View File

@ -1,4 +1,4 @@
upload_max_filesize = 40M upload_max_filesize = 40M
post_max_size = 40M post_max_size = 40M
memory_limit = 256M
memory_limit = 512M

+ 1
- 1
src/Controller/BadgeController.php View File

@ -23,7 +23,7 @@ class BadgeController extends AbstractController
} }
$stats = $taskLifecycleManager->getProjectStats($project); $stats = $taskLifecycleManager->getProjectStats($project);
if (!isset($stats[$status])) {
if (empty($stats) || !isset($stats[$status])) {
throw new NotFoundHttpException('Status not found'); throw new NotFoundHttpException('Status not found');
} }


+ 2
- 2
src/Controller/MapController.php View File

@ -14,7 +14,7 @@ class MapController extends AbstractController
#[Route('/popup', name: 'app_map_popup')] #[Route('/popup', name: 'app_map_popup')]
public function popup(Request $request): Response public function popup(Request $request): Response
{ {
// Grosso modo, on récuère les données de la feature correspondante
// Grosso modo, on récupère les données de la feature correspondante
// Cf `assets/controllers/map_controller.js` // Cf `assets/controllers/map_controller.js`
$element = json_decode($request->query->get('element'), true); $element = json_decode($request->query->get('element'), true);
@ -26,7 +26,7 @@ class MapController extends AbstractController
// TODO dans le cas d’un nœud il n’y a pas de bounds mais on doit // TODO dans le cas d’un nœud il n’y a pas de bounds mais on doit
// pouvoir trouver les coins d’une bbox autour sans trop de difficultés // pouvoir trouver les coins d’une bbox autour sans trop de difficultés
if (isset($element['bounds'])) {
if (isset($element['bounds']) and isset($element['type'])) {
$josmCommands['load_and_zoom'] = [ $josmCommands['load_and_zoom'] = [
'bottom' => $element['bounds']['minlat'], 'bottom' => $element['bounds']['minlat'],
'top' => $element['bounds']['maxlat'], 'top' => $element['bounds']['maxlat'],


+ 1
- 1
src/Controller/TaskController.php View File

@ -110,7 +110,7 @@ class TaskController extends AbstractController
$josmCommands = [ $josmCommands = [
// Charge l’imagerie (fond OSM par défaut) // Charge l’imagerie (fond OSM par défaut)
'imagery' => [ 'imagery' => [
'id' => $project->hasImagery() ? $project->getImagery() : 'osmfr',
(($project->hasImagery() and 'http' === substr($project->getImagery(), 0, 4)) ? 'url' : 'id') => ($project->hasImagery() ? $project->getImagery() : 'osmfr'),
], ],
]; ];


+ 5
- 1
src/Entity/Task.php View File

@ -166,7 +166,11 @@ class Task
public function hasGeojson(): bool public function hasGeojson(): bool
{ {
return isset($this->geojson);
return
isset($this->geojson)
and !empty($this->geojson)
and ('{}' !== $this->geojson)
;
} }
public function getGeojson(): ?string public function getGeojson(): ?string


+ 1
- 1
src/Form/CsvType.php View File

@ -17,7 +17,7 @@ class CsvType extends AbstractType
'label' => 'Fichier CSV', 'label' => 'Fichier CSV',
'constraints' => [ 'constraints' => [
new File([ new File([
'maxSize' => '10M',
'maxSize' => '40M',
'mimeTypes' => [ 'mimeTypes' => [
'text/csv', 'text/csv',
'text/plain', 'text/plain',


+ 1
- 0
src/Form/TaskType.php View File

@ -30,6 +30,7 @@ class TaskType extends AbstractType
'required' => false, 'required' => false,
'help_html' => true, 'help_html' => true,
'help' => 'XML décrivant ce qu’il faut charger dans la feuille de données de JOSM (cf <a href="https://wiki.openstreetmap.org/wiki/FR:OSM_XML" target="_blank">FR:OSM XML - OpenStreetMap Wiki</a>)', 'help' => 'XML décrivant ce qu’il faut charger dans la feuille de données de JOSM (cf <a href="https://wiki.openstreetmap.org/wiki/FR:OSM_XML" target="_blank">FR:OSM XML - OpenStreetMap Wiki</a>)',
'empty_data' => '',
]) ])
->add('status', TaskLifecycleType::class, [ ->add('status', TaskLifecycleType::class, [
'label' => 'État', 'label' => 'État',


+ 1
- 1
src/Service/OverpassClient.php View File

@ -12,7 +12,7 @@ class OverpassClient
) { ) {
} }
public function query($query, $prefix = '[out:json][timeout:25];', $suffix = 'out geom;')
public function query($query, $prefix = '[out:json][timeout:60];', $suffix = 'out geom;')
{ {
$response = $this->client->request('GET', 'https://overpass-api.de/api/interpreter', [ $response = $this->client->request('GET', 'https://overpass-api.de/api/interpreter', [
'query' => [ 'query' => [


+ 1
- 0
src/Service/TaskLifecycleManager.php View File

@ -36,6 +36,7 @@ class TaskLifecycleManager
foreach ($places as $place => $id) { foreach ($places as $place => $id) {
$stats[$place] = array_merge($metas->getPlaceMetadata($place), [ $stats[$place] = array_merge($metas->getPlaceMetadata($place), [
'value' => 0, 'value' => 0,
'percentage' => 0,
]); ]);
} }


Loading…
Cancel
Save