You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by je...@apache.org on 2015/05/15 15:05:03 UTC

[1/2] allura git commit: [#6107] ticket:770 Handle discussion dissabled property for tickets

Repository: allura
Updated Branches:
  refs/heads/ib/6107 c307dd49d -> 7ee69bf9a


[#6107] ticket:770 Handle discussion dissabled property for tickets


Project: http://git-wip-us.apache.org/repos/asf/allura/repo
Commit: http://git-wip-us.apache.org/repos/asf/allura/commit/66b78e46
Tree: http://git-wip-us.apache.org/repos/asf/allura/tree/66b78e46
Diff: http://git-wip-us.apache.org/repos/asf/allura/diff/66b78e46

Branch: refs/heads/ib/6107
Commit: 66b78e46b5a721300c391875f13bd039fcbe0dfe
Parents: c307dd4
Author: Igor Bondarenko <je...@gmail.com>
Authored: Fri May 15 11:07:33 2015 +0000
Committer: Igor Bondarenko <je...@gmail.com>
Committed: Fri May 15 11:19:09 2015 +0000

----------------------------------------------------------------------
 Allura/allura/model/notification.py       | 5 +++--
 Allura/allura/templates/mail/footer.txt   | 4 +++-
 ForgeTracker/forgetracker/model/ticket.py | 7 ++++++-
 ForgeTracker/forgetracker/tracker_main.py | 6 +++++-
 4 files changed, 17 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/allura/blob/66b78e46/Allura/allura/model/notification.py
----------------------------------------------------------------------
diff --git a/Allura/allura/model/notification.py b/Allura/allura/model/notification.py
index 4134457..4241c42 100644
--- a/Allura/allura/model/notification.py
+++ b/Allura/allura/model/notification.py
@@ -676,12 +676,13 @@ class MailFooter(object):
         return cls.view.get_template(template).render(kw)
 
     @classmethod
-    def standard(cls, notification, allow_email_posting=True):
+    def standard(cls, notification, allow_email_posting=True, **kw):
         return cls._render('mail/footer.txt',
                            domain=config['domain'],
                            notification=notification,
                            prefix=config['forgemail.url'],
-                           allow_email_posting=allow_email_posting)
+                           allow_email_posting=allow_email_posting,
+                           **kw)
 
     @classmethod
     def monitored(cls, toaddr, app_url, setting_url):

http://git-wip-us.apache.org/repos/asf/allura/blob/66b78e46/Allura/allura/templates/mail/footer.txt
----------------------------------------------------------------------
diff --git a/Allura/allura/templates/mail/footer.txt b/Allura/allura/templates/mail/footer.txt
index 548051e..62de862 100644
--- a/Allura/allura/templates/mail/footer.txt
+++ b/Allura/allura/templates/mail/footer.txt
@@ -22,7 +22,9 @@
 
 Sent from {{domain}} because you indicated interest in <{{ prefix }}{{ notification.link }}>
 
-{% if not allow_email_posting %}
+{% if discussion_disabled %}
+Please do not reply to this message. Discussion is disabled for the <{{ prefix }}{{ notification.link }}>
+{% elif not allow_email_posting %}
 Please do not reply to this message. Post your messages on the [original page]({{ prefix }}{{ notification.link }})
 {% endif %}
 

http://git-wip-us.apache.org/repos/asf/allura/blob/66b78e46/ForgeTracker/forgetracker/model/ticket.py
----------------------------------------------------------------------
diff --git a/ForgeTracker/forgetracker/model/ticket.py b/ForgeTracker/forgetracker/model/ticket.py
index fdab276..32cb56d 100644
--- a/ForgeTracker/forgetracker/model/ticket.py
+++ b/ForgeTracker/forgetracker/model/ticket.py
@@ -762,6 +762,8 @@ class Ticket(VersionedArtifact, ActivityObject, VotableArtifact):
 
     @property
     def email_address(self):
+        if self.discussion_disabled:
+            return tg_config.get('forgemail.return_path')
         if c.app.config.options.get('AllowEmailPosting', True):
             domain = '.'.join(
                 reversed(self.app.url[1:-1].split('/'))).replace('_', '-')
@@ -1271,7 +1273,10 @@ class Ticket(VersionedArtifact, ActivityObject, VotableArtifact):
                 h.absurl('{0}admin/{1}/options'.format(
                     self.project.url(),
                     self.app.config.options.mount_point)))
-        return super(Ticket, self).get_mail_footer(notification, toaddr)
+        return MailFooter.standard(
+            notification,
+            self.app.config.options.get('AllowEmailPosting', True),
+            discussion_disabled=self.discussion_disabled)
 
 
 class TicketAttachment(BaseAttachment):

http://git-wip-us.apache.org/repos/asf/allura/blob/66b78e46/ForgeTracker/forgetracker/tracker_main.py
----------------------------------------------------------------------
diff --git a/ForgeTracker/forgetracker/tracker_main.py b/ForgeTracker/forgetracker/tracker_main.py
index 4d987dc..52e7b28 100644
--- a/ForgeTracker/forgetracker/tracker_main.py
+++ b/ForgeTracker/forgetracker/tracker_main.py
@@ -280,7 +280,11 @@ class ForgeTrackerApp(Application):
                 ticket_num=int(topic))
         except:
             log.exception('Error getting ticket %s', topic)
-        self.handle_artifact_message(ticket, message)
+            return
+        if ticket.discussion_disabled:
+            log.info('Discussion disabled for ticket %s', ticket.ticket_num)
+        else:
+            self.handle_artifact_message(ticket, message)
 
     def main_menu(self):
         '''Apps should provide their entries to be added to the main nav


[2/2] allura git commit: [#6107] ticket:770 Add Artifact.email_domain; Refactor email_address

Posted by je...@apache.org.
[#6107] ticket:770 Add Artifact.email_domain; Refactor email_address


Project: http://git-wip-us.apache.org/repos/asf/allura/repo
Commit: http://git-wip-us.apache.org/repos/asf/allura/commit/7ee69bf9
Tree: http://git-wip-us.apache.org/repos/asf/allura/tree/7ee69bf9
Diff: http://git-wip-us.apache.org/repos/asf/allura/diff/7ee69bf9

Branch: refs/heads/ib/6107
Commit: 7ee69bf9a18bc57302b202dcc956400a6b69c71b
Parents: 66b78e4
Author: Igor Bondarenko <je...@gmail.com>
Authored: Fri May 15 11:36:10 2015 +0000
Committer: Igor Bondarenko <je...@gmail.com>
Committed: Fri May 15 11:36:10 2015 +0000

----------------------------------------------------------------------
 Allura/allura/model/artifact.py                | 6 ++++++
 Allura/allura/model/repository.py              | 4 +---
 ForgeBlog/forgeblog/model/blog.py              | 3 +--
 ForgeDiscussion/forgediscussion/model/forum.py | 3 +--
 ForgeTracker/forgetracker/model/ticket.py      | 3 +--
 ForgeWiki/forgewiki/model/wiki.py              | 3 +--
 6 files changed, 11 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/allura/blob/7ee69bf9/Allura/allura/model/artifact.py
----------------------------------------------------------------------
diff --git a/Allura/allura/model/artifact.py b/Allura/allura/model/artifact.py
index b338572..32ebc10 100644
--- a/Allura/allura/model/artifact.py
+++ b/Allura/allura/model/artifact.py
@@ -257,6 +257,12 @@ class Artifact(MappedClass, SearchIndexable):
             return 'mailto:%s' % self.email_address
 
     @property
+    def email_domain(self):
+        """Return domain part of email address for this Artifact"""
+        url = self.app.url[1:-1].split('/')
+        return '.'.join(reversed(url)).replace('_', '-')
+
+    @property
     def project(self):
         """Return the :class:`allura.model.project.Project` instance to which
         this Artifact belongs.

http://git-wip-us.apache.org/repos/asf/allura/blob/7ee69bf9/Allura/allura/model/repository.py
----------------------------------------------------------------------
diff --git a/Allura/allura/model/repository.py b/Allura/allura/model/repository.py
index 8455395..e4583e5 100644
--- a/Allura/allura/model/repository.py
+++ b/Allura/allura/model/repository.py
@@ -567,9 +567,7 @@ class Repository(Artifact, ActivityObject):
 
     @property
     def email_address(self):
-        domain = '.'.join(
-            reversed(self.app.url[1:-1].split('/'))).replace('_', '-')
-        return u'noreply@%s%s' % (domain, config.common_suffix)
+        return u'noreply@%s%s' % (self.email_domain, config.common_suffix)
 
     def index(self):
         result = Artifact.index(self)

http://git-wip-us.apache.org/repos/asf/allura/blob/7ee69bf9/ForgeBlog/forgeblog/model/blog.py
----------------------------------------------------------------------
diff --git a/ForgeBlog/forgeblog/model/blog.py b/ForgeBlog/forgeblog/model/blog.py
index 5839d76..c8426cb 100644
--- a/ForgeBlog/forgeblog/model/blog.py
+++ b/ForgeBlog/forgeblog/model/blog.py
@@ -186,8 +186,7 @@ class BlogPost(M.VersionedArtifact, ActivityObject):
     @property
     def email_address(self):
         if self.config.options.get('AllowEmailPosting', True):
-            domain = '.'.join(
-                reversed(self.app.url[1:-1].split('/'))).replace('_', '-')
+            domain = self.email_domain
             return '%s@%s%s' % (self.title.replace('/', '.'), domain, config.common_suffix)
         else:
             return tg_config.get('forgemail.return_path')

http://git-wip-us.apache.org/repos/asf/allura/blob/7ee69bf9/ForgeDiscussion/forgediscussion/model/forum.py
----------------------------------------------------------------------
diff --git a/ForgeDiscussion/forgediscussion/model/forum.py b/ForgeDiscussion/forgediscussion/model/forum.py
index d4ad197..96e570d 100644
--- a/ForgeDiscussion/forgediscussion/model/forum.py
+++ b/ForgeDiscussion/forgediscussion/model/forum.py
@@ -80,8 +80,7 @@ class Forum(M.Discussion):
     @property
     def email_address(self):
         if c.app.config.options.get('AllowEmailPosting', True):
-            domain = '.'.join(
-                reversed(self.app.url[1:-1].split('/'))).replace('_', '-')
+            domain = self.email_domain
             local_part = self.shortname.replace('/', '.')
             return '%s@%s%s' % (local_part, domain, config.common_suffix)
         else:

http://git-wip-us.apache.org/repos/asf/allura/blob/7ee69bf9/ForgeTracker/forgetracker/model/ticket.py
----------------------------------------------------------------------
diff --git a/ForgeTracker/forgetracker/model/ticket.py b/ForgeTracker/forgetracker/model/ticket.py
index 32cb56d..925a067 100644
--- a/ForgeTracker/forgetracker/model/ticket.py
+++ b/ForgeTracker/forgetracker/model/ticket.py
@@ -765,8 +765,7 @@ class Ticket(VersionedArtifact, ActivityObject, VotableArtifact):
         if self.discussion_disabled:
             return tg_config.get('forgemail.return_path')
         if c.app.config.options.get('AllowEmailPosting', True):
-            domain = '.'.join(
-                reversed(self.app.url[1:-1].split('/'))).replace('_', '-')
+            domain = self.email_domain
             return '%s@%s%s' % (self.ticket_num, domain, config.common_suffix)
         else:
             return tg_config.get('forgemail.return_path')

http://git-wip-us.apache.org/repos/asf/allura/blob/7ee69bf9/ForgeWiki/forgewiki/model/wiki.py
----------------------------------------------------------------------
diff --git a/ForgeWiki/forgewiki/model/wiki.py b/ForgeWiki/forgewiki/model/wiki.py
index 827a104..2ca4f8f 100644
--- a/ForgeWiki/forgewiki/model/wiki.py
+++ b/ForgeWiki/forgewiki/model/wiki.py
@@ -161,8 +161,7 @@ class Page(VersionedArtifact, ActivityObject):
     @property
     def email_address(self):
         if context.app.config.options.get('AllowEmailPosting', True):
-            domain = '.'.join(
-                reversed(self.app.url[1:-1].split('/'))).replace('_', '-')
+            domain = self.email_domain
             return '%s@%s%s' % (self.title.replace('/', '.'), domain, config.common_suffix)
         else:
             return tg_config.get('forgemail.return_path')