1
0
mirror of synced 2025-12-28 00:23:25 +00:00

feat(stops) caching stops

This commit is contained in:
Valentin
2024-06-14 16:59:36 +02:00
parent 1d20fd7815
commit cf5f96f47b
7 changed files with 79 additions and 57 deletions

View File

@@ -1,12 +1,10 @@
<?php
function getStops($line) {
$json = file_get_contents(__DIR__ . '/../../data/stops.json');
$data = json_decode($json, true);
$result = array_filter($data, function($item) use ($line) {
return $item['fields']['mode'] === 'METRO' && $item['fields']['indice_lig'] === "$line";
});
return $result;
function getStops($lineId) {
global $conn;
$stmt = $conn->prepare("SELECT * FROM stops WHERE lineId = ?");
$stmt->execute([$lineId]);
return $stmt->fetchAll();
}
function isFavorite($userId, $stopId, $lineId) {
@@ -16,6 +14,7 @@ function isFavorite($userId, $stopId, $lineId) {
return $stmt->rowCount() > 0;
}
?>
<div class="px-4 my-5 text-center">
@@ -29,7 +28,11 @@ function isFavorite($userId, $stopId, $lineId) {
<div class="card">
<div class="card-body">
<div class="row">
<?php for ($i = 1; $i <= 14; $i++): ?>
<?php
for ($i = 1; $i <= 14; $i++):
$stops = getStops($i);
if (!empty($stops)):
?>
<div class="col-2 mb-3">
<div class="card h-100">
<div class="card-body">
@@ -44,9 +47,12 @@ function isFavorite($userId, $stopId, $lineId) {
<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
</div>
<div class="modal-body">
<?php $stations = getStops($i); ?>
<div class="row">
<?php include 'stop_list.php'; ?>
<?php
$stops = getStops($i);
include 'stop_list.php';
?>
</div>
</div>
</div>
@@ -58,7 +64,7 @@ function isFavorite($userId, $stopId, $lineId) {
<?php if ($i % 6 === 0): ?>
</div><div class="row">
<?php endif; ?>
<?php endfor; ?>
<?php endif; endfor; ?>
</div>
</div>
</div>