Return-Path: X-Original-To: apmail-incubator-allura-commits-archive@minotaur.apache.org Delivered-To: apmail-incubator-allura-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 4F39BDC89 for ; Tue, 11 Dec 2012 20:16:31 +0000 (UTC) Received: (qmail 91236 invoked by uid 500); 11 Dec 2012 20:16:31 -0000 Delivered-To: apmail-incubator-allura-commits-archive@incubator.apache.org Received: (qmail 91203 invoked by uid 500); 11 Dec 2012 20:16:31 -0000 Mailing-List: contact allura-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: allura-dev@incubator.apache.org Delivered-To: mailing list allura-commits@incubator.apache.org Received: (qmail 91182 invoked by uid 99); 11 Dec 2012 20:16:30 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Dec 2012 20:16:30 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id A3B0381B1BE; Tue, 11 Dec 2012 20:16:30 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: brondsem@apache.org To: allura-commits@incubator.apache.org X-Mailer: ASF-Git Admin Mailer Subject: [1/2] git commit: [#4805] ticket:225 added a link back to the thread Message-Id: <20121211201630.A3B0381B1BE@tyr.zones.apache.org> Date: Tue, 11 Dec 2012 20:16:30 +0000 (UTC) Updated Branches: refs/heads/master cef0677fc -> 5d1ffe093 [#4805] ticket:225 added a link back to the thread Project: http://git-wip-us.apache.org/repos/asf/incubator-allura/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-allura/commit/aec4edfe Tree: http://git-wip-us.apache.org/repos/asf/incubator-allura/tree/aec4edfe Diff: http://git-wip-us.apache.org/repos/asf/incubator-allura/diff/aec4edfe Branch: refs/heads/master Commit: aec4edfecf73ee198de5a3e7f1f40a6ed58fd5ec Parents: cef0677 Author: Yuriy Arhipov Authored: Wed Dec 5 10:34:42 2012 +0000 Committer: Yuriy Arhipov Committed: Tue Dec 11 14:36:43 2012 +0400 ---------------------------------------------------------------------- Allura/allura/model/notification.py | 6 ++++-- Allura/allura/templates/mail/Discussion.txt | 3 +++ .../forgediscussion/tests/functional/test_forum.py | 9 ++++++--- 3 files changed, 13 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-allura/blob/aec4edfe/Allura/allura/model/notification.py ---------------------------------------------------------------------- diff --git a/Allura/allura/model/notification.py b/Allura/allura/model/notification.py index fe06a95..9269c61 100644 --- a/Allura/allura/model/notification.py +++ b/Allura/allura/model/notification.py @@ -118,6 +118,7 @@ class Notification(MappedClass): idx = artifact.index() subject_prefix = '[%s:%s] ' % ( c.project.shortname, c.app.config.options.mount_point) + post = '' if topic == 'message': post = kwargs.pop('post') text = post.text @@ -167,8 +168,9 @@ class Notification(MappedClass): d['text'] = '' try: ''' Add addional text to the notification e-mail based on the artifact type ''' - template = cls.view.get_template('mail/' + artifact.type_s + '.txt') - d['text'] += template.render(dict(c=c, g=g, config=config, data=artifact)) + if artifact.__mongometa__.name in ['forum', 'ticket']: + template = cls.view.get_template('mail/' + artifact.type_s + '.txt') + d['text'] += template.render(dict(c=c, g=g, config=config, data=artifact, post=post, h=h)) except jinja2.TemplateNotFound: pass except: http://git-wip-us.apache.org/repos/asf/incubator-allura/blob/aec4edfe/Allura/allura/templates/mail/Discussion.txt ---------------------------------------------------------------------- diff --git a/Allura/allura/templates/mail/Discussion.txt b/Allura/allura/templates/mail/Discussion.txt new file mode 100644 index 0000000..c63cd08 --- /dev/null +++ b/Allura/allura/templates/mail/Discussion.txt @@ -0,0 +1,3 @@ + +--- +[{{post.thread.subject}}]({{h.absurl(post.url_paginated())}}) http://git-wip-us.apache.org/repos/asf/incubator-allura/blob/aec4edfe/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py ---------------------------------------------------------------------- diff --git a/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py b/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py index 93d9023..b46dc20 100644 --- a/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py +++ b/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py @@ -383,7 +383,10 @@ class TestForum(TestController): r = self.app.get('/admin/discussion/forums') assert 'Message posted' in r r = self.app.get('/discussion/testforum/moderate/') - n = M.Notification.query.get(text='This is a *test thread*') + n = M.Notification.query.get(subject='[test:discussion] Test Thread') + post = FM.ForumPost.query.get(text='This is a *test thread*') + assert post.url_paginated() in n.text + assert '[Test Thread](' in n.text assert 'noreply' not in n.reply_to_address, n assert 'testforum@discussion.test.p' in n.reply_to_address, n @@ -475,7 +478,7 @@ class TestForum(TestController): params[f.find('select')['name']] = 'testforum' params[f.find('input',{'style':'width: 90%'})['name']] = 'Post subject' thread = self.app.post('/discussion/save_new_topic', params=params).follow() - assert M.Notification.query.find(dict(text='Post text')).count() == 1 + assert M.Notification.query.find(dict(subject='[test:discussion] Post subject')).count() == 1 r = self.app.get('/discussion/testforum/') f = r.html.find('form',{'class':'follow_form'}) subscribe_url = f.get('action') @@ -496,7 +499,7 @@ class TestForum(TestController): params[field['name']] = field.has_key('value') and field['value'] or '' params[f.find('textarea')['name']] = 'Reply 2' thread_reply = self.app.post(str(rep_url), params=params) - assert M.Notification.query.find(dict(text='Reply 2')).count() == 1 + assert M.Notification.query.find(dict(subject='[test:discussion] Re: Post subject')).count() == 1 def get_table_rows(self, response, closest_id): tbody = response.html.find('div', {'id': closest_id}).find('tbody')