123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- <!DOCTYPE html>
- <html lang="{{ .Site.LanguageCode }}">
- <head>
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
- <!-- Title -->
- <title>
- {{- if not .IsHome }}
- {{- if eq .Kind "page" }}{{ .Title }}
- {{- else if eq .Data.Singular "tag" }}{{ .Data.Term }}
- {{- else }}Posts
- {{- end }} - {{ end }}
- {{- .Site.Title -}}
- </title>
- <!-- Meta -->
- {{- if eq .Kind "page" }}
- <meta name="description" content="{{ .Summary }}">
- <meta name="author" content="{{ .Params.author | default .Site.Params.author }}">
- {{ else }}
- <meta name="description" content="{{ .Site.Params.description }}">
- <meta name="author" content="{{ .Site.Params.author }}">
- {{ end -}}
- <!-- Styles -->
- <link href="{{ "an-old-hope.min.css" | absURL }}" rel="stylesheet">
- <link href="{{ "style.css" | absURL }}" rel="stylesheet">
- <!-- Favicons -->
- <link rel="apple-touch-icon" href="{{ "apple-touch-icon.png" | absURL }}">
- <link rel="icon" href="{{ "favicon.ico" | absURL }}">
- <!-- Generator -->
- {{ hugo.Generator }}
- <!-- RSS -->
- <link rel="alternate" type="application/atom+xml" href="{{ "index.xml" | absURL }}" title="{{ .Site.Title }}">
- <!-- Misc -->
- {{ if eq (getenv "HUGO_ENV") "production" | or (eq .Site.Params.env "production") }}
- {{ end }}
- <!-- Script -->
- <script>
- function setTheme() {
- const time = new Date();
- const prev = localStorage.getItem('date');
- const date = String(time.getMonth() + 1) + '.' + String(time.getDate());
- const now = time.getTime();
- let sunrise;
- let sunset;
- function setBodyClass() {
- if (now > sunrise && now < sunset) return;
- document.body.classList.add('dark');
- }
- if (date !== prev) {
- fetch('https://api.ipgeolocation.io/astronomy?apiKey=5ed37d85103e4defa5df4c5298ed5215')
- .then(res => res.json())
- .then(data => {
- sunrise = data.sunrise.split(':').map(Number);
- sunset = data.sunset.split(':').map(Number);
- })
- .catch(() => {
- sunrise = [7, 0];
- sunset = [19, 0];
- })
- .finally(() => {
- sunrise = time.setHours(sunrise[0], sunrise[1], 0);
- sunset = time.setHours(sunset[0], sunset[1], 0);
- setBodyClass();
- localStorage.setItem('sunrise', sunrise);
- localStorage.setItem('sunset', sunset);
- });
- localStorage.setItem('date', date);
- } else {
- sunrise = Number(localStorage.getItem('sunrise'));
- sunset = Number(localStorage.getItem('sunset'));
- setBodyClass();
- }
- }
- </script>
- </head>
- <body class="{{if eq .Kind `page` }}single{{else}}list{{ if .IsHome }} home{{ end }}{{end}}">
- <script>
- setTheme();
- </script>
- <header class="header">
- <nav class="nav">
- {{ if .IsHome }}
- <h1 class="logo"><a href="{{ "" | absURL }}">{{ .Site.Title }}</a></h1>
- {{ else }}
- <p class="logo"><a href="{{ "" | absURL }}">{{ .Site.Title }}</a></p>
- {{ end }}
- {{ if .Site.Menus.main }}
- <ul class="menu">
- {{ range .Site.Menus.main }}
- <li>
- <a href="{{ .URL }}">{{ .Name }}</a>
- </li>
- {{ end }}
- </ul>
- {{ end }}
- </nav>
- </header>
- <main class="main">
|