Пример #1
0
def send_email_to_volunteer(volunteer: Volunteer):
    subject = utils.compute_subject(volunteer)
    send_to = utils.compute_receiver(volunteer)

    if send_to:
        text = utils.compute_text(volunteer)

        # If volunteer does not belong to any registered group, send barcode
        image_file = settings.OTHER_GROUP_IMG_PATH if volunteer.no_org else None

        send_email(subject=subject,
                   text=text,
                   send_to=send_to,
                   file=image_file)
        volunteer.mark_email_sent()
    else:
        print(f'{volunteer.name} no valid email address')
def reflect_previously_paired_result_of_requestee(
        paired_info: PairedInfo, previously_paired_requestee: Requestee,
        previously_paired_volunteer: Volunteer):

    if paired_info.volunteer_email_sent:
        previously_paired_volunteer.mark_email_sent(
            paired_info.email_sent_time_utc)
        previously_paired_volunteer.assign(previously_paired_requestee,
                                           paired_info.promised_time_slot)
        previously_paired_requestee.assign(previously_paired_volunteer,
                                           paired_info.promised_time_slot)
    else:
        previously_paired_volunteer.assign(previously_paired_requestee,
                                           paired_info.promised_time_slot)
        previously_paired_requestee.assign(previously_paired_volunteer,
                                           paired_info.promised_time_slot)
        print(
            f"Paired: {paired_info}, but email not sent, will resend this time"
        )