def save(self, *args, **kwargs): ''' If return_path is not set, create it before `save` ''' if not self.return_path and self.mail and self.to: self.return_path = utils.to_return_path( 'mail', self.mail.sender.domain, self.mail.id, self.to.id, ) super(Recipient, self).save(*args, **kwargs)
def forward_return_path(self): '''Return-Path for forwarding - used ofr forwarding error message for Relayed message ''' domain = self.recipient.split('@')[1] address = utils.to_return_path( "fwd", domain, str(self.id), ) return address
def get_return_path_and_to(self, recipient): if isinstance(recipient, basestring): to = MailAddress.objects.get_or_create( email=recipient)[0] return_path = utils.to_return_path( 'adhoc', self.sender.domain, self.id, to.id) if isinstance(recipient, Recipient) and recipient.mail == self: to = recipient.to return_path = recipient.return_path return (return_path, to, )
def reverse_return_path(self, message): return utils.to_return_path( "reverse", self.postbox.domain, self.id, message.id,)