Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 70a3df53

Přidáno uživatelem Jakub Vašta před asi 4 roky(ů)

+ Re #8086
+ php refactoring and comments

Zobrazit rozdíly:

website/src/Controller/HeatmapController.php
11 11

  
12 12
class HeatmapController extends AbstractController {
13 13
    /**
14
     * Map page controller.
15
     *
16
     * @param IOpenDataManager $manager connection to database autowired
17
     *
14 18
     * @Route("/heatmap", name="heatmap")
15 19
     */
16 20
    public function index(Request $request, IOpenDataManager $manager) {
......
22 26
        $isSubmitted = $form->isSubmitted();
23 27
        if ($isSubmitted) {
24 28
            $dataSet = $form->getData();
29
            // Chceck whether the data is valid i.e. such a collection exists
25 30
            if (false == $manager->isCollectionAvailable($dataSet->getType(), $dataSet->getDate())) {
31
                // Not? Populate form with empty data
26 32
                $dataSet = new DataSet();
27 33
            }
28 34
            $form = $this->createForm(DataSetType::class, $dataSet);
......
39 45
    }
40 46

  
41 47
    /**
48
     * Provides specific dataset information i.e. position, number and other informations depending on data type.
49
     *
50
     * @param IOpenDataManager $manager connection to database autowired
51
     * @param string           $name    dataset name
52
     * @param string           $date    dataset date in format YYYY-mm-dd
53
     * @param string           $time    dataset time, number between 0 - 23
54
     *
55
     * @return json with dataset information
56
     *
42 57
     * @Route("heatmap/opendata/{name}/{date}/{time}", name="opendata")
43 58
     */
44 59
    public function opendata(IOpenDataManager $manager, $name = 'NONE', $date = '2020-01-01', $time = '1') {
......
49 64
    }
50 65

  
51 66
    /**
67
     * Provides available datasets in given date.
68
     *
69
     * @param IOpenDataManager $manager connection to database autowired
70
     * @param string           $date    dataset date in format YYYY-mm-dd
71
     *
72
     * @return json with available datasets names
73
     *
52 74
     * @Route("heatmap/available/{date}", name="available")
53 75
     */
54 76
    public function availableDatasets(IOpenDataManager $manager, $date = '2020-01-01') {
......
56 78
    }
57 79

  
58 80
    /**
81
     * Provides dates with at least one available dataset.
82
     *
83
     * @param IOpenDataManager $manager connection to database
84
     *
85
     * @return json with dates with at least one available dataset in format YYYY-mm-dd
86
     *
59 87
     * @Route("heatmap/dates", name="dates")
60 88
     */
61 89
    public function datesWithAvailableDatasets(IOpenDataManager $manager) {
......
63 91
    }
64 92

  
65 93
    /**
94
     * Provides for dataset with given name all locations.
95
     *
96
     * @param IOpenDataManager $manager connection to database autowired
97
     * @param string           $name    dataset name
98
     *
99
     * @return json with all locations for dataset with given name as [x => lat, y => lng]
100
     *
66 101
     * @Route("heatmap/positions/{name}", name="positions")
67 102
     */
68 103
    public function dataSourcePoistions(IOpenDataManager $manager, $name = 'NONE') {
......
70 105
    }
71 106

  
72 107
    /**
108
     * Provides last available date for each available dataset type.
109
     *
110
     * @param IOpenDataManager $manager connection to database autowired
111
     *
112
     * @return json with last available date for each available dataset type as [collection-type-name => YYYY-mm-dd]
113
     *
73 114
     * @Route("heatmap/last", name="last")
74 115
     */
75 116
    public function lastAvailableCollections(IOpenDataManager $manager) {

Také k dispozici: Unified diff