Mercurial > agora
annotate templates/bundle/bundle.djhtml @ 209:4033ebe1867f
Add ability to download files
This makes use of a new model (BundleVersion) to keep track of the
locations on disk of the original uploads for each version. This will
require some manual processing to get it working for existing bundles,
since the information needed isn't being stored at the moment.
author | dellsystem <ilostwaldo@gmail.com> |
---|---|
date | Sun, 17 Feb 2013 14:57:39 -0500 |
parents | b711f0087709 |
children | 2a234e11185c |
rev | line source |
---|---|
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
1 {% extends "bundle/base.djhtml" %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
2 |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
3 |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
4 {% load mptt_tags %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
5 {% load sizefieldtags %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
6 |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
7 |
177
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
8 {% block section %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
9 <a href="{{ bundle.get_absolute_url }}">{{ bundle }}</a> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
10 by <a href="{{ bundle.uploader.get_absolute_url }}">{{ bundle.uploader }}</a> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
11 (version {{ this_version }}) |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
12 {% if file %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
13 » |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
14 {{ file }} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
15 {% endif %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
16 {% endblock %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
17 |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
18 {% block title %} |
177
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
19 {% if file %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
20 {{ file }} in |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
21 {% endif %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
22 {{ bundle }} by {{ bundle.uploader }} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
23 {% endblock %} |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
24 |
65 | 25 |
26 {% block content %} | |
180
a803a1544126
Hide bundle edit link from other users
dellsystem <ilostwaldo@gmail.com>
parents:
178
diff
changeset
|
27 {% if request.user == bundle.uploader %} |
177
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
28 <div class="right-float"> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
29 <h2><a href="{% url bundle_edit request.user.username bundle.name %}">Edit this bundle</a></h2> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
30 </div> |
180
a803a1544126
Hide bundle edit link from other users
dellsystem <ilostwaldo@gmail.com>
parents:
178
diff
changeset
|
31 {% endif %} |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
32 <h1> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
33 <a href="{{ bundle.get_absolute_url }}">{{ bundle.name }}</a> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
34 by |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
35 <a href="{{ bundle.uploader.get_absolute_url }}">{{ bundle.uploader }}</a> |
177
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
36 (version {{ this_version }}) |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
37 </h1> |
65 | 38 |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
39 {% if not bundle.done_uploading %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
40 <p class="hint">This bundle is being processed.</p> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
41 {% else %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
42 {% if files %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
43 <div id="bundle-filebrowser"> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
44 <ul> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
45 {% recursetree files %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
46 <li class="{% if not node.is_leaf_node %}bundle-folder {% endif %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
47 {% if node == file %}selected{% endif %}"> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
48 {% if node.is_leaf_node %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
49 <a href="{{ node.get_absolute_url }}">{{ node.name }}</a> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
50 {% else %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
51 {{ node.name }} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
52 {% endif %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
53 {% if not node.is_leaf_node %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
54 <ul> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
55 {{ children }} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
56 </ul> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
57 {% endif %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
58 </li> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
59 {% endrecursetree %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
60 </ul> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
61 </div> |
65 | 62 |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
63 <div id="bundle-file"> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
64 {% if file %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
65 <h2>{{ file.full_path }} <small>{{ file.file_size|filesize }}</small></h2> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
66 |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
67 {% if file.code %} |
65 | 68 <p> |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
69 {% include "snippet/snippet_options.djhtml" %} |
65 | 70 </p> |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
71 {% include "snippet/snippet_box.djhtml" with lines=file.get_lines %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
72 {% else %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
73 <p>This file is a binary file.</p> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
74 <p><a href="#">Download file (feature not yet available)</a></p> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
75 {% endif %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
76 {% else %} |
184
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
77 <h2>Description</h2> |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
78 {% if bundle.description %} |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
79 <p>{{ bundle.description }}</p> |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
80 {% else %} |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
81 {% if bundle.description_file %} |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
82 <p class="bundle-description">{{ bundle.description_file.code|safe }}</p> |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
83 {% else %} |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
84 <p>N/A</p> |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
85 {% endif %} |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
86 {% endif %} |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
87 |
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
88 {% if bundle.description %} |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
89 <p><strong>License:</strong> {{ bundle.free_license }}</p> |
177
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
90 <p><strong>Latest version number:</strong> {{ bundle.latest_version }}</p> |
184
b711f0087709
Use DESCRIPTION file for bundles (SCHEMA CHANGE)
dellsystem <ilostwaldo@gmail.com>
parents:
180
diff
changeset
|
91 {% endif %} |
177
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
92 {% if previous_versions %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
93 <h3>Versions</h3> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
94 <ul> |
178
df160069b769
Show list of bundle versions in reverse order
dellsystem <ilostwaldo@gmail.com>
parents:
177
diff
changeset
|
95 {% for version in previous_versions reversed %} |
177
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
96 <li> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
97 <a href="{{ bundle.get_absolute_url }}/{{ version }}"> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
98 {% if version == this_version %}<strong>{% endif %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
99 Version {{ version }} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
100 {% if version == this_version %}</strong>{% endif %} |
209
4033ebe1867f
Add ability to download files
dellsystem <ilostwaldo@gmail.com>
parents:
184
diff
changeset
|
101 </a> :: <a href="{% url bundle_download bundle.uploader.username bundle.name version %}">Download »</a> |
177
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
102 </li> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
103 {% endfor %} |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
104 </ul> |
86129d185ddb
Add versioning to bundles
dellsystem <ilostwaldo@gmail.com>
parents:
151
diff
changeset
|
105 {% endif %} |
151
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
106 {% endif %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
107 </div> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
108 {% else %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
109 <p> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
110 No files in this bundle! |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
111 {% if request.user == bundle.uploader %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
112 Upload something? (Not yet available) |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
113 {% endif %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
114 </p> |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
115 {% endif %} |
c7be7def8b57
Bundles! (basic functionality)
dellsystem <ilostwaldo@gmail.com>
parents:
90
diff
changeset
|
116 {% endif %} |
65 | 117 |
118 {% endblock %} |