def notify_friend_request(sender, recipient, accepted=False): ''' Notify a user he has a new or accepted friend request by sending him an email ''' from coach.mail import MailBuilder builder = MailBuilder('mail/friend.request.html') data = { 'sender': sender, 'recipient': recipient, 'accepted': accepted, } if accepted: builder.language = sender.language builder.subject = u'[RunReport] Demande d\'ami acceptée' builder.to = [ sender.email, ] else: builder.language = recipient.language builder.subject = u'[RunReport] Nouvelle demande d\'ami' builder.to = [ recipient.email, ] mail = builder.build(data) mail.send()
def notify_friend_request(sender, recipient, accepted=False): ''' Notify a user he has a new or accepted friend request by sending him an email ''' from coach.mail import MailBuilder builder = MailBuilder('mail/friend.request.html') data = { 'sender' : sender, 'recipient' : recipient, 'accepted' : accepted, } if accepted: builder.language = sender.language builder.subject = u'[RunReport] Demande d\'ami acceptée' builder.to = [sender.email, ] else: builder.language = recipient.language builder.subject = u'[RunReport] Nouvelle demande d\'ami' builder.to = [recipient.email, ] mail = builder.build(data) mail.send()
def race_mail(*args, **kwargs): ''' Send a mail to all users having a race today ''' from sport.models import SportSession from datetime import date, timedelta from coach.mail import MailBuilder # Setup mail builder builder = MailBuilder('mail/race.html') # Load tommorow's race tmrw = date.today() + timedelta(days=1) races = SportSession.objects.filter(day__date=tmrw, type='race') # Build and Send all mails for race in races: user = race.day.week.user data = { 'race' : race, 'user' : user, } builder.language = user.language builder.subject = u'Votre course %s - RunReport' % (race.name,) builder.to = [user.email, ] mail = builder.build(data) mail.send()
def find_badges(self, save=False): """ Find all the best badges for a user """ from badges.models import BadgeCategory from coach.mail import MailBuilder all_added = [] for cat in BadgeCategory.objects.all(): badges, added = cat.find_badges(self, save) if added: all_added += added # Notify a user about new badges # in one mail if all_added: data = {"user": self, "badges": all_added} mb = MailBuilder("mail/badges.html") mb.language = self.language mb.subject = _("New badges") mb.to = [self.email] mail = mb.build(data) mail.send() return all_added
def find_badges(self, save=False): ''' Find all the best badges for a user ''' from badges.models import BadgeCategory from coach.mail import MailBuilder all_added = [] for cat in BadgeCategory.objects.all(): badges, added = cat.find_badges(self, save) if added: all_added += added # Notify a user about new badges # in one mail if all_added: data = { 'user': self, 'badges': all_added, } mb = MailBuilder('mail/badges.html') mb.language = self.language mb.subject = _('New badges') mb.to = [ self.email, ] mail = mb.build(data) mail.send() return all_added