diff --git a/src/registrar/forms/application_wizard.py b/src/registrar/forms/application_wizard.py index 2ee7248de..d289b1f55 100644 --- a/src/registrar/forms/application_wizard.py +++ b/src/registrar/forms/application_wizard.py @@ -73,11 +73,23 @@ class PurposeForm(forms.Form): 'maxlength':'500', })) +class AuthorizingOfficialForm(forms.Form): + ao_given_name = forms.CharField(label="First name/given name") + ao_middle_name = forms.CharField( + required=False, + label="Middle name (optional)", + ) + ao_family_name = forms.CharField(label="Last name/family name") + ao_title = forms.CharField(label="Title or role in your organization") + ao_email = forms.EmailField(label="Email") + ao_phone = forms.CharField(label="Phone") + # List of forms in our wizard. Each entry is a tuple of a name and a form # subclass FORMS = [ ("organization", OrganizationForm), ("contact", ContactForm), + ("authorizing_official", AuthorizingOfficialForm), ("purpose", PurposeForm), ] @@ -86,6 +98,7 @@ FORMS = [ TEMPLATES = { "organization": "application_organization.html", "contact": "application_contact.html", + "authorizing_official": "application_authorizing_official.html", "purpose": "application_purpose.html", } @@ -94,6 +107,7 @@ TEMPLATES = { TITLES = { "organization": "About your organization", "contact": "Your organization's contact information", + "authorizing_official": "Authorizing official", "purpose": "Purpose of your domain", } diff --git a/src/registrar/templates/application_authorizing_official.html b/src/registrar/templates/application_authorizing_official.html new file mode 100644 index 000000000..7144522fa --- /dev/null +++ b/src/registrar/templates/application_authorizing_official.html @@ -0,0 +1,55 @@ + +{% extends 'application_form.html' %} +{% load widget_tweaks %} +{% load static %} + +{% block title %}Apply for a .gov domain – Authorizing official{% endblock %} + +{% block form_content %} +{% if wizard.steps.prev %} + +{% endif %} +

Authorizing official

+{{wizard.steps.current}} +{{form_titles|get_item:wizard.steps.current}} +

Who is the authorizing official for your organization

+ +

Your authorizing official is the person within your organization who can authorize your domain request. This is generally the highest ranking or highest elected official in your organization. Read more about who can serve as an authorizing official. +

+ +

All fields are required unless they are marked optional.

+ +
+ {{ wizard.management_form }} + {% csrf_token %} + +
+ {{ wizard.form.ao_given_name|add_label_class:"usa-label" }} + {{ wizard.form.ao_given_name|add_class:"usa-input"|attr:"aria-describedby:instructions" }} + + {{ wizard.form.ao_middle_name|add_label_class:"usa-label" }} + {{ wizard.form.ao_middle_name|add_class:"usa-input"|attr:"aria-describedby:instructions" }} + + {{ wizard.form.ao_family_name|add_label_class:"usa-label" }} + {{ wizard.form.ao_family_name|add_class:"usa-input"|attr:"aria-describedby:instructions" }} + + {{ wizard.form.ao_title|add_label_class:"usa-label" }} + {{ wizard.form.ao_title|add_class:"usa-input"|attr:"aria-describedby:instructions" }} + + {{ wizard.form.ao_email|add_label_class:"usa-label" }} + {{ wizard.form.ao_email|add_class:"usa-input"|attr:"aria-describedby:instructions" }} + + {{ wizard.form.ao_phone|add_label_class:"usa-label" }} + {{ wizard.form.ao_phone|add_class:"usa-input usa-input"|attr:"aria-describedby:instructions" }} +
+ + + +
+ +{% endblock %}