Skip to content

Commit 138dd6d

Browse files
Collapse old releases by default
1 parent bf09b36 commit 138dd6d

File tree

1 file changed

+56
-13
lines changed

1 file changed

+56
-13
lines changed

index.html

Lines changed: 56 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,34 @@
110110
footer a:hover {
111111
text-decoration: underline;
112112
}
113+
/* Old Releases Toggle */
114+
.old-releases-toggle {
115+
margin: 1rem 0;
116+
padding: 0.6rem 1.2rem;
117+
background-color: #ecf0f1;
118+
border: 1px solid #bdc3c7;
119+
border-radius: 4px;
120+
cursor: pointer;
121+
font-size: 1rem;
122+
color: #2c3e50;
123+
transition: background-color 0.2s;
124+
}
125+
.old-releases-toggle:hover {
126+
background-color: #d5dbdb;
127+
}
128+
.old-releases-section {
129+
max-height: 0;
130+
overflow: hidden;
131+
transition: max-height 0.3s ease-out;
132+
}
133+
.old-releases-section.expanded {
134+
max-height: 800px;
135+
}
136+
.old-releases-label {
137+
font-size: 0.95rem;
138+
color: #7f8c8d;
139+
margin: 0.5rem 0 0.5rem 8rem;
140+
}
113141
/* Responsive Design */
114142
@media (max-width: 600px) {
115143
header h1 {
@@ -146,19 +174,21 @@ <h2>Install MicroPythonOS</h2>
146174
<p>Don't have a device yet? Buy a supported one, like the <a href="https://www.waveshare.com/wiki/ESP32-S3-Touch-LCD-2">Waveshare ESP32-S3-Touch-LCD-2</a>. Or check out <a href="https://docs.micropythonos.com">the docs</a> to see how you can run it on your desktop PC.</p>
147175
<div class="device-selection">
148176
<label><input type="radio" name="device" value="/manifests/esp32/MicroPythonOS_esp32_0.5.x.json" onchange="updateManifest()"> Unified for all ESP32-S3 devices: Waveshare and Fri3d Camp 2024 Badge: version 0.5.0</label>
149-
<br/>
150-
Old releases, only for reverting or troubleshooting:
151-
<br/>
152-
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.4.x.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.4.0</label>
153-
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.3.x.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.3.2</label>
154-
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.2.x.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.2.1</label>
155-
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.1.1.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.1.1</label>
156-
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.0.9.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.0.9</label>
157-
<br/>
158-
<label><input type="radio" name="device" value="/manifests/Fri3d-Camp/fri3d-2024/fri3d-2024_0.4.x.json" onchange="updateManifest()"> Fri3d Camp 2024 Badge: version 0.4.0</label>
159-
<label><input type="radio" name="device" value="/manifests/Fri3d-Camp/fri3d-2024/fri3d-2024_0.3.x.json" onchange="updateManifest()"> Fri3d Camp 2024 Badge: version 0.3.2</label>
160-
<label><input type="radio" name="device" value="/manifests/Fri3d-Camp/fri3d-2024/fri3d-2024_0.2.x.json" onchange="updateManifest()"> Fri3d Camp 2024 Badge: version 0.2.1</label>
161-
<label><input type="radio" name="device" value="/manifests/Fri3d-Camp/fri3d-2024/fri3d-2024_0.1.1.json" onchange="updateManifest()"> Fri3d Camp 2024 Badge: version 0.1.1</label>
177+
<br/>
178+
<button class="old-releases-toggle" onclick="toggleOldReleases()">Show old releases ▼</button>
179+
<div id="oldReleasesSection" class="old-releases-section">
180+
<p class="old-releases-label">Old releases, only for reverting or troubleshooting:</p>
181+
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.4.x.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.4.0</label>
182+
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.3.x.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.3.2</label>
183+
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.2.x.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.2.1</label>
184+
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.1.1.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.1.1</label>
185+
<label><input type="radio" name="device" value="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2_0.0.9.json" onchange="updateManifest()"> Waveshare ESP32-S3-Touch-LCD-2: version 0.0.9</label>
186+
<br/>
187+
<label><input type="radio" name="device" value="/manifests/Fri3d-Camp/fri3d-2024/fri3d-2024_0.4.x.json" onchange="updateManifest()"> Fri3d Camp 2024 Badge: version 0.4.0</label>
188+
<label><input type="radio" name="device" value="/manifests/Fri3d-Camp/fri3d-2024/fri3d-2024_0.3.x.json" onchange="updateManifest()"> Fri3d Camp 2024 Badge: version 0.3.2</label>
189+
<label><input type="radio" name="device" value="/manifests/Fri3d-Camp/fri3d-2024/fri3d-2024_0.2.x.json" onchange="updateManifest()"> Fri3d Camp 2024 Badge: version 0.2.1</label>
190+
<label><input type="radio" name="device" value="/manifests/Fri3d-Camp/fri3d-2024/fri3d-2024_0.1.1.json" onchange="updateManifest()"> Fri3d Camp 2024 Badge: version 0.1.1</label>
191+
</div>
162192
</div>
163193
<esp-web-install-button id="installButton" manifest="/manifests/Waveshare/ESP32-S3-Touch-LCD-2/Waveshare_ESP32-S3-Touch-LCD-2.json"></esp-web-install-button>
164194
<div class="instructions">
@@ -195,6 +225,19 @@ <h3>How to Use</h3>
195225
const installButton = document.querySelector('#installButton');
196226
installButton.setAttribute('manifest', selectedDevice);
197227
}
228+
229+
function toggleOldReleases() {
230+
const section = document.getElementById('oldReleasesSection');
231+
const button = event.target;
232+
233+
if (section.classList.contains('expanded')) {
234+
section.classList.remove('expanded');
235+
button.textContent = 'Show old releases ▼';
236+
} else {
237+
section.classList.add('expanded');
238+
button.textContent = 'Hide old releases ▲';
239+
}
240+
}
198241
</script>
199242
</body>
200243
</html>

0 commit comments

Comments
 (0)