-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
112 lines (99 loc) · 5.27 KB
/
Copy pathindex.html
File metadata and controls
112 lines (99 loc) · 5.27 KB
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Prix Carburant France</title>
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>⛽</text></svg>">
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" />
<link rel="stylesheet" href="https://unpkg.com/leaflet.markercluster@1.5.3/dist/MarkerCluster.css" />
<link rel="stylesheet" href="https://unpkg.com/leaflet.markercluster@1.5.3/dist/MarkerCluster.Default.css" />
<link rel="stylesheet" href="style.css" />
</head>
<body>
<button id="sidebar-toggle" aria-label="Ouvrir le panneau">⛽</button>
<div id="sidebar">
<div class="sidebar-handle" id="sidebar-handle"></div>
<div class="sidebar-top">
<h1 data-i18n="h1">⛽ Prix Carburant</h1>
<button id="lang-btn" class="lang-btn">🇬🇧 EN</button>
</div>
<p class="subtitle" data-i18n="subtitle">Stations en France en temps réel</p>
<div class="filter-section">
<label for="fuel-select" data-i18n="fuelLabel">Type de carburant</label>
<select id="fuel-select">
<option value="Gazole">Gazole (Diesel)</option>
<option value="SP95">SP95</option>
<option value="SP98">SP98</option>
<option value="E10">E10</option>
<option value="E85">E85</option>
<option value="GPLc">GPLc</option>
</select>
</div>
<div class="stats" id="stats">
<div class="stat-box">
<span class="stat-label" data-i18n="statStations">Stations affichées</span>
<span class="stat-value" id="stat-count">—</span>
</div>
<div class="stat-box">
<span class="stat-label" data-i18n="statAvg">Prix moyen</span>
<span class="stat-value" id="stat-avg">—</span>
</div>
<div class="stat-box clickable" data-i18n-title="statMinTitle" title="Voir la station la moins chère">
<span class="stat-label" data-i18n="statMin">Prix min</span>
<span class="stat-value green" id="stat-min">—</span>
</div>
<div class="stat-box clickable" data-i18n-title="statMaxTitle" title="Voir la station la plus chère">
<span class="stat-label" data-i18n="statMax">Prix max</span>
<span class="stat-value red" id="stat-max">—</span>
</div>
</div>
<div id="loading" class="loading">
<div class="spinner"></div>
<span data-i18n="loading">Chargement des données...</span>
</div>
<div id="error-msg" class="error hidden"></div>
<button id="locate-btn" data-i18n="locateBtn">📍 Ma position</button>
<div class="route-section">
<label class="section-title" data-i18n="routeSection">🗺 Itinéraire</label>
<div class="autocomplete-wrap">
<input id="route-from" type="text" data-i18n-placeholder="routeFrom" placeholder="Départ (ville, adresse…)" autocomplete="off" />
<ul id="route-from-suggestions" class="suggestions hidden"></ul>
</div>
<div class="autocomplete-wrap">
<input id="route-to" type="text" data-i18n-placeholder="routeTo" placeholder="Arrivée (ville, adresse…)" autocomplete="off" />
<ul id="route-to-suggestions" class="suggestions hidden"></ul>
</div>
<div class="route-buttons">
<button id="route-btn" data-i18n="routeCalc">Calculer</button>
<button id="route-clear" class="hidden" data-i18n="routeClear">✕ Effacer</button>
</div>
<div id="route-loading" class="loading hidden">
<div class="spinner"></div><span data-i18n="routeLoading">Calcul en cours…</span>
</div>
<div id="route-error" class="error hidden"></div>
<ul id="route-stations"></ul>
</div>
<div class="legend">
<h3 data-i18n="legendTitle">Légende</h3>
<div class="legend-gradient"></div>
<div class="legend-labels">
<span data-i18n="legendCheap">Pas cher</span>
<span data-i18n="legendExpensive">Cher</span>
</div>
</div>
<div class="footer">
Source : <a href="https://data.economie.gouv.fr" target="_blank">data.economie.gouv.fr</a><br>
<a href="https://github.com/alamirault/fuel-map" target="_blank" class="github-link">
<svg height="13" viewBox="0 0 16 16" width="13" fill="currentColor" aria-hidden="true" style="vertical-align:middle;margin-right:4px;">
<path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"/>
</svg>alamirault/fuel-map
</a>
</div>
</div>
<div id="map"></div>
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script>
<script src="https://unpkg.com/leaflet.markercluster@1.5.3/dist/leaflet.markercluster.js"></script>
<script src="app.js"></script>
</body>
</html>