Added a url_for_self method for generating mediaentry links
This allows for optionally making the url based off of slugs or ids
This commit is contained in:
parent
439e37f732
commit
6926b23d43
@ -117,6 +117,24 @@ class MediaEntry(Document):
|
|||||||
if duplicate:
|
if duplicate:
|
||||||
self['slug'] = "%s-%s" % (self['_id'], self['slug'])
|
self['slug'] = "%s-%s" % (self['_id'], self['slug'])
|
||||||
|
|
||||||
|
def url_for_self(self, urlgen):
|
||||||
|
"""
|
||||||
|
Generate an appropriate url for ourselves
|
||||||
|
|
||||||
|
Use a slug if we have one, else use our '_id'.
|
||||||
|
"""
|
||||||
|
if self.get('slug'):
|
||||||
|
return urlgen(
|
||||||
|
'mediagoblin.user_pages.media_home',
|
||||||
|
user=self['uploader']['username'],
|
||||||
|
media=self['slug'])
|
||||||
|
else:
|
||||||
|
return urlgen(
|
||||||
|
'mediagoblin.user_pages.media_home',
|
||||||
|
user=self['uploader']['username'],
|
||||||
|
media=unicode(self['_id']))
|
||||||
|
|
||||||
|
|
||||||
REGISTER_MODELS = [MediaEntry, User]
|
REGISTER_MODELS = [MediaEntry, User]
|
||||||
|
|
||||||
|
|
||||||
|
@ -44,8 +44,7 @@
|
|||||||
<ul>
|
<ul>
|
||||||
{% for entry in media_entries %}
|
{% for entry in media_entries %}
|
||||||
<li>
|
<li>
|
||||||
<a href="{{ request.urlgen('mediagoblin.user_pages.media_home',
|
<a href="{{ entry.url_for_self(request.urlgen) }}">
|
||||||
user= entry.uploader.username, m_id= entry._id) }}">
|
|
||||||
<img src="{{ request.app.public_store.file_url(
|
<img src="{{ request.app.public_store.file_url(
|
||||||
entry['media_files']['thumb']) }}" /></a>
|
entry['media_files']['thumb']) }}" /></a>
|
||||||
</li>
|
</li>
|
||||||
|
@ -22,8 +22,7 @@
|
|||||||
<ul>
|
<ul>
|
||||||
{% for entry in media_entries %}
|
{% for entry in media_entries %}
|
||||||
<li>
|
<li>
|
||||||
<a href="{{ request.urlgen('mediagoblin.user_pages.media_home',
|
<a href="{{ entry.url_for_self(request.urlgen) }}">
|
||||||
user= entry.uploader.username, m_id= entry._id) }}">
|
|
||||||
<img src="{{ request.app.public_store.file_url(
|
<img src="{{ request.app.public_store.file_url(
|
||||||
entry['media_files']['thumb']) }}" /></a>
|
entry['media_files']['thumb']) }}" /></a>
|
||||||
</li>
|
</li>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user