aboutsummaryrefslogtreecommitdiff
path: root/theme/custom/base.html
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2021-11-18 14:38:08 +0100
committerSébastien Dailly <sebastien@chimrod.com>2021-11-18 14:46:42 +0100
commitfefaf0306c07b55c716189f5307558ed7b5523ce (patch)
tree003f29a90d2943bbacbae162be32192e7c499a5d /theme/custom/base.html
parent9126ed1be6ce0168eafbb705d59505985c8348ec (diff)
Added dark theme
Diffstat (limited to 'theme/custom/base.html')
-rwxr-xr-xtheme/custom/base.html331
1 files changed, 331 insertions, 0 deletions
diff --git a/theme/custom/base.html b/theme/custom/base.html
new file mode 100755
index 0000000..3e9f42b
--- /dev/null
+++ b/theme/custom/base.html
@@ -0,0 +1,331 @@
+{% if 'jinja2.ext.i18n' not in JINJA_ENVIRONMENT.extensions and 'jinja2.ext.i18n' not in JINJA_EXTENSIONS %}
+ {%- macro _(msg) -%}
+ {{ msg % kwargs }}
+ {%- endmacro -%}
+{% endif %}
+
+<!DOCTYPE html>
+<html lang="{{ DEFAULT_LANG }}">
+<head>
+
+ <script>
+ const theme = localStorage.getItem('theme');
+ if (theme === "dark") {
+ document.documentElement.setAttribute('data-theme', 'dark');
+ } else {
+ document.documentElement.setAttribute('data-theme', 'light');
+ }
+
+ function modeSwitcher() {
+ let currentMode = document.documentElement.getAttribute('data-theme');
+ if (currentMode === "dark") {
+ document.documentElement.setAttribute('data-theme', 'light');
+ window.localStorage.setItem('theme', 'light');
+ } else {
+ document.documentElement.setAttribute('data-theme', 'dark');
+ window.localStorage.setItem('theme', 'dark');
+ }
+ }
+ </script>
+ <meta charset="utf-8" />
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+ <meta name="HandheldFriendly" content="True" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ {% if page in hidden_pages %}
+ <meta name="robots" content="noindex, nofollow" />
+ {% else %}
+ <meta name="robots" content="{{ ROBOTS }}" />
+ {% endif %}
+
+ {% if USE_GOOGLE_FONTS != False %}
+ <link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,400;0,700;1,400&family=Source+Sans+Pro:ital,wght@0,300;0,400;0,700;1,400&display=swap" rel="stylesheet">
+ {% endif %}
+
+ {% if USE_LESS %}
+ <link rel="stylesheet/less" type="text/css" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/stylesheet/style.less">
+ <script src="//cdnjs.cloudflare.com/ajax/libs/less.js/2.5.1/less.min.js" type="text/javascript"></script>
+ {% else %}
+ <link rel="stylesheet" title="default theme" type="text/css" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/stylesheet/style.min.css">
+ {% endif %}
+
+ {# DARK THEME STYLES #}
+ {% if THEME_COLOR == "dark" or THEME_COLOR_AUTO_DETECT_BROWSER_PREFERENCE or THEME_COLOR_ENABLE_USER_OVERRIDE %}
+ <link id="dark-theme-style" rel="stylesheet" type="text/css"
+ {% if THEME_COLOR_AUTO_DETECT_BROWSER_PREFERENCE %}
+ {% if THEME_COLOR|default("light") == "dark" %}
+ media="(prefers-color-scheme: dark), (prefers-color-scheme: no-preference)"
+ {% else %}
+ media="(prefers-color-scheme: dark)"
+ {% endif %}
+ {% elif THEME_COLOR_ENABLE_USER_OVERRIDE and THEME_COLOR|default("light") == "light" %}
+ disabled="disabled"
+ {% endif %}
+ href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/stylesheet/dark-theme.min.css">
+ {% endif %}
+
+ {# PYGMENTS STYLES #}
+ {% if THEME_COLOR_AUTO_DETECT_BROWSER_PREFERENCE or THEME_COLOR_ENABLE_USER_OVERRIDE or THEME_COLOR == "dark" %}
+ <link id="pygments-dark-theme" rel="stylesheet" type="text/css"
+ {% if THEME_COLOR_AUTO_DETECT_BROWSER_PREFERENCE %}
+ {% if THEME_COLOR|default("light") == "dark" %}
+ media="(prefers-color-scheme: dark), (prefers-color-scheme: no-preference)"
+ {% else %}
+ media="(prefers-color-scheme: dark)"
+ {% endif %}
+ {% elif THEME_COLOR_ENABLE_USER_OVERRIDE and THEME_COLOR|default("light") == "light" %}
+ disabled="disabled"
+ {% endif %}
+ href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/pygments/{{ PYGMENTS_STYLE_DARK or PYGMENTS_STYLE or 'monokai' }}.min.css">
+ {% endif %}
+ {% if THEME_COLOR_AUTO_DETECT_BROWSER_PREFERENCE or not THEME_COLOR or THEME_COLOR == "light" %}
+ <link id="pygments-light-theme" rel="stylesheet" type="text/css"
+ {% if THEME_COLOR_AUTO_DETECT_BROWSER_PREFERENCE %}
+ {% if THEME_COLOR|default("light") == "dark" %}
+ media="(prefers-color-scheme: light)"
+ {% else %}
+ media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)"
+ {% endif %}
+ {% endif %}
+ href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/pygments/{{ PYGMENTS_STYLE|default('github') }}.min.css">
+ {% endif %}
+
+ {% if PLUGINS and 'tipue_search' in PLUGINS %}
+ <script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/tipuesearch/jquery.min.js"></script>
+ <script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/tipuesearch/tipuesearch.min.js"></script>
+ <script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/tipuesearch/tipuesearch.min.js"></script>
+ <script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/tipuesearch/tipuesearch_set.min.js"></script>
+ <script src="{{ SITEURL }}/tipuesearch_content.js"></script>
+ <link rel="stylesheet" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/tipuesearch/tipuesearch.min.css" />
+ {% endif %}
+
+ <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/font-awesome/css/fontawesome.css">
+ <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/font-awesome/css/brands.css">
+ <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/font-awesome/css/solid.css">
+
+ {% if CUSTOM_CSS %}
+ <link href="{{ SITEURL }}/{{ CUSTOM_CSS }}" rel="stylesheet">
+ {% endif %}
+
+ {% if FEED_ALL_ATOM %}
+ <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Atom">
+ {% endif %}
+
+ {% if FEED_ALL_RSS %}
+ <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} RSS">
+ {% endif %}
+
+ {% if FAVICON %}
+ <link rel="shortcut icon" href="{{ FAVICON }}" type="image/x-icon">
+ <link rel="icon" href="{{ FAVICON }}" type="image/x-icon">
+ {% endif %}
+
+ {% if GOOGLE_ANALYTICS %}
+ {% include "partial/ga.html" %}
+ {% endif %}
+
+ {% if GOOGLE_GLOBAL_SITE_TAG %}
+ {% include "partial/ggst.html" %}
+ {% endif %}
+
+ {% if BROWSER_COLOR %}
+ <!-- Chrome, Firefox OS and Opera -->
+ <meta name="theme-color" content="{{ BROWSER_COLOR }}">
+ <!-- Windows Phone -->
+ <meta name="msapplication-navbutton-color" content="{{ BROWSER_COLOR }}">
+ <!-- iOS Safari -->
+ <meta name="apple-mobile-web-app-capable" content="yes">
+ <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
+ <!-- Microsoft EDGE -->
+ <meta name="msapplication-TileColor" content="{{ BROWSER_COLOR }}">
+ {% endif %}
+
+ {% if REL_CANONICAL %}
+ {% if page %}
+ <link rel="canonical" href="{{ SITEURL }}/{{ page.url }}">
+ {% elif article %}
+ <link rel="canonical" href="{{ SITEURL }}/{{ article.url }}">
+ {% elif page_name == 'index' and not articles_previous_page %}
+ <link rel="canonical" href="{{ SITEURL }}">
+ {% elif author or category or tag or page_name == 'index' %}
+ <link rel="canonical" href="{{ SITEURL }}/{{ articles_page.url }}">
+ {% else %}
+ <link rel="canonical" href="{{ SITEURL }}/{{ output_file }}">
+ {% endif %}
+ {% endif %}
+ {% block meta %}
+ <meta name="author" content="{{ AUTHOR }}" />
+ <meta name="description" content="{{ SITEDESCRIPTION }}" />
+ {% include "partial/og.html" %}
+ {% endblock %}
+
+ <title>{{ SITENAME }}{% block title %}{% endblock %}</title>
+
+ {% if GOOGLE_ADSENSE and GOOGLE_ADSENSE.page_level_ads %}
+ <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
+ <script>
+ (adsbygoogle = window.adsbygoogle || []).push({
+ google_ad_client: "{{ GOOGLE_ADSENSE.ca_id }}",
+ enable_page_level_ads: true
+ });
+ </script>
+ {% endif %}
+ {% if GOOGLE_TAG_MANAGER %}
+ {% include "partial/gtm.html" %}
+ {% endif %}
+</head>
+<body {% if not THEME_COLOR_AUTO_DETECT_BROWSER_PREFERENCE %}class="{{ THEME_COLOR|default('light') }}-theme"{% endif %}>
+ {% if GOOGLE_TAG_MANAGER %}
+ {% include "partial/gtm_noscript.html" %}
+ {% endif %}
+ <aside>
+ <div>
+ <a href="{{ SITEURL }}">
+ {% if SITELOGO %}
+ <img src="{{ SITELOGO }}" alt="{{ SITETITLE }}" title="{{ SITETITLE }}">
+ {% else %}
+ <img src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/img/profile.png" alt="{{ SITETITLE }}" title="{{ SITETITLE }}">
+ {% endif %}
+ </a>
+
+ <h1>
+ <a href="{{ SITEURL }}">{{ SITETITLE }}</a>
+ </h1>
+
+ {% if SITESUBTITLE %}<p>{{ SITESUBTITLE }}</p>{% endif %}
+
+ {% if PLUGINS and 'tipue_search' in PLUGINS %}
+ <form class="navbar-search" action="/search.html" role="search">
+ <input type="text" name="q" id="tipue_search_input" placeholder="{{ _('Search...') }}">
+ </form>
+ {% endif %}
+
+ {% if pages or LINKS %}
+ <nav>
+ <ul class="list">
+ {# Open links in new window depending on the LINKS_IN_NEW_TAB setting #}
+ {% macro get_target(link) -%}
+ {%- if LINKS_IN_NEW_TAB in ('all', true) -%}
+ _blank
+ {%- elif LINKS_IN_NEW_TAB == "external" and not link.startswith("/") and not link.startswith(SITEURL) -%}
+ _blank
+ {%- else -%}
+ _self
+ {%- endif -%}
+ {%- endmacro %}
+
+ {% if PAGES_SORT_ATTRIBUTE -%}
+ {% set pages = pages|sort(attribute=PAGES_SORT_ATTRIBUTE) %}
+ {%- endif %}
+
+ {% if DISPLAY_PAGES_ON_MENU %}
+ {% for page in pages %}
+ <li>
+ <a target="{{ get_target(SITEURL) }}"
+ href="{{ SITEURL }}/{{ page.url }}{% if not DISABLE_URL_HASH %}#{{ page.slug }}{% endif %}">
+ {{ page.title }}
+ </a>
+ </li>
+ {% endfor %}
+ {% endif %}
+
+ {% for name, link in LINKS %}
+ <li>
+ <a target="{{ get_target(link) }}" href="{{ link }}" >{{ name }}</a>
+ </li>
+ {% endfor %}
+ </ul>
+ </nav>
+ {% endif %}
+
+ <ul class="social">
+ {% for name, link in SOCIAL %}
+ <li>
+ <a {% if name == 'mastodon' %}rel="me"{% endif %} class="sc-{{ name }}" href="{{ link }}" target="_blank">
+ <i class="{% if name in ['envelope', 'rss'] %}fas{% else %}fab{% endif %} fa-{{ name }}"></i>
+ </a>
+ </li>
+ {% endfor %}
+ </ul>
+ <button class="theme-switch"><i class="fa fa-adjust fa-2x" aria-hidden="true" onclick="modeSwitcher()"></i></button>
+ </div>
+
+ {% if GOOGLE_ADSENSE and GOOGLE_ADSENSE.ads.aside %}
+ <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
+ <ins class="adsbygoogle ads-aside"
+ data-ad-client="{{ GOOGLE_ADSENSE.ca_id }}"
+ data-ad-slot="{{ GOOGLE_ADSENSE.ads.aside }}"></ins>
+ <script>
+ (adsbygoogle = window.adsbygoogle || []).push({});
+ </script>
+ {% endif %}
+ </aside>
+ <main>
+ {% if GOOGLE_ADSENSE and GOOGLE_ADSENSE.ads.main_menu %}
+ <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
+ <ins class="adsbygoogle ads-responsive"
+ data-ad-client="{{ GOOGLE_ADSENSE.ca_id }}"
+ data-ad-slot="{{ GOOGLE_ADSENSE.ads.main_menu }}"></ins>
+ <script>
+ (adsbygoogle = window.adsbygoogle || []).push({});
+ </script>
+ {% endif %}
+
+ {% if MAIN_MENU %}
+ <nav>
+ <a href="{{ SITEURL }}">{{ _('Home') }}</a>
+
+ {% for title, link in MENUITEMS %}
+ <a href="{{ link }}">{{ _(title) }}</a>
+ {% endfor %}
+
+ {% if FEED_ALL_ATOM %}
+ <a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}">{{ _('Atom') }}</a>
+ {% endif %}
+
+ {% if FEED_ALL_RSS %}
+ <a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}">{{ _('RSS') }}</a>
+ {% endif %}
+ </nav>
+ {% endif %}
+
+ {% block content %}
+ {% endblock %}
+
+ <footer>
+ {% if CC_LICENSE %}
+ {% include "partial/cc_license.html" %}
+ {% else %}
+ {% include "partial/copyright.html" %}
+ {% endif %}
+ </footer>
+ </main>
+
+ {% if GUAGES %}
+ {% include "partial/guages.html" %}
+ {% endif %}
+
+ {% if ADD_THIS_ID %}
+ <script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid={{ ADD_THIS_ID }}" async="async"></script>
+ {% endif %}
+
+ {% if (PIWIK_URL and PIWIK_SITE_ID) or (MATOMO_URL and MATOMO_SITE_ID) %}
+ {% include "partial/matomo.html" %}
+ {% endif %}
+
+ {% include "partial/jsonld.html" %}
+
+ {% if GITHUB_CORNER_URL %}
+ {% include 'partial/github.html' %}
+ {% endif %}
+
+ {% if PLUGINS and 'tipue_search' in PLUGINS %}
+ <script>
+ $(document).ready(function() {
+ $('#tipue_search_input').tipuesearch();
+ });
+ </script>
+ {% endif %}
+
+ {% block additional_js %}{% endblock %}
+</body>
+</html>