1
<html xmlns="http://www.w3.org/1999/xhtml"
2
xmlns:py="http://genshi.edgewall.org/"
3
xmlns:xi="http://www.w3.org/2001/XInclude"
5
<py:match path="head[@status!='done']" once="true">
7
<title py:with="title = list(select('title/text()'))">
8
<py:if test="title">${title} - </py:if>IVLE
11
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
13
<script py:if="not publicmode and write_javascript_settings" type="text/javascript">
14
root_dir = "${root_dir}";
15
public_host = "${public_host}";
16
svn_base = "${svn_base}";
17
username = "${login}";
20
<link py:if="favicon" rel="shortcut icon" href="${favicon}" />
22
<py:for each="style in styles">
23
<link rel="stylesheet" type="text/css" href="${style}" />
26
<py:for each="script in scripts">
27
<script type="text/javascript" src="${script}"></script>
30
<!-- Plugin JavaScript to be run on page load -->
31
<script type="text/javascript">
32
<py:for each="init_script in scripts_init">
33
$(document).ready(${init_script});
36
${select('*[local-name()!="title"]')}
39
<py:match path="body[@status!='done']" once="true">
42
<ul id="ivle_breadcrumbs">
43
<li class="breadcrumb crumbmenu">
45
<img src="${title_img}" alt="Informatics Virtual Learning Environment" />
47
<ul py:if="logged_in">
48
<li py:for="app in apps_in_tabs">
49
<a py:attrs="{'style': 'background: url(%s) no-repeat; padding-left: 30px' % app['icon_url']} if app['has_icon'] else {}" href="${app['path']}" title="${app['desc']}">${app['name']}</a>
53
<py:for each="ancestor in ancestry" py:with="thiscrumb=crumb(ancestor)">
54
<li py:if="thiscrumb" py:attrs="{True:{'class':'crumbmenu'}, False: None}[hasattr(thiscrumb, 'menu')]">
55
<py:choose test="getattr(thiscrumb, 'url', None)">
57
<span>${thiscrumb.text}</span>
60
<a href="${thiscrumb.url}">
65
<ul py:if="hasattr(thiscrumb, 'menu')">
66
<li py:for="item in thiscrumb.menu"><a href="${thiscrumb.menu[item]}">${item}</a></li>
70
<li py:for="thiscrumb in extra_breadcrumbs">
71
<py:choose test="getattr(thiscrumb, 'url', None)">
73
<span>${thiscrumb.text}</span>
76
<a href="${thiscrumb.url}">
81
<ul py:if="hasattr(thiscrumb, 'menu')">
82
<li py:for="item in thiscrumb.menu"><a href="${thiscrumb.menu[item]}">${item}</a></li>
86
<div id="ivleheader_text">
88
<p py:when="publicmode" class="userhello">Running in public mode.</p>
89
<p py:when="logged_in" class="userhello">
90
<span id="usernick">${nick}</span>
91
(<span class="username">${login}</span>) |
92
<a href="/~${login}/+settings">Settings</a> |
94
<a py:when="defined('help_path')" href="/+help/${help_path}">Help</a>
95
<a py:otherwise="" href="/+help/">Help</a>
97
<a href="/+logout">Log out</a>
99
<p py:otherwise="" class="userhello">Not logged in.</p>
107
<div id="ivleoverlays">
108
<py:for each="overlay in overlays">