You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by jo...@apache.org on 2013/06/17 19:38:48 UTC

[5/7] git commit: [#6203] ticket:362 Don't escape changes text in plain-text emails

[#6203] ticket:362 Don't escape changes text in plain-text emails


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

Branch: refs/heads/master
Commit: f64b538791a06ac73a5098943f575310cdf9bc94
Parents: 111780f
Author: Igor Bondarenko <je...@gmail.com>
Authored: Wed Jun 5 09:41:38 2013 +0000
Committer: Cory Johns <cj...@slashdotmedia.com>
Committed: Mon Jun 17 17:19:06 2013 +0000

----------------------------------------------------------------------
 ForgeTracker/forgetracker/model/ticket.py | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-allura/blob/f64b5387/ForgeTracker/forgetracker/model/ticket.py
----------------------------------------------------------------------
diff --git a/ForgeTracker/forgetracker/model/ticket.py b/ForgeTracker/forgetracker/model/ticket.py
index 6d89ca5..6ff6d2b 100644
--- a/ForgeTracker/forgetracker/model/ticket.py
+++ b/ForgeTracker/forgetracker/model/ticket.py
@@ -27,6 +27,7 @@ from pymongo.errors import OperationFailure
 from pylons import tmpl_context as c, app_globals as g
 from pprint import pformat
 from paste.deploy.converters import aslist
+import jinja2
 
 from ming import schema
 from ming.utils import LazyProperty
@@ -361,7 +362,9 @@ class Globals(MappedClass):
         users = User.query.find({'_id': {'$in': filtered_changes.keys()}}).all()
         def changes_iter(user):
             for t_id in filtered_changes.get(user._id, []):
-                yield (changed_tickets[t_id], changes[t_id])
+                # mark changes text as safe, thus it wouldn't be escaped in plain-text emails
+                # html part of email is handled by markdown and it'll be properly escaped
+                yield (changed_tickets[t_id], jinja2.Markup(changes[t_id]))
         mail = dict(
             fromaddr = str(c.user._id),
             reply_to = str(c.user._id),
@@ -369,7 +372,7 @@ class Globals(MappedClass):
                                                            c.app.config.options.mount_point,
                                                            c.user.display_name),
         )
-        tmpl = g.jinja2_env.get_template('forgetracker:data/mass_report')
+        tmpl = g.jinja2_env.get_template('forgetracker:data/mass_report.html')
         head = []
         for f, v in sorted(values.iteritems()):
             if f == 'assigned_to_id':