mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-05-17 18:09:25 +02:00
Update to have flag logic
This commit is contained in:
parent
2ec954ff1d
commit
1c015b7aa1
3 changed files with 12 additions and 11 deletions
|
@ -17,6 +17,8 @@ from .utility.time_stamped_model import TimeStampedModel
|
||||||
from ..utility.email import send_templated_email, EmailSendingError
|
from ..utility.email import send_templated_email, EmailSendingError
|
||||||
from itertools import chain
|
from itertools import chain
|
||||||
|
|
||||||
|
from waffle.decorators import flag_is_active
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
@ -1165,19 +1167,20 @@ class DomainRequest(TimeStampedModel):
|
||||||
def _is_policy_acknowledgement_complete(self):
|
def _is_policy_acknowledgement_complete(self):
|
||||||
return self.is_policy_acknowledged is not None
|
return self.is_policy_acknowledged is not None
|
||||||
|
|
||||||
def _is_general_form_complete(self):
|
def _is_general_form_complete(self, request):
|
||||||
|
has_profile_feature_flag = flag_is_active(request, "profile_feature")
|
||||||
return (
|
return (
|
||||||
self._is_organization_name_and_address_complete()
|
self._is_organization_name_and_address_complete()
|
||||||
and self._is_authorizing_official_complete()
|
and self._is_authorizing_official_complete()
|
||||||
and self._is_requested_domain_complete()
|
and self._is_requested_domain_complete()
|
||||||
and self._is_purpose_complete()
|
and self._is_purpose_complete()
|
||||||
and self._is_submitter_complete()
|
and (self._is_submitter_complete() if not has_profile_feature_flag else True)
|
||||||
and self._is_other_contacts_complete()
|
and self._is_other_contacts_complete()
|
||||||
and self._is_additional_details_complete()
|
and self._is_additional_details_complete()
|
||||||
and self._is_policy_acknowledgement_complete()
|
and self._is_policy_acknowledgement_complete()
|
||||||
)
|
)
|
||||||
|
|
||||||
def _form_complete(self):
|
def _form_complete(self, request):
|
||||||
match self.generic_org_type:
|
match self.generic_org_type:
|
||||||
case DomainRequest.OrganizationChoices.FEDERAL:
|
case DomainRequest.OrganizationChoices.FEDERAL:
|
||||||
is_complete = self._is_federal_complete()
|
is_complete = self._is_federal_complete()
|
||||||
|
@ -1198,8 +1201,6 @@ class DomainRequest(TimeStampedModel):
|
||||||
case _:
|
case _:
|
||||||
# NOTE: Shouldn't happen, this is only if somehow they didn't choose an org type
|
# NOTE: Shouldn't happen, this is only if somehow they didn't choose an org type
|
||||||
is_complete = False
|
is_complete = False
|
||||||
|
if not is_complete or not self._is_general_form_complete(request):
|
||||||
if not is_complete or not self._is_general_form_complete():
|
|
||||||
return False
|
return False
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
|
@ -2012,8 +2012,8 @@ class TestDomainRequestIncomplete(TestCase):
|
||||||
self.domain_request.is_policy_acknowledged = None
|
self.domain_request.is_policy_acknowledged = None
|
||||||
self.assertFalse(self.domain_request._is_policy_acknowledgement_complete())
|
self.assertFalse(self.domain_request._is_policy_acknowledgement_complete())
|
||||||
|
|
||||||
def test_form_complete(self):
|
def test_form_complete(self, request):
|
||||||
self.assertTrue(self.domain_request._form_complete())
|
self.assertTrue(self.domain_request._form_complete(request))
|
||||||
self.domain_request.generic_org_type = None
|
self.domain_request.generic_org_type = None
|
||||||
self.domain_request.save()
|
self.domain_request.save()
|
||||||
self.assertFalse(self.domain_request._form_complete())
|
self.assertFalse(self.domain_request._form_complete(request))
|
||||||
|
|
|
@ -383,7 +383,7 @@ class DomainRequestWizard(DomainRequestWizardPermissionView, TemplateView):
|
||||||
has_profile_flag = flag_is_active(self.request, "profile_feature")
|
has_profile_flag = flag_is_active(self.request, "profile_feature")
|
||||||
|
|
||||||
context_stuff = {}
|
context_stuff = {}
|
||||||
if DomainRequest._form_complete(self.domain_request):
|
if DomainRequest._form_complete(self.domain_request, self.request):
|
||||||
modal_button = '<button type="submit" ' 'class="usa-button" ' ">Submit request</button>"
|
modal_button = '<button type="submit" ' 'class="usa-button" ' ">Submit request</button>"
|
||||||
context_stuff = {
|
context_stuff = {
|
||||||
"not_form": False,
|
"not_form": False,
|
||||||
|
@ -695,7 +695,7 @@ class Review(DomainRequestWizard):
|
||||||
forms = [] # type: ignore
|
forms = [] # type: ignore
|
||||||
|
|
||||||
def get_context_data(self):
|
def get_context_data(self):
|
||||||
if DomainRequest._form_complete(self.domain_request) is False:
|
if DomainRequest._form_complete(self.domain_request, self.request) is False:
|
||||||
logger.warning("User arrived at review page with an incomplete form.")
|
logger.warning("User arrived at review page with an incomplete form.")
|
||||||
context = super().get_context_data()
|
context = super().get_context_data()
|
||||||
context["Step"] = Step.__members__
|
context["Step"] = Step.__members__
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue