Exemplo n.º 1
0
def send_offerer_driven_cancellation_email_to_user(
        booking: Booking, send_email: Callable[..., bool]) -> bool:
    email = make_offerer_driven_cancellation_email_for_user(booking)
    recipients = [booking.user.email]
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 2
0
def send_reset_password_email(user: User, send_email: Callable[..., bool],
                              app_origin_url: str) -> bool:
    email = make_reset_password_email(user, app_origin_url)
    recipients = [user.email]
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 3
0
def send_venue_validation_confirmation_email(
        venue: Venue, send_email: Callable[..., bool]) -> bool:
    recipients = find_all_emails_of_user_offerers_admins(
        venue.managingOffererId)
    email = make_venue_validation_confirmation_email(venue)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 4
0
def maybe_send_offerer_validation_email(offerer: Offerer, user_offerer: UserOfferer,
                                        send_email: Callable[[dict], bool]) -> bool:
    if offerer.isValidated and user_offerer.isValidated:
        return
    email = write_object_validation_email(offerer, user_offerer)
    recipients = [ADMINISTRATION_EMAIL_ADDRESS]
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 5
0
def send_validation_confirmation_email(
        user_offerer: UserOfferer, offerer: Offerer,
        send_email: Callable[..., bool]) -> bool:
    offerer_id = _get_offerer_id(offerer, user_offerer)
    recipients = find_all_emails_of_user_offerers_admins(offerer_id)
    email = make_validation_confirmation_email(user_offerer, offerer)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 6
0
def send_offerer_driven_cancellation_email_to_offerer(
        booking: Booking, send_email: Callable[..., bool]) -> bool:
    offerer_email = booking.stock.resolvedOffer.bookingEmail
    recipients = []
    if offerer_email:
        recipients.append(offerer_email)
    recipients.append(ADMINISTRATION_EMAIL_ADDRESS)
    email = make_offerer_driven_cancellation_email_for_offerer(booking)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 7
0
def send_booking_confirmation_email_to_user(
        booking: Booking,
        send_email: Callable[..., bool],
        is_cancellation: bool = False) -> bool:
    email = make_user_booking_recap_email(booking, is_cancellation)
    recipients = [booking.user.email]

    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)

    return send_email(data=email)
Exemplo n.º 8
0
def send_booking_recap_emails(booking: Booking,
                              send_email: Callable[..., bool]) -> bool:
    email = make_offerer_booking_recap_email_after_user_action(booking)

    recipients = [ADMINISTRATION_EMAIL_ADDRESS]
    if booking.stock.resolvedOffer.bookingEmail:
        recipients.append(booking.stock.resolvedOffer.bookingEmail)

    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)

    return send_email(data=email)
Exemplo n.º 9
0
def send_batch_cancellation_email_to_offerer(
        bookings: List[Booking], cancellation_case: str,
        send_email: Callable[..., bool]) -> bool:
    booking = bookings[0] if bookings else None
    offerer_email = booking.stock.resolvedOffer.bookingEmail
    recipients = []
    if offerer_email:
        recipients.append(offerer_email)
    recipients.append(ADMINISTRATION_EMAIL_ADDRESS)
    email = make_batch_cancellation_email(bookings, cancellation_case)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 10
0
def send_final_booking_recap_email(stock: Stock,
                                   send_email: Callable[..., bool]) -> bool:
    stock_bookings = find_all_ongoing_bookings_by_stock(stock)
    if len(stock_bookings) == 0:
        logger.info("Not sending recap for  " + str(stock) +
                    " as it has no bookings")
    email = make_final_recap_email_for_stock_with_event(stock)

    recipients = [ADMINISTRATION_EMAIL_ADDRESS]
    if stock.resolvedOffer.bookingEmail:
        recipients.append(stock.resolvedOffer.bookingEmail)

    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], recipients)

    successfully_sent = send_email(data=email)

    set_booking_recap_sent_and_save(stock)
    return successfully_sent
Exemplo n.º 11
0
def send_remote_beneficiaries_import_report_email(new_beneficiaries: List[User], error_messages: List[str],
                                                  recipients: Union[List, str], send_email: Callable[[dict], bool]) -> bool:
    email = make_beneficiaries_import_email(new_beneficiaries, error_messages)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 12
0
def send_offer_creation_notification_to_administration(offer: Offer, author: User, app_origin_url: str,
                                                       send_email: Callable[[dict], bool]) -> bool:
    email = make_offer_creation_notification_email(offer, author, app_origin_url)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(email['Html-part'], email['To'])
    return send_email(data=email)
Exemplo n.º 13
0
def send_venue_validation_email(venue: Venue, send_email: Callable[[dict], bool]) -> bool:
    email = make_venue_validation_email(venue)
    recipients = [ADMINISTRATION_EMAIL_ADDRESS]
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 14
0
def send_payments_report_emails(not_processable_payments_csv: str, error_payments_csv: str, grouped_payments: Dict,
                                recipients: List[str], send_email: Callable[[dict], bool]) -> bool:
    email = make_payments_report_email(not_processable_payments_csv, error_payments_csv, grouped_payments)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 15
0
def send_users_activation_report(csv_attachment: str, recipients: List[str], send_email: Callable[[dict], bool]) -> bool:
    email = make_activation_users_email(csv_attachment)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients("", recipients)
    return send_email(data=email)
Exemplo n.º 16
0
def send_wallet_balances_email(csv_attachment: str, recipients: List[str], send_email: Callable[[dict], bool]) -> bool:
    email = make_wallet_balances_email(csv_attachment)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients("", recipients)
    return send_email(data=email)
Exemplo n.º 17
0
def send_payment_message_email(xml_attachment: str, checksum: bytes, recipients: List[str],
                               send_email: Callable[[dict], bool]) -> bool:
    email = make_payment_message_email(xml_attachment, checksum)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(email['Html-part'], recipients)
    return send_email(data=email)
Exemplo n.º 18
0
def send_activation_notification_email(user: User,
                                       send_email: Callable) -> bool:
    email = make_activation_notification_email(user)
    email['Html-part'], email['To'] = compute_email_html_part_and_recipients(
        email['Html-part'], [user.email])
    return send_email(data=email)