aboutsummaryrefslogtreecommitdiff
path: root/interface
diff options
context:
space:
mode:
authorcbdev <cb@cbcdn.com>2024-01-21 16:06:52 +0100
committercbdev <cb@cbcdn.com>2024-01-21 16:06:52 +0100
commit2dc49654d5050ea05ff3b21305f4d9f470b8cfc7 (patch)
tree54191329d71fdc069fc05d5116956924dff92ce4 /interface
parenta1cf6c31d17a537d7deb300da6eae56a32587f62 (diff)
downloadcargohold-2dc49654d5050ea05ff3b21305f4d9f470b8cfc7.tar.gz
cargohold-2dc49654d5050ea05ff3b21305f4d9f470b8cfc7.tar.bz2
cargohold-2dc49654d5050ea05ff3b21305f4d9f470b8cfc7.zip
urlencode file names
Diffstat (limited to 'interface')
-rw-r--r--interface/admin_files.tmpl4
-rw-r--r--interface/listing_default.tmpl58
2 files changed, 60 insertions, 2 deletions
diff --git a/interface/admin_files.tmpl b/interface/admin_files.tmpl
index b0828b6..76e97aa 100644
--- a/interface/admin_files.tmpl
+++ b/interface/admin_files.tmpl
@@ -27,9 +27,9 @@
<div id="dirlisting">
{% for file in listing %}
<div class="entry">
- <a class="entry" href="/admin/{{ directory }}/file/{{ file.name }}">{{ file.name }}</a>
+ <a class="entry" href="/admin/{{ directory }}/file/{{ file.name | urlencode }}">{{ file.name }}</a>
<div class="info">{{ (file.size / 1024 / 1024) | round(2, "ceil") }} MB</div>
- <a class="button delete" href="/admin/{{ directory }}/delete/{{ file.name }}">Delete</a>
+ <a class="button delete" href="/admin/{{ directory }}/delete/{{ file.name | urlencode }}">Delete</a>
</div>
{% endfor %}
</div>
diff --git a/interface/listing_default.tmpl b/interface/listing_default.tmpl
new file mode 100644
index 0000000..4a6d8bc
--- /dev/null
+++ b/interface/listing_default.tmpl
@@ -0,0 +1,58 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
+ <meta name="robots" content="noindex,nofollow" />
+ <title>cargohold</title>
+ <link rel="stylesheet" href="/assets/cargohold.css" />
+ <link rel="icon" href="/assets/cargohold.ico" />
+ <script src="/assets/cargohold.js"></script>
+ </head>
+ <body>
+ <div id="header">
+ <h1>cargohold</h1>
+ </div>
+ <div id="container">
+ <div class="tab-wrap">
+ <input type="radio" id="tab-view" name="tabs" class="tab" checked>
+ <label for="tab-view" id="tab-view-label">View</label>
+
+ <input type="radio" id="tab-upload" name="tabs" class="tab">
+ <label for="tab-upload" id="tab-upload-label">Upload</label>
+
+ <div class="tab-content">
+ <div class="buttonrow">
+ <a class="button" href="#" id="download-all">Download all</a>
+ </div>
+ <div id="dirlisting">
+ {% for file in listing %}
+ <a class="listing-entry" href="file/{{ file.name | urlencode }}" data-filename="{{ file.name }}">{{ file.name }}</a>
+ {% endfor %}
+ </div>
+ </div>
+ <div class="tab-content">
+ <div id="upload">
+ <form action="upload" method="post" enctype="multipart/form-data">
+ <label for="files" id="selector-label">
+ △ Select files to upload
+ <input type="file" id="files" name="files" multiple>
+ </label>
+ <input type="submit" value="Start upload" name="submit" id="file-submit">
+
+ </form>
+ </div>
+ <div id="queue">
+ </div>
+ <!--
+ <div id="storage">
+ Storage space left: 2GB / 2GB <br/>
+ <progress value="70" max="100">70 %</progress>
+ </div>
+ -->
+ </div>
+ </div>
+ </div>
+ <div class="footer"><a href="https://git.services.cbcdn.com/cargohold/">cargohold</a> is a free and open source project</div>
+ </body>
+</html>