Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 1 | <!DOCTYPE html> |
| 2 | <html lang="{{ DEFAULT_LANG }}"> |
| 3 | |
| 4 | <head> |
pR0Ps | 26d7087 | 2014-01-31 01:42:14 -0500 | [diff] [blame] | 5 | {% if SERVER_LESS %} |
| 6 | <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/theme/css/style.css"> |
| 7 | {% else %} |
Giulio Fidente | 0161f71 | 2013-04-13 02:55:10 +0200 | [diff] [blame] | 8 | <link rel="stylesheet/less" type="text/css" href="{{ SITEURL }}/theme/css/style.less"> |
pR0Ps | 18abba6 | 2014-01-31 01:29:07 -0500 | [diff] [blame] | 9 | <script src="//cdnjs.cloudflare.com/ajax/libs/less.js/1.6.1/less.min.js" type="text/javascript"></script> |
pR0Ps | 26d7087 | 2014-01-31 01:42:14 -0500 | [diff] [blame] | 10 | {% endif %} |
Giulio Fidente | 8305e74 | 2013-03-22 23:17:45 +0100 | [diff] [blame] | 11 | |
pR0Ps | 2fd9300 | 2015-01-11 13:46:27 -0500 | [diff] [blame^] | 12 | |
| 13 | {% if FUZZY_DATES %} |
| 14 | <script src="{{ SITEURL }}/theme/js/lw-timeago/lw-timeago.js" type="text/javascript"></script> |
| 15 | {% endif %} |
| 16 | |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 17 | <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/theme/css/pygments.css"> |
pR0Ps | fee5225 | 2013-12-11 11:47:26 -0500 | [diff] [blame] | 18 | <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css" rel="stylesheet"> |
Giulio Fidente | 8305e74 | 2013-03-22 23:17:45 +0100 | [diff] [blame] | 19 | |
Giulio Fidente | 8305e74 | 2013-03-22 23:17:45 +0100 | [diff] [blame] | 20 | <meta charset="utf-8" /> |
pR0Ps | 8c52463 | 2013-12-11 13:04:15 -0500 | [diff] [blame] | 21 | <meta name="viewport" id="viewport" content="width=device-width, initial-scale=1.0"> |
Giulio Fidente | 663537a | 2013-04-17 16:48:53 +0200 | [diff] [blame] | 22 | <meta name="author" content="{{ AUTHOR }}"> |
pR0Ps | 277fab8 | 2014-09-25 01:52:29 -0400 | [diff] [blame] | 23 | <meta name="description" content="{% block description %}Posts by {{ AUTHOR }}{% endblock %}"> |
Giulio Fidente | a329665 | 2013-03-28 11:30:46 +0100 | [diff] [blame] | 24 | |
pR0Ps | 440764b | 2013-12-05 16:27:12 -0500 | [diff] [blame] | 25 | {% if GOOGLE_PLUS_URL %} |
| 26 | <link rel="author" href="{{ GOOGLE_PLUS_URL }}?rel=author"> |
| 27 | {% endif %} |
| 28 | |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 29 | {% if FEED_ALL_ATOM %} |
Giulio Fidente | 8305e74 | 2013-03-22 23:17:45 +0100 | [diff] [blame] | 30 | <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Full Atom Feed" /> |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 31 | {% endif %} |
| 32 | {% if FEED_ALL_RSS %} |
Giulio Fidente | 8305e74 | 2013-03-22 23:17:45 +0100 | [diff] [blame] | 33 | <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} Full RSS Feed" /> |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 34 | {% endif %} |
Giulio Fidente | a329665 | 2013-03-28 11:30:46 +0100 | [diff] [blame] | 35 | |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 36 | {% block head %} |
pR0Ps | 02550b7 | 2013-12-17 17:03:38 -0500 | [diff] [blame] | 37 | <meta name="keywords" content=" |
| 38 | {%- if GLOBAL_KEYWORDS -%} |
| 39 | {{ GLOBAL_KEYWORDS|join(', ') }} |
pR0Ps | 86b8086 | 2014-09-25 02:41:07 -0400 | [diff] [blame] | 40 | {%- if tags -%}{{', '}}{%- endif -%} |
pR0Ps | 02550b7 | 2013-12-17 17:03:38 -0500 | [diff] [blame] | 41 | {%- endif -%} |
| 42 | {{tags|join(', ', attribute='0') }}"> |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 43 | {% endblock %} |
Giulio Fidente | a329665 | 2013-03-28 11:30:46 +0100 | [diff] [blame] | 44 | |
Giulio Fidente | da4d95b | 2013-04-29 15:59:35 +0200 | [diff] [blame] | 45 | <title> |
| 46 | {% block title %}{{ SITENAME }}{% endblock %} |
| 47 | </title> |
Giulio Fidente | fbc35fb | 2013-04-05 11:26:07 +0200 | [diff] [blame] | 48 | |
Giulio Fidente | 180d172 | 2013-06-14 09:29:38 +0200 | [diff] [blame] | 49 | {% include "modules/analytics.html" %} |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 50 | </head> |
| 51 | |
| 52 | <body> |
Giulio Fidente | fc3b4d0 | 2013-03-26 15:23:42 +0100 | [diff] [blame] | 53 | <aside> |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 54 | <div id="user_meta"> |
Giulio Fidente | 5c9ed78 | 2013-03-27 11:20:31 +0100 | [diff] [blame] | 55 | <a href="{{ SITEURL }}"> |
| 56 | {% if USER_LOGO_URL %} |
pR0Ps | 2734177 | 2013-12-20 09:20:32 -0500 | [diff] [blame] | 57 | <img src="{{ USER_LOGO_URL }}" alt="logo" id="logo"> |
Giulio Fidente | 5c9ed78 | 2013-03-27 11:20:31 +0100 | [diff] [blame] | 58 | {% endif %} |
| 59 | </a> |
Carey Metcalfe | 9a4c751 | 2014-09-25 13:35:55 -0400 | [diff] [blame] | 60 | <h2><a href="{{ SITEURL }}" class="nohover">{{ SITENAME }}</a></h2> |
Giulio Fidente | a6c5867 | 2013-03-30 14:55:03 +0100 | [diff] [blame] | 61 | <p>{{ TAGLINE }}</p> |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 62 | <ul> |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 63 | {% for name, link in SOCIAL %} |
pR0Ps | 433d1da | 2013-12-17 01:32:15 -0500 | [diff] [blame] | 64 | |
pR0Ps | 75ee6e0 | 2014-03-09 13:12:13 -0400 | [diff] [blame] | 65 | {# Attempt to normalize link URLs #} |
| 66 | {% set temp = link|lower|replace('http://', '')|replace('https://', '')|replace('www.', '') %} |
| 67 | |
pR0Ps | 433d1da | 2013-12-17 01:32:15 -0500 | [diff] [blame] | 68 | {% set class = 'fa-external-link-square' %} |
| 69 | |
| 70 | {% if MANGLE_EMAILS and temp.startswith('mailto:') %} |
pR0Ps | 23cfbaa | 2013-12-11 13:06:06 -0500 | [diff] [blame] | 71 | <li><a data-email="{{ link|reverse }}" title="You need javascript enabled to view this email" href="#" class="email" target="_blank">{{ name }}<i class="fa fa-envelope fa-lg"></i></a></li> |
| 72 | {% else %} |
pR0Ps | 433d1da | 2013-12-17 01:32:15 -0500 | [diff] [blame] | 73 | |
| 74 | {# Choosing a specific link icon #} |
| 75 | {% if temp.startswith('bitbucket.org') %}{% set class = 'fa-bitbucket' %} |
| 76 | {% elif temp.startswith('facebook.com') %}{% set class = 'fa-facebook' %} |
| 77 | {% elif temp.startswith('github.com') %}{% set class = 'fa-github' %} |
| 78 | {% elif temp.startswith('linkedin.com') %}{% set class = 'fa-linkedin' %} |
| 79 | {% elif temp.startswith('pinterest.com') %}{% set class = 'fa-pinterest' %} |
| 80 | {% elif temp.startswith('plus.google.com') %}{% set class = 'fa-google-plus' %} |
| 81 | {% elif temp.startswith('stackoverflow.com') %}{% set class = 'fa-stack-overflow' %} |
| 82 | {% elif temp.startswith('twitter.com') %}{% set class = 'fa-twitter' %} |
| 83 | {% elif temp.startswith('vimeo.com') %}{% set class = 'fa-vimeo-square' %} |
| 84 | {% elif temp.startswith('youtube.com') %}{% set class = 'fa-youtube' %} |
| 85 | |
pR0Ps | 8dbfbd8 | 2013-12-18 17:46:54 -0500 | [diff] [blame] | 86 | {% elif temp.endswith('.pdf') %}{% set class = 'fa-file-text' %} |
| 87 | |
pR0Ps | 433d1da | 2013-12-17 01:32:15 -0500 | [diff] [blame] | 88 | {% elif '.stackexchange.com' in temp %}{% set class = 'fa-stack-exchange' %} |
| 89 | {% elif '.tumblr.com' in temp %}{% set class = 'fa-tumblr' %} |
| 90 | |
| 91 | {% elif temp.startswith('bitcoin:') %}{% set class = 'fa-bitcoin' %} |
| 92 | {% elif temp.startswith('irc:') %}{% set class = 'fa-comments' %} |
| 93 | {% elif temp.startswith('mailto:') %}{% set class = 'fa-envelope' %} |
| 94 | {% elif temp.startswith('skype:') %}{% set class = 'fa-skype' %} |
pR0Ps | 23cfbaa | 2013-12-11 13:06:06 -0500 | [diff] [blame] | 95 | {% endif %} |
pR0Ps | 433d1da | 2013-12-17 01:32:15 -0500 | [diff] [blame] | 96 | |
| 97 | <li><a href="{{ link }}" target="_blank">{{ name }}<i class="fa {{ class }} fa-lg"></i></a></li> |
pR0Ps | 23cfbaa | 2013-12-11 13:06:06 -0500 | [diff] [blame] | 98 | {% endif %} |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 99 | {% endfor %} |
pR0Ps | e5f49ca | 2014-03-04 01:47:54 -0500 | [diff] [blame] | 100 | </ul> |
| 101 | <ul> |
Vincent Cheng | 713daa2 | 2014-02-21 04:49:15 -0800 | [diff] [blame] | 102 | {% for name, link in LINKS %} |
| 103 | <li><a href="{{ link }}" target="_blank">{{ name }}<i class="fa fa-external-link-square fa-lg"></i></a></li> |
| 104 | {% endfor %} |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 105 | </ul> |
| 106 | </div> |
Giulio Fidente | fc3b4d0 | 2013-03-26 15:23:42 +0100 | [diff] [blame] | 107 | </aside> |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 108 | |
pR0Ps | 6c17315 | 2013-12-11 12:13:15 -0500 | [diff] [blame] | 109 | <main id="main"> |
Giulio Fidente | a329665 | 2013-03-28 11:30:46 +0100 | [diff] [blame] | 110 | <header> |
Giulio Fidente | da4d95b | 2013-04-29 15:59:35 +0200 | [diff] [blame] | 111 | {% block header %} |
pR0Ps | 09af9c4 | 2013-12-06 04:51:29 -0500 | [diff] [blame] | 112 | <p id="header"> |
pR0Ps | 90df6e9 | 2013-12-05 15:17:52 -0500 | [diff] [blame] | 113 | <a href="{{ SITEURL }}">Home</a> |
| 114 | |
pR0Ps | 8096f8f | 2013-12-11 12:56:28 -0500 | [diff] [blame] | 115 | {% for p in pages|sort %} |
pR0Ps | 90df6e9 | 2013-12-05 15:17:52 -0500 | [diff] [blame] | 116 | {% if p.url != "index.html" %} |
| 117 | | <a href="{{ SITEURL }}/{{ p.url }}">{{ p.title }}</a> |
| 118 | {% endif %} |
| 119 | {% endfor %} |
pR0Ps | 8096f8f | 2013-12-11 12:56:28 -0500 | [diff] [blame] | 120 | {% if INDEX_SAVE_AS and INDEX_SAVE_AS != "index.html" %} |
| 121 | | <a href="{{ SITEURL }}/{{ INDEX_SAVE_AS }}">Blog</a> |
| 122 | {% endif %} |
Giulio Fidente | da4d95b | 2013-04-29 15:59:35 +0200 | [diff] [blame] | 123 | {% if FEED_ALL_ATOM %} |
| 124 | | <a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}">Atom Feed</a> |
| 125 | {% endif %} |
| 126 | {% if FEED_ALL_RSS %} |
| 127 | | <a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}">RSS Feed</a> |
| 128 | {% endif %} |
Giulio Fidente | a6c5867 | 2013-03-30 14:55:03 +0100 | [diff] [blame] | 129 | </p> |
Giulio Fidente | da4d95b | 2013-04-29 15:59:35 +0200 | [diff] [blame] | 130 | {% endblock header %} |
pR0Ps | 09af9c4 | 2013-12-06 04:51:29 -0500 | [diff] [blame] | 131 | {% block subheader %} |
| 132 | {% endblock subheader %} |
Giulio Fidente | a329665 | 2013-03-28 11:30:46 +0100 | [diff] [blame] | 133 | </header> |
| 134 | |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 135 | {% block content %} |
| 136 | {% endblock %} |
Giulio Fidente | a329665 | 2013-03-28 11:30:46 +0100 | [diff] [blame] | 137 | |
pR0Ps | 721949b | 2013-12-11 13:09:22 -0500 | [diff] [blame] | 138 | {% block footer %} |
| 139 | {% endblock %} |
Giulio Fidente | a329665 | 2013-03-28 11:30:46 +0100 | [diff] [blame] | 140 | |
Giulio Fidente | bc2f70a | 2013-03-27 15:41:07 +0100 | [diff] [blame] | 141 | <div id="ending_message"> |
pR0Ps | 0a5bb62 | 2014-12-17 16:31:01 -0500 | [diff] [blame] | 142 | <p>© {{ AUTHOR }}. Built using <a href="http://getpelican.com" target="_blank">Pelican</a>. Theme is <a href="https://github.com/pR0Ps/pelican-subtle" target="_blank">subtle</a> by <a href="http://cmetcalfe.ca" target="_blank">Carey Metcalfe</a>. Based on <a href="https://github.com/giulivo/pelican-svbhack" target="_blank">svbhack</a> by Giulio Fidente.</p> |
Giulio Fidente | bc2f70a | 2013-03-27 15:41:07 +0100 | [diff] [blame] | 143 | </div> |
Giulio Fidente | fc3b4d0 | 2013-03-26 15:23:42 +0100 | [diff] [blame] | 144 | </main> |
pR0Ps | 6c17315 | 2013-12-11 12:13:15 -0500 | [diff] [blame] | 145 | |
pR0Ps | 2fd9300 | 2015-01-11 13:46:27 -0500 | [diff] [blame^] | 146 | {% block scripts %} |
pR0Ps | 6c17315 | 2013-12-11 12:13:15 -0500 | [diff] [blame] | 147 | {% if SCROLL_TO_CONTENT %} |
| 148 | <script type="text/javascript"> |
| 149 | if (window.location.pathname != '/' && window.location.pathname != '/index.html'){ |
| 150 | window.scroll(0, document.getElementById('main').offsetTop); |
| 151 | } |
| 152 | </script> |
| 153 | {% endif %} |
pR0Ps | 8c52463 | 2013-12-11 13:04:15 -0500 | [diff] [blame] | 154 | |
pR0Ps | 23cfbaa | 2013-12-11 13:06:06 -0500 | [diff] [blame] | 155 | {% if MANGLE_EMAILS %} |
| 156 | <script type="text/javascript"> |
| 157 | window.onload = function(){ |
| 158 | var e = document.querySelectorAll(".email"); |
| 159 | for (var i = 0; i < e.length; i++) { |
| 160 | e[i].href = e[i].getAttribute("data-email").split("").reverse().join(""); |
| 161 | e[i].removeAttribute("data-email"); |
| 162 | e[i].removeAttribute("title"); |
| 163 | e[i].removeAttribute("class"); |
| 164 | } |
| 165 | }; |
| 166 | </script> |
| 167 | {% endif %} |
| 168 | |
pR0Ps | 8c52463 | 2013-12-11 13:04:15 -0500 | [diff] [blame] | 169 | {% if FORCE_PIXELS %} |
| 170 | <script type="text/javascript"> |
| 171 | var ratio = 1/window.devicePixelRatio; |
| 172 | var tag = document.getElementById("viewport") |
| 173 | if (ratio != 1 && tag != null){ |
| 174 | tag.content = "width=device-width, initial-scale=" + ratio; |
| 175 | } |
| 176 | </script> |
| 177 | {% endif %} |
pR0Ps | 2fd9300 | 2015-01-11 13:46:27 -0500 | [diff] [blame^] | 178 | |
| 179 | {% endblock scripts %} |
Giulio Fidente | 44ccac7 | 2013-03-21 18:51:03 +0100 | [diff] [blame] | 180 | </body> |
| 181 | </html> |