aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/templates
diff options
context:
space:
mode:
authorSebastian Spaeth <Sebastian@SSpaeth.de>2011-05-08 20:35:54 +0200
committerChristopher Allan Webber <cwebber@dustycloud.org>2011-05-10 16:01:43 -0500
commit9a16e16ffa9c0477bec6ea0bf1db7efd6f988638 (patch)
tree5dbbba02cb40cd23be76489a159d4718f66c8aa4 /mediagoblin/templates
parent9d97145fe40cc2a7bce298cad618374375ad4d8b (diff)
downloadmediagoblin-9a16e16ffa9c0477bec6ea0bf1db7efd6f988638.tar.lz
mediagoblin-9a16e16ffa9c0477bec6ea0bf1db7efd6f988638.tar.xz
mediagoblin-9a16e16ffa9c0477bec6ea0bf1db7efd6f988638.zip
Implement simple media detail page
This patch creates a "homepage" for each media. The URL is /u/<username>/m/<objID>. On it we display the media and some details. It is ugly and lacking some stuff but it works. The only thing left to do is to throw an 404 error if the <username> and the media uploader don't correspond. - Also create a user "home page" while at it. It is merely a place holder for now though. - Link from the entries on the homepage, to the media pages, so we actually find them. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Diffstat (limited to 'mediagoblin/templates')
-rw-r--r--mediagoblin/templates/mediagoblin/media_details.html34
-rw-r--r--mediagoblin/templates/mediagoblin/root.html6
-rw-r--r--mediagoblin/templates/mediagoblin/user_pages/media.html41
-rw-r--r--mediagoblin/templates/mediagoblin/user_pages/user.html26
4 files changed, 105 insertions, 2 deletions
diff --git a/mediagoblin/templates/mediagoblin/media_details.html b/mediagoblin/templates/mediagoblin/media_details.html
new file mode 100644
index 00000000..a00354bc
--- /dev/null
+++ b/mediagoblin/templates/mediagoblin/media_details.html
@@ -0,0 +1,34 @@
+{#
+# GNU MediaGoblin -- federated, autonomous media hosting
+# Copyright (C) 2011 Free Software Foundation, Inc
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#}
+{% extends "mediagoblin/base.html" %}
+{% block mediagoblin_content %}
+
+ {# temporarily, an "image gallery" that isn't one really ;) #}
+ {% if media %}
+ <h2>Media details for {{media.title}}</h2>
+ <div>
+ <img src="{{ request.app.public_store.file_url(
+ media.media_files.main) }}" />
+
+ <br/>Uploaded: {{ media.created}}
+ <br/>Description: {{media.description}}
+ </div>
+ {% else %}
+ <p>Sorry, no such media found.<p/>
+ {% endif %}
+{% endblock %}
diff --git a/mediagoblin/templates/mediagoblin/root.html b/mediagoblin/templates/mediagoblin/root.html
index 06a89f3f..2cb0a9c0 100644
--- a/mediagoblin/templates/mediagoblin/root.html
+++ b/mediagoblin/templates/mediagoblin/root.html
@@ -43,8 +43,10 @@
<ul>
{% for entry in media_entries %}
<li>
- <img src="{{ request.app.public_store.file_url(
- entry['media_files']['thumb']) }}" />
+ <a href="{{ request.urlgen('mediagoblin.user_pages.media_home',
+ user= entry.uploader.username, m_id= entry._id) }}">
+ <img src="{{ request.app.public_store.file_url(
+ entry['media_files']['thumb']) }}" /></a>
</li>
{% endfor %}
</ul>
diff --git a/mediagoblin/templates/mediagoblin/user_pages/media.html b/mediagoblin/templates/mediagoblin/user_pages/media.html
new file mode 100644
index 00000000..08cc9251
--- /dev/null
+++ b/mediagoblin/templates/mediagoblin/user_pages/media.html
@@ -0,0 +1,41 @@
+{#
+# GNU MediaGoblin -- federated, autonomous media hosting
+# Copyright (C) 2011 Free Software Foundation, Inc
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#}
+{% extends "mediagoblin/base.html" %}
+{% block mediagoblin_content %}
+
+ {# temporarily, an "image gallery" that isn't one really ;) #}
+ {% if media %}
+ <h2>Media details for <a
+ href="{{ request.urlgen('mediagoblin.user_pages.user_home',
+ user= media.uploader.username) }}">{{media.uploader.username}}</a>
+ / {{media.title}}
+ </h2>
+ <div>
+ <img src="{{ request.app.public_store.file_url(
+ media.media_files.main) }}" />
+
+ <br/>Uploaded on {{ "%4d-%02d-%02d"|format(media.created.year,
+ media.created.month,media.created.day)}} by <a
+ href="{{ request.urlgen('mediagoblin.user_pages.user_home',
+ user= media.uploader.username) }}">{{media.uploader.username}}</a>
+ <br/>Description: {{media.description}}
+ </div>
+ {% else %}
+ <p>Sorry, no such media found.<p/>
+ {% endif %}
+{% endblock %}
diff --git a/mediagoblin/templates/mediagoblin/user_pages/user.html b/mediagoblin/templates/mediagoblin/user_pages/user.html
new file mode 100644
index 00000000..4ad34f51
--- /dev/null
+++ b/mediagoblin/templates/mediagoblin/user_pages/user.html
@@ -0,0 +1,26 @@
+{#
+# GNU MediaGoblin -- federated, autonomous media hosting
+# Copyright (C) 2011 Free Software Foundation, Inc
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#}
+{% extends "mediagoblin/base.html" %}
+{% block mediagoblin_content -%}
+ {% if user %}
+ <h2>User page for '{{user.username}}'</h2>
+ {{user}}
+ {% else %}
+ <p>Sorry, no such user found.<p/>
+ {% endif %}
+{% endblock %}