Switch to unified view

a/Allura/allura/model/discuss.py b/Allura/allura/model/discuss.py
...
...
379
            self.author().url(), self.author().display_name,
379
            self.author().url(), self.author().display_name,
380
            h.ago(self.timestamp))
380
            h.ago(self.timestamp))
381
381
382
    def url(self):
382
    def url(self):
383
        if self.thread:
383
        if self.thread:
384
            return self.thread.url() + urllib.quote_plus(self.slug) + '/'
384
            return self.thread.url() + urllib.quote(self.slug) + '/'
385
        else: # pragma no cover
385
        else: # pragma no cover
386
            return None
386
            return None
387
387
388
    def shorthand_id(self):
388
    def shorthand_id(self):
389
        if self.thread:
389
        if self.thread:
...
...
460
            discussion_id=post.discussion_id,
460
            discussion_id=post.discussion_id,
461
            app_config_id=post.app_config_id)
461
            app_config_id=post.app_config_id)
462
462
463
    def url(self):
463
    def url(self):
464
        if self.post_id:
464
        if self.post_id:
465
            return self.post.url() + 'attachment/' + urllib.quote_plus(self.filename)
465
            return self.post.url() + 'attachment/' + urllib.quote(self.filename)
466
        elif self.thread_id:
466
        elif self.thread_id:
467
            return self.thread.url() + 'attachment/' + urllib.quote_plus(self.filename)
467
            return self.thread.url() + 'attachment/' + urllib.quote(self.filename)
468
        else:
468
        else:
469
            return self.discussion.url() + 'attachment/' + urllib.quote_plus(self.filename)
469
            return self.discussion.url() + 'attachment/' + urllib.quote(self.filename)
470
470
471
471