Mercurial > kallithea
changeset 3781:40d50bb7cf2f beta
emailing: log failing emailing as an error
TODO: The failure should be reported back to the user (or the admins). The
system should not silently not send any emails to the targeted recipients.
Even better: it should inform the user whenever emails was (scheduled to be)
sent - and to whom.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Wed, 10 Apr 2013 03:00:38 +0200 |
parents | 1de8abd9a4e1 |
children | c7c4855517c4 |
files | rhodecode/model/notification.py rhodecode/model/pull_request.py |
diffstat | 2 files changed, 7 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/model/notification.py Thu Apr 04 12:12:38 2013 +0200 +++ b/rhodecode/model/notification.py Wed Apr 10 03:00:38 2013 +0200 @@ -85,6 +85,9 @@ obj = self._get_user(u) if obj: recipients_objs.append(obj) + else: + # TODO: inform user that requested operation couldn't be completed + log.error('cannot email unknown user %r', u) recipients_objs = set(recipients_objs) log.debug('sending notifications %s to %s' % ( type_, recipients_objs) @@ -95,6 +98,7 @@ log.debug('sending notifications %s to admins: %s' % ( type_, recipients_objs) ) + # TODO: inform user who are notified notif = Notification.create( created_by=created_by_obj, subject=subject, body=body, recipients=recipients_objs, type_=type_
--- a/rhodecode/model/pull_request.py Thu Apr 04 12:12:38 2013 +0200 +++ b/rhodecode/model/pull_request.py Wed Apr 10 03:00:38 2013 +0200 @@ -89,8 +89,6 @@ revision_data = [(x.raw_id, x.message) for x in map(org_repo.get_changeset, revisions)] #notification to reviewers - notif = NotificationModel() - pr_url = h.url('pullrequest_show', repo_name=other_repo.repo_name, pull_request_id=new.pull_request_id, qualified=True, @@ -114,9 +112,9 @@ 'pr_revisions': revision_data } - notif.create(created_by=created_by_user, subject=subject, body=body, - recipients=reviewers, - type_=Notification.TYPE_PULL_REQUEST, email_kwargs=kwargs) + NotificationModel().create(created_by=created_by_user, subject=subject, body=body, + recipients=reviewers, + type_=Notification.TYPE_PULL_REQUEST, email_kwargs=kwargs) return new def update_reviewers(self, pull_request, reviewers_ids):