list notes
This commit is contained in:
parent
0f5ff6ed45
commit
cb90be8ff2
10 changed files with 119 additions and 36 deletions
|
@ -78,6 +78,19 @@ final class AdminController extends AbstractController
|
|||
]);
|
||||
}
|
||||
|
||||
#[Route('/admin/placeType/{osm_kind}/{osm_id}', name: 'app_admin_by_osm_id')]
|
||||
public function placeType(string $osm_kind, string $osm_id): Response
|
||||
{
|
||||
$place = $this->entityManager->getRepository(Place::class)->findOneBy(['osm_kind' => $osm_kind, 'osmId' => $osm_id]);
|
||||
if($place) {
|
||||
return $this->redirectToRoute('app_admin_commerce', ['id' => $place->getId()]);
|
||||
} else {
|
||||
$this->addFlash('error', 'Le lieu n\'existe pas.');
|
||||
return $this->redirectToRoute('app_public_index');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#[Route('/admin/commerce/{id}', name: 'app_admin_commerce')]
|
||||
public function commerce(int $id): Response
|
||||
{
|
||||
|
@ -221,7 +234,8 @@ final class AdminController extends AbstractController
|
|||
->setHasAddress(($result['tags'] && isset($result['tags']['address']) || $result['tags'] && isset($result['tags']['contact:address'])) ? isset($result['tags']['address']) : null)
|
||||
->setHasWebsite($result['tags'] && isset($result['tags']['website']) ? $result['tags']['website'] : null)
|
||||
->setHasWheelchair($result['tags'] && isset($result['tags']['wheelchair']) ? $result['tags']['wheelchair'] : null)
|
||||
->setHasNote($result['tags'] && isset($result['tags']['note']) ? $result['tags']['note'] : null)
|
||||
->setHasNote($result['tags'] && isset($result['tags']['note']) ? $result['tags']['note'] : null)
|
||||
->setNoteContent($result['tags'] && isset($result['tags']['note']) ? $result['tags']['note'] : null)
|
||||
;
|
||||
$this->entityManager->persist($commerce);
|
||||
}
|
||||
|
|
|
@ -152,6 +152,7 @@ class PublicController extends AbstractController
|
|||
'commerce_overpass' => $commerce_overpass,
|
||||
'name' => $name,
|
||||
'commerce' => $place,
|
||||
'zone' => $zipcode,
|
||||
'completion_percentage' => $place->getCompletionPercentage(),
|
||||
'hide_filled_inputs' => $this->hide_filled_inputs,
|
||||
'excluded_tags_to_render' => $this->motocultrice->excluded_tags_to_render,
|
||||
|
@ -416,7 +417,8 @@ class PublicController extends AbstractController
|
|||
#[Route('/places_with_note', name: 'app_public_places_with_note')]
|
||||
public function places_with_note(): Response
|
||||
{
|
||||
$places = $this->entityManager->getRepository(Place::class)->findBy(['note' => '']);
|
||||
// Récupérer tous les commerces ayant une note
|
||||
$places = $this->entityManager->getRepository(Place::class)->findBy(['has_note' => true]);
|
||||
return $this->render('public/places_with_note.html.twig', [
|
||||
'controller_name' => 'PublicController',
|
||||
'places' => $places
|
||||
|
|
|
@ -49,7 +49,7 @@ class HistoryFixtures extends Fixture
|
|||
// Créer des statistiques de test
|
||||
for ($i = 0; $i < 3; $i++) {
|
||||
$stat = new Stats();
|
||||
$stat->setZone($faker->city . ' (mock)')
|
||||
$stat->setZone($faker->numberBetween(10000, 99999) )
|
||||
->setCompletionPercent($faker->numberBetween(0, 100))
|
||||
->addPlace( $faker->randomElement($places_list))
|
||||
->addPlace( $faker->randomElement($places_list))
|
||||
|
|
|
@ -79,6 +79,9 @@ class Place
|
|||
#[ORM\Column(nullable: true)]
|
||||
private ?string $main_tag = null;
|
||||
|
||||
#[ORM\Column(length: 255, nullable: true)]
|
||||
private ?string $note_content = null;
|
||||
|
||||
public function getMainTag(): ?string
|
||||
{
|
||||
return $this->main_tag;
|
||||
|
@ -416,4 +419,16 @@ class Place
|
|||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getNoteContent(): ?string
|
||||
{
|
||||
return $this->note_content;
|
||||
}
|
||||
|
||||
public function setNoteContent(?string $note_content): static
|
||||
{
|
||||
$this->note_content = $note_content;
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -128,17 +128,17 @@ class Motocultrice
|
|||
area["postal_code"="{$zone}"]->.searchArea;
|
||||
(
|
||||
// Recherche des commerces et services avec email
|
||||
nw["amenity"]["contact:email"](area.searchArea);
|
||||
nw["amenity"]["email"](area.searchArea);
|
||||
nw["shop"]["contact:email"](area.searchArea);
|
||||
nw["shop"]["email"](area.searchArea);
|
||||
nw["office"]["contact:email"](area.searchArea);
|
||||
nw["office"]["email"](area.searchArea);
|
||||
nw["amenity"]["contact:email"][name](area.searchArea);
|
||||
nw["amenity"]["email"][name](area.searchArea);
|
||||
nw["shop"]["contact:email"][name](area.searchArea);
|
||||
nw["shop"]["email"][name](area.searchArea);
|
||||
nw["office"]["contact:email"][name](area.searchArea);
|
||||
nw["office"]["email"][name](area.searchArea);
|
||||
|
||||
// Recherche des commerces et services sans email pour référence
|
||||
nw["amenity"](area.searchArea);
|
||||
nw["shop"](area.searchArea);
|
||||
nw["office"](area.searchArea);
|
||||
nw["amenity"][name](area.searchArea);
|
||||
nw["shop"][name](area.searchArea);
|
||||
nw["office"][name](area.searchArea);
|
||||
);
|
||||
out body;
|
||||
>;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue