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

« back to all changes in this revision

Viewing changes to ivle/webapp/filesystem/browser/template.html

  • Committer: David Coles
  • Date: 2010-07-20 05:55:20 UTC
  • Revision ID: coles.david@gmail.com-20100720055520-yxyfn2qqycfwboiq
URL quote paths in checkout URLs.

The two benefits of this are that we no longer have issues with spaces in 
submitted paths and also don't have to worry about shell escape characters 
(and possible shell injection to a lectures console).

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
<!-- Top bar section -->
 
4
<head>
 
5
  <title>${title}</title>
 
6
</head>
 
7
<body>
 
8
  <div id="topbar">
 
9
    <div id="actions">
 
10
      <span id="actions1">
 
11
        <a id="act_open" class="disabled">Open</a> :
 
12
        <a id="act_serve"
 
13
            title="View this file on the web, running your code if this is a CGI file"
 
14
            class="disabled" target="_blank">Serve</a> :
 
15
        <a id="act_run" title="Run the selected Python file in the console"
 
16
            class="disabled">Run</a> :
 
17
        <a id="act_download" class="choice">Download</a> :
 
18
        <a title="Refresh the current page" onclick="refresh()"
 
19
            class="choice">Refresh</a>
 
20
        <span id="moreactions_area"> :
 
21
          <select id="moreactions" onchange="handle_moreactions()"
 
22
              onblur="handle_moreactions()">
 
23
            <option class="moreactions" value="top"
 
24
                selected="selected">More actions...</option>
 
25
            <py:for each="(name, disablement, group) in moreactions">
 
26
 
 
27
              <optgroup label="${name}">
 
28
 
 
29
                <py:choose test="disablement">
 
30
 
 
31
                  <py:when test="True">
 
32
                    <py:for each="(id, bits) in group">
 
33
                      <option id="act_${id}" class="disabled" disabled="disabled"
 
34
                          title="${bits[1]}" value="${id}">${bits[0]}</option>
 
35
                    </py:for>
 
36
                  </py:when>
 
37
 
 
38
                  <py:otherwise>
 
39
                    <py:for each="(id, bits) in group">
 
40
                      <option id="act_${id}" title="${bits[1]}" 
 
41
                          value="${id}">${bits[0]}</option>
 
42
                    </py:for>                
 
43
                  </py:otherwise>
 
44
 
 
45
                </py:choose>
 
46
 
 
47
              </optgroup>
 
48
            </py:for>
 
49
          </select>
 
50
        </span>
 
51
      </span> <!-- actions1 -->
 
52
      <span id="actions2">
 
53
        <form id="actions2_directory"
 
54
            target="upload_iframe"
 
55
            action="${fileservice_action}"
 
56
            enctype="multipart/form-data" method="post">
 
57
          <span style="display:none" id="uploadpanel">
 
58
            <label for="upload_file">Upload file:</label>
 
59
            <input type="hidden" value="putfiles" name="action" />
 
60
            <input type="hidden" value="" name="path" />
 
61
            <input type="file" name="data" id="upload_file" />
 
62
            <input type="checkbox" checked="checked" value="true" name="unpack" id="unpack" />
 
63
            <label title="Extract files and directories from a ZIP file if one is uploaded" for="unpack">Unzip</label>
 
64
            <input type="button" onclick="show_uploadpanel(false)" value="Cancel" />
 
65
            <input type="submit" value="Upload" />
 
66
          </span>
 
67
          <!-- This iframe is for making a call to upload the file without
 
68
               refreshing the page. (It will refresh the listing). -->
 
69
          <iframe onload="upload_callback()" style="display: none;"
 
70
              name="upload_iframe" id="upload_iframe"></iframe>
 
71
        </form>
 
72
        <span id="actions2_file">
 
73
          <input type="button" id="save_button" value="Save" onclick="save_file('${filename}')" />
 
74
          <input type="button" id="saveas_button" value="Save As..." onclick="save_file_as('${filename}')" />
 
75
          <select id="highlighting_select" onchange="highlighting_changed(this)">
 
76
            <option value="text">Text</option>
 
77
            <option value="python">Python</option>
 
78
            <option value="html">HTML</option>
 
79
            <option value="javascript">JavaScript</option>
 
80
            <option value="css">CSS</option>
 
81
          </select>
 
82
        </span>
 
83
      </span> <!-- actions2 -->
 
84
    </div> <!-- actions -->
 
85
  </div>
 
86
  <!-- Body. The JavaScript places content here relevant to the path -->
 
87
  <div id="filesbody">
 
88
  </div>
 
89
  <!-- End body -->
 
90
</body>
 
91
</html>