def send_post_physical_retreat_email(user, retreat): """ This function sends an email to get back to a user after a physical retreat has ended. """ start_time = retreat.start_time start_time = start_time.astimezone(pytz.timezone('US/Eastern')) end_time = retreat.end_time end_time = end_time.astimezone(pytz.timezone('US/Eastern')) context = { 'USER_FIRST_NAME': user.first_name, 'USER_LAST_NAME': user.last_name, 'USER_EMAIL': user.email, 'RETREAT_NAME': retreat.name, 'RETREAT_PLACE': retreat.place_name, 'RETREAT_START_TIME': start_time.strftime('%Y-%m-%d %H:%M'), 'RETREAT_END_TIME': end_time.strftime('%Y-%m-%d %H:%M'), } response_send_mail = send_templated_email( [user], context, 'THROWBACK_PHYSICAL_RETREAT' ) return response_send_mail
def send_physical_retreat_reminder_email(user, retreat): """ This function sends an email to notify a user that a physical retreat in which he has bought a seat is starting soon. """ start_time = retreat.start_time start_time = start_time.astimezone(pytz.timezone('US/Eastern')) end_time = retreat.end_time end_time = end_time.astimezone(pytz.timezone('US/Eastern')) context = { 'USER_FIRST_NAME': user.first_name, 'USER_LAST_NAME': user.last_name, 'USER_EMAIL': user.email, 'RETREAT_NAME': retreat.name, 'RETREAT_PLACE': retreat.place_name, 'RETREAT_START_TIME': start_time.strftime('%Y-%m-%d %H:%M'), 'RETREAT_END_TIME': end_time.strftime('%Y-%m-%d %H:%M'), } response_send_mail = send_templated_email( [user], context, 'REMINDER_PHYSICAL_RETREAT' ) return response_send_mail
def send_physical_retreat_confirmation_email(user, retreat): """ This function sends an email to notify a user that a physical retreat in which he has bought a seat is starting soon. """ start_time = retreat.start_time start_time = start_time.astimezone(pytz.timezone('US/Eastern')) end_time = retreat.end_time end_time = end_time.astimezone(pytz.timezone('US/Eastern')) context = { 'USER_FIRST_NAME': user.first_name, 'USER_LAST_NAME': user.last_name, 'USER_EMAIL': user.email, 'RETREAT_NAME': retreat.name, 'RETREAT_START_TIME': start_time.strftime('%Y-%m-%d %H:%M'), 'RETREAT_END_TIME': end_time.strftime('%Y-%m-%d %H:%M'), 'RETREAT_VIDEOCONFERENCE_TOOL': retreat.videoconference_tool, 'RETREAT_VIDEOCONFERENCE_LINK': retreat.videoconference_link } if len(retreat.pictures.all()): context['RETREAT_PICTURE'] = "{0}{1}".format( settings.MEDIA_URL, retreat.pictures.first().picture.url) response_send_mail = send_templated_email([user], context, 'WELCOME_PHYSICAL_RETREAT') return response_send_mail
def send_post_virtual_retreat_email(user, retreat): """ This function sends an email to get back to a user after a virtual retreat has ended. """ start_time = retreat.start_time start_time = start_time.astimezone(pytz.timezone('US/Eastern')) end_time = retreat.end_time end_time = end_time.astimezone(pytz.timezone('US/Eastern')) context = { 'USER_FIRST_NAME': user.first_name, 'USER_LAST_NAME': user.last_name, 'USER_EMAIL': user.email, 'RETREAT_NAME': retreat.name, 'RETREAT_START_DATE': format_date( start_time, format='long', locale='fr' ), 'RETREAT_START_TIME': start_time.strftime('%-Hh%M'), 'RETREAT_END_DATE': format_date( end_time, format='long', locale='fr' ), 'RETREAT_END_TIME': end_time.strftime('%-Hh%M'), 'LINK_TO_REVIEW_FORM': retreat.review_url, 'LINK_TO_BE_PREPARED': settings.LOCAL_SETTINGS[ 'FRONTEND_INTEGRATION'][ 'LINK_TO_BE_PREPARED_FOR_VIRTUAL_RETREAT'], 'LINK_TO_USER_PROFILE': settings.LOCAL_SETTINGS[ 'FRONTEND_INTEGRATION']['PROFILE_URL'], } response_send_mail = send_templated_email( [user], context, 'THROWBACK_VIRTUAL_RETREAT' ) return response_send_mail
def send_virtual_retreat_confirmation_email(user, retreat): """ This function sends an email to notify a user that a virtual retreat in which he has bought a seat is starting soon. """ start_time = retreat.start_time start_time = start_time.astimezone(pytz.timezone('US/Eastern')) end_time = retreat.end_time end_time = end_time.astimezone(pytz.timezone('US/Eastern')) context = { 'USER_FIRST_NAME': user.first_name, 'USER_LAST_NAME': user.last_name, 'USER_EMAIL': user.email, 'RETREAT_NAME': retreat.name, 'RETREAT_START_DATE': format_date(start_time, format='long', locale='fr'), 'RETREAT_START_TIME': start_time.strftime('%-Hh%M'), 'RETREAT_END_DATE': format_date(end_time, format='long', locale='fr'), 'RETREAT_END_TIME': end_time.strftime('%-Hh%M'), 'LINK_TO_BE_PREPARED': settings.LOCAL_SETTINGS['FRONTEND_INTEGRATION'] ['LINK_TO_BE_PREPARED_FOR_VIRTUAL_RETREAT'], 'LINK_TO_USER_PROFILE': settings.LOCAL_SETTINGS['FRONTEND_INTEGRATION']['PROFILE_URL'], } if len(retreat.pictures.all()): context['RETREAT_PICTURE'] = "{0}{1}".format( settings.MEDIA_URL, retreat.pictures.first().picture.url) response_send_mail = send_templated_email([user], context, 'WELCOME_VIRTUAL_RETREAT') return response_send_mail