Skip to content

Commit c42a712

Browse files
committed
Live clock
1 parent aafaca8 commit c42a712

File tree

4 files changed

+60
-3
lines changed

4 files changed

+60
-3
lines changed

_config.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,10 @@ navigation_links:
8181
url: "/about/"
8282
icon: fa-circle-user
8383
selected_icon: fa-circle-user
84+
- title: Now
85+
url: "/now/"
86+
icon: fa-clock
87+
selected_icon: fa-circle-user
8488
- title: Archive
8589
url: "/archive/"
8690
icon: fa-archive

_includes/footer.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,5 @@
6363
</div>
6464
</section>
6565
</div>
66-
</div>
66+
</div>
6767
</footer>

_includes/nav.html

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,38 @@
33
<a href="{{ item.url }}" class="nav-item{% if page.url == item.url %} active{% endif %}">
44
<span class="nav-icon" aria-hidden="true">
55
{% if page.url == item.url %}
6-
<i class="fa-solid {{ item.selected_icon }} fa-lg"></i>
6+
<i class="fa-solid {{ item.selected_icon }} fa-lg" id="{{ item.url }}"></i>
77
{% else %}
8-
<i class="fa-regular {{ item.icon }} fa-lg"></i>
8+
<i class="fa-regular {{ item.icon }} fa-lg" id="{{ item.url }}"></i>
99
{% endif %}
1010
</span>
1111
<span class="nav-title">{{ item.title }}</span>
1212
</a>
1313
{% endfor %}
1414
</nav>
15+
16+
<script>
17+
var date = new Date();
18+
var hour = date.getHours();
19+
var minute = date.getMinutes();
20+
21+
var clockIcon = document.getElementById("/now/");
22+
23+
// Ensure that the hour is within the 1 - 12 range
24+
var adjustedHour = hour % 12;
25+
if (adjustedHour == 0) {
26+
adjustedHour = 12; // use 12 for 12'o clock
27+
}
28+
29+
// define clock classes
30+
var clockClasses = ["one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve"];
31+
32+
var iconClass = "fa-regular fa-clock-" + clockClasses[adjustedHour - 1];
33+
34+
// If minutes is over 30, append "-thirty"
35+
if (minute > 30) {
36+
iconClass += "-thirty";
37+
}
38+
39+
clockIcon.className = iconClass;
40+
</script>

_layouts/default.html

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,33 @@
2424

2525
checkBox.onchange = () => localStorage.setItem('show-grid', checkBox.checked);
2626
</script>
27+
28+
29+
<script>
30+
var date = new Date();
31+
var hour = date.getHours();
32+
var minute = date.getMinutes();
33+
34+
var clockIcon = document.getElementById("/now/");
35+
36+
// Ensure that the hour is within the 1 - 12 range
37+
var adjustedHour = hour % 12;
38+
if (adjustedHour == 0) {
39+
adjustedHour = 12; // use 12 for 12'o clock
40+
}
41+
42+
// define clock classes
43+
var clockClasses = ["one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve"];
44+
45+
var iconClass = "fa-regular fa-lg fa-clock-" + clockClasses[adjustedHour - 1];
46+
47+
// If minutes is over 30, append "-thirty"
48+
if (minute > 30) {
49+
iconClass += "-thirty";
50+
}
51+
52+
clockIcon.className = iconClass;
53+
</script>
2754
</body>
2855

2956
</html>

0 commit comments

Comments
 (0)