summaryrefslogtreecommitdiff
path: root/layout
diff options
context:
space:
mode:
author135e2 <[email protected]>2022-05-29 17:18:06 +0800
committer135e2 <[email protected]>2022-06-03 11:30:43 +0800
commitc02c983166effdb5db4578e4ab45f58762f082d4 (patch)
tree5ba85cfe3672a04143718153697f7790e6fbdd14 /layout
parenteb8a7b323891b870ddda677fa43e583c7477803d (diff)
downloadchromate-c02c983166effdb5db4578e4ab45f58762f082d4.tar.gz
chromate-c02c983166effdb5db4578e4ab45f58762f082d4.tar.bz2
chromate-c02c983166effdb5db4578e4ab45f58762f082d4.zip
feat: add #btn-toggle-dark botton to toggle dark mode
- Switch dark theme to bulmaswatch/darkly, since bulma-prefers-dark highly relies on `@media: (prefers-color-scheme: dark)` tag - Add a playerman handler to toggle shikwasa theme[1] - Use localstorage to store user's preference[2] - Fix a typo: SystemDarkmodePrefrence => SystemDarkmodePreference [1]: Modified from https://github.com/jessuni/shikwasa/blob/main/pages/public/index.js#L208 [2]: Took inspiration from https://blog.skk.moe/post/hello-darkmode-my-old-friend
Diffstat (limited to 'layout')
-rw-r--r--layout/_partial/head.ejs4
-rw-r--r--layout/_partial/header.ejs3
-rw-r--r--layout/_partial/scripts.ejs3
-rw-r--r--layout/post.ejs4
4 files changed, 9 insertions, 5 deletions
diff --git a/layout/_partial/head.ejs b/layout/_partial/head.ejs
index e56722d..54ec4c0 100644
--- a/layout/_partial/head.ejs
+++ b/layout/_partial/head.ejs
@@ -33,6 +33,6 @@
<!-- Scripts and styles -->
<%- css('css/style.min.css') %>
- <link rel="stylesheet" href="https://cdn.staticfile.org/bulma/0.9.4/css/bulma.min.css">
- <link media="(prefers-color-scheme: dark)" rel="stylesheet" href="https://cdn.jsdelivr.net/gh/jloh/bulma-prefers-dark/css/bulma-prefers-dark.min.css">
+ <link rel="stylesheet" id="bulma-light" href="https://cdn.jsdelivr.net/npm/bulma/css/bulma.min.css">
+ <link rel="stylesheet" id="bulma-dark" href="https://cdn.jsdelivr.net/npm/[email protected]/darkly/bulmaswatch.min.css">
</head>
diff --git a/layout/_partial/header.ejs b/layout/_partial/header.ejs
index b32edbb..6c423a0 100644
--- a/layout/_partial/header.ejs
+++ b/layout/_partial/header.ejs
@@ -18,6 +18,9 @@
</div>
<div class="navbar-menu" id="header-menu">
<div class="navbar-end">
+ <a class="navbar-item" href="javaScript:void(0);" id="btn-toggle-dark">
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
+ </a>
<% for (let item of theme.menubar) { %>
<a class="navbar-item is-uppercase" href="<%= item[0] %>">
<%= item[1] %>
diff --git a/layout/_partial/scripts.ejs b/layout/_partial/scripts.ejs
index a242775..14348a9 100644
--- a/layout/_partial/scripts.ejs
+++ b/layout/_partial/scripts.ejs
@@ -24,13 +24,14 @@
<script>
window.addEventListener("load", () => {
const theme_selector = (mode) => {
- if (mode === SystemDarkmodePrefrence.dark) {
+ if (mode === SystemDarkmodePreference.dark) {
document.getElementById("highlight-light-theme").setAttribute("disabled", "disabled");
document.getElementById("highlight-dark-theme").removeAttribute("disabled");
} else {
document.getElementById("highlight-dark-theme").setAttribute("disabled", "disabled");
document.getElementById("highlight-light-theme").removeAttribute("disabled");
}
+ console.debug(`highlightjs theme set to ${mode}`);
};
darklistener.add(theme_selector);
}, false);
diff --git a/layout/post.ejs b/layout/post.ejs
index 9befb97..3428ddf 100644
--- a/layout/post.ejs
+++ b/layout/post.ejs
@@ -63,7 +63,7 @@
const player = new Shikwasa({
container: () => document.querySelector('.post-podcast-player'),
- audio: {
+ audio: {
title: "<%= page.title %>",
artist: "<%= page.podcast.authors %>",
cover: "<%= page.podcast.cover %>",
@@ -82,7 +82,7 @@
window.player = player;
}, false);
</script>
- <% } %>
+ <% } %>
<section class="content is-size-6">
<%- page.content %>
</section>