~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to ivle/webapp/base/ivle-headings.html

ivle.webapp.testing: Add, with fake request and user.
ivle.webapp.base.test: Add! Test the JSONRESTView, using the new mocks.

Show diffs side-by-side

added added

removed removed

Lines of Context:
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"
4
 
      py:strip="">
5
 
  <py:match path="head[@status!='done']" once="true">
6
 
    <head>
7
 
      <title py:with="title = list(select('title/text()'))">
8
 
        <py:if test="title">${title} - </py:if>IVLE
9
 
      </title>
10
 
 
11
 
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
12
 
 
13
 
      <script py:if="not publicmode and write_javascript_settings" type="text/javascript">
14
 
        root_dir = "${root_dir}";
15
 
        public_host = "${public_host}";
16
 
        username = "${login}";
17
 
      </script>
18
 
 
19
 
      <link py:if="favicon" rel="shortcut icon" href="${favicon}" />
20
 
 
21
 
      <py:for each="style in styles">
22
 
        <link rel="stylesheet" type="text/css" href="${style}" />
23
 
      </py:for>
24
 
 
25
 
      <py:for each="script in scripts">
26
 
        <script type="text/javascript" src="${script}"></script>
27
 
      </py:for>
28
 
 
29
 
      <!-- Plugin JavaScript to be run on page load -->
30
 
      <script type="text/javascript">
31
 
        <py:for each="init_script in scripts_init">
32
 
          $(document).ready(${init_script});
33
 
        </py:for>
34
 
      </script>
35
 
      ${select('*[local-name()!="title"]')}
36
 
    </head>
37
 
  </py:match>    
38
 
  <py:match path="body[@status!='done']" once="true">
39
 
    <body>
40
 
      <div id="ivleheader">
41
 
        <h1>
42
 
          <a href="/">
43
 
            <img src="${title_img}" alt="Informatics Virtual Learning Environment" />
44
 
          </a>
45
 
        </h1>
46
 
        <div id="ivleheader_text">
47
 
          <py:choose>
48
 
            <p py:when="publicmode" class="userhello">Running in public mode.</p>
49
 
            <p py:when="logged_in" class="userhello">
50
 
              <span id="usernick">${nick}</span>
51
 
              (<span class="username">${login}</span>) |
52
 
              <a href="/~${login}/+settings">Settings</a> |
53
 
              <py:choose>
54
 
                <a py:when="defined('help_path')" href="/+help/${help_path}">Help</a>
55
 
                <a py:otherwise="" href="/+help/">Help</a>
56
 
              |</py:choose>
57
 
              <a href="/+logout">Log out</a>
58
 
            </p>
59
 
            <p py:otherwise="" class="userhello">Not logged in.</p>
60
 
          </py:choose>
61
 
        </div>
62
 
        <div py:if="logged_in" id="ivleheader_tabs">
63
 
          <ul id="apptabs">
64
 
            <py:for each="app in apps_in_tabs">
65
 
              <li py:if="app['this_app']" class="thisapp"><a href="${app['path']}" title="${app['desc']}"><span><py:if test="app['has_icon']"><img src="${app['icon_url']}" alt="" /> </py:if>${app['name']}</span></a></li>
66
 
              <li py:if="not app['this_app']"><a href="${app['path']}" title="${app['desc']}"><span><py:if test="app['has_icon']"><img src="${app['icon_url']}" alt="" /> </py:if>${app['name']}</span></a></li>
67
 
            </py:for>
68
 
          </ul>
69
 
        </div>
70
 
      </div>
71
 
      <div id="ivlebody">
72
 
        <div id="ivleview">
73
 
          ${select('*')}
74
 
        </div>
75
 
        <div id="ivleoverlays">
76
 
          <py:for each="overlay in overlays">
77
 
            ${overlay}
78
 
          </py:for>
79
 
        </div>     
80
 
      </div>
81
 
    </body>
82
 
  </py:match>
83
 
  ${app_template}
84
 
</html>