equal
deleted
inserted
replaced
74 def call(self, session, entity): |
74 def call(self, session, entity): |
75 if not entity.from_state: # not a transition |
75 if not entity.from_state: # not a transition |
76 return |
76 return |
77 rset = entity.related('wf_info_for') |
77 rset = entity.related('wf_info_for') |
78 try: |
78 try: |
79 view = session.vreg.select('views', 'notif_status_change', |
79 view = session.vreg['views'].select('notif_status_change', session, |
80 session, rset=rset, row=0) |
80 rset=rset, row=0) |
81 except RegistryException: |
81 except RegistryException: |
82 return |
82 return |
83 comment = entity.printable_value('comment', format='text/plain') |
83 comment = entity.printable_value('comment', format='text/plain') |
84 if comment: |
84 if comment: |
85 comment = normalize_text(comment, 80, |
85 comment = normalize_text(comment, 80, |
98 email defined by the view |
98 email defined by the view |
99 """ |
99 """ |
100 rset = session.eid_rset(fromeid) |
100 rset = session.eid_rset(fromeid) |
101 vid = 'notif_%s_%s' % (self.event, rtype) |
101 vid = 'notif_%s_%s' % (self.event, rtype) |
102 try: |
102 try: |
103 view = session.vreg.select('views', vid, session, rset=rset, row=0) |
103 view = session.vreg['views'].select(vid, session, rset=rset, row=0) |
104 except RegistryException: |
104 except RegistryException: |
105 return |
105 return |
106 RenderAndSendNotificationView(session, view=view) |
106 RenderAndSendNotificationView(session, view=view) |
107 |
107 |
108 |
108 |
115 email defined by the view |
115 email defined by the view |
116 """ |
116 """ |
117 rset = entity.as_rset() |
117 rset = entity.as_rset() |
118 vid = 'notif_%s' % self.event |
118 vid = 'notif_%s' % self.event |
119 try: |
119 try: |
120 view = session.vreg.select('views', vid, session, rset=rset, row=0) |
120 view = session.vreg['views'].select(vid, session, rset=rset, row=0) |
121 except RegistryException: |
121 except RegistryException: |
122 return |
122 return |
123 RenderAndSendNotificationView(session, view=view) |
123 RenderAndSendNotificationView(session, view=view) |
124 |
124 |
125 |
125 |
136 # XXX refactor this class to work with len(rset) > 1 |
136 # XXX refactor this class to work with len(rset) > 1 |
137 |
137 |
138 msgid_timestamp = True |
138 msgid_timestamp = True |
139 |
139 |
140 def recipients(self): |
140 def recipients(self): |
141 finder = self.vreg.select('components', 'recipients_finder', self.req, |
141 finder = self.vreg['components'].select('recipients_finder', self.req, |
142 rset=self.rset) |
142 rset=self.rset) |
143 return finder.recipients() |
143 return finder.recipients() |
144 |
144 |
145 def subject(self): |
145 def subject(self): |
146 entity = self.entity(self.row or 0, self.col or 0) |
146 entity = self.entity(self.row or 0, self.col or 0) |