示例#1
0
def send_uploaded_letter(service_id, file_id):
    if not current_service.has_permission('letter'):
        abort(403)

    metadata = get_letter_metadata(service_id, file_id)

    if metadata.get('status') != 'valid':
        abort(403)

    postal_address = PostalAddress(metadata.get('recipient'))

    form = LetterUploadPostageForm(postage_zone=postal_address.postage)

    if not form.validate_on_submit():
        return uploaded_letter_preview(service_id, file_id)

    notification_api_client.send_precompiled_letter(
        service_id,
        metadata.get('filename'),
        file_id,
        form.postage.data,
        postal_address.raw_address,
    )

    return redirect(
        url_for(
            '.view_notification',
            service_id=service_id,
            notification_id=file_id,
        ))
示例#2
0
def send_uploaded_letter(service_id):
    if not (current_service.has_permission('letter') and current_service.has_permission('upload_letters')):
        abort(403)

    form = LetterUploadPostageForm()
    file_id = form.file_id.data

    if not form.validate_on_submit():
        return uploaded_letter_preview(service_id, file_id)

    postage = form.postage.data
    metadata = get_letter_metadata(service_id, file_id)
    filename = metadata.get('filename')
    recipient_address = metadata.get('recipient')

    if metadata.get('status') != 'valid':
        abort(403)

    notification_api_client.send_precompiled_letter(service_id, filename, file_id, postage, recipient_address)

    return redirect(url_for(
        '.view_notification',
        service_id=service_id,
        notification_id=file_id,
    ))