updated almost entire thing

This commit is contained in:
Vicky Steeves 2017-05-03 12:31:02 -04:00
parent a4885598fa
commit 4368c1992b
27 changed files with 374 additions and 227 deletions

33
conf.py
View File

@ -6,27 +6,12 @@ import time
# !! This is the configuration of Nikola. !! # # !! This is the configuration of Nikola. !! #
# !! You should edit it to your liking. !! # # !! You should edit it to your liking. !! #
# ! Some settings can be different in different languages.
# ! A comment stating (translatable) is used to denote those.
# ! There are two ways to specify a translatable setting:
# ! (a) BLOG_TITLE = "My Blog"
# ! (b) BLOG_TITLE = {"en": "My Blog", "es": "Mi Blog"}
# ! Option (a) is used when you don't want that setting translated.
# ! Option (b) is used for settings that are different in different languages.
# Data about this site # Data about this site
BLOG_AUTHOR = "LISSA Board" # (translatable) BLOG_AUTHOR = "LISSA Board" # (translatable)
BLOG_TITLE = "LIS Scholarship Archive" # (translatable) BLOG_TITLE = "LIS Scholarship Archive" # (translatable)
# This is the main URL for your site. It will be used
# in a prominent link. Don't forget the protocol (http/https)!
SITE_URL = "https://lissarchive.org/" SITE_URL = "https://lissarchive.org/"
# This is the URL where Nikola's output will be deployed. BLOG_EMAIL = "lissarchive@gmail.com"
# If not set, defaults to SITE_URL BLOG_DESCRIPTION = "An open, scholarly platform for the LIS community." # (translatable)
# BASE_URL = "https://example.com/"
BLOG_EMAIL = "vicky.steeves@nyu.edu"
BLOG_DESCRIPTION = "An open, scholarly platform for LIS." # (translatable)
# Nikola is multilingual! # Nikola is multilingual!
# #
@ -141,7 +126,7 @@ THEME = "custom"
# Primary color of your theme. This will be used to customize your theme and # Primary color of your theme. This will be used to customize your theme and
# auto-generate related colors in POSTS_SECTION_COLORS. Must be a HEX value. # auto-generate related colors in POSTS_SECTION_COLORS. Must be a HEX value.
THEME_COLOR = '#5670d4' THEME_COLOR = '#8966a0'
# POSTS and PAGES contains (wildcard, destination, template) tuples. # POSTS and PAGES contains (wildcard, destination, template) tuples.
# #
@ -206,7 +191,7 @@ TIMEZONE = "America/New_York"
# Date format used to display post dates, if local dates are used. (translatable) # Date format used to display post dates, if local dates are used. (translatable)
# (str used by moment.js) # (str used by moment.js)
# JS_DATE_FORMAT = 'YYYY-MM-DD HH:mm' JS_DATE_FORMAT = 'YYYY-MM-DD HH:mm'
# Date fanciness. # Date fanciness.
# #
@ -215,7 +200,7 @@ TIMEZONE = "America/New_York"
# 2 = using a string like “2 days ago” # 2 = using a string like “2 days ago”
# #
# Your theme must support it, bootstrap and bootstrap3 already do. # Your theme must support it, bootstrap and bootstrap3 already do.
# DATE_FANCINESS = 0 DATE_FANCINESS = 1
# While Nikola can select a sensible locale for each language, # While Nikola can select a sensible locale for each language,
# sometimes explicit control can come handy. # sometimes explicit control can come handy.
@ -280,11 +265,11 @@ COMPILERS = {
# Nikola supports logo display. If you have one, you can put the URL here. # Nikola supports logo display. If you have one, you can put the URL here.
# Final output is <img src="LOGO_URL" id="logo" alt="BLOG_TITLE">. # Final output is <img src="LOGO_URL" id="logo" alt="BLOG_TITLE">.
# The URL may be relative to the site root. # The URL may be relative to the site root.
# LOGO_URL = '' LOGO_URL = '/images/lis-schol-archive-navbar-white.png'
# If you want to hide the title of your website (for example, if your logo # If you want to hide the title of your website (for example, if your logo
# already contains the text), set this to False. # already contains the text), set this to False.
# SHOW_BLOG_TITLE = True SHOW_BLOG_TITLE = False
# Writes tag cloud data in form of tag_cloud_data.json. # Writes tag cloud data in form of tag_cloud_data.json.
# Warning: this option will change its default value to False in v8! # Warning: this option will change its default value to False in v8!
@ -973,7 +958,7 @@ MARKDOWN_EXTENSIONS = ['fenced_code', 'codehilite', 'extra']
# SHOW_SOURCELINK = True # SHOW_SOURCELINK = True
# Copy the source files for your pages? # Copy the source files for your pages?
# Setting it to False implies SHOW_SOURCELINK = False # Setting it to False implies SHOW_SOURCELINK = False
# COPY_SOURCES = True COPY_SOURCES = False
# Modify the number of Post per Index Page # Modify the number of Post per Index Page
# Defaults to 10 # Defaults to 10
@ -1102,7 +1087,7 @@ UNSLUGIFY_TITLES = True
# Nikola supports Open Graph Protocol data for enhancing link sharing and # Nikola supports Open Graph Protocol data for enhancing link sharing and
# discoverability of your site on Facebook, Google+, and other services. # discoverability of your site on Facebook, Google+, and other services.
# Open Graph is enabled by default. # Open Graph is enabled by default.
# USE_OPEN_GRAPH = True USE_OPEN_GRAPH = True
# Nikola supports Twitter Card summaries, but they are disabled by default. # Nikola supports Twitter Card summaries, but they are disabled by default.
# They make it possible for you to attach media to Tweets that link # They make it possible for you to attach media to Tweets that link

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
images/people/april.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
images/people/cecily.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
images/people/charlotte.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

BIN
images/people/chealsye.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
images/people/kevin.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
images/people/lisa.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
images/people/megan.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

BIN
images/people/micah.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

BIN
images/people/vicky.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

View File

@ -1,11 +0,0 @@
#!/usr/bin/python
import sys
def hello(name='world'):
greeting = "hello " + name
print(greeting)
if __name__ == "__main__":
hello(*sys.argv[1:])

View File

@ -8,11 +8,28 @@
.. description: .. description:
.. type: text .. type: text
--> -->
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<body> <body>
<div style="width:100;">
<form action="https://formspree.io/lissarchive@gmail.com" method="POST">
<div class="form-group">
<label for="name">Name:</label>
<input type="name" class="form-control" id="name" placeholder="Name">
</div>
<div class="form-group">
<label for="email">Email:</label>
<input type="email" class="form-control" id="email" placeholder="Email">
</div>
<div class="form-group">
<label for="name">Message:</label>
<textarea type="message" class="form-control" id="message" placeholder="Message" rows="5"></textarea>
</div>
<button type="reset" class="btn btn-default">Cancel</button>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</body> </body>
</html> </html>

19
pages/thanks.html Normal file
View File

@ -0,0 +1,19 @@
<!--
.. title: Thanks!
.. slug: thanks
.. date: 2017-01-06 14:24:09 UTC-05:00
.. tags:
.. category:
.. link:
.. description:
.. type: text
-->
<!DOCTYPE html>
<html lang="en">
<body>
<p>Thanks for emailing us! Expect a reply as soon as possible!</p>
</body>
</html>

View File

@ -20,18 +20,18 @@
<table style="height: 100%; width:100%;"> <table style="height: 100%; width:100%;">
<tbody> <tbody>
<tr> <tr>
<td><img src="/images/people/juliana.jpg" alt="Juliana Freire"/><p><a href="http://vgc.poly.edu/~juliana/">Vicky Steeves, director</a></p></td> <td><img src="/images/people/vicky.jpg" alt="Vicky Steeves"/><p><a href="https://vickysteeves.com">Vicky Steeves</a></p></td>
<td><img src="/images/people/claudio.jpg" alt="Claudio T. Silva"/><p><a href="http://www.cs.utah.edu/~csilva/">April Hathcock</a></p></td> <td><img src="/images/people/april.jpg" alt="April Hathcock"/><p><a href="https://aprilhathcock.wordpress.com/">April Hathcock</a></p></td>
<td><img src="/images/people/dennis.jpg" alt="Dennis Shasha"/><p><a href="http://www.cs.nyu.edu/shasha/">Cecily Walker</a></p></td> <td><img src="/images/people/cecily.jpg" alt="Cecily Walker"/><p><a href="http://cecily.info/">Cecily Walker</a></p></td>
<td><img src="/images/people/kyle.jpg" alt="Kyle Cranmer"/><p><a href="http://theoryandpractice.org/">Lisa Hinchliffe</a></p></td> <td><img src="/images/people/lisa.jpg" alt="Lisa Hinchliffe"/><p><a href="https://lisahinchliffe.com/">Lisa Hinchliffe</a></p></td>
</tr> </tr>
<tr> <tr>
<td><img src="/images/people/fernando.jpg" alt="Fernando Seabra Chirigati"/><p><a href="http://vgc.poly.edu/~fchirigati/">Micah Vandergrift</a></p></td> <td><img src="/images/people/micah.jpg" alt="Micah Vandergrift"/><p><a href="https://micahvandegrift.github.io/">Micah Vandergrift</a></p></td>
<td><img src="/images/people/remi.jpg" alt="Remi Rampin"/><p><a href="https://github.com/remram44">Chelsea Bowley</a></p></td> <td><img src="/images/people/chealsye.jpg" alt="Chealsye Bowley"/><p><a href="https://twitter.com/chealsye">Chealsye Bowley</a></p></td>
<td><img src="/images/people/vicky.jpg" alt="Vicky Steeves"/><p><a href="https://vickysteeves.com/">Kevin Smith</a></p></td> <td><img src="/images/people/kevin.jpg" alt="Keving Smith"/><p><a href="https://lib.ku.edu/kevin-l-smith">Kevin Smith</a></p></td>
<td><img src="/images/people/matthias.jpg" alt="Matthias Troyer"/><p><a href="http://www.comp.phys.ethz.ch/people/troyer.html">Megan Wacha</a></p></td> <td><img src="/images/people/megan.png" alt="Megan Wacha"/><p><a href="http://www.meganwacha.info/">Megan Wacha</a></p></td>
<td><img src="/images/people/vistrails.png" alt="VisTrails"/><p><a href="http://www.vistrails.org/">Charlotte Roh</a></p></td> <td><img src="/images/people/charlotte.jpg" alt="Charlottet Roh"/><p><a href="https://www.linkedin.com/in/charlotteroh">Charlotte Roh</a></p></td>
</tr> </tr>
</tbody> </tbody>

1
plugins/__init__.py Normal file
View File

@ -0,0 +1 @@
# Plugin modules go here.

57
plugins/forms/README.md Normal file
View File

@ -0,0 +1,57 @@
This plugin uses [Alpaca Forms](http://alpacajs.org/) to allow "easy" form creation
in reStructuredText documents.
Here's an example:
```
.. form::
{
"schema": {
"title": "What do you think of Alpaca?",
"type": "object",
"properties": {
"name": {
"type": "string",
"title": "Name"
},
"ranking": {
"type": "string",
"title": "Ranking",
"enum": ['excellent', 'not too shabby', 'alpaca built my hotrod']
}
}
}
```
Instead of using the form description as content for the directive, you can put it in a separate file
and load it like this:
```
.. form::
:file: formdescription.json
```
A description of how Alpaca works is beyond the scope of this README, and you should read
[their fine docs](http://alpacajs.org/tutorial.html) instead.
You will probably want to add something like this to your config:
```
EXTRA_HEAD_DATA += """
<link type="text/css" href="//code.cloudcms.com/alpaca/1.5.8/bootstrap/alpaca.min.css" rel="stylesheet" />
"""
BODY_END += """
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/1.3.0/handlebars.js"></script>
<script type="text/javascript" src="//code.cloudcms.com/alpaca/1.5.8/bootstrap/alpaca.min.js"></script>
<script>
$(document).ready(function() {
$('div.alpacaform').each(function(index, element) {
data = eval(element.id+'_data');
Alpaca(element, data);
});});
</script>
"""
```

View File

@ -0,0 +1,14 @@
[Core]
Name = rest_forms
Module = forms
[Nikola]
PluginCategory = CompilerExtension
Compiler = rest
[Documentation]
Author = Roberto Alsina
Version = 0.1
Website = http://getnikola.com
Description = Alpaca-based forms for ReST.

49
plugins/forms/forms.py Normal file
View File

@ -0,0 +1,49 @@
# -*- coding: utf-8 -*-
# This file is public domain according to its author, Brian Hsu
import uuid
from docutils.parsers.rst import Directive, directives
from docutils import nodes
from nikola.plugin_categories import RestExtension
class Plugin(RestExtension):
name = "rest_form"
def set_site(self, site):
self.site = site
directives.register_directive('form', AlpacaForms)
return super(Plugin, self).set_site(site)
class AlpacaForms(Directive):
""" Embed AlpacaForm form
Usage:
.. form::
[Alpaca form description as JSON]
.. form::
:file: formdescription.json
"""
option_spec = {'file': directives.unchanged}
has_content = True
def run(self):
formname = 'form_' + uuid.uuid4().hex
fname = self.options.get('file')
if fname is None:
data = '\n'.join(self.content)
else:
with open(fname, 'rb') as fd:
data = fd.read()
return [nodes.raw('', '''
<div id={formname} class="alpacaform"></div> <script type="text/javascript"> {formname}_data={data};</script>'''.format(formname=formname, data=data), format='html')]

View File

@ -1,27 +0,0 @@
.. title: Welcome to Nikola
.. slug: welcome-to-nikola
.. date: 2012-03-30 23:00:00 UTC-03:00
.. tags: nikola, python, demo, blog
.. author: Roberto Alsina
.. link: https://getnikola.com/
.. description:
.. category: nikola
.. figure:: https://farm1.staticflickr.com/138/352972944_4f9d568680.jpg
:target: https://farm1.staticflickr.com/138/352972944_4f9d568680_z.jpg?zz=1
:class: thumbnail
:alt: Nikola Tesla Corner by nicwest, on Flickr
If you can see this in a web browser, it means you managed to install Nikola,
and build a site using it. Congratulations!
Next steps:
* :doc:`Read the manual <handbook>`
* `Visit the Nikola website to learn more <https://getnikola.com>`__
* `See a demo photo gallery <link://gallery/demo>`__
* :doc:`See a demo listing <listings-demo>`
* :doc:`See a demo slideshow <slides-demo>`
* :doc:`See a demo of a longer text <dr-nikolas-vendetta>`
Send feedback to info@getnikola.com!

View File

@ -1,5 +1,5 @@
<!-- <!--
.. title: Annoucning LISSA + COS .. title: Announcing LISSA + COS
.. slug: cos-lissa .. slug: cos-lissa
.. date: 2017-05-01 14:08:25 UTC-04:00 .. date: 2017-05-01 14:08:25 UTC-04:00
.. tags: .. tags:
@ -12,7 +12,21 @@
<html lang="en"> <html lang="en">
<body> <body>
<p>yay!</P> <p>The LIS Scholarship Archive (LISSA) is partnering with the Center for Open Science</p>
<p>Stay updated via lissarchive.org or Twitter!</p>
<p>Best,<br/> the LISSA steering committee:</p>
<p><a href="https://vickysteeves.com">Vicky Steeves</a>, Librarian for Research Data Management and Reproducibility, New York University</p>
<p><a href="https://aprilhathcock.wordpress.com/">April Hathcock</a>, Librarian for Scholarly Communications, New York University</p>
<p><a href="http://cecily.info/">Cecily Walker</a>, Web services librarian, Vancouver Public Library</p>
<p><a href="https://www.linkedin.com/in/charlotteroh">Charlotte Roh</a>, Scholarly Communications Librarian, University of San Francisco</p>
<p><a href="https://twitter.com/chealsye">Chealsye Bowley</a>, Community Manager, Ubiquity Press</p>
<p><a href="http://www.meganwacha.info/">Megan Wacha</a>, Scholarly Communications Librarian, City University of NY</p>
<p><a href="https://lisahinchliffe.com/">Lisa Hinchliffe</a>, Professor/Coordinator for Information Literacy Services and Instruction, University of Illinois at Urbana-Champaign</p>
<p><a href="https://micahvandegrift.github.io/">Micah Vandergrift</a>, Director of Digital Scholarship, Florida State University</p>
<p><a href="https://lib.ku.edu/kevin-l-smith">Kevin Smith</a>, Dean of Libraries, University of Kansas</p>
</body> </body>
</html> </html>

148
readme.md
View File

@ -1,147 +1 @@
![Build Status](https://gitlab.com/pages/nikola/badges/master/build.svg) The source code behind lissarchive.org!
---
hope this works...
Example [nikola] website using GitLab Pages.
Learn more about GitLab Pages at https://pages.gitlab.io and the official
documentation https://docs.gitlab.com/ce/user/project/pages/.
---
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)*
- [GitLab CI](#gitlab-ci)
- [Building locally](#building-locally)
- [GitLab User or Group Pages](#gitlab-user-or-group-pages)
- [Did you fork this project?](#did-you-fork-this-project)
- [Troubleshooting](#troubleshooting)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
## GitLab CI
This project's static Pages are built by [GitLab CI][ci], following the steps
defined in [`.gitlab-ci.yml`](.gitlab-ci.yml):
```
image: registry.gitlab.com/paddy-hack/nikola
test:
script:
- nikola build
except:
- master
pages:
script:
- nikola build
artifacts:
paths:
- public
only:
- master
```
This uses the `registry.gitlab.com/paddy-hack/nikola` Docker image,
which provides Nikola with all its extras, to build the site.
## Building locally
To work locally with this project, you can follow the steps below:
1. Fork, clone or download this project
1. [Install][] Nikola
1. Generate the website: `nikola build`
1. Preview your project: `nikola serve`
1. Add content
Read more at Nikola's [documentation][].
Alternatively, you can use the `registry.gitlab.com/paddy-hack/nikola`
Docker image. See the associated project's [README][image-readme] for
more information.
## GitLab User or Group Pages
To use this project as your user/group website, you will need one additional
step: just rename your project to `namespace.gitlab.io`, where `namespace` is
your `username` or `groupname`. This can be done by navigating to your
project's **Settings**.
Read more about [user/group Pages][userpages] and [project Pages][projpages].
## Using a different branch
If you keep code on the `master` branch and want the website on a different one,
for example a `blog` branch, then you must make the corresponding change
on the `pages` job in the `.gitlab-ci.yml` file.
```
only:
- blog
```
## Did you fork this project?
If you forked this project for your own use, please go to your project's
**Settings** and remove the forking relationship, which won't be necessary
unless you want to contribute back to the upstream project.
## Troubleshooting
1. CSS is missing! That means one of two things:
Either that you have set up the CSS URL in your templates incorrectly, or
your static generator has a configuration option that needs to be set explicitly
in order to serve static assets under a relative URL.
1. Building passes but deploy stage fails.
Nikola's default configuration will by default build the site in the `output` directory,
but GitLab expects it in `public`. So you must change
`OUTPUT_FOLDER = "public"` in `conf.py` or deploying will fail.
Alternatively, you can add `mv output public` in the `.gitlab-ci.yml` file
after the `nikola build` line.
If you cloned this project as your starting point, then `conf.py` is already updated
to build in the `public` directory.
1. I get a strange lexer exception
![Build fails](https://i.imgur.com/e5nJVct.png)
You are probably using extensions that require software not included in the `registry.gitlab.com/paddy-hack/nikola` image.
For example, if your site has Ipython/Jupyter posts
(that is, `.ipynb` format via `POSTS` or `PAGES` in `conf.py` )
GitLab build won't be able to compile them, even if you locally can.
The `registry.gitlab.com/paddy-hack/nikola` image includes the `nikola[extras]` but not any
additional software (like `ipython`, `pandoc`, `latex`, or any software you may
have on your local system) that your extensions may require.
The fix is to install any extra software you need before building.
In the case of `.ipynb` support, edit the `.gitlab-ci.yml` file and change
```
pages:
script:
- pip3 install jupyter
- nikola build
```
----
Forked from @sukiletxe
[ci]: https://about.gitlab.com/gitlab-ci/
[nikola]: https://getnikola.com/
[install]: https://getnikola.com/getting-started.html
[documentation]: https://getnikola.com/documentation.html
[userpages]: https://docs.gitlab.com/ce/user/project/pages/introduction.html#user-or-group-pages
[projpages]: https://docs.gitlab.com/ce/user/project/pages/introduction.html#project-pages
[image-readme]: https://gitlab.com/paddy-hack/nikola

View File

@ -1,4 +1,73 @@
/* NAVBAR */ /* -------------------- BODY -------------------- */
navbar navbar-inverse navbar-static-top {
min-height:50%; a:hover, a:focus {
} color: #dc7e4a;
text-decoration: underline;
}
a {
color: #8966a0;
text-decoration: underline;
}
.u-url {
text-decoration: none;
}
/* -------------------- NAVBAR -------------------- */
.navbar-inverse {
background-color: #8966a0;
}
.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
background-color:#dc7e4a;
}
.navbar-inverse .navbar-nav > li > a {
text-decoration: none;
padding-left: 2em;
padding-right: 2em;
font-size:1.2em;
}
.navbar-inverse .navbar-nav > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
color:#dc7e4a;
text-decoration: none;
}
.navbar-inverse .navbar-nav > li > a:hover{
color: #dc7e4a;
}
#logo {
padding-left: 1em;
padding-right: 1em;
}
/* -------------------- BANNER ABOVE NAVBAR -------------------- */
#banner {
background-color: #8966a0;
}
#banner h1 {
font-family: 'Arvo', serif;
font-weight:700;
color: #FFF;
text-align:center;
margin-top:0;
}
#banner h2 {
font-family: 'Quicksand', sans-serif;
font-weight:700;
color: #FFF;
text-align:center;
margin-top:0;
margin-bottom:1em;
}
header #banner { #banner-main {
display: block;
}
}

View File

@ -0,0 +1,106 @@
## -*- coding: utf-8 -*-
<%namespace name="base" file="base_helper.tmpl" import="*" />
<%namespace name="notes" file="annotation_helper.tmpl" import="*" />
${set_locale(lang)}
${base.html_headstart()}
<%block name="extra_head">
### Leave this block alone.
</%block>
${template_hooks['extra_head']()}
</head>
<body>
<a href="#content" class="sr-only sr-only-focusable">${messages("Skip to main content")}</a>
<header id="banner"><br/><h1>The LIS Scholarship Archive</h1><h2>A free, open scholarly platform for library and information science.</h2>
<!-- Menubar -->
<nav class="navbar navbar-inverse">
<div class="container"><!-- This keeps the margins nice -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-navbar" aria-controls="bs-navbar" aria-expanded="false">
<span class="sr-only">${messages("Toggle navigation")}</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="${abs_link(_link("root", None, lang))}">
%if logo_url:
<img src="${logo_url}" alt="${blog_title|h}" id="logo">
%endif
% if show_blog_title:
<span id="blog-title">${blog_title|h}</span>
% endif
</a>
</div><!-- /.navbar-header -->
<div class="collapse navbar-collapse" id="bs-navbar" aria-expanded="false">
<ul class="nav navbar-nav">
${base.html_navigation_links()}
${template_hooks['menu']()}
</ul>
%if search_form:
${search_form}
%endif
<ul class="nav navbar-nav navbar-right">
<%block name="belowtitle">
%if len(translations) > 1:
<li>${base.html_translations()}</li>
%endif
</%block>
% if show_sourcelink:
<%block name="sourcelink"></%block>
%endif
${template_hooks['menu_alt']()}
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container -->
</nav>
<!-- End of Menubar -->
</header><!-- header role="banner" -->
<div class="container" id="content" role="main">
<div class="body-content">
<!--Body content-->
<div class="row">
${template_hooks['page_header']()}
<%block name="content"></%block>
</div>
<!--End of body content-->
<footer id="footer">
${content_footer}
${template_hooks['page_footer']()}
</footer><br/>
</div>
</div>
${base.late_load_js()}
<script>$('a.image-reference:not(.islink) img:not(.islink)').parent().colorbox({rel:"gal",maxWidth:"100%",maxHeight:"100%",scalePhotos:true});</script>
<!-- fancy dates -->
<script>
moment.locale("${momentjs_locales[lang]}");
fancydates(${date_fanciness}, ${js_date_format});
</script>
<!-- end fancy dates -->
<%block name="extra_js"></%block>
% if annotations and post and not post.meta('noannotations'):
${notes.code()}
% elif not annotations and post and post.meta('annotations'):
${notes.code()}
% endif
${body_end}
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-86255717-1', 'auto');
ga('send', 'pageview');
</script>
${template_hooks['body_end']()}
</body>
</html>