Merge branch 'main' into za/2157-use-creator-email

This commit is contained in:
zandercymatics 2024-06-27 14:32:17 -06:00
commit f7f99a730a
No known key found for this signature in database
GPG key ID: FF4636ABEC9682B7
18 changed files with 662 additions and 63 deletions

View file

@ -18,6 +18,8 @@ from .utility.time_stamped_model import TimeStampedModel
from ..utility.email import send_templated_email, EmailSendingError
from itertools import chain
from waffle.decorators import flag_is_active
logger = logging.getLogger(__name__)
@ -295,6 +297,11 @@ class DomainRequest(TimeStampedModel):
blank=True,
)
action_needed_reason_email = models.TextField(
null=True,
blank=True,
)
federal_agency = models.ForeignKey(
"registrar.FederalAgency",
on_delete=models.PROTECT,
@ -1180,19 +1187,21 @@ class DomainRequest(TimeStampedModel):
def _is_policy_acknowledgement_complete(self):
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 (
self._is_organization_name_and_address_complete()
and self._is_authorizing_official_complete()
and self._is_requested_domain_complete()
and self._is_purpose_complete()
and self._is_submitter_complete()
# NOTE: This flag leaves submitter as empty (request wont submit) hence preset to True
and (self._is_submitter_complete() if not has_profile_feature_flag else True)
and self._is_other_contacts_complete()
and self._is_additional_details_complete()
and self._is_policy_acknowledgement_complete()
)
def _form_complete(self):
def _form_complete(self, request):
match self.generic_org_type:
case DomainRequest.OrganizationChoices.FEDERAL:
is_complete = self._is_federal_complete()
@ -1213,8 +1222,6 @@ class DomainRequest(TimeStampedModel):
case _:
# NOTE: Shouldn't happen, this is only if somehow they didn't choose an org type
is_complete = False
if not is_complete or not self._is_general_form_complete():
if not is_complete or not self._is_general_form_complete(request):
return False
return True