Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • kwarc/kwarc.info/www
  • richardmarcus/www
2 results
Show changes
Commits on Source (1161)
Showing with 652 additions and 277 deletions
......@@ -50,3 +50,8 @@ node_modules
*.toc
*.out
*.nav
auto
# bundle
.bundle
vendor
image: kwarc/jekyll-website-deployer
stages:
- deploy
before_script:
# setup locales
- echo "en_US UTF-8" > /etc/locale.gen
- which locale-gen || ( apt-get update -y && apt-get install locales )
- export LANG=en_US.UTF-8
- export LANGUAGE=en_US:en
- export LC_ALL=en_US.UTF-8
# install ssh-agent, unless already there
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
# install rsync, unless already there
- 'which rsync || ( apt-get update -y && apt-get install rsync -y )'
# install bundler, unless already there
- 'which bundle || ( gem install bundler )'
# and install the bundle
- bundle install
# setup ssh agent with the private key
- eval $(ssh-agent -s)
- ssh-add <(echo "$SSH_PRIVATE_KEY")
- mkdir -p ~/.ssh
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
deploy_staging:
stage: deploy
script:
# build the website
- bundle exec jekyll build -d _site
# copy over all the files into the deployment folder
- cd _site && rsync -rv -e "ssh -p $SSH_DEPLOY_PORT" --checksum --exclude='Gemfile' --delete-excluded --delete ./ root@deploy.kwarc.info:/root/data --delete
only:
- master
\ No newline at end of file
kwarc.info
source 'https://rubygems.org'
gem 'github-pages', group: :jekyll_plugins
gem "sprockets", "~> 3.7"
gem "webrick", "~> 1.7"
# Fix ffi version to fix the following bug:
# ffi-1.17.0-x86_64-linux-musl requires rubygems version >= 3.3.22, which is
# incompatible with the current version, 2.7.6.2
gem "ffi", "< 1.17.0"
# Repository holding the sources of the KWARC.info website
<b>
Note for authors: When editing some text, please do not hard wrap existing lines.
This plays very bad with diffs, in particular an entire paragraph shows up as changed even though it might just be a single line.
Furthermore, this introduces lots and lots of merge conflicts
Markdown (similar to TeX) only inserts actual line breaks when making to link breaks in the source file.
Thus the most readable and diff-compatible option is to write one sentence per line and use soft-wrapping on top in editors.
This is called [semantic linefeeds](http://rhodesmill.org/brandon/2012/one-sentence-per-line/).
</b>
## About
......@@ -17,19 +15,38 @@ This can be done online by clicking on `Edit this page` in the navigation menu.
See the above links for details.
* `_config.yml`: main configuration page
* `_post/*.md`: sources of the news, blog posts and activities
* `_data/*.yml`: YAML database from which certain pages are automatically generated
* `_includes/*`: reusable chunks of web pages, like the nav bar
* `_layouts/*`: local style files
* `_includes/*`: reusable chunks of web pages, like the nav bar
* `_post/*.md`: sources of the news, blog posts and activities
* `news/*`: the KWARC news are generated here.
* `people/*.md`: the KWARC home pages
* `projects/*.md`: the KWARC project descriptions
* `public/*`: all static files (images, js, css, etc)
* `project/` -- people -- event_activites: folders used to generate menu pages (as set in `_config.yml`)
* `_tagpages` : the tag pages, each tag gets an almost empty md file so that the tag page gets generated by jekyll
* `public/*.md`: descriptions of the research areas
* `systems/*.md`: descriptions of the KWARC sytems
* `courses/*.md`: KWARC courses (this may be obsoleted by univis)
## Performance
This jekyll page is tuned in order to build as fast as possible.
It also makes use of the [jekyll-compress-html](https://github.com/penibelst/jekyll-compress-html) layout, to be efficiently transferable over network.
During the evolution of the website, the build time has changed dramatically.
It used to take around 5 minutes to build, with a few optimizations it now only takes up 15 seconds.
The biggest slowdowns were:
* unneeded iterations
* iterations within iterations (usually not required, if one thinks carefully)
* `if` conditions within a loop, instead of a `where` clause
* full iteration to extract a single item (use `first` instead)
* repeated sorting of `site.pages` by the same `menu_order` key (instead sort this once and use a global variable)
* multiple chained `if`s instead of a single `and`
* unneeded variable assignments (these seem to take a lot of time in liquid)
## How to use Jekyll to test/build this website
This is a [*static website*](http://en.wikipedia.org/wiki/Static_web_page) automatically generated with [Jekyll](http://jekyllrb.com/) by [GitHub Pages](http://pages.github.com/).
### Editing pages online with GitHub
### Editing pages online with GitHub / GitLab
You can edit any page by following the `Edit this page` link in the Quick links nav bar.
Alternatively, you can directly navigate to the corresponding `.md` (Markdown) file in GitHub.
......@@ -50,6 +67,60 @@ Other reasons why GitHub's preview may not correspond to the final results are:
- Use of [Liquid templates](https://github.com/Shopify/liquid/wiki/Liquid-for-Designers) in the source.
- Use of special purpose markup, HTML, and scripts, such as mathematical excerpts written in [MathJax](http://mathjax.org/).
### Editing the menu
The menu of the page is defined in the ``_config.yml`` file.
It consists of a set of items, that are defined by the following keys:
* `url` - The (internal or external) url to the page. If internal, must be relative to the root directory.
* `active` - URL to a folder under which the item should automatically be expanded (if applicable).
* `folder` - Instead of using `url`, the `folder` can be used to create a submenu pointing to a specific folder.
* `items` - A list of items for submenus.
* `external` - If set to `true`, assumes that `url` is external to the page.
* `menu_title` and `title` - Title to be used in the menu item.
* `menu_hidden` - If set to `true`, hide the item from the menu.
* `menu_order` - By default, menus are ordered in the order they are listed in the menu. This key can be used to override the order. Values must be non-negative integers between 0 and 10000 (inclusive). The default value is 100.
**Singular items** can be inserted as following:
```yaml
# A single link to the /news/ page.
- menu_title: 'News'
url: '/news/'
# An external link to the bibliography page
- menu_title: 'Bibliography'
menu_external: true
url: 'https://kwarc.github.io/bibs/'
```
**Submenus**. The menu allows (up to) one level of submenus. There are three such cases:
1. An item specifies the `folder` key. In this case all pages in the given folder are automatically added. The frontmatter is used for the specification. Items with the `hidden` key in frontmatter set to true are automatically excluded.
2. An item specifies the `items` key. Here the items are used accordingly.
3. An item specifies both the `folder` and `items` keys. The items for both cases are automatically merged.
Because submenus are not clickable, the `url` for submenus is ignored when building the menu.
Furthermore, if these are mixed between folders and static items, the folders will always show first.
```yaml
# A listing of the folder submenu
- menu_title: 'People'
folder: '/people/'
# A submenu of university links
- menu_title: 'FAU links'
items:
- menu_title: 'Overview'
external: true
url: 'https://fau.de/'
- menu_title: 'CS department'
external: true
url: 'https://cs.fau.de/'
```
A submenu is automatically expanded if any of the submenu items inside it are clicked.
Alternatively, if the menu item contains an `active` key, it is checked as well.
Furthermore, a menu may have the `url` key. If it is given, upon clicking the menu item, the given (internal) url is opened instead of opening the menu.
### Working locally
If you want to do more than the occasional editing, you'll soon realise GitHub's editor and preview are too limited.
......@@ -65,20 +136,20 @@ It is recommended to install the [GitHub pages gem](https://github.com/github/pa
If you already have Ruby, the install part should be as easy as
~~~
gem install github-pages -V
gem install bundler
bundle install
~~~
Note that you will need Ruby headers (`ruby-dev` package on Ubuntu) in order to compile C dependencies.
in the local clone of this repository.
On OS X, you can just type `sudo gem install github-pages -V`.
Note that you will need Ruby headers (`ruby-dev` package on Ubuntu) in order to compile C dependencies.
Now you can `cd` into your local clone of the repository and launch the compilation by
You can then run the development server by:
~~~
jekyll serve -w -b''
bundle exec jekyll serve
~~~
Your site will be generated in a `_site` sub-directory, and served live at <http://localhost:4000/>.
Any changes to the sources will trigger an automatic recompilation!
Have fun!
# Permalinks
permalink: pretty
permalink: /news/:year/:month/:day/:title/
# Setup
title: KWARC
tagline: 'Knowledge Adaptation and Reasoning for Content '
description: 'The Research Group of the Professorship for Knowledge Representation and Processing at FAU Erlangen-Nürnberg (previously Jacobs University). '
description: 'The Research Group of the Professorship for Knowledge Representation and Processing at <a href="https://fau.de" class="black-text">FAU Erlangen-Nürnberg</a> - <a href="https://cs.fau.de" class="black-text">Computer Science</a>. '
url: https://kwarc.info
baseurl: ''
paginate: 10
paginate_path: "/news/page:num/"
blog_path: "/news/"
future: True
gems:
- jemoji
encoding: utf-8
plugins:
- jekyll-paginate
- jekyll-github-metadata
- jekyll-redirect-from
exclude: ['public/*.md', 'public/*.html', '*/README.md', '*.synctex.gz', '*.aux', '*.nav', '*.out', '*.snm', '*.tex', '*.log', '*.toc']
exclude:
- 'run' # because Michael
- 'public/materialize/materialize-src/*'
- 'public/*.md'
- 'public/*.html'
- '*/README.md'
# About/contact
author:
name: 'The KWARC Group'
url: http://kwarc.info
email: kohlhase@kwarc.info
# twitter: opendreamkit
email: michael.kohlhase@fau.de
semester: SS17
collections:
tagpages:
output: true
permalink: /tag/:path
semesters:
former:
- Fall03
- Spring04
- Fall04
- Spring05
- Fall04
- Spring06
- Fall06
- Spring07
- Fall07
- Spring08
- Fall08
- Spring09
- Fall09
- Spring10
- Fall10
- Spring11
- Fall11
- Spring12
- Fall12
- Spring13
- Fall13
- Intersession14
- Spring14
- Fall14
- Spring15
- Fall15
- Spring16
- Fall16
- Spring17
- WS16/17
- SS17
- WS17/18
- SS18
- WS18/19
- SS19
- WS19/20
- SS20
- WS20/21
- SS21
- WS21/22
- SS22
- WS22/23
- SS23
current: WS24/25
upcoming: SS25
# Custom vars
version: 0.3.0
repository: kwarc/website
repository: https://gl.kwarc.info/kwarc/kwarc.info/www
tagfolder: tag
materialize: materialize
material-icons: material-icons
jquery: jquery-3.2.1
fontawesome: font-awesome-4.7.0
# Menu config
menu:
- title: 'News'
url: '/news/'
active: '/news/'
- title: 'People'
folder: 'people'
active: '/people/'
url: '/people/'
items:
- title: 'Former Members'
url: '/people/former/'
- title: 'Research'
url: '/research/'
folder: 'research'
items:
- title: 'Bibliography'
external: true
url: 'https://kwarc.github.io/bibs/'
- title: 'Systems'
folder: 'systems'
active: '/systems/'
url: '/systems/'
items:
- title: 'Orphaned Systems'
url: '/systems/orphans/'
- title: 'Historic Systems'
url: '/systems/historic/'
- title: 'Projects'
folder: 'projects'
- title: '4Students'
folder: 'students'
- title: 'Teaching'
folder: 'teaching'
active: '/projects/'
url: '/projects/'
items:
- title: 'Completed Projects'
url: '/projects/completed/'
- title: 'Courses & Theses'
url: '/courses/'
active: '/courses/'
items:
- title: 'Overview (D)'
url: '/courses/overview/'
- title: 'Former Courses'
url: '/courses/former/'
- title: 'Upcoming Courses'
url: '/courses/upcoming/'
- title: 'Thesis Topics & Projects'
url: '/courses/topics/'
- title: 'Completed Theses'
url: '/courses/theses/'
- title: 'Events'
url: '/events/'
active: '/events/'
- title: 'Hiring'
url: '/hiring/'
active: '/hiring/'
- title: 'Contact'
url: '/contact/'
# Settings for compressing everything
compress_html:
clippings: []
comments: ["<!-- ", " -->"]
# roles for people and their name
roles:
-
id: faculty
name: Faculty
-
id: postdoc
name: Postdoc
-
id: phd-student
name: "Phd Student"
-
id: master-student
name: "Master Student"
-
id: bachelor-student
name: "Bachelor Student"
-
id: support-staff
name: "Technical & Support Staff"
# default values -- the one for all **must** be first
defaults:
-
scope:
path: "" # an empty string here means all files in the project
path: ""
values:
hidden: false
\ No newline at end of file
menu_hidden: false
menu_order: 100
external: false
{% comment %}
Renders a link to a single course. Expects 'item' as a parameter.
{% endcomment %}
<li class="collection-item">
<a href="{{include.item.url}}" class="title">{{include.item.title}}</a>
</li>
\ No newline at end of file
{% comment %}
Properly formats the date in yyyy[-mm] format.
Expects 'date' to be formatted as an argument.
{% endcomment %}
{% assign dateparts = include.date | split: "-" %}
{% assign year = dateparts[0] %}
{% assign month = dateparts[1] %}
{% if month == '01' %}
January
{% elsif month == '02' %}
February
{% elsif month == '03' %}
March
{% elsif month == '04' %}
April
{% elsif month == '05' %}
May
{% elsif month == '06' %}
June
{% elsif month == '07' %}
July
{% elsif month == '08' %}
August
{% elsif month == '09' %}
September
{% elsif month == '10' %}
October
{% elsif month == '11' %}
November
{% elsif month == '12' %}
December
{% endif %}
{{year}}
\ No newline at end of file
<footer class="page-footer">
<div class="container">
<div class="row">
<div class="col l6 s12">
{{ site.description }}
</div>
<div class="col l2 s12">
<a href="https://fau.de/" title="fau">
FAU Erlangen-Nürnberg
</a>
<br />
<a href="https://cs.fau.de" title="email">
Computer Science
</a>
<div class="col l8 s12">
<h5 class="white-text">About</h5>
<p class="grey-text text-lighten-4">
{{ site.description }}
</p>
</div>
<div class="col l2 s12">
<a href="https://github.com/{{ site.github.owner_name }}" title="github">
<h5 class="white-text">Updates</h5>
<a href="https://github.com/KWARC" title="GitHub" class="waves-effect waves-teal btn-flat">
<i class="fa fa-github" aria-hidden="true"></i> GitHub
</a>
<br />
<a href="mailto:{{ site.author.email }}" title="email">
<i class="fa fa-envelope" aria-hidden="true"></i> E-Mail
</a>
<br />
<a href="{{ site.baseurl }}/atom.xml" title="feed">
<a href="{{site.baseurl}}/atom.xml" title="Atom Feed" class="waves-effect waves-teal btn-flat">
<i class="fa fa-rss" aria-hidden="true"></i> Atom Feed
</a>
</div>
<div class="col l2 s12">
<a href="{{ site.github.zip_url | replace: 'zipball','edit' }}/{% if page.source %}{{ page.source }}{% else %}{{ page.path }}{% endif %}" title="edit">
<div class="col l2 s12">
<h5 class="white-text">Editing</h5>
<a href="{{site.repository}}/-/edit/master/{% if page.source %}{{ page.source }}{% else %}{{ page.path }}{% endif %}" title="Edit this page" class="waves-effect waves-teal btn-flat">
<i class="fa fa-pencil-square-o" aria-hidden="true"></i> Edit this page
</a>
<br />
<a href="https://gl.kwarc.info/kwarc/website/#repository-holding-the-sources-of-the-KWARC.info-website" title="howto">
How to edit
<a href="{{site.repository}}/#repository-holding-the-sources-of-the-kwarcinfo-website"
title="How to edit" class="waves-effect waves-teal btn-flat">
<i class="fa fa-question-circle" aria-hidden="true"></i> How to edit
</a>
</div>
</div>
</div>
<div class="footer-copyright">
<div class="container">
&copy; 2017 The KWARC Group
&copy; {{ site.time | date: '%Y' }} The KWARC Group
<span class="right legal-links">
<script src="https://privacy.kwarc.info/legal.js"></script>
</span>
</div>
</div>
</footer>
\ No newline at end of file
</footer>
......@@ -2,6 +2,9 @@
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="date" content="{{ site.time }}" scheme="YYYY-MM-DD HH:MM:SS TTTT">
<meta name='revision' content='{{ site.github.build_revision }}'>
<title>
{% if page.title == "Home" %}
......@@ -11,9 +14,9 @@
{% endif %}
</title>
<!--Import Google Icon Font -->
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<!-- Material CSS font -->
<link type="text/css" rel="stylesheet" href="{{ site.baseurl }}/public/{{ site.material-icons }}/font.css">
<!-- Import materialize -->
<link type="text/css" rel="stylesheet" href="{{ site.baseurl }}/public/{{ site.materialize }}/css/materialize.min.css" media="screen,projection"/>
......
<!-- The page title -->
<nav class="top-nav">
<nav class="top-nav nav-extended">
<div class="container">
<div class="nav-wrapper">
<a class="page-title">
{% if page.title == "Home" %}{{ site.title }}{% else %}{{ page.title }}{% endif %}
{% if page.url == "/" %}{{ site.title }}{% else %}{{ page.title }}{% endif %}
</a>
</div>
</div>
......@@ -19,50 +19,18 @@
<ul id="kwarc-nav" class="side-nav fixed">
<li>
<div class="userView">
<a href="{{ site.baseurl }}/"><img src="{{ site.baseurl }}/public/kwarc_logo.svg"></a>
<a href="{{ site.baseurl }}/">
<img src="{{ site.baseurl }}/public/kwarc_logo.svg" width="180px" height="180px" />
<img src="{{ site.baseurl }}/public/fau_logo_hoch.svg" width="180px" style="position: relative; left: 30px; "/>
</a>
</div>
</li>
{% assign url_parts = page.url | split: '/' %}
{% assign base_url = url_parts | last %}
{% assign base_folder = url_parts[1] %}
{% assign sorted_pages = site.pages | sort:"menu_order" %}
<li class="no-padding">
<ul class="collapsible collapsible-accordion">
{% for node in site.menu %}
<li class="bold">
<a class="collapsible-header {% if base_folder == node.folder %}active{% endif %}">{{ node.title }}</a>
<div class="collapsible-body">
<ul>
{% for sub in sorted_pages %}
{% assign sub_parts = sub.url | split: '/' %}
{% assign sub_url = sub_parts | last %}
{% assign sub_folder = sub_parts[1] %}
{% if sub_folder == node.folder %}
{% if sub.hidden == false %}
<li {% if sub_url == base_url %}class="active"{% endif %}>
<a href="{{ sub.url }}">
{% if sub.menu_title %}
{{ sub.menu_title }}
{% else %}
{{ sub.title }}
{% endif %}
</a>
</li>
{% endif%}
{% endif %}
{% endfor %}
</ul>
</div>
</li>
{% endfor %}
</ul>
</li>
<li><div class="divider"></div></li>
<li><a class="waves-effect" href="{{ site.baseurl }}/news/">News</a></li>
<li><a class="waves-effect" href="{{ site.baseurl }}/contact/">Contact</a></li>
</ul>
\ No newline at end of file
{% for item in site.menu | sort:"menu_order" %}
{% if (item.folder or item.items) %}
{% include menu_sub.html item=item %}
{% else %}
{% include menu_single.html item=item %}
{% endif %}
{% endfor %}
</ul>
{% comment %}
This page creates a single (non-submenu) item. It expects `item` as a variable.
{% endcomment %}
{% assign menu_active = false %}
{% assign base_folder = page.url | split: '/' %}
{% assign base_folder = base_folder[1] %}
{% assign represents = include.item.active | split: '/' %}
{% assign represents = represents[1] %}
{% if represents %}
{% if base_folder == represents %}
{% assign menu_active = true %}
{% endif %}
{% endif %}
{% if page.url == include.item.url %}
{% assign menu_active = true %}
{% endif %}
{% unless include.item.menu_hidden %}
<li
{% if menu_active %}class="active"{% endif %}
{% if page.url == include.item.url %}class="active"{% endif %}
>
{% if include.item.external %}
<a href="{{ include.item.url }}" target="_blank">
{% else %}
<a href="{{ site.baseurl }}{{ include.item.url }}">
{% endif %}
{% if include.item.menu_title %}
{{ include.item.menu_title }}
{% else %}
{{ include.item.title }}
{% endif %}
</a>
</li>
{% endunless %}
\ No newline at end of file
{% comment %}
This page creates a submenu item.
It expects an appropriate `item` as argument.
It also expects the global 'sorted_pages' argument.
{% endcomment %}
{% assign item = include.item %}
{% unless item.menu_hidden %}
{% assign base_folder = page.url | split: '/' %}
{% assign base_folder = base_folder[1] %}
{% assign represents = item.active | split: '/' %}
{% assign represents = represents[1] %}
{% assign menu_active = false %}
{% if base_folder %}
{% if item.folder %}
{% if base_folder == item.folder %}
{% assign menu_active = true %}
{% endif %}
{% endif %}
{% endif %}
{% if represents %}
{% if base_folder == represents %}
{% assign menu_active = true %}
{% endif %}
{% endif %}
{% unless menu_active %}
{% for it in item.items %}
{% if page.url == it.url %}
{% unless it.external %}
{% assign menu_active = true %}
{% endunless %}
{% endif %}
{% endfor %}
{% endunless %}
<!-- Find the current folder -->
{% assign item_folder = item.folder %}
<li class="no-padding">
<ul class="collapsible collapsible-accordion">
<li class="bold">
<a class="collapsible-header {% if menu_active %}active{% endif %}" {% if item.url %}href="{{item.url}}"{%endif %}>
{% if item.menu_title %}
{{ item.menu_title }}
{% else %}
{{ item.title }}
{% endif %}
</a>
<div class="collapsible-body">
<ul class='nobullets'>
<!-- If we have folders, iterate over them -->
{% if item.folder %}
{% for item in sorted_pages %}
{% assign sub_components = item.url | split: '/' %}
{% unless item.hidden %}
{% if sub_components[1] == item_folder %}
{% include menu_single.html item=item %}
{% endif %}
{% endunless %}
{% endfor %}
{% endif %}
<!-- if we have items, iterate over them -->
{% if item.items %}
{% for item in item.items %}
{% include menu_single.html item=item %}
{% endfor %}
{% endif %}
</ul>
</div>
</li>
</ul>
</li>
{% endunless %}
<!-- Navigation -->
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container" >
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header page-scroll">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"/>
<span class="icon-bar"/>
<span class="icon-bar"/>
</button>
<a class="navbar-brand" href="{{ site.baseurl }}/">KWARC</a>
</div>
{% assign url_parts = page.url | split: '/' %}
{% assign base_url = url_parts | last %}
{% assign sorted_pages = site.pages | sort:"menu_order" %}
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-left">
{% for node in site.menu %}
<li class="dropdown" >
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{{ node.title }}<span class="caret"></span></a>
<ul class="dropdown-menu" >
{% for sub in sorted_pages %}
{% assign sub_parts = sub.url | split: '/' %}
{% assign sub_url = sub_parts | last %}
{% assign sub_folder = sub_parts[1] %}
{% if sub_folder == node.folder %}
<li {% if sub_url == base_url %} class="active" {% endif %}>
<a href="{{ sub.url }}">
{% if sub.menu_title %}
{{ sub.menu_title }}
{% else %}
{{ sub.title }}
{% endif %}
</a>
</li>
{% endif %}
{% endfor %}
</ul>
</li>
{% endfor %}
<li><a href="{{ site.baseurl }}/news/">News</a></li>
</ul>
<ul class="nav navbar-nav navbar-right" >
<li><a href="/contact/">Contact</a></li>
<li>
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Quick links<span class="caret"></span></a>
<ul class="dropdown-menu" >
<li><a href="{{ site.github.zip_url | replace: 'zipball','edit' }}/{% if page.source %}{{ page.source }}{% else %}{{ page.path }}{% endif %}" >Edit this page</a></li>
<li><a href="https://gl.kwarc.info/kwarc/website/#repository-holding-the-sources-of-the-KWARC.info-website">How to edit</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<nav aria-label="Page navigation">
<ul class="pagination">
{% comment %}
Renders a pagination element.
Expects the default jekyll 'paginator' as argument.
{% endcomment %}
{% assign paginator = paginator %}
<ul class="pagination">
<!-- The previous page -->
{% if paginator.previous_page %}
<li>
<a href="{{ site.baseurl }}{{paginator.previous_page_path}}" aria-label="Previous">
<span aria-hidden="true">&laquo;</span>
</a>
</li>
<li class="waves-effect">
<a href="{{ site.baseurl }}{{paginator.previous_page_path}}">
<i class="material-icons">chevron_left</i>
</a>
</li>
{% else %}
<li class="disabled" >
<a href="#" aria-label="Previous">
<span aria-hidden="true">&laquo;</span>
</a>
</li>
{% endif %}
{% if paginator.page > 4 %}
<li><a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: 'page:num/', '' }}">1</a></li>
{% if paginator.page > 5 %}
<li class="disabled" ><a href="#" >...</a></li>
{% endif %}
<li class="disabled">
<a href="#!">
<i class="material-icons">chevron_left</i>
</a>
</li>
{% endif %}
{% assign min_index = paginator.page | minus:3 %}
{% assign max_index = paginator.page | plus:3 %}
{% for p in (min_index..max_index) %}
{% if p > 0 and p <= paginator.total_pages %}
<li {% if p == paginator.page %} class="active" {% endif %}>
{% if p == 1 %}
<a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: 'page:num/', '' }}">1</a>
{% else %}
<a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: ':num', p }}">{{ p }}</a>
{% endif %}
<!-- Show all the pages -->
{% for page in (1..paginator.total_pages) %}
{% if page == paginator.page %}
<li class='active'>
<a href="#!">
{{page}}
</a>
</li>
{% elsif page == 1 %}
<li class="waves-effect">
<a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}">
{{page}}
</a>
</li>
{% else %}
<li class="waves-effect">
<a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: ':num', page }}">
{{page}}
</a>
</li>
{% endif %}
{% endfor %}
{% if max_index < paginator.total_pages %}
{% assign max_indexp = max_index | plus:1 %}
{% if max_indexp < paginator.total_pages %}
<li class="disabled" ><a href="#" >...</a></li>
{% endif %}
<li><a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: ':num', paginator.total_pages }}">{{ paginator.total_pages }}</a></li>
{% endif %}
<!-- The next page -->
{% if paginator.next_page %}
<li>
<a href="{{ site.baseurl }}{{ paginator.next_page_path }}" aria-label="Next">
<span aria-hidden="true">&raquo;</span>
</a>
</li>
<li class="waves-effect">
<a href="{{ site.baseurl }}{{paginator.next_page_path}}">
<i class="material-icons">chevron_right</i>
</a>
</li>
{% else %}
<li class="disabled" >
<a href="#" aria-label="Next">
<span aria-hidden="true">&raquo;</span>
</a>
</li>
<li class="disabled">
<a href="#!">
<i class="material-icons">chevron_right</i>
</a>
</li>
{% endif %}
</ul>
</nav>
</ul>
\ No newline at end of file
{% comment %}
This page creates a single 'chip' for linking to a person.
It expects the username of the person as the 'person' variable
{% endcomment %}
{% capture purl %}/people/{{include.person}}/{% endcapture %}
{% assign pp = site.pages | where: "url", purl | first %}
{% if pp %}
<a href="{{ site.baseurl }}{{purl}}">
<div class="chip">
<img src="{{ site.baseurl }}/{{pp.pic}}"/>
{{pp.fullname}}
</div>
</a>
{% else %}
<div class="chip">
{{include.person}}
</div>
{% endif %}
{% comment %}
Generates a list of people.
Expects 'people' as an argument, representing the list of people to show.
{% endcomment %}
{% assign people = include.people %}
{% for role in site.roles %}
{% assign rollers = people | where: "role", role.id %}
{% if rollers.size > 0 %}
<ul class="collection with-header">
<li class="collection-header">
<h5>{{role.name}}(s)</h5></li>
{% for person in rollers %}
<li class="collection-item avatar">
{% if person.pic %}<img src="/{{person.pic}}" alt="" class="circle"/>{% endif %}
<a href="{{person.url}}" class="title">{{person.fullname}}</a>
<p>
{% if person.start_date %}
{% unless person.end_date %}
KWARCie since
{% endunless %}
{% include date.html date=person.start_date %}
{% if person.end_date %}
&nbsp;-&nbsp;
{% include date.html date=person.end_date %}
{% endif %}
{% endif %}
</p>
</li>
{% endfor %}
</ul>
{% endif %}
{% endfor %}
{% comment %}
Generates a link to a single post.
Expects the page representing the post as a 'post' variable.
{% endcomment %}
<div class="post-link">
<h3 class="post-title">
<a href="{{ post.url }}">
{{ post.title }} {{ post.subtitle }}
</a>
</h3>
<p class="post-meta" >
{% assign firsttag = post.tags | first %}
{% assign tmp_list = site.tagpages | where:"tag", firsttag %}
{% assign type = tmp_list | first %}
<span class="post-type">{{ type.title }} by {{post.author}}</span> -
{% if post.location %}<span class="post-location">{{post.location}}</span> - {% endif %}
<span class="post-date">{{ post.date | date_to_string }}</span>
</p>
</div>
<li class="collection-item">
<a href="{{include.post.url}}" class="title">
{{include.post.title}} {{include.post.subtitle}}
</a>
<div>
{% include post_meta.html post=include.post %}
</div>
</li>
\ No newline at end of file
{% comment %}
Shows meta information about a post.
Expects the 'post' to show as an argument.
{% endcomment %}
by
{% include people_chip.html person=include.post.author %}
on
<div class="chip">
{% if include.post.date %}
{{ include.post.date | date_to_string }}
{% else %}
There is no date
{% endif %}
</div>
{% if include.post.location %}
at
<div class="chip">
{{include.post.location}}
</div>
{% endif %}
in
{% for tag in include.post.tags %}
<div class="chip">
{{tag}}
</div>
{% endfor %}
---
layout: page
title: Project Activites
alltags: True
menu_order: 1
---
{% comment %}
Project activities are generated through the /_posts/ folder
{% endcomment %}
<h2>By tag</h2>
{% assign with_post_numbers = true %}
{% include tags_module.html %}
<div class="tagcloud" >
<span class="tag" ><a class="btn btn-default" href="{{ site.blog_path}}">All activites <span class="badge">{{ site.posts.size }}</span></a></span>
{{ tagscontent }}
</div>
<h2>Most recent activites</h2>
{% for post in site.posts %}
{% if forloop.index < 5 %}
{% include post_link.html %}
{% endif %}
{% endfor %}
<a href="{{ site.blog_path}}">See all</a>