/
Maps.php
58 lines (50 loc) · 1.44 KB
/
Maps.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
namespace App\Controller;
use App\Repository\MapRepository;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\Routing\Annotation\Route; // Required for annotations
/**
* Class CountryLocator
* @package App\Controller
*/
class Maps extends BaseController {
/**
* @Route(
* "/{system}/map_{area}",
* requirements={
* "system": "reu|rna|rww",
* "area": "af|alaska|as|au|eu|japan|na|pacific|polynesia|sa"
* },
* name="show_map"
* )
*/
public function map($system, $area, MapRepository $mapRepository)
{
$parameters = $mapRepository->get($area);
$parameters['system'] = $system;
return $this->render('maps/map.html.twig', $parameters);
}
/**
* @Route(
* "/{system}/maps",
* requirements={
* "system": "reu|rna|rww"
* },
* name="maps"
* )
*/
public function mapsController(
$system,
MapRepository $mapRepository
) {
$systemMaps = $mapRepository->getAllForSystem($system);
$parameters = [
'mode' => 'Maps',
'system' => $system,
'title' => $systemMaps['title'],
'zones' => $systemMaps['maps'],
];
$parameters = array_merge($parameters, $this->parameters);
return $this->render('maps/index.html.twig', $parameters);
}
}