diff --git a/src/registrar/config/urls.py b/src/registrar/config/urls.py index 436ca3ae0..3c9e185b5 100644 --- a/src/registrar/config/urls.py +++ b/src/registrar/config/urls.py @@ -33,7 +33,7 @@ get_action_needed_email_for_user_json, ) -from registrar.views.domain_request import Step +from registrar.views.domain_request import Step, PortfolioDomainRequestStep from registrar.views.transfer_user import TransferUserView from registrar.views.utility import always_404 from api.views import available, rdap, get_current_federal, get_current_full @@ -61,6 +61,9 @@ (Step.ADDITIONAL_DETAILS, views.AdditionalDetails), (Step.REQUIREMENTS, views.Requirements), (Step.REVIEW, views.Review), + # Portfolio steps + (PortfolioDomainRequestStep.REQUESTING_ENTITY, views.RequestingEntity), + (PortfolioDomainRequestStep.ADDITIONAL_DETAILS, views.PortfolioAdditionalDetails), ]: domain_request_urls.append(path(f"{step}/", view.as_view(), name=step)) @@ -184,7 +187,12 @@ name="export_data_type_requests", ), path( - "domain-request//edit/", + "reports/export_data_type_requests/", + ExportDataTypeRequests.as_view(), + name="export_data_type_requests", + ), + path( + "domain-request//edit/", views.DomainRequestWizard.as_view(), name=views.DomainRequestWizard.EDIT_URL_NAME, ), diff --git a/src/registrar/forms/domain_request_wizard.py b/src/registrar/forms/domain_request_wizard.py index f2fdd32bc..6b160b14d 100644 --- a/src/registrar/forms/domain_request_wizard.py +++ b/src/registrar/forms/domain_request_wizard.py @@ -21,6 +21,13 @@ logger = logging.getLogger(__name__) +class RequestingEntityForm(RegistrarForm): + organization_name = forms.CharField( + label="Organization name", + error_messages={"required": "Enter the name of your organization."}, + ) + + class OrganizationTypeForm(RegistrarForm): generic_org_type = forms.ChoiceField( # use the long names in the domain request form diff --git a/src/registrar/forms/utility/wizard_form_helper.py b/src/registrar/forms/utility/wizard_form_helper.py index ba3c37e1e..eedf5839b 100644 --- a/src/registrar/forms/utility/wizard_form_helper.py +++ b/src/registrar/forms/utility/wizard_form_helper.py @@ -279,11 +279,11 @@ def get_initial_value(self): return initial_value -def request_step_list(request_wizard): +def request_step_list(request_wizard, step_enum): """Dynamically generated list of steps in the form wizard.""" step_list = [] - for step in request_wizard.StepEnum: - condition = request_wizard.WIZARD_CONDITIONS.get(step, True) + for step in step_enum: + condition = request_wizard.wizard_conditions.get(step, True) if callable(condition): condition = condition(request_wizard) if condition: diff --git a/src/registrar/templates/domain_request_dotgov_domain.html b/src/registrar/templates/domain_request_dotgov_domain.html index 5864cad29..764154254 100644 --- a/src/registrar/templates/domain_request_dotgov_domain.html +++ b/src/registrar/templates/domain_request_dotgov_domain.html @@ -12,8 +12,10 @@

Names that uniquely apply to your organization are likely to be approved over names that could also apply to other organizations. {% if not is_federal %}In most instances, this requires including your state’s two-letter abbreviation.{% endif %}

- + + {% if not portfolio %}

Requests for your organization’s initials or an abbreviated name might not be approved, but we encourage you to request the name you want.

+ {% endif %}

Note that only federal agencies can request generic terms like vote.gov.

diff --git a/src/registrar/templates/domain_request_intro.html b/src/registrar/templates/domain_request_intro.html index fd94e0ef1..6b5223991 100644 --- a/src/registrar/templates/domain_request_intro.html +++ b/src/registrar/templates/domain_request_intro.html @@ -12,7 +12,11 @@

You’re about to start your .gov domain request.

You don’t have to complete the process in one session. You can save what you enter and come back to it when you’re ready.

+ {% if portfolio %} +

We’ll use the information you provide to verify your domain request meets our guidelines.

+ {% else %}

We’ll use the information you provide to verify your organization’s eligibility for a .gov domain. We’ll also verify that the domain you request meets our guidelines.

+ {% endif %}

Time to complete the form

If you have all the information you need, completing your domain request might take around 15 minutes.

diff --git a/src/registrar/templates/domain_request_requesting_entity.html b/src/registrar/templates/domain_request_requesting_entity.html new file mode 100644 index 000000000..ed8dd771c --- /dev/null +++ b/src/registrar/templates/domain_request_requesting_entity.html @@ -0,0 +1,16 @@ +{% extends 'domain_request_form.html' %} +{% load field_helpers url_helpers %} + +{% block form_instructions %} +

🛸🛸🛸🛸 Placeholder content 🛸🛸🛸🛸

+{% endblock %} + +{% block form_fields %} +
+ +

What is the name of your space vessel?

+
+ + {% input_with_errors forms.0.organization_name %} +
+{% endblock %} diff --git a/src/registrar/templates/domain_request_review.html b/src/registrar/templates/domain_request_review.html index 03624d2ec..03cf31287 100644 --- a/src/registrar/templates/domain_request_review.html +++ b/src/registrar/templates/domain_request_review.html @@ -19,5 +19,9 @@

Review and submit your domain request

{% endblock %} {% block form_fields %} - {% include "includes/request_review_steps.html" with is_editable=True %} + {% if portfolio %} + {% include "includes/portfolio_request_review_steps.html" with is_editable=True %} + {% else %} + {% include "includes/request_review_steps.html" with is_editable=True %} + {% endif %} {% endblock %} diff --git a/src/registrar/templates/includes/header_extended.html b/src/registrar/templates/includes/header_extended.html index a3b2364a9..8f12706ab 100644 --- a/src/registrar/templates/includes/header_extended.html +++ b/src/registrar/templates/includes/header_extended.html @@ -34,6 +34,7 @@