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

« back to all changes in this revision

Viewing changes to ivle/webapp/groups/template.html

Modified the database so that exercises are now stored in the database, rather
than in flat files.

This also necessitated adding new tables and storm classes for test suites
and test cases.

Note that this commit merely changes the database and adds a script to
upload exercises. The code for actually reading exercises has yet
to be changed.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
<html xmlns="http://www.w3.org/1999/xhtml"
2
2
      xmlns:py="http://genshi.edgewall.org/">
3
3
  <head>
4
 
    <title>Project set for ${projectset.offering.subject.name}</title>
 
4
    <title>Groups</title>
5
5
  </head>
6
6
  <body>
7
 
    <h1>Project set for ${projectset.offering.subject.name}</h1>
8
7
    <div id="ivle_padding">
9
 
      <div class="contextactions">
10
 
        <a py:if="'edit' in permissions"
11
 
           class="editaction"
12
 
           href="${req.publisher.generate(projectset, ProjectSetEdit)}">
13
 
           Change details
14
 
        </a>
15
 
      </div>
16
 
      <py:if test="not projectset.is_group">
17
 
      <p>Non-group projects.</p>
18
 
      </py:if>
19
 
      <py:if test="projectset.is_group">
20
 
      <p>Groups of maximum size ${projectset.max_students_per_group}.</p>
21
 
      </py:if>
22
 
      <div class="majorsection">
23
 
        <h2>Projects</h2>
24
 
        <table class="pretty_table">
25
 
          <thead><tr><th>Name</th><th>Actions</th></tr></thead>
26
 
          <tbody>
27
 
            <tr py:for="project in projectset.projects">
28
 
              <td><a href="${req.publisher.generate(project)}">${project.name}</a></td>
29
 
            <td><a href='${req.publisher.generate(project, ProjectEdit)}'><img
30
 
                  src='/+media/ivle.webapp.core/images/interface/pencil.png'
31
 
                  alt="Edit" title="Edit project" /></a>
32
 
                <a href='${req.publisher.generate(project, ProjectDelete)}'><img
33
 
                  src='/+media/ivle.webapp.core/images/interface/delete.png'
34
 
                  alt="Delete" title="Delete project" /></a>
35
 
            </td>
36
 
            </tr>
37
 
          </tbody>
38
 
        </table>
39
 
        <p><a class="addaction" href="${req.publisher.generate(projectset, ProjectNew)}">Add a new project</a></p>
40
 
      </div>
41
 
      <div py:if="projectset.is_group" class="majorsection">
42
 
        <h2>Groups</h2>
43
 
        <table class="pretty_table">
44
 
          <thead><tr><th>Name</th><th>Management</th></tr></thead>
45
 
          <tbody>
46
 
            <tr py:for="group in projectset.project_groups"
47
 
                id="project_group_${group.id}">
48
 
              <td>${group.name}</td>
49
 
              <td><a onclick="manage_group(${projectset.offering.id}, ${group.id} ,'project_group_${group.id}')"
50
 
                 class="choice"
51
 
                 id="project_group_${group.id}_button">
52
 
                <img src="/+media/ivle.webapp.core/images/interface/group.png" alt="Manage" title="Manage" />
53
 
              </a></td>
54
 
            </tr>
55
 
          </tbody>
56
 
        </table>
57
 
        <p><span class="addaction">
58
 
          <input value="Add a new group" type="button" onclick="create_new_group(${projectset.id})" />
59
 
        </span></p>
60
 
      </div>
 
8
      <p py:if="not enrolments">Error: You are not currently enrolled in any subjects.</p>
 
9
      <py:for each="enrolment in enrolments">
 
10
        <div id="subject${enrolment.offering.id}" class="subject">
 
11
          <h1>${enrolment.offering.subject.name}</h1>
 
12
          <py:for each="group in get_user_groups(enrolment.offering)">
 
13
            <h2>${group.nick} (${group.name})</h2>
 
14
            <!-- Need proper test (for invite/membership). -->
 
15
            <!-- <py:choose test="group">
 
16
              <py:when test="True"> -->
 
17
                <p>You are a member of this group.</p>
 
18
              <!--</py:when>
 
19
              <py:otherwise>
 
20
                <p>You have been invited to this group.</p>
 
21
                <p>
 
22
                  <input type="button" 
 
23
                      onclick="accept(&quot;${group.name}&quot;)" 
 
24
                      value="Accept" />
 
25
                  <input type="button"
 
26
                      onclick="decline(&quot;${group.name}&quot;)"
 
27
                      value="Decline" />
 
28
                </p>
 
29
              </py:otherwise>
 
30
            </py:choose>-->
 
31
            <h3>Members</h3>
 
32
            <ul>
 
33
              <py:for each="member in group.members">
 
34
                <li>${member.fullname} (${member.login})</li>
 
35
              </py:for>
 
36
            </ul>
 
37
          </py:for>
 
38
        </div>
 
39
      </py:for>
 
40
      <py:if test="manage_subjects">
 
41
        <hr />
 
42
        <h1>Group Administration</h1>
 
43
        <label for="subject_select">Subject:</label>
 
44
        <select id="subject_select">
 
45
          <py:for each="subject in manage_subjects">
 
46
            <option value="${subject.id}">${subject.name} (${subject.code})</option>
 
47
          </py:for>
 
48
        </select>
 
49
        <input type="button" value="Manage" onclick="manage_subject()" />
 
50
        <div id="subject_div"></div>
 
51
      </py:if>
61
52
    </div>
62
53
  </body>
63
54
</html>