about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--config.toml17
-rw-r--r--src/templates.ts10
-rw-r--r--templates/homepage.html34
3 files changed, 31 insertions, 30 deletions
diff --git a/config.toml b/config.toml
index a4345a0..82741ea 100644
--- a/config.toml
+++ b/config.toml
@@ -3,6 +3,7 @@ base_url = "https://alanpearce.eu"
 redirect_other_hostnames = true
 
 title = "Alan Pearce"
+email = "alan@alanpearce.eu"
 description = "Developer, Emacs User"
 
 generate_feed = true
@@ -49,3 +50,19 @@ content-security-policy = "default-src 'none'; img-src 'self'; object-src 'none'
 [[menus.main]]
     name = "Repositories"
     url = "https://git.alanpearce.eu"
+
+[[menus.me]]
+  name = "Codeberg"
+  url = "https://codeberg.org/alanpearce"
+[[menus.me]]
+  name = "GitHub"
+  url = "https://github.com/alanpearce/"
+[[menus.me]]
+  name = "GitLab"
+  url = "https://gitlab.com/alanpearce/"
+[[menus.me]]
+  name = "Mastodon"
+  url = "https://ieji.de/@alanpearce"
+[[menus.me]]
+  name = "BlueSky"
+  url = "https://bsky.app/profile/alanpearce.eu"
diff --git a/src/templates.ts b/src/templates.ts
index a134723..b8139f6 100644
--- a/src/templates.ts
+++ b/src/templates.ts
@@ -69,6 +69,16 @@ async function renderHomepage(posts: Array<Post>): Promise<string> {
       .text(post.date.toISOString().slice(0, 10));
     $post.appendTo($feed);
   }
+
+  $(".u-email").attr("href", `mailto:${config.email}`).text(config.email);
+  const $elsewhere = $(".elsewhere");
+  const $linkRelMe = $elsewhere.find(".u-url[rel=me]").parentsUntil("ul");
+  $linkRelMe.remove();
+  for (const link of config.menus.me) {
+    const $link = $linkRelMe.clone();
+    $link.find("a").attr("href", link.url).text(link.name);
+    $link.appendTo($elsewhere);
+  }
   return $.html();
 }
 
diff --git a/templates/homepage.html b/templates/homepage.html
index 1138e04..5004340 100644
--- a/templates/homepage.html
+++ b/templates/homepage.html
@@ -44,39 +44,13 @@
       </section>
       <section>
         <h2>Elsewhere on the Internet</h2>
-        <ul>
+        <ul class="elsewhere">
           <li>
-            <a class="u-email" rel="me" href="mailto:alan@alanpearce.eu"
-              >alan@alanpearce.eu</a
-            >
-          </li>
-          <li>
-            <a class="u-url" rel="me" href="https://codeberg.org/alanpearce/"
-              >Codeberg</a
-            >
-          </li>
-          <li>
-            <a class="u-url" rel="me" href="https://github.com/alanpearce/"
-              >GitHub</a
-            >
-          </li>
-          <li>
-            <a class="u-url" rel="me" href="https://gitlab.com/alanpearce/"
-              >GitLab</a
-            >
-          </li>
+            <a class="u-email" rel="me" href="mailto:user@example.com"
+            >user@example.com</a></li>
           <li>
-            <a class="u-url" rel="me" href="https://ieji.de/@alanpearce"
-              >Mastodon</a
-            >
+            <a class="u-url" rel="me" href="http://example.com">Example</a>
           </li>
-          <li>
-            <a
-              class="u-url"
-              rel="me"
-              href="https://bsky.app/profile/alanpearce.eu"
-              >Bluesky</a
-            >
           </li>
         </ul>
       </section>