Add radio button and convert from to WTForm

This commit is contained in:
David McDonald
2019-10-09 11:23:02 +01:00
parent 9e781177fd
commit fdf74572b9
3 changed files with 21 additions and 3 deletions

View File

@@ -765,6 +765,19 @@ class LetterTemplatePostageForm(StripWhitespaceForm):
)
class LetterUploadPostageForm(StripWhitespaceForm):
postage = RadioField(
'Choose the postage for this letter',
choices=[
('first', 'First class post'),
('second', 'Second class post'),
],
default='second',
validators=[DataRequired()]
)
file_id = HiddenField()
class ForgotPasswordForm(StripWhitespaceForm):
email_address = email_address(gov_user=False)

View File

@@ -18,7 +18,7 @@ from requests import RequestException
from app import current_service, notification_api_client, service_api_client
from app.extensions import antivirus_client
from app.main import main
from app.main.forms import PDFUploadForm
from app.main.forms import LetterUploadPostageForm, PDFUploadForm
from app.main.views.jobs import view_jobs
from app.s3_client.s3_letter_upload_client import (
get_letter_metadata,
@@ -154,6 +154,8 @@ def uploaded_letter_preview(service_id, file_id):
error = get_letter_validation_error(error_message, invalid_pages, page_count)
template_dict = service_api_client.get_precompiled_template(service_id)
form = LetterUploadPostageForm()
template = get_template(
template_dict,
service_id,
@@ -172,6 +174,7 @@ def uploaded_letter_preview(service_id, file_id):
status=status,
file_id=file_id,
error=error,
form=form,
)

View File

@@ -1,6 +1,7 @@
{% extends "withnav_template.html" %}
{% from "components/banner.html" import banner_wrapper %}
{% from "components/page-header.html" import page_header %}
{% from "components/radios.html" import radios %}
{% block service_page_title %}
{{ original_filename }}
@@ -39,8 +40,9 @@
'main.send_uploaded_letter',
service_id=current_service.id,
)}}" class='page-footer'>
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
<input type="hidden" name="file_id" value="{{ file_id }}" />
{{ form.csrf_token }}
{{ radios(form.postage, hide_legend=true) }}
{{ form.file_id(value=file_id) }}
<button type="submit" class="button">Send 1 letter</button>
</form>
</div>