From 1e814968bd5909e0914b70ff89d9ae9dd4b29c7b Mon Sep 17 00:00:00 2001
From: Michele Azzolari <macno@macno.org>
Date: Thu, 29 Dec 2011 16:45:54 +0000
Subject: [PATCH] Fixed #724 and added some more infos to the atom (author uri and links to the html version)
---
mediagoblin/db/mongo/models.py | 6 +++---
mediagoblin/listings/views.py | 9 +++++----
mediagoblin/user_pages/views.py | 11 +++++++----
3 files changed, 15 insertions(+), 11 deletions(-)
diff --git a/mediagoblin/db/mongo/models.py b/mediagoblin/db/mongo/models.py
index 5de59c1..c44a2a8 100644
|
a
|
b
|
class MediaEntry(Document):
|
| 255 | 255 | if duplicate: |
| 256 | 256 | self.slug = "%s-%s" % (self._id, self.slug) |
| 257 | 257 | |
| 258 | | def url_for_self(self, urlgen): |
| | 258 | def url_for_self(self, urlgen, **extra_args): |
| 259 | 259 | """ |
| 260 | 260 | Generate an appropriate url for ourselves |
| 261 | 261 | |
| … |
… |
class MediaEntry(Document):
|
| 267 | 267 | return urlgen( |
| 268 | 268 | 'mediagoblin.user_pages.media_home', |
| 269 | 269 | user=uploader.username, |
| 270 | | media=self.slug) |
| | 270 | media=self.slug, **extra_args) |
| 271 | 271 | else: |
| 272 | 272 | return urlgen( |
| 273 | 273 | 'mediagoblin.user_pages.media_home', |
| 274 | 274 | user=uploader.username, |
| 275 | | media=unicode(self._id)) |
| | 275 | media=unicode(self._id), **extra_args) |
| 276 | 276 | |
| 277 | 277 | def url_to_prev(self, urlgen): |
| 278 | 278 | """ |
diff --git a/mediagoblin/listings/views.py b/mediagoblin/listings/views.py
index 3ecf06f..6092e37 100644
|
a
|
b
|
def tag_atom_feed(request):
|
| 80 | 80 | feed = AtomFeed( |
| 81 | 81 | "MediaGoblin: Feed for tag '%s'" % tag_slug, |
| 82 | 82 | feed_url=request.url, |
| 83 | | url=request.host_url) |
| 84 | | |
| | 83 | id='tag:'+request.host+',2011:TagGallery:%s' % tag_slug, |
| | 84 | links=[{'href': request.urlgen('mediagoblin.listings.tags_listing', qualified=True,tag=tag_slug ), 'rel': 'alternate','type': 'text/html'}]) |
| 85 | 85 | for entry in cursor: |
| 86 | 86 | feed.add(entry.get('title'), |
| 87 | 87 | entry.get('description_html'), |
| 88 | 88 | content_type='html', |
| 89 | | author=entry.get_uploader.username, |
| | 89 | author={'name': entry.get_uploader.username,'uri': request.urlgen('mediagoblin.user_pages.user_home', qualified=True, user=entry.get_uploader.username)}, |
| 90 | 90 | updated=entry.get('created'), |
| 91 | | url=entry.url_for_self(request.urlgen)) |
| | 91 | links=[{'href':entry.url_for_self(request.urlgen,qualified=True), 'rel': 'alternate','type': 'text/html'}], |
| | 92 | url=entry.url_for_self(request.urlgen, qualified=True)) |
| 92 | 93 | |
| 93 | 94 | return feed.get_response() |
diff --git a/mediagoblin/user_pages/views.py b/mediagoblin/user_pages/views.py
index f721f01..19e869b 100644
|
a
|
b
|
def atom_feed(request):
|
| 225 | 225 | .sort('created', DESCENDING) \ |
| 226 | 226 | .limit(ATOM_DEFAULT_NR_OF_UPDATED_ITEMS) |
| 227 | 227 | |
| 228 | | feed = AtomFeed(request.matchdict['user'], |
| | 228 | feed = AtomFeed( |
| | 229 | "MediaGoblin: Feed for user '%s'" % request.matchdict['user'], |
| 229 | 230 | feed_url=request.url, |
| 230 | | url=request.host_url) |
| | 231 | id='tag:'+request.host+',2011:UserGallery:'+request.matchdict['user'], |
| | 232 | links=[{'href':request.urlgen('mediagoblin.user_pages.user_home', qualified=True,user=request.matchdict['user']), 'rel': 'alternate','type': 'text/html'}]) |
| 231 | 233 | |
| 232 | 234 | for entry in cursor: |
| 233 | 235 | feed.add(entry.get('title'), |
| 234 | 236 | entry.get('description_html'), |
| 235 | 237 | content_type='html', |
| 236 | | author=request.matchdict['user'], |
| | 238 | author={'name': entry.get_uploader.username,'uri': request.urlgen('mediagoblin.user_pages.user_home',qualified=True, user=entry.get_uploader.username)}, |
| 237 | 239 | updated=entry.get('created'), |
| 238 | | url=entry.url_for_self(request.urlgen)) |
| | 240 | links=[{'href':entry.url_for_self(request.urlgen,qualified=True), 'rel': 'alternate','type': 'text/html'}], |
| | 241 | url=entry.url_for_self(request.urlgen,qualified=True)) |
| 239 | 242 | |
| 240 | 243 | return feed.get_response() |
| 241 | 244 | |