Repository: cisagov/manage.get.gov

Issue:
AO Info: Remove middle name and phone number fields
### Issue Description

CISA analysts rarely need to contact the authorizing official (AO) and, if they do, they will typically coordinate thru a local agent and won't use the contact info in this application.

To reduce the amount of info requestor's need to provide for the AO, we should remove two fields that provide little value: 
- Middle Name
- Phone Number

### Acceptance Criteria
- [ ] Those fields are removed in all instances within UI. 
- Within the application process, on the Authorizing Official step
- On domain management pages, on the Authorizing Official page

### Additional Context (optional)

This issue came out of discussions related to #783 



![Image](https://github.com/cisagov/getgov/assets/119689946/92990222-7382-46c0-ad28-57d145ddb979)



### Issue Links

_No response_


Discussion:
Note to self: In both the Admin + Analyst view and the registrar and Django Admin view

Resolving patch:
diff --git a/src/registrar/forms/application_wizard.py b/src/registrar/forms/application_wizard.py
--- a/src/registrar/forms/application_wizard.py
+++ b/src/registrar/forms/application_wizard.py
@@ -329,10 +329,6 @@ def from_database(cls, obj):
         label="First name / given name",
         error_messages={"required": ("Enter the first name / given name of your authorizing official.")},
     )
-    middle_name = forms.CharField(
-        required=False,
-        label="Middle name (optional)",
-    )
     last_name = forms.CharField(
         label="Last name / family name",
         error_messages={"required": ("Enter the last name / family name of your authorizing official.")},
@@ -350,10 +346,6 @@ def from_database(cls, obj):
         label="Email",
         error_messages={"invalid": ("Enter an email address in the required format, like name@example.com.")},
     )
-    phone = PhoneNumberField(
-        label="Phone",
-        error_messages={"required": "Enter the phone number for your authorizing official."},
-    )
 
 
 class CurrentSitesForm(RegistrarForm):
diff --git a/src/registrar/forms/domain.py b/src/registrar/forms/domain.py
--- a/src/registrar/forms/domain.py
+++ b/src/registrar/forms/domain.py
@@ -213,6 +213,9 @@ class AuthorizingOfficialContactForm(ContactForm):
     def __init__(self, *args, **kwargs):
         super().__init__(*args, **kwargs)
 
+        # Overriding bc phone not required in this form
+        self.fields["phone"] = forms.IntegerField(required=False)
+
         # Set custom error messages
         self.fields["first_name"].error_messages = {
             "required": "Enter the first name / given name of your authorizing official."
@@ -227,7 +230,6 @@ def __init__(self, *args, **kwargs):
         self.fields["email"].error_messages = {
             "required": "Enter an email address in the required format, like name@example.com."
         }
-        self.fields["phone"].error_messages["required"] = "Enter a phone number for your authorizing official."
 
 
 class DomainSecurityEmailForm(forms.Form):


Test patch:
diff --git a/src/registrar/tests/test_forms.py b/src/registrar/tests/test_forms.py
--- a/src/registrar/tests/test_forms.py
+++ b/src/registrar/tests/test_forms.py
@@ -196,11 +196,6 @@ def test_anything_else_form_character_count_invalid(self):
             ["Response must be less than 1000 characters."],
         )
 
-    def test_authorizing_official_phone_invalid(self):
-        """Must be a valid phone number."""
-        form = AuthorizingOfficialForm(data={"phone": "boss@boss"})
-        self.assertTrue(form.errors["phone"][0].startswith("Enter a valid phone number "))
-
     def test_your_contact_email_invalid(self):
         """must be a valid email address."""
         form = YourContactForm(data={"email": "boss@boss"})
diff --git a/src/registrar/tests/test_views.py b/src/registrar/tests/test_views.py
--- a/src/registrar/tests/test_views.py
+++ b/src/registrar/tests/test_views.py
@@ -254,7 +254,6 @@ def test_application_form_submission(self):
         ao_form["authorizing_official-last_name"] = "Tester ATO"
         ao_form["authorizing_official-title"] = "Chief Tester"
         ao_form["authorizing_official-email"] = "testy@town.com"
-        ao_form["authorizing_official-phone"] = "(201) 555 5555"
 
         # test next button
         self.app.set_cookie(settings.SESSION_COOKIE_NAME, session_id)
@@ -265,7 +264,6 @@ def test_application_form_submission(self):
         self.assertEqual(application.authorizing_official.last_name, "Tester ATO")
         self.assertEqual(application.authorizing_official.title, "Chief Tester")
         self.assertEqual(application.authorizing_official.email, "testy@town.com")
-        self.assertEqual(application.authorizing_official.phone, "(201) 555 5555")
         # the post request should return a redirect to the next form in
         # the application
         self.assertEqual(ao_result.status_code, 302)
@@ -455,7 +453,6 @@ def test_application_form_submission(self):
         self.assertContains(review_page, "Tester ATO")
         self.assertContains(review_page, "Chief Tester")
         self.assertContains(review_page, "testy@town.com")
-        self.assertContains(review_page, "(201) 555-5555")
         self.assertContains(review_page, "city.com")
         self.assertContains(review_page, "city.gov")
         self.assertContains(review_page, "city1.gov")
@@ -875,7 +872,6 @@ def test_application_dotgov_domain_dynamic_text(self):
         ao_form["authorizing_official-last_name"] = "Tester ATO"
         ao_form["authorizing_official-title"] = "Chief Tester"
         ao_form["authorizing_official-email"] = "testy@town.com"
-        ao_form["authorizing_official-phone"] = "(201) 555 5555"
 
         self.app.set_cookie(settings.SESSION_COOKIE_NAME, session_id)
         ao_result = ao_form.submit()