236 lines
8.6 KiB
HTML
236 lines
8.6 KiB
HTML
<!DOCTYPE html>
|
|
{% if USE_OPEN_GRAPH is not defined %}
|
|
{% set USE_OPEN_GRAPH = True %}
|
|
{% endif %}
|
|
<html lang="{% block html_lang %}{{ DEFAULT_LANG }}{% endblock %}"{% if USE_OPEN_GRAPH %} prefix="og: http://ogp.me/ns# fb: https://www.facebook.com/2008/fbml"{% endif %}>
|
|
<head>
|
|
<title>{% block title %}{{ SITENAME }}{% endblock %}</title>
|
|
<!-- Using the latest rendering mode for IE -->
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
{% if 'liquid_tags.notebook' in PLUGINS %}
|
|
{% include 'includes/liquid_tags_nb_header.html' %}
|
|
{% endif %}
|
|
|
|
{# Favicons are a touchy subject. For reasoning for the following code, see: http://stackoverflow.com/a/23851464/872397 #}
|
|
{% if FAVICON %}
|
|
<link href="{{ SITEURL }}/{{ FAVICON }}" rel="icon">
|
|
{% endif %}
|
|
{% if FAVICON_IE %}
|
|
<!--[if IE]><link rel="shortcut icon" href="{{ SITEURL }}/{{ FAVICON_IE }}"><![endif]-->
|
|
{% endif %}
|
|
{% if TOUCHICON %}
|
|
<link rel="apple-touch-icon" href="{{ SITEURL }}/{{ TOUCHICON }}">
|
|
{% endif %}
|
|
|
|
{% block canonical_rel %}{% endblock %}
|
|
|
|
{% block meta %}
|
|
<meta name="author" content="{{ AUTHOR }}" />
|
|
{% endblock %}
|
|
|
|
{# Open Graph tags #}
|
|
{% if USE_OPEN_GRAPH %}
|
|
{% block opengraph %}
|
|
<!-- Open Graph tags -->
|
|
{% if OPEN_GRAPH_FB_APP_ID %}
|
|
<meta property="fb:app_id" content="{{ OPEN_GRAPH_FB_APP_ID }}"/>
|
|
{% endif %}
|
|
<meta property="og:site_name" content="{{ SITENAME }}" />
|
|
<meta property="og:type" content="website"/>
|
|
<meta property="og:title" content="{{ SITENAME }}"/>
|
|
<meta property="og:url" content="{{ SITEURL }}"/>
|
|
<meta property="og:description" content="{{ SITENAME }}"/>
|
|
{% if OPEN_GRAPH_IMAGE %}
|
|
<meta property="og:image" content="{{ SITEURL }}/{{ OPEN_GRAPH_IMAGE }}"/>
|
|
{% endif %}
|
|
{% endblock %}
|
|
{% endif %}
|
|
|
|
{# Twitter Cards tags #}
|
|
{% include 'includes/twitter_cards.html' %}
|
|
|
|
<!-- Bootstrap -->
|
|
{% if BOOTSTRAP_THEME %}
|
|
<link href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/themes/{{ BOOTSTRAP_THEME }}/bootstrap.min.css" type="text/css"/ rel="stylesheet" />
|
|
{% else %}
|
|
<link href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/bootstrap.min.css" type="text/css" rel="stylesheet" />
|
|
{% endif %}
|
|
|
|
<link href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/font-awesome.min.css" rel="stylesheet">
|
|
|
|
<link href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/pygments/{{ PYGMENTS_STYLE|default('native') }}.css" type="text/css" rel="stylesheet" />
|
|
{% if DOCUTIL_CSS %}
|
|
<link href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/html4css1.css" type="text/css" rel="stylesheet" />
|
|
{% endif %}
|
|
{% if TYPOGRIFY %}
|
|
<link href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/typogrify.css" type="text/css" rel="stylesheet" />
|
|
{% endif %}
|
|
|
|
<link href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/style.css" type="text/css" rel="stylesheet" />
|
|
<link href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/tango.css" type="text/css" rel="stylesheet" />
|
|
|
|
{% if CUSTOM_CSS %}
|
|
<link href="{{ SITEURL }}/{{ CUSTOM_CSS }}" rel="stylesheet" type="text/css" />
|
|
{% endif %}
|
|
{% if article %}
|
|
{% if article.styles %}
|
|
{% for style in article.styles %}
|
|
{{ style|format(SITEURL) }}
|
|
{% endfor %}
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
{% if FEED_ALL_ATOM %}
|
|
<link href="{{ SITEURL }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} ATOM Feed" />
|
|
{% endif %}
|
|
|
|
{% if FEED_ALL_RSS %}
|
|
<link href="{{ SITEURL }}/{{ FEED_ALL_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} RSS Feed" />
|
|
{% endif %}
|
|
|
|
{%- if tag and TAG_FEED_ATOM %}
|
|
{%- if '%s' not in TAG_FEED_ATOM %}
|
|
{%- set tag_feed_atom = TAG_FEED_ATOM.format(slug=tag.slug) %}
|
|
{%- else %}
|
|
{%- set tag_feed_atom = TAG_FEED_ATOM.format(tag.slug) %}
|
|
{%- endif %}
|
|
<link href="{{ SITEURL }}/{{ tag_feed_atom }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} {{ tag }} ATOM Feed"/>
|
|
{%- endif %}
|
|
{%- if category and CATEGORY_FEED_ATOM %}
|
|
{%- if '%s' not in CATEGORY_FEED_ATOM %}
|
|
{%- set category_feed_atom = CATEGORY_FEED_ATOM.format(slug=category.slug) %}
|
|
{%- else %}
|
|
{%- set category_feed_atom = CATEGORY_FEED_ATOM.format(category.slug) %}
|
|
{%- endif %}
|
|
<link href="{{ SITEURL }}/{{ category_feed_atom }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} {{ category }} ATOM Feed"/>
|
|
{%- endif %}
|
|
|
|
{% if 'search' in PLUGINS %}
|
|
<link rel="stylesheet" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/stork.css">
|
|
{% endif %}
|
|
</head>
|
|
<body>
|
|
|
|
<div class="navbar navbar-expand-lg navbar-light bg-light fixed-top" role="navigation">
|
|
<div class="container{% if BOOTSTRAP_FLUID %}-fluid{% endif %}">
|
|
|
|
<a class="navbar-brand" href="{{ SITEURL }}/">
|
|
{% if SITELOGO %}<img class="img-responsive pull-left gap-right" src="{{ SITEURL }}/{{ SITELOGO }}" width="{{ SITELOGO_SIZE }}"/> {% endif %}
|
|
{% if not HIDE_SITENAME %}{{ SITENAME }}{% endif %}
|
|
</a>
|
|
|
|
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor03" aria-controls="navbarColor03" aria-expanded="false" aria-label="Toggle navigation">
|
|
<span class="navbar-toggler-icon"></span>
|
|
</button>
|
|
|
|
<div class="collapse navbar-collapse" id="navbarColor03">
|
|
<ul class="navbar-nav mr-auto">
|
|
<!--
|
|
<li class="nav-item active">
|
|
<a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link" href="#">Features</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link" href="#">Pricing</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a class="nav-link" href="#">About</a>
|
|
</li>
|
|
-->
|
|
</ul>
|
|
{% if 'search' in PLUGINS %}
|
|
<form class="form-inline my-2 my-lg-0" action="{{ SITEURL }}/search.html">
|
|
Search: <input data-stork="sitesearch" />
|
|
<div data-stork="sitesearch-output"></div>
|
|
<input class="form-control mr-sm-2 search-query" type="text" placeholder="" name="q" id="search_input" pattern=".{3,}" required>
|
|
<button class="btn btn-secondary my-2 my-sm-0 search_button" type="submit"><div class="search_icon">⚲</div></button>
|
|
</form>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<!-- Banner -->
|
|
{% if BANNER and BANNER_ALL_PAGES %}
|
|
{% include 'includes/banner.html' %}
|
|
{% elif BANNER and not BANNER_ALL_PAGES %}
|
|
{% block banner %}{% endblock %}
|
|
{% endif %}
|
|
<!-- End Banner -->
|
|
|
|
<!-- Content Container -->
|
|
{% if PADDED_SINGLE_COLUMN_STYLE %}
|
|
{% set content_class='col-md-8 col-md-offset-2' %}
|
|
{% elif not HIDE_SIDEBAR or ABOUT_ME or AVATAR %}
|
|
{% set content_class='col-sm-9' + (' col-sm-push-3' if SIDEBAR_ON_LEFT else '') %}
|
|
{% set sidebar_class='col-sm-3' + (' col-sm-pull-9' if SIDEBAR_ON_LEFT else '') %}
|
|
{% else %}
|
|
{% set content_class='col-lg-12' %}
|
|
{% endif %}
|
|
<div class="container{% if BOOTSTRAP_FLUID %}-fluid{% endif %}">
|
|
<div class="row">
|
|
<div class="{{ content_class }}">
|
|
{% block breadcrumbs %}{% endblock %}
|
|
{% block content %}{% endblock %}
|
|
</div>
|
|
{% if sidebar_class %}
|
|
<div class="{{ sidebar_class }}" id="sidebar">
|
|
<aside>
|
|
{% if ABOUT_ME or AVATAR %}
|
|
{% include 'includes/aboutme.html' %}
|
|
{% endif %}
|
|
{% if not HIDE_SIDEBAR %}
|
|
{% include 'includes/sidebar.html' %}
|
|
{% endif %}
|
|
</aside>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
<!-- End Content Container -->
|
|
|
|
{% include 'includes/footer.html' %}
|
|
|
|
<script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/js/jquery.min.js"></script>
|
|
|
|
<!-- Include all compiled plugins (below), or include individual files as needed -->
|
|
<script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/js/bootstrap.min.js"></script>
|
|
|
|
<!-- Enable responsive features in IE8 with Respond.js (https://github.com/scottjehl/Respond) -->
|
|
<script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/js/respond.min.js"></script>
|
|
|
|
{% if CUSTOM_JS %}
|
|
<script src="{{ SITEURL }}/{{ CUSTOM_JS }}"></script>
|
|
{% endif %}
|
|
|
|
{% if BANNER %}
|
|
<script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/js/bodypadding.js"></script>
|
|
{% endif %}
|
|
{% include 'includes/sidebar/github-js.html' %}
|
|
{% include 'includes/disqus_script.html' %}
|
|
{% include 'includes/ga.html' %}
|
|
{% include 'includes/piwik.html' %}
|
|
|
|
{% if 'liquid_tags.notebook' in PLUGINS %}
|
|
{% include 'includes/liquid_tags_nb_footer.html' %}
|
|
{% endif %}
|
|
|
|
{% block scripts %}
|
|
{% if 'search' in PLUGINS %}
|
|
<script src="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/js/stork.js"></script>
|
|
<script>
|
|
stork.initialize("{{ SITEURL }}/{{ THEME_STATIC_DIR }}/js/stork.wasm")
|
|
stork.downloadIndex("sitesearch", "{{ SITEURL }}/search-index.st")
|
|
stork.attach("sitesearch")
|
|
</script>
|
|
{% endif %}
|
|
{% endblock %}
|
|
</body>
|
|
</html>
|