Exemplo n.º 1
0
def set_template_sender(service_id, template_id):
    template = current_service.get_template_with_user_permission_or_403(
        template_id, current_user)
    sender_details = get_template_sender_form_dict(service_id, template)
    no_senders = sender_details.get('no_senders', False)

    form = SetTemplateSenderForm(
        sender=sender_details['current_choice'],
        sender_choices=sender_details['value_and_label'],
    )
    option_hints = {sender_details['default_sender']: '(Default)'}

    if form.validate_on_submit():
        service_api_client.update_service_template_sender(
            service_id,
            template_id,
            form.sender.data if form.sender.data else None,
        )
        return redirect(
            url_for('.view_template',
                    service_id=service_id,
                    template_id=template_id))

    return render_template('views/templates/set-template-sender.html',
                           form=form,
                           template_id=template_id,
                           no_senders=no_senders,
                           option_hints=option_hints)
def service_add_letter_contact(service_id):
    form = ServiceLetterContactBlockForm()
    first_contact_block = current_service.count_letter_contact_details == 0
    from_template = request.args.get('from_template')
    if form.validate_on_submit():
        new_letter_contact = service_api_client.add_letter_contact(
            current_service.id,
            contact_block=form.letter_contact_block.data.replace('\r', '')
            or None,
            is_default=first_contact_block
            if first_contact_block else form.is_default.data)
        if from_template:
            service_api_client.update_service_template_sender(
                service_id,
                from_template,
                new_letter_contact['data']['id'],
            )
            return redirect(
                url_for('.view_template',
                        service_id=service_id,
                        template_id=from_template))
        return redirect(
            url_for('.service_letter_contact_details', service_id=service_id))
    return render_template(
        'views/service-settings/letter-contact/add.html',
        form=form,
        first_contact_block=first_contact_block,
        back_link=(url_for('main.view_template',
                           template_id=from_template,
                           service_id=current_service.id) if from_template else
                   url_for('.service_letter_contact_details',
                           service_id=current_service.id)),
    )
Exemplo n.º 3
0
def set_template_sender(service_id, template_id):
    template = current_service.get_template_with_user_permission_or_403(
        template_id, current_user)
    sender_details = get_template_sender_form_dict(service_id, template)
    no_senders = sender_details.get('no_senders', False)

    form = SetTemplateSenderForm(
        sender=sender_details['current_choice'],
        sender_choices=sender_details['value_and_label'],
    )
    form.sender.param_extensions = {'items': []}
    for item_value, _item_label in sender_details['value_and_label']:
        if item_value == sender_details['default_sender']:
            extensions = {'hint': {'text': '(Default)'}}
        else:
            extensions = {
            }  # if no extensions needed, send an empty dict to preserve order of items

        form.sender.param_extensions['items'].append(extensions)

    if form.validate_on_submit():
        service_api_client.update_service_template_sender(
            service_id,
            template_id,
            form.sender.data if form.sender.data else None,
        )
        return redirect(
            url_for('.view_template',
                    service_id=service_id,
                    template_id=template_id))

    return render_template('views/templates/set-template-sender.html',
                           form=form,
                           template_id=template_id,
                           no_senders=no_senders)
Exemplo n.º 4
0
def set_template_sender(service_id, template_id):
    template = current_service.get_template_with_user_permission_or_403(
        template_id, current_user)
    sender_details = get_template_sender_form_dict(service_id, template)
    no_senders = sender_details.get("no_senders", False)

    form = SetTemplateSenderForm(
        sender=sender_details["current_choice"],
        sender_choices=sender_details["value_and_label"],
    )
    option_hints = {sender_details["default_sender"]: "(Default)"}

    if form.validate_on_submit():
        service_api_client.update_service_template_sender(
            service_id,
            template_id,
            form.sender.data if form.sender.data else None,
        )
        return redirect(
            url_for(".view_template",
                    service_id=service_id,
                    template_id=template_id))

    return render_template(
        "views/templates/set-template-sender.html",
        form=form,
        template_id=template_id,
        no_senders=no_senders,
        option_hints=option_hints,
    )