From b156c86aef2bab1a518c0d54c249017ae1300e3a Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Thu, 10 Aug 2023 16:15:02 -0400
Subject: [PATCH 01/43] remove broad css selector for body color
---
src/registrar/assets/sass/_theme/_admin.scss | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/registrar/assets/sass/_theme/_admin.scss b/src/registrar/assets/sass/_theme/_admin.scss
index 4488ed398..2e5da018e 100644
--- a/src/registrar/assets/sass/_theme/_admin.scss
+++ b/src/registrar/assets/sass/_theme/_admin.scss
@@ -105,7 +105,6 @@ html[data-theme="light"] {
}
// Dark mode django (bug due to scss cascade) and USWDS tables
- body,
.change-list .usa-table,
.change-list .usa-table--striped tbody tr:nth-child(odd) td {
color: var(--body-fg)!important;
@@ -114,7 +113,6 @@ html[data-theme="light"] {
// Firefox needs this to be specifically set
html[data-theme="dark"] {
- body,
.change-list .usa-table,
.change-list .usa-table--striped tbody tr:nth-child(odd) td {
color: var(--body-fg)!important;
From 5e64848a2ecb63bd01d071f2c41df8c04618213e Mon Sep 17 00:00:00 2001
From: Cameron Dixon
Date: Fri, 11 Aug 2023 00:51:44 -0400
Subject: [PATCH 02/43] Update developer-onboarding.md
Small edits, add link to team onboarding doc, replacing an legacy 18F charter
---
.github/ISSUE_TEMPLATE/developer-onboarding.md | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/developer-onboarding.md b/.github/ISSUE_TEMPLATE/developer-onboarding.md
index 11b2d86fc..8d0f9c2d8 100644
--- a/.github/ISSUE_TEMPLATE/developer-onboarding.md
+++ b/.github/ISSUE_TEMPLATE/developer-onboarding.md
@@ -24,13 +24,13 @@ There are several tools we use locally that you will need to have.
### Steps for the onboardee
- [ ] Setup [commit signing in Github](#setting-up-commit-signing) and with git locally.
- [ ] [Create a cloud.gov account](https://cloud.gov/docs/getting-started/accounts/)
-- [ ] Have an admin add you to the CISA Github organization and Dotgov Team.
+- [ ] Email github@cisa.dhs.gov (cc: Cameron) to add you to the [CISA Github organization](https://github.com/getgov) and [.gov Team](https://github.com/orgs/cisagov/teams/gov).
- [ ] Ensure you can login to your cloud.gov account via the CLI
```bash
cf login -a api.fr.cloud.gov --sso
```
- [ ] Have an admin add you to cloud.gov org and set up your [sandbox developer space](#setting-up-developer-sandbox). Ensure you can deploy to your sandbox space.
-- [ ] Have an admin add you to our login.gov sandbox team (`.gov registrar poc`) via the [dashboard](https://dashboard.int.identitysandbox.gov/).
+- [ ] Have an admin add you to our login.gov sandbox team (`.gov Registrar`) via the [dashboard](https://dashboard.int.identitysandbox.gov/).
**Note:** As mentioned in the [Login documentation](https://developers.login.gov/testing/), the sandbox Login account is different account from your regular, production Login account. If you have not created a Login account for the sandbox before, you will need to create a new account first.
@@ -39,12 +39,12 @@ cf login -a api.fr.cloud.gov --sso
### Steps for the onboarder
- [ ] Add the onboardee to cloud.gov org (cisa-getgov-prototyping)
- [ ] Setup a [developer specific space for the new developer](#setting-up-developer-sandbox)
-- [ ] Add the onboardee to our login.gov sandbox team (`.gov registrar poc`) via the [dashboard](https://dashboard.int.identitysandbox.gov/)
+- [ ] Add the onboardee to our login.gov sandbox team (`.gov Registrar`) via the [dashboard](https://dashboard.int.identitysandbox.gov/)
## Documents to Review
-- [ ] [Team Charter](https://docs.google.com/document/d/1xhMKlW8bMcxyF7ipsOYxw1SQYVi-lWPkcDHSUS6miNg/edit), in particular our Github Policy
+- [ ] [Team Onboarding](https://docs.google.com/document/d/1ukbpW4LSqkb_CCt8LWfpehP03qqfyYfvK3Fl21NaEq8/edit?usp=sharing)
- [ ] [Architecture Decision Records](https://github.com/cisagov/dotgov/tree/main/docs/architecture/decisions)
- [ ] [Contributing Policy](https://github.com/cisagov/dotgov/tree/main/CONTRIBUTING.md)
From 5f6a7cd044dc0d4b4d7c9feae4e74dfb306f2b39 Mon Sep 17 00:00:00 2001
From: zandercymatics <141044360+zandercymatics@users.noreply.github.com>
Date: Sun, 13 Aug 2023 19:40:30 -0600
Subject: [PATCH 03/43] Fixes the logout bug
It works!
---
src/registrar/config/settings.py | 2 +-
src/registrar/config/urls.py | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/registrar/config/settings.py b/src/registrar/config/settings.py
index f6873b226..f16efc18f 100644
--- a/src/registrar/config/settings.py
+++ b/src/registrar/config/settings.py
@@ -285,7 +285,7 @@ SERVER_EMAIL = "root@get.gov"
# Content-Security-Policy configuration
# this can be restrictive because we have few external scripts
-allowed_sources = ("'self'",)
+allowed_sources = ("'self'", "https://idp.int.identitysandbox.gov", "https://idp.int.identitysandbox.gov/openid_connect/logout")
CSP_DEFAULT_SRC = allowed_sources
# Most things fall back to default-src, but these two do not and should be
# explicitly set
diff --git a/src/registrar/config/urls.py b/src/registrar/config/urls.py
index c21d0206c..6159b387b 100644
--- a/src/registrar/config/urls.py
+++ b/src/registrar/config/urls.py
@@ -45,6 +45,10 @@ for step, view in [
urlpatterns = [
path("", views.index, name="home"),
+ path(
+ "admin/logout/",
+ RedirectView.as_view(url="/openid/logout", permanent=False),
+ ),
path("admin/", admin.site.urls),
path(
"application//edit/",
From ec7f70e8aef4335d2239874eb8dc63fe76a1194c Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Mon, 14 Aug 2023 11:35:42 -0400
Subject: [PATCH 04/43] Fix table header contract in dark mode
---
src/registrar/assets/sass/_theme/_admin.scss | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/src/registrar/assets/sass/_theme/_admin.scss b/src/registrar/assets/sass/_theme/_admin.scss
index 2e5da018e..fb7e1e0da 100644
--- a/src/registrar/assets/sass/_theme/_admin.scss
+++ b/src/registrar/assets/sass/_theme/_admin.scss
@@ -106,16 +106,22 @@ html[data-theme="light"] {
// Dark mode django (bug due to scss cascade) and USWDS tables
.change-list .usa-table,
- .change-list .usa-table--striped tbody tr:nth-child(odd) td {
- color: var(--body-fg)!important;
+ .change-list .usa-table--striped tbody tr:nth-child(odd) td,
+ .change-list .usa-table--borderless thead th,
+ .change-list .usa-table thead td,
+ .change-list .usa-table thead th {
+ color: var(--body-fg);
}
}
// Firefox needs this to be specifically set
html[data-theme="dark"] {
.change-list .usa-table,
- .change-list .usa-table--striped tbody tr:nth-child(odd) td {
- color: var(--body-fg)!important;
+ .change-list .usa-table--striped tbody tr:nth-child(odd) td,
+ .change-list .usa-table--borderless thead th,
+ .change-list .usa-table thead td,
+ .change-list .usa-table thead th {
+ color: var(--body-fg);
}
}
From a3ab395c30a45bb474e9a10e8229a8feeae7841e Mon Sep 17 00:00:00 2001
From: Alysia Broddrick
Date: Mon, 14 Aug 2023 09:09:04 -0700
Subject: [PATCH 05/43] updated PR template
---
.github/pull_request_template.md | 95 +++++++++++++++++++++++++++++---
1 file changed, 86 insertions(+), 9 deletions(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 1eeef397b..3b707182c 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -1,13 +1,90 @@
-# #
+# Ticket
-## 🗣 Description ##
+Resolves #00
-
-
+## Changes
-## 💭 Motivation and context ##
+
+- Change 1
+- Change 2
-
-
-
-
\ No newline at end of file
+
+
+## Context for reviewers
+
+
+
+## Setup
+
+
+
+## Code Review Verification Steps
+
+### As the original developer, I have
+
+#### Satisfied acceptance criteria and met development standards
+
+- [ ] Met the acceptance criteria, or will meet them in a subsequent PR
+- [ ] Created/modified automated tests
+- [ ] Added at least 2 developers as PR reviewers (only 1 will need to approve)
+- [ ] Messaged on Slack or in standup to notify the team that a PR is ready for review
+
+#### Validated user-facing changes (if applicable)
+
+- [ ] Checked keyboard navigability
+- [ ] Tested general usability, landmarks, page header structure, and links with a screen reader (such as Voiceover or ANDI)
+- [ ] Add at least 1 designer as PR reviewer
+
+### As code reviewer(s), I have
+
+#### Reviewed, tested, and left feedback about the changes
+
+- [ ] Pulled this branch locally and tested it
+- [ ] Reviewed this code and left comments
+- [ ] Checked that all code is adequately covered by tests
+- [ ] Made it clear which comments need to be addressed before this work is merged
+- [ ] Considered marking this as accepted even if there are small changes needed
+
+#### Validated user-facing changes as a developer
+
+- [ ] Checked keyboard navigability
+- [ ] Meets all designs and user flows provided by design/product
+- [ ] Tested general usability, landmarks, page header structure, and links with a screen reader (such as Voiceover or ANDI)
+
+### As a designer reviewer, I have
+
+#### Verified that the changes match the design intention
+
+- [ ] Checked in the design translated visually
+- [ ] Checked behavior
+- [ ] Checked different states (empty, one, some, error)
+- [ ] Checked for landmarks, page heading structure, and links
+- [ ] Tried to break the intended flow
+
+#### Validated user-facing changes as a designer
+
+- [ ] Checked keyboard navigability
+- [ ] Tested general usability, landmarks, page header structure, and links with a screen reader (such as Voiceover or ANDI)
+
+## Screenshots
+
+
From e1f27d79286ac4b9a4742b1684404c5f0ceb27f3 Mon Sep 17 00:00:00 2001
From: Alysia Broddrick
Date: Mon, 14 Aug 2023 09:10:53 -0700
Subject: [PATCH 06/43] reduced the size of the ticket header
---
.github/pull_request_template.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 3b707182c..b1936f94b 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -1,4 +1,4 @@
-# Ticket
+## Ticket
Resolves #00
From 17ac251c36f5100c4cc93c0cd3fa15ebe584c254 Mon Sep 17 00:00:00 2001
From: zandercymatics <141044360+zandercymatics@users.noreply.github.com>
Date: Mon, 14 Aug 2023 10:17:29 -0600
Subject: [PATCH 07/43] Minor cleanup
---
src/registrar/config/settings.py | 4 ++--
src/registrar/config/urls.py | 7 +------
2 files changed, 3 insertions(+), 8 deletions(-)
diff --git a/src/registrar/config/settings.py b/src/registrar/config/settings.py
index f16efc18f..a221d88fa 100644
--- a/src/registrar/config/settings.py
+++ b/src/registrar/config/settings.py
@@ -285,12 +285,12 @@ SERVER_EMAIL = "root@get.gov"
# Content-Security-Policy configuration
# this can be restrictive because we have few external scripts
-allowed_sources = ("'self'", "https://idp.int.identitysandbox.gov", "https://idp.int.identitysandbox.gov/openid_connect/logout")
+allowed_sources = ("'self'")
CSP_DEFAULT_SRC = allowed_sources
# Most things fall back to default-src, but these two do not and should be
# explicitly set
CSP_FRAME_ANCESTORS = allowed_sources
-CSP_FORM_ACTION = allowed_sources
+CSP_FORM_ACTION = ("'self'", "https://idp.int.identitysandbox.gov/openid_connect/logout")
# Content-Length header is set by django.middleware.common.CommonMiddleware
diff --git a/src/registrar/config/urls.py b/src/registrar/config/urls.py
index 6159b387b..ad3883f4f 100644
--- a/src/registrar/config/urls.py
+++ b/src/registrar/config/urls.py
@@ -47,7 +47,7 @@ urlpatterns = [
path("", views.index, name="home"),
path(
"admin/logout/",
- RedirectView.as_view(url="/openid/logout", permanent=False),
+ RedirectView.as_view(pattern_name="logout", permanent=False),
),
path("admin/", admin.site.urls),
path(
@@ -125,11 +125,6 @@ if not settings.DEBUG:
path(
"admin/login/", RedirectView.as_view(pattern_name="login", permanent=False)
),
- # redirect to login.gov
- path(
- "admin/logout/",
- RedirectView.as_view(pattern_name="logout", permanent=False),
- ),
]
# we normally would guard these with `if settings.DEBUG` but tests run with
From 6082d8205b733b8987594602711be205ebddf647 Mon Sep 17 00:00:00 2001
From: Alysia Broddrick
Date: Mon, 14 Aug 2023 09:17:43 -0700
Subject: [PATCH 08/43] minor rewording and typo fixes
---
.github/pull_request_template.md | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index b1936f94b..d90d83f92 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -26,7 +26,10 @@ Resolves #00
echo "Code goes here"
```
- Example 2: if the PR was to add a new link with a redirect, this section could simply say go to /path/to/start/page. Click the blue link in the and see the user is redirected to
+ Example 2: If the PR was to add a new link with a redirect, this section could simply be:
+ -go to /path/to/start/page
+ -click the blue link in the
+ -notice user is redirected to
-->
## Code Review Verification Steps
@@ -66,7 +69,7 @@ Resolves #00
#### Verified that the changes match the design intention
-- [ ] Checked in the design translated visually
+- [ ] Checked that the design translated visually
- [ ] Checked behavior
- [ ] Checked different states (empty, one, some, error)
- [ ] Checked for landmarks, page heading structure, and links
From 24ba547e1433a93025a7f3d66bcc2de0a5efa733 Mon Sep 17 00:00:00 2001
From: Alysia Broddrick
Date: Mon, 14 Aug 2023 09:31:46 -0700
Subject: [PATCH 09/43] Added items from old code review checklist
---
.github/pull_request_template.md | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index d90d83f92..7848e2648 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -42,9 +42,18 @@ Resolves #00
- [ ] Created/modified automated tests
- [ ] Added at least 2 developers as PR reviewers (only 1 will need to approve)
- [ ] Messaged on Slack or in standup to notify the team that a PR is ready for review
+- [ ] Changes to “how we do things” are documented in READMEs and or onboarding guide
+
+Code standards are met:
+
+- [ ] All new functions and methods are commented using plain language
+- [ ] Did dependency updates in Pipfile also get changed in requirements.txt?
+- [ ] Interactions with external systems are wrapped in try/except
+- [ ] Error handling exists for unusual or missing values
#### Validated user-facing changes (if applicable)
+- [ ] New pages have been added to .pa11yci file so that they will be tested with our automated accessibility testing
- [ ] Checked keyboard navigability
- [ ] Tested general usability, landmarks, page header structure, and links with a screen reader (such as Voiceover or ANDI)
- [ ] Add at least 1 designer as PR reviewer
@@ -55,12 +64,20 @@ Resolves #00
- [ ] Pulled this branch locally and tested it
- [ ] Reviewed this code and left comments
+- [ ] All new functions and methods are commented using plain language
- [ ] Checked that all code is adequately covered by tests
- [ ] Made it clear which comments need to be addressed before this work is merged
-- [ ] Considered marking this as accepted even if there are small changes needed
+
+Code standards are met:
+
+- [ ] All new functions and methods are commented using plain language
+- [ ] Did dependency updates in Pipfile also get changed in requirements.txt?
+- [ ] Interactions with external systems are wrapped in try/except
+- [ ] Error handling exists for unusual or missing values
#### Validated user-facing changes as a developer
+- [ ] New pages have been added to .pa11yci file so that they will be tested with our automated accessibility testing
- [ ] Checked keyboard navigability
- [ ] Meets all designs and user flows provided by design/product
- [ ] Tested general usability, landmarks, page header structure, and links with a screen reader (such as Voiceover or ANDI)
From 8dc43211915556d2234ec30307089b00928ad4e7 Mon Sep 17 00:00:00 2001
From: Alysia Broddrick
Date: Mon, 14 Aug 2023 09:34:54 -0700
Subject: [PATCH 10/43] changed subheader
---
.github/pull_request_template.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 7848e2648..9f8eb1ea1 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -44,7 +44,7 @@ Resolves #00
- [ ] Messaged on Slack or in standup to notify the team that a PR is ready for review
- [ ] Changes to “how we do things” are documented in READMEs and or onboarding guide
-Code standards are met:
+* Code standards are met:
- [ ] All new functions and methods are commented using plain language
- [ ] Did dependency updates in Pipfile also get changed in requirements.txt?
@@ -68,7 +68,7 @@ Code standards are met:
- [ ] Checked that all code is adequately covered by tests
- [ ] Made it clear which comments need to be addressed before this work is merged
-Code standards are met:
+* Code standards are met:
- [ ] All new functions and methods are commented using plain language
- [ ] Did dependency updates in Pipfile also get changed in requirements.txt?
From 14e3548f81b98222ae9c648d461400c65d0a0963 Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Mon, 14 Aug 2023 14:39:36 -0400
Subject: [PATCH 11/43] Fix body.dashboard color in dark mode (affects Recent
Actions panel in admin index)
---
src/registrar/assets/sass/_theme/_admin.scss | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/registrar/assets/sass/_theme/_admin.scss b/src/registrar/assets/sass/_theme/_admin.scss
index fb7e1e0da..1a8049086 100644
--- a/src/registrar/assets/sass/_theme/_admin.scss
+++ b/src/registrar/assets/sass/_theme/_admin.scss
@@ -109,7 +109,8 @@ html[data-theme="light"] {
.change-list .usa-table--striped tbody tr:nth-child(odd) td,
.change-list .usa-table--borderless thead th,
.change-list .usa-table thead td,
- .change-list .usa-table thead th {
+ .change-list .usa-table thead th,
+ body.dashboard {
color: var(--body-fg);
}
}
@@ -120,7 +121,8 @@ html[data-theme="dark"] {
.change-list .usa-table--striped tbody tr:nth-child(odd) td,
.change-list .usa-table--borderless thead th,
.change-list .usa-table thead td,
- .change-list .usa-table thead th {
+ .change-list .usa-table thead th,
+ body.dashboard {
color: var(--body-fg);
}
}
From 765502f322b0de8c5dac96926d7b60674567bc74 Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Mon, 14 Aug 2023 14:48:16 -0400
Subject: [PATCH 12/43] Edit user fictures to add optional emails
---
docs/developer/README.md | 2 ++
src/registrar/fixtures.py | 5 +++++
2 files changed, 7 insertions(+)
diff --git a/docs/developer/README.md b/docs/developer/README.md
index b6938298c..9ef62bba9 100644
--- a/docs/developer/README.md
+++ b/docs/developer/README.md
@@ -84,6 +84,7 @@ The endpoint /admin can be used to view and manage site content, including but n
```
5. In the browser, navigate to /admin. To verify that all is working correctly, under "domain applications" you should see fake domains with various fake statuses.
+6. Add an optional email key/value pair
### Adding an Analyst to /admin
Analysts are a variant of the admin role with limited permissions. The process for adding an Analyst is much the same as adding an admin:
@@ -105,6 +106,7 @@ Analysts are a variant of the admin role with limited permissions. The process f
```
5. In the browser, navigate to /admin. To verify that all is working correctly, verify that you can only see a sub-section of the modules and some are set to view-only.
+6. Add an optional email key/value pair
Do note that if you wish to have both an analyst and admin account, append `-Analyst` to your first and last name, or use a completely different first/last name to avoid confusion. Example: `Bob-Analyst`
## Adding to CODEOWNERS (optional)
diff --git a/src/registrar/fixtures.py b/src/registrar/fixtures.py
index 2c94a1eb4..2291001de 100644
--- a/src/registrar/fixtures.py
+++ b/src/registrar/fixtures.py
@@ -79,6 +79,7 @@ class UserFixture:
"username": "319c490d-453b-43d9-bc4d-7d6cd8ff6844",
"first_name": "Rachid-Analyst",
"last_name": "Mrad-Analyst",
+ "email": "rachid.mrad@gmail.com",
},
{
"username": "b6a15987-5c88-4e26-8de2-ca71a0bdb2cd",
@@ -129,6 +130,8 @@ class UserFixture:
user.is_superuser = True
user.first_name = admin["first_name"]
user.last_name = admin["last_name"]
+ if "email" in admin.keys():
+ user.email = admin["email"]
user.is_staff = True
user.is_active = True
user.save()
@@ -146,6 +149,8 @@ class UserFixture:
user.is_superuser = False
user.first_name = staff["first_name"]
user.last_name = staff["last_name"]
+ if "email" in admin.keys():
+ user.email = admin["email"]
user.is_staff = True
user.is_active = True
From a67e13b04bfbe41a998e204bfa24fa2e83855fdf Mon Sep 17 00:00:00 2001
From: Alysia Broddrick
Date: Mon, 14 Aug 2023 12:06:06 -0700
Subject: [PATCH 13/43] added mutliple browsers and note for applicant vs
analyst
---
.github/pull_request_template.md | 23 +++++++++++++++++++----
1 file changed, 19 insertions(+), 4 deletions(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 9f8eb1ea1..0bb9ef041 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -44,7 +44,7 @@ Resolves #00
- [ ] Messaged on Slack or in standup to notify the team that a PR is ready for review
- [ ] Changes to “how we do things” are documented in READMEs and or onboarding guide
-* Code standards are met:
+##### Code standards are met (Original Developer)
- [ ] All new functions and methods are commented using plain language
- [ ] Did dependency updates in Pipfile also get changed in requirements.txt?
@@ -64,16 +64,15 @@ Resolves #00
- [ ] Pulled this branch locally and tested it
- [ ] Reviewed this code and left comments
-- [ ] All new functions and methods are commented using plain language
- [ ] Checked that all code is adequately covered by tests
- [ ] Made it clear which comments need to be addressed before this work is merged
-* Code standards are met:
+##### Code standards are met (Code reviewer)
- [ ] All new functions and methods are commented using plain language
-- [ ] Did dependency updates in Pipfile also get changed in requirements.txt?
- [ ] Interactions with external systems are wrapped in try/except
- [ ] Error handling exists for unusual or missing values
+- [ ] (Rarely needed) Did dependency updates in Pipfile also get changed in requirements.txt?
#### Validated user-facing changes as a developer
@@ -82,6 +81,14 @@ Resolves #00
- [ ] Meets all designs and user flows provided by design/product
- [ ] Tested general usability, landmarks, page header structure, and links with a screen reader (such as Voiceover or ANDI)
+- [ ] Tested with multiple browsers, the suggestion is to use ones that the developer didn't (check off which ones were used)
+ - [ ] Chrome
+ - [ ] Microsoft Edge
+ - [ ] FireFox
+ - [ ] Safari
+
+- [ ] (Rarely needed) Test as both an analyst and applicant user
+
### As a designer reviewer, I have
#### Verified that the changes match the design intention
@@ -97,6 +104,14 @@ Resolves #00
- [ ] Checked keyboard navigability
- [ ] Tested general usability, landmarks, page header structure, and links with a screen reader (such as Voiceover or ANDI)
+- [ ] Tested with multiple browsers (check off which ones were used)
+ - [ ] Chrome
+ - [ ] Microsoft Edge
+ - [ ] FireFox
+ - [ ] Safari
+
+- [ ] (Rarely needed) Test as both an analyst and applicant user
+
## Screenshots
## Changes
@@ -10,7 +15,7 @@ Resolves #00
## Context for reviewers
From 2a47df7eab4ca3b00db9b4f030f5e434efa74a17 Mon Sep 17 00:00:00 2001
From: Alysia Broddrick
Date: Mon, 14 Aug 2023 14:22:06 -0700
Subject: [PATCH 18/43] fixed typo
---
.github/pull_request_template.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 3c4313f55..73fabb9f2 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -96,7 +96,7 @@ All other changes require just a single approving review.-->
- [ ] (Rarely needed) Tested as both an analyst and applicant user
-**Note:** Multiple code reviews can share the checklists above, a second reviewers should not make a duplicate checklist
+**Note:** Multiple code reviewers can share the checklists above, a second reviewers should not make a duplicate checklist
### As a designer reviewer, I have
From 6faa21168abca9577b26442dfe6c112c75af3641 Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Mon, 14 Aug 2023 20:16:04 -0700
Subject: [PATCH 19/43] Temporarily remove Export Domains section
---
src/registrar/templates/home.html | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/registrar/templates/home.html b/src/registrar/templates/home.html
index 792beec43..c34c244c3 100644
--- a/src/registrar/templates/home.html
+++ b/src/registrar/templates/home.html
@@ -125,13 +125,14 @@
You don't have any archived domains
-
+
+
From 94ab136058dd8dac5c8ca0b8cf1c6607987eda9d Mon Sep 17 00:00:00 2001
From: zandercymatics <141044360+zandercymatics@users.noreply.github.com>
Date: Tue, 15 Aug 2023 07:26:34 -0600
Subject: [PATCH 20/43] Update src/registrar/config/settings.py
allowed_sources was not a tuple: https://django-csp.readthedocs.io/en/latest/configuration.html
Co-authored-by: Neil MartinsenBurrell
---
src/registrar/config/settings.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/registrar/config/settings.py b/src/registrar/config/settings.py
index 39917ad42..f6873b226 100644
--- a/src/registrar/config/settings.py
+++ b/src/registrar/config/settings.py
@@ -285,7 +285,7 @@ SERVER_EMAIL = "root@get.gov"
# Content-Security-Policy configuration
# this can be restrictive because we have few external scripts
-allowed_sources = ("'self'")
+allowed_sources = ("'self'",)
CSP_DEFAULT_SRC = allowed_sources
# Most things fall back to default-src, but these two do not and should be
# explicitly set
From 3a6acd9c2958fc4819ec5f2f49218334741ca24c Mon Sep 17 00:00:00 2001
From: zandercymatics <141044360+zandercymatics@users.noreply.github.com>
Date: Tue, 15 Aug 2023 07:56:09 -0600
Subject: [PATCH 21/43] Added translation
Requires {% load i18n %} within this scope as per docs: https://docs.djangoproject.com/en/4.1/topics/i18n/translation/#internationalization-in-template-code
---
src/registrar/templates/admin/base_site.html | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/src/registrar/templates/admin/base_site.html b/src/registrar/templates/admin/base_site.html
index 72bd7af21..6b641722f 100644
--- a/src/registrar/templates/admin/base_site.html
+++ b/src/registrar/templates/admin/base_site.html
@@ -1,5 +1,6 @@
{% extends "admin/base.html" %}
{% load static %}
+{% load i18n %}
{% block title %}{% if subtitle %}{{ subtitle }} | {% endif %}{{ title }} | {{ site_title|default:_('Django site admin') }}{% endblock %}
@@ -13,20 +14,25 @@
{% include "admin/color_theme_toggle.html" %}
{% endif %}
{% endblock %}
+{% comment %}
+ This was copied from the 'userlinks' template, with a few minor changes.
+ You can find that here:
+ https://github.com/django/django/blob/d25f3892114466d689fd6936f79f3bd9a9acc30e/django/contrib/admin/templates/admin/base.html#L59
+{% endcomment %}
{% block userlinks %}
{% if site_url %}
- View site /
+ {% translate 'View site' %} /
{% endif %}
{% if user.is_active and user.is_staff %}
{% url 'django-admindocs-docroot' as docsroot %}
{% if docsroot %}
- Documentation /
+ {% translate 'Documentation' %} /
{% endif %}
{% endif %}
{% if user.has_usable_password %}
- Change password /
+ {% translate 'Change password' %} /
{% endif %}
- Log out
+ {% translate 'Log out' %}
{% include "admin/color_theme_toggle.html" %}
{% endblock %}
{% block nav-global %}{% endblock %}
\ No newline at end of file
From df04f2c31255cadf4a3b83214bddb115f42ad6d8 Mon Sep 17 00:00:00 2001
From: zandercymatics <141044360+zandercymatics@users.noreply.github.com>
Date: Tue, 15 Aug 2023 09:20:34 -0600
Subject: [PATCH 22/43] Update urls.py
---
src/registrar/config/urls.py | 11 -----------
1 file changed, 11 deletions(-)
diff --git a/src/registrar/config/urls.py b/src/registrar/config/urls.py
index 67ab630e1..133a44a96 100644
--- a/src/registrar/config/urls.py
+++ b/src/registrar/config/urls.py
@@ -118,17 +118,6 @@ urlpatterns = [
),
]
-# What is the purpose of this?
-# This behaviour gets overwritten, so this doesn't do anything...
-# Login in particular
-if not settings.DEBUG:
- urlpatterns += [
- # redirect to login.gov
- path(
- "admin/login/", RedirectView.as_view(pattern_name="login", permanent=False)
- ),
- ]
-
# we normally would guard these with `if settings.DEBUG` but tests run with
# DEBUG = False even when these apps have been loaded because settings.DEBUG
# was actually True. Instead, let's add these URLs any time we are able to
From 32abc8fd3073b30cfe0115bae3fbba7c31c95749 Mon Sep 17 00:00:00 2001
From: zandercymatics <141044360+zandercymatics@users.noreply.github.com>
Date: Tue, 15 Aug 2023 09:24:45 -0600
Subject: [PATCH 23/43] Removed unused import
---
src/registrar/config/urls.py | 1 -
1 file changed, 1 deletion(-)
diff --git a/src/registrar/config/urls.py b/src/registrar/config/urls.py
index 133a44a96..0f136c932 100644
--- a/src/registrar/config/urls.py
+++ b/src/registrar/config/urls.py
@@ -4,7 +4,6 @@ For more information see:
https://docs.djangoproject.com/en/4.0/topics/http/urls/
"""
-from django.conf import settings
from django.contrib import admin
from django.urls import include, path
from django.views.generic import RedirectView
From 18b34af9daf4c74cab6d8ddb5693e1524ea7090a Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Tue, 15 Aug 2023 11:33:17 -0700
Subject: [PATCH 24/43] Update zap for false positives
---
src/zap.conf | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/zap.conf b/src/zap.conf
index e5e7b4d04..d44447b8e 100644
--- a/src/zap.conf
+++ b/src/zap.conf
@@ -30,6 +30,8 @@
# UNCLEAR WHY THIS ONE IS FAILING. Giving 404 error.
10027 OUTOFSCOPE http://app:8080/public/js/uswds-init.min.js
# get-gov.js contains suspicious word "from" as in `Array.from()`
+10027 OUTOFSCOPE http://app:8080/public/src/registrar/templates/home.html
+# Contains suspicious word "TODO" which isn't that suspicious
10027 OUTOFSCOPE http://app:8080/public/js/get-gov.js
10028 FAIL (Open Redirect - Passive/beta)
10029 FAIL (Cookie Poisoning - Passive/beta)
From 170e07eeff0fe8ba6ce2023701c219bba15f8172 Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Tue, 15 Aug 2023 11:42:48 -0700
Subject: [PATCH 25/43] Remove from Zap and change wording
---
src/registrar/templates/home.html | 2 +-
src/zap.conf | 2 --
2 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/src/registrar/templates/home.html b/src/registrar/templates/home.html
index c34c244c3..30724de8e 100644
--- a/src/registrar/templates/home.html
+++ b/src/registrar/templates/home.html
@@ -125,7 +125,7 @@
You don't have any archived domains
-
+
From a0cf217551f062ff1434fb4cb7b2a4289cb5d7ba Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Tue, 15 Aug 2023 11:57:20 -0700
Subject: [PATCH 27/43] Update to just note
---
src/registrar/templates/home.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/registrar/templates/home.html b/src/registrar/templates/home.html
index 32ef48bcf..7b901e747 100644
--- a/src/registrar/templates/home.html
+++ b/src/registrar/templates/home.html
@@ -129,7 +129,7 @@
From 068694fa77154cf7b0b86578c5096215a8b338b1 Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Tue, 15 Aug 2023 12:04:02 -0700
Subject: [PATCH 28/43] Testing out a diff urlpattern to not use todo wording
---
src/registrar/templates/home.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/registrar/templates/home.html b/src/registrar/templates/home.html
index 7b901e747..638367904 100644
--- a/src/registrar/templates/home.html
+++ b/src/registrar/templates/home.html
@@ -129,7 +129,7 @@
From 962d70dccc6661e685ea45f78ff2f28e69e39544 Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Tue, 15 Aug 2023 12:08:18 -0700
Subject: [PATCH 29/43] Add back todo path and attempt zap again
---
src/registrar/templates/home.html | 2 +-
src/zap.conf | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/registrar/templates/home.html b/src/registrar/templates/home.html
index 638367904..30724de8e 100644
--- a/src/registrar/templates/home.html
+++ b/src/registrar/templates/home.html
@@ -129,7 +129,7 @@
diff --git a/src/zap.conf b/src/zap.conf
index e5e7b4d04..c1782760b 100644
--- a/src/zap.conf
+++ b/src/zap.conf
@@ -30,6 +30,8 @@
# UNCLEAR WHY THIS ONE IS FAILING. Giving 404 error.
10027 OUTOFSCOPE http://app:8080/public/js/uswds-init.min.js
# get-gov.js contains suspicious word "from" as in `Array.from()`
+10027 OUTOFSCOPE http://app:8080/todo
+# Ignore wording of "TODO"
10027 OUTOFSCOPE http://app:8080/public/js/get-gov.js
10028 FAIL (Open Redirect - Passive/beta)
10029 FAIL (Cookie Poisoning - Passive/beta)
From d4de131ecdebb048d4c9b2f937d9cdd9dcb310f0 Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Tue, 15 Aug 2023 12:13:29 -0700
Subject: [PATCH 30/43] Add comment to the top correctly this time
---
src/zap.conf | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/zap.conf b/src/zap.conf
index c1782760b..1f9e831fb 100644
--- a/src/zap.conf
+++ b/src/zap.conf
@@ -30,9 +30,9 @@
# UNCLEAR WHY THIS ONE IS FAILING. Giving 404 error.
10027 OUTOFSCOPE http://app:8080/public/js/uswds-init.min.js
# get-gov.js contains suspicious word "from" as in `Array.from()`
-10027 OUTOFSCOPE http://app:8080/todo
-# Ignore wording of "TODO"
10027 OUTOFSCOPE http://app:8080/public/js/get-gov.js
+# Ignore wording of "TODO"
+10027 OUTOFSCOPE http://app:8080/todo
10028 FAIL (Open Redirect - Passive/beta)
10029 FAIL (Cookie Poisoning - Passive/beta)
10030 FAIL (User Controllable Charset - Passive/beta)
From b8beccd24ac779a792e6f7a1c89b9551e49eb841 Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Tue, 15 Aug 2023 12:24:23 -0700
Subject: [PATCH 31/43] Switch to tab instead of spaces
---
src/zap.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/zap.conf b/src/zap.conf
index 1f9e831fb..adf51c72c 100644
--- a/src/zap.conf
+++ b/src/zap.conf
@@ -32,7 +32,7 @@
# get-gov.js contains suspicious word "from" as in `Array.from()`
10027 OUTOFSCOPE http://app:8080/public/js/get-gov.js
# Ignore wording of "TODO"
-10027 OUTOFSCOPE http://app:8080/todo
+10027 OUTOFSCOPE http://app:8080/todo
10028 FAIL (Open Redirect - Passive/beta)
10029 FAIL (Cookie Poisoning - Passive/beta)
10030 FAIL (User Controllable Charset - Passive/beta)
From 1dc0d22a1e0e269aa870b4f47ad29dc9a2914e24 Mon Sep 17 00:00:00 2001
From: Rebecca Hsieh
Date: Tue, 15 Aug 2023 12:36:55 -0700
Subject: [PATCH 32/43] Update path
---
src/zap.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/zap.conf b/src/zap.conf
index adf51c72c..bdd6b017d 100644
--- a/src/zap.conf
+++ b/src/zap.conf
@@ -32,7 +32,7 @@
# get-gov.js contains suspicious word "from" as in `Array.from()`
10027 OUTOFSCOPE http://app:8080/public/js/get-gov.js
# Ignore wording of "TODO"
-10027 OUTOFSCOPE http://app:8080/todo
+10027 OUTOFSCOPE http://app:8080.*$
10028 FAIL (Open Redirect - Passive/beta)
10029 FAIL (Cookie Poisoning - Passive/beta)
10030 FAIL (User Controllable Charset - Passive/beta)
From f3d4a90d884d361dba6b1c7a414b50171873fe8c Mon Sep 17 00:00:00 2001
From: Alysia Broddrick <109625347+abroddrick@users.noreply.github.com>
Date: Tue, 15 Aug 2023 12:40:22 -0700
Subject: [PATCH 33/43] removed # for subheader
---
.github/pull_request_template.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 73fabb9f2..f65007b2b 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -50,7 +50,7 @@ All other changes require just a single approving review.-->
- [ ] Changes to “how we do things” are documented in READMEs and or onboarding guide
- [ ] If any model was updated to modify/add/delete columns, makemigrations was ran and the assoicated migrations file has been commited.
-##### Ensured code standards are met (Original Developer)
+#### Ensured code standards are met (Original Developer)
- [ ] All new functions and methods are commented using plain language
- [ ] Did dependency updates in Pipfile also get changed in requirements.txt?
@@ -74,7 +74,7 @@ All other changes require just a single approving review.-->
- [ ] Made it clear which comments need to be addressed before this work is merged
- [ ] If any model was updated to modify/add/delete columns, makemigrations was ran and the assoicated migrations file has been commited.
-##### Ensured code standards are met (Code reviewer)
+#### Ensured code standards are met (Code reviewer)
- [ ] All new functions and methods are commented using plain language
- [ ] Interactions with external systems are wrapped in try/except
From 4c9ddf727ed330e919b2f1409f49bc16f272d7a5 Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Wed, 16 Aug 2023 11:53:55 -0400
Subject: [PATCH 34/43] Fix contrast issue with filter headers in django admin
---
src/registrar/assets/sass/_theme/_admin.scss | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/src/registrar/assets/sass/_theme/_admin.scss b/src/registrar/assets/sass/_theme/_admin.scss
index 1a8049086..b87257344 100644
--- a/src/registrar/assets/sass/_theme/_admin.scss
+++ b/src/registrar/assets/sass/_theme/_admin.scss
@@ -110,7 +110,9 @@ html[data-theme="light"] {
.change-list .usa-table--borderless thead th,
.change-list .usa-table thead td,
.change-list .usa-table thead th,
- body.dashboard {
+ body.dashboard,
+ body.change-list,
+ body.change-form {
color: var(--body-fg);
}
}
@@ -122,7 +124,9 @@ html[data-theme="dark"] {
.change-list .usa-table--borderless thead th,
.change-list .usa-table thead td,
.change-list .usa-table thead th,
- body.dashboard {
+ body.dashboard,
+ body.change-list,
+ body.change-form {
color: var(--body-fg);
}
}
From 5e24e3473db83d419e7221318cd1cacdef3de43c Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Wed, 16 Aug 2023 14:05:52 -0400
Subject: [PATCH 35/43] lint
---
src/registrar/fixtures.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/registrar/fixtures.py b/src/registrar/fixtures.py
index 2291001de..0b1b8926d 100644
--- a/src/registrar/fixtures.py
+++ b/src/registrar/fixtures.py
@@ -130,7 +130,7 @@ class UserFixture:
user.is_superuser = True
user.first_name = admin["first_name"]
user.last_name = admin["last_name"]
- if "email" in admin.keys():
+ if "email" in admin.keys():
user.email = admin["email"]
user.is_staff = True
user.is_active = True
@@ -149,7 +149,7 @@ class UserFixture:
user.is_superuser = False
user.first_name = staff["first_name"]
user.last_name = staff["last_name"]
- if "email" in admin.keys():
+ if "email" in admin.keys():
user.email = admin["email"]
user.is_staff = True
user.is_active = True
From 051b852cd9f8d663344d21731edc51a8627073eb Mon Sep 17 00:00:00 2001
From: rachidatecs <107004823+rachidatecs@users.noreply.github.com>
Date: Wed, 16 Aug 2023 14:56:37 -0400
Subject: [PATCH 36/43] Update docs/architecture/decisions/0021-django-admin.md
Co-authored-by: Neil MartinsenBurrell
---
docs/architecture/decisions/0021-django-admin.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/architecture/decisions/0021-django-admin.md b/docs/architecture/decisions/0021-django-admin.md
index bca51c2ef..add6992cd 100644
--- a/docs/architecture/decisions/0021-django-admin.md
+++ b/docs/architecture/decisions/0021-django-admin.md
@@ -34,7 +34,7 @@ In contrast to building an admin interface from scratch where development activi
involve _building up_, leveraging Django Admin will require carefully _pairing back_ the functionalities available to
users such as analysts.
-On accessibility: Django admin is almost fully accessible out-of-the-box, the expections being tables, checkboxes, and
+On accessibility: Django admin is almost fully accessible out-of-the-box, the exceptions being tables, checkboxes, and
color contrast. We have remedied the first 2 with template overrides and the 3rd with theming (see below).
On USWDS and theming: Django admin brings its own high level design framework. We have determined that theming on top of Django (scss)
From 4c937f1b0922d9da78d811a55e2d8ce184a7764b Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Thu, 17 Aug 2023 16:00:14 -0400
Subject: [PATCH 37/43] Update contributing doc with branch naming convention
and approvals information
---
CONTRIBUTING.md | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index d745f76c7..ab15c660f 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -9,6 +9,22 @@ There are a handful of things we do not commit to the repository:
- Compliance documentation that includes IP addresses
- Secrets of any kind
+## Branch naming convention
+
+For developers, you can auto-deploy your code to your sandbox (if applicable) by naming your branch thusly: jsd/123-feature-description
+Where 'jsd' stands for your initials and sandbox environment name (if you were called John Smith Doe), and 123 matches the ticket number if applicable.
+
+## Approvals
+
+When a code change is made that is not user facing, then the following is required:
+- a developer approves the PR
+
+When a code change is made that is user facing, beyond content updates, then the following are required:
+- a developer approves the PR
+- a designer approves the PR or checks off all relevant items in this checklist
+
+Content or document updates require a single person to approve.
+
## Project Management
We use [Github Projects](https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects) for project management and tracking.
From 7cd229fa8855bbac29b76fe98b47c19c1eece0c7 Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Thu, 17 Aug 2023 18:47:58 -0400
Subject: [PATCH 38/43] filter applications by excluding approved
---
src/registrar/tests/test_views.py | 16 ++++++++++++++++
src/registrar/views/index.py | 2 +-
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/src/registrar/tests/test_views.py b/src/registrar/tests/test_views.py
index feb553bf7..b2d6290f6 100644
--- a/src/registrar/tests/test_views.py
+++ b/src/registrar/tests/test_views.py
@@ -1500,3 +1500,19 @@ class TestApplicationStatus(TestWithUser, WebTest):
reverse(url_name, kwargs={"pk": application.pk})
)
self.assertEqual(page.status_code, 403)
+
+
+def test_approved_application_not_in_active_requests(self):
+ """An approved application is not shown in the Active
+ Requests table on home.html."""
+ application = completed_application(
+ status=DomainApplication.APPROVED, user=self.user
+ )
+ application.save()
+
+ home_page = self.app.get("/")
+ # This works in our test environemnt because creating
+ # an approved application here does not generate a
+ # domain object, so we do not expect to see 'city.gov'
+ # in either the Domains or Requests tables.
+ self.assertNotContains(home_page, "city.gov")
diff --git a/src/registrar/views/index.py b/src/registrar/views/index.py
index 35a67bceb..876983c4e 100644
--- a/src/registrar/views/index.py
+++ b/src/registrar/views/index.py
@@ -9,7 +9,7 @@ def index(request):
context = {}
if request.user.is_authenticated:
applications = DomainApplication.objects.filter(creator=request.user)
- context["domain_applications"] = applications
+ context["domain_applications"] = applications.exclude(status="approved")
domains = request.user.permissions.values(
"role",
From 587702496280c29704de08d4c27729d01067a368 Mon Sep 17 00:00:00 2001
From: Alysia Broddrick
Date: Fri, 18 Aug 2023 16:20:02 -0700
Subject: [PATCH 39/43] changed received to submitted
---
src/registrar/templates/application_status.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/registrar/templates/application_status.html b/src/registrar/templates/application_status.html
index 2488bb449..99f6a1d4c 100644
--- a/src/registrar/templates/application_status.html
+++ b/src/registrar/templates/application_status.html
@@ -22,7 +22,7 @@
{% if domainapplication.status == 'approved' %} Approved
{% elif domainapplication.status == 'in review' %} In Review
{% elif domainapplication.status == 'rejected' %} Rejected
- {% elif domainapplication.status == 'submitted' %} Received
+ {% elif domainapplication.status == 'submitted' %} Submitted
{% else %}ERROR Please contact technical support/dev
{% endif %}
From 892ad926df1f585b1fd57f3f0eaa9199bc4c9abb Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Mon, 21 Aug 2023 12:22:56 -0400
Subject: [PATCH 40/43] Add comment explaining why we're excluding approved
applications
---
src/registrar/views/index.py | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/registrar/views/index.py b/src/registrar/views/index.py
index 876983c4e..273ba8cb0 100644
--- a/src/registrar/views/index.py
+++ b/src/registrar/views/index.py
@@ -9,6 +9,9 @@ def index(request):
context = {}
if request.user.is_authenticated:
applications = DomainApplication.objects.filter(creator=request.user)
+ # Let's exclude the approved applications since our
+ # domain_applications context will be used to populate
+ # the active applications table
context["domain_applications"] = applications.exclude(status="approved")
domains = request.user.permissions.values(
From 279a986ffdb03b8b9513d96f85e86ed9f96b7e72 Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Mon, 21 Aug 2023 16:34:43 -0400
Subject: [PATCH 41/43] Add dk yaml, add dk to workflows, update org name
---
.../ISSUE_TEMPLATE/developer-onboarding.md | 2 +-
.github/workflows/deploy-sandbox.yaml | 3 +-
.github/workflows/deploy-stable.yaml | 2 +-
.github/workflows/deploy-staging.yaml | 2 +-
.github/workflows/migrate.yaml | 3 +-
.github/workflows/reset-db.yaml | 7 +++--
ops/manifests/manifest-dk.yaml | 29 +++++++++++++++++++
ops/scripts/create_dev_sandbox.sh | 12 ++++----
ops/scripts/deploy.sh | 2 +-
ops/scripts/destroy_dev_sandbox.sh | 4 +--
ops/scripts/rotate_cloud_secrets.sh | 4 +--
src/registrar/config/settings.py | 1 +
src/registrar/fixtures.py | 5 ++++
13 files changed, 57 insertions(+), 19 deletions(-)
create mode 100644 ops/manifests/manifest-dk.yaml
diff --git a/.github/ISSUE_TEMPLATE/developer-onboarding.md b/.github/ISSUE_TEMPLATE/developer-onboarding.md
index 8d0f9c2d8..94b2a367d 100644
--- a/.github/ISSUE_TEMPLATE/developer-onboarding.md
+++ b/.github/ISSUE_TEMPLATE/developer-onboarding.md
@@ -37,7 +37,7 @@ cf login -a api.fr.cloud.gov --sso
- [ ] Optional- add yourself as a codeowner if desired. See the [Developer readme](https://github.com/cisagov/getgov/blob/main/docs/developer/README.md) for how to do this and what it does.
### Steps for the onboarder
-- [ ] Add the onboardee to cloud.gov org (cisa-getgov-prototyping)
+- [ ] Add the onboardee to cloud.gov org (cisa-dotgov)
- [ ] Setup a [developer specific space for the new developer](#setting-up-developer-sandbox)
- [ ] Add the onboardee to our login.gov sandbox team (`.gov Registrar`) via the [dashboard](https://dashboard.int.identitysandbox.gov/)
diff --git a/.github/workflows/deploy-sandbox.yaml b/.github/workflows/deploy-sandbox.yaml
index 3b418c4d5..5d9000401 100644
--- a/.github/workflows/deploy-sandbox.yaml
+++ b/.github/workflows/deploy-sandbox.yaml
@@ -18,6 +18,7 @@ jobs:
|| startsWith(github.head_ref, 'za/')
|| startsWith(github.head_ref, 'rh/')
|| startsWith(github.head_ref, 'nl/')
+ || startsWith(github.head_ref, 'dk/')
outputs:
environment: ${{ steps.var.outputs.environment}}
runs-on: "ubuntu-latest"
@@ -52,7 +53,7 @@ jobs:
with:
cf_username: ${{ secrets[env.CF_USERNAME] }}
cf_password: ${{ secrets[env.CF_PASSWORD] }}
- cf_org: cisa-getgov-prototyping
+ cf_org: cisa-dotgov
cf_space: ${{ env.ENVIRONMENT }}
push_arguments: "-f ops/manifests/manifest-${{ env.ENVIRONMENT }}.yaml"
comment:
diff --git a/.github/workflows/deploy-stable.yaml b/.github/workflows/deploy-stable.yaml
index 2f1a2a6b4..0a40ac097 100644
--- a/.github/workflows/deploy-stable.yaml
+++ b/.github/workflows/deploy-stable.yaml
@@ -36,6 +36,6 @@ jobs:
with:
cf_username: ${{ secrets.CF_STABLE_USERNAME }}
cf_password: ${{ secrets.CF_STABLE_PASSWORD }}
- cf_org: cisa-getgov-prototyping
+ cf_org: cisa-dotgov
cf_space: stable
push_arguments: "-f ops/manifests/manifest-stable.yaml"
diff --git a/.github/workflows/deploy-staging.yaml b/.github/workflows/deploy-staging.yaml
index 068751c30..1db63e2a2 100644
--- a/.github/workflows/deploy-staging.yaml
+++ b/.github/workflows/deploy-staging.yaml
@@ -36,6 +36,6 @@ jobs:
with:
cf_username: ${{ secrets.CF_STAGING_USERNAME }}
cf_password: ${{ secrets.CF_STAGING_PASSWORD }}
- cf_org: cisa-getgov-prototyping
+ cf_org: cisa-dotgov
cf_space: staging
push_arguments: "-f ops/manifests/manifest-staging.yaml"
diff --git a/.github/workflows/migrate.yaml b/.github/workflows/migrate.yaml
index fbfc7f17a..705014af1 100644
--- a/.github/workflows/migrate.yaml
+++ b/.github/workflows/migrate.yaml
@@ -24,6 +24,7 @@ on:
- ab
- bl
- rjm
+ - dk
jobs:
migrate:
@@ -37,6 +38,6 @@ jobs:
with:
cf_username: ${{ secrets[env.CF_USERNAME] }}
cf_password: ${{ secrets[env.CF_PASSWORD] }}
- cf_org: cisa-getgov-prototyping
+ cf_org: cisa-dotgov
cf_space: ${{ github.event.inputs.environment }}
full_command: "cf run-task getgov-${{ github.event.inputs.environment }} --command 'python manage.py migrate' --name migrate"
diff --git a/.github/workflows/reset-db.yaml b/.github/workflows/reset-db.yaml
index fea4f19e2..0bf1af2d9 100644
--- a/.github/workflows/reset-db.yaml
+++ b/.github/workflows/reset-db.yaml
@@ -25,6 +25,7 @@ on:
- ab
- bl
- rjm
+ - dk
jobs:
reset-db:
@@ -38,7 +39,7 @@ jobs:
with:
cf_username: ${{ secrets[env.CF_USERNAME] }}
cf_password: ${{ secrets[env.CF_PASSWORD] }}
- cf_org: cisa-getgov-prototyping
+ cf_org: cisa-dotgov
cf_space: ${{ github.event.inputs.environment }}
full_command: "cf run-task getgov-${{ github.event.inputs.environment }} --command 'python manage.py flush --no-input' --name flush"
@@ -47,7 +48,7 @@ jobs:
with:
cf_username: ${{ secrets[env.CF_USERNAME] }}
cf_password: ${{ secrets[env.CF_PASSWORD] }}
- cf_org: cisa-getgov-prototyping
+ cf_org: cisa-dotgov
cf_space: ${{ github.event.inputs.environment }}
full_command: "cf run-task getgov-${{ github.event.inputs.environment }} --command 'python manage.py migrate' --name migrate"
@@ -56,6 +57,6 @@ jobs:
with:
cf_username: ${{ secrets[env.CF_USERNAME] }}
cf_password: ${{ secrets[env.CF_PASSWORD] }}
- cf_org: cisa-getgov-prototyping
+ cf_org: cisa-dotgov
cf_space: ${{ github.event.inputs.environment }}
full_command: "cf run-task getgov-${{ github.event.inputs.environment }} --command 'python manage.py load' --name loaddata"
diff --git a/ops/manifests/manifest-dk.yaml b/ops/manifests/manifest-dk.yaml
new file mode 100644
index 000000000..87de8a496
--- /dev/null
+++ b/ops/manifests/manifest-dk.yaml
@@ -0,0 +1,29 @@
+---
+applications:
+- name: getgov-dk
+ buildpacks:
+ - python_buildpack
+ path: ../../src
+ instances: 1
+ memory: 512M
+ stack: cflinuxfs4
+ timeout: 180
+ command: ./run.sh
+ health-check-type: http
+ health-check-http-endpoint: /health
+ env:
+ # Send stdout and stderr straight to the terminal without buffering
+ PYTHONUNBUFFERED: yup
+ # Tell Django where to find its configuration
+ DJANGO_SETTINGS_MODULE: registrar.config.settings
+ # Tell Django where it is being hosted
+ DJANGO_BASE_URL: https://getgov-dk.app.cloud.gov
+ # Tell Django how much stuff to log
+ DJANGO_LOG_LEVEL: INFO
+ # Public site base URL
+ GETGOV_PUBLIC_SITE_URL: https://federalist-877ab29f-16f6-4f12-961c-96cf064cf070.sites.pages.cloud.gov/site/cisagov/getgov-home/
+ routes:
+ - route: getgov-dk.app.cloud.gov
+ services:
+ - getgov-credentials
+ - getgov-dk-database
diff --git a/ops/scripts/create_dev_sandbox.sh b/ops/scripts/create_dev_sandbox.sh
index f180ada8d..5eeed9c10 100755
--- a/ops/scripts/create_dev_sandbox.sh
+++ b/ops/scripts/create_dev_sandbox.sh
@@ -21,9 +21,9 @@ then
git checkout -b new-dev-sandbox-$1
fi
-cf target -o cisa-getgov-prototyping
+cf target -o cisa-dotgov
-read -p "Are you logged in to the cisa-getgov-prototyping CF org above? (y/n) " -n 1 -r
+read -p "Are you logged in to the cisa-dotgov CF org above? (y/n) " -n 1 -r
echo
if [[ ! $REPLY =~ ^[Yy]$ ]]
then
@@ -49,9 +49,9 @@ sed -i '' '/getgov-staging.app.cloud.gov/ {a\
echo "Creating new cloud.gov space for $1..."
cf create-space $1
-cf target -o "cisa-getgov-prototyping" -s $1
-cf bind-security-group public_networks_egress cisa-getgov-prototyping --space $1
-cf bind-security-group trusted_local_networks_egress cisa-getgov-prototyping --space $1
+cf target -o "cisa-dotgov" -s $1
+cf bind-security-group public_networks_egress cisa-dotgov --space $1
+cf bind-security-group trusted_local_networks_egress cisa-dotgov --space $1
echo "Creating new cloud.gov DB for $1. This usually takes about 5 minutes..."
cf create-service aws-rds micro-psql getgov-$1-database
@@ -91,7 +91,7 @@ cd ..
cf push getgov-$1 -f ops/manifests/manifest-$1.yaml
read -p "Please provide the email of the space developer: " -r
-cf set-space-role $REPLY cisa-getgov-prototyping $1 SpaceDeveloper
+cf set-space-role $REPLY cisa-dotgov $1 SpaceDeveloper
read -p "Should we run migrations? (y/n) " -n 1 -r
echo
diff --git a/ops/scripts/deploy.sh b/ops/scripts/deploy.sh
index d8dd45fbc..50f0f5bfa 100755
--- a/ops/scripts/deploy.sh
+++ b/ops/scripts/deploy.sh
@@ -4,7 +4,7 @@
../ops/scripts/build.sh
# Deploy to sandbox
-cf target -o cisa-getgov-prototyping -s $1
+cf target -o cisa-dotgov -s $1
cf push getgov-$1 -f ../ops/manifests/manifest-$1.yaml
# migrations need to be run manually. Developers can use this command
diff --git a/ops/scripts/destroy_dev_sandbox.sh b/ops/scripts/destroy_dev_sandbox.sh
index 47a7f26d8..9e233b2f1 100755
--- a/ops/scripts/destroy_dev_sandbox.sh
+++ b/ops/scripts/destroy_dev_sandbox.sh
@@ -20,9 +20,9 @@ then
git checkout -b remove-dev-sandbox-$1
fi
-cf target -o cisa-getgov-prototyping -s $1
+cf target -o cisa-dotgov -s $1
-read -p "Are you logged in to the cisa-getgov-prototyping CF org above? (y/n) " -n 1 -r
+read -p "Are you logged in to the cisa-dotgov CF org above? (y/n) " -n 1 -r
echo
if [[ ! $REPLY =~ ^[Yy]$ ]]
then
diff --git a/ops/scripts/rotate_cloud_secrets.sh b/ops/scripts/rotate_cloud_secrets.sh
index aa77c39a8..23e4aa590 100755
--- a/ops/scripts/rotate_cloud_secrets.sh
+++ b/ops/scripts/rotate_cloud_secrets.sh
@@ -9,8 +9,8 @@ if [ -z "$1" ]; then
exit 1
fi
-cf target -o cisa-getgov-prototyping -s $1
-read -p "Are you logged in to the cisa-getgov-prototyping CF org above and targeting the correct space? (y/n) " -n 1 -r
+cf target -o cisa-dotgov -s $1
+read -p "Are you logged in to the cisa-dotgov CF org above and targeting the correct space? (y/n) " -n 1 -r
echo
if [[ ! $REPLY =~ ^[Yy]$ ]]
then
diff --git a/src/registrar/config/settings.py b/src/registrar/config/settings.py
index f6873b226..8b53fa82a 100644
--- a/src/registrar/config/settings.py
+++ b/src/registrar/config/settings.py
@@ -580,6 +580,7 @@ ALLOWED_HOSTS = [
"getgov-ab.app.cloud.gov",
"getgov-bl.app.cloud.gov",
"getgov-rjm.app.cloud.gov",
+ "getgov-dk.app.cloud.gov",
"get.gov",
]
diff --git a/src/registrar/fixtures.py b/src/registrar/fixtures.py
index 2c94a1eb4..3ef9640fe 100644
--- a/src/registrar/fixtures.py
+++ b/src/registrar/fixtures.py
@@ -72,6 +72,11 @@ class UserFixture:
"first_name": "Rebecca",
"last_name": "Hsieh",
},
+ {
+ "username": "fa69c8e8-da83-4798-a4f2-263c9ce93f52",
+ "first_name": "Dave",
+ "last_name": "Kennedy",
+ },
]
STAFF = [
From 5a8c4c072b9367f7048efb8c9959ec22a6b00ac6 Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Mon, 21 Aug 2023 16:53:12 -0400
Subject: [PATCH 42/43] Linting and remove Dave from fixtures so he can do it
himself
---
src/registrar/fixtures.py | 5 -----
src/registrar/views/index.py | 2 +-
2 files changed, 1 insertion(+), 6 deletions(-)
diff --git a/src/registrar/fixtures.py b/src/registrar/fixtures.py
index 3ef9640fe..2c94a1eb4 100644
--- a/src/registrar/fixtures.py
+++ b/src/registrar/fixtures.py
@@ -72,11 +72,6 @@ class UserFixture:
"first_name": "Rebecca",
"last_name": "Hsieh",
},
- {
- "username": "fa69c8e8-da83-4798-a4f2-263c9ce93f52",
- "first_name": "Dave",
- "last_name": "Kennedy",
- },
]
STAFF = [
diff --git a/src/registrar/views/index.py b/src/registrar/views/index.py
index 273ba8cb0..186535aa3 100644
--- a/src/registrar/views/index.py
+++ b/src/registrar/views/index.py
@@ -10,7 +10,7 @@ def index(request):
if request.user.is_authenticated:
applications = DomainApplication.objects.filter(creator=request.user)
# Let's exclude the approved applications since our
- # domain_applications context will be used to populate
+ # domain_applications context will be used to populate
# the active applications table
context["domain_applications"] = applications.exclude(status="approved")
From f4ce27a4ab8b195c571fc54f68956e602c730a7c Mon Sep 17 00:00:00 2001
From: rachidatecs
Date: Tue, 22 Aug 2023 11:58:23 -0400
Subject: [PATCH 43/43] Clean up branch from unrelated work
---
src/registrar/tests/test_views.py | 16 ----------------
src/registrar/views/index.py | 5 +----
2 files changed, 1 insertion(+), 20 deletions(-)
diff --git a/src/registrar/tests/test_views.py b/src/registrar/tests/test_views.py
index b2d6290f6..feb553bf7 100644
--- a/src/registrar/tests/test_views.py
+++ b/src/registrar/tests/test_views.py
@@ -1500,19 +1500,3 @@ class TestApplicationStatus(TestWithUser, WebTest):
reverse(url_name, kwargs={"pk": application.pk})
)
self.assertEqual(page.status_code, 403)
-
-
-def test_approved_application_not_in_active_requests(self):
- """An approved application is not shown in the Active
- Requests table on home.html."""
- application = completed_application(
- status=DomainApplication.APPROVED, user=self.user
- )
- application.save()
-
- home_page = self.app.get("/")
- # This works in our test environemnt because creating
- # an approved application here does not generate a
- # domain object, so we do not expect to see 'city.gov'
- # in either the Domains or Requests tables.
- self.assertNotContains(home_page, "city.gov")
diff --git a/src/registrar/views/index.py b/src/registrar/views/index.py
index 186535aa3..35a67bceb 100644
--- a/src/registrar/views/index.py
+++ b/src/registrar/views/index.py
@@ -9,10 +9,7 @@ def index(request):
context = {}
if request.user.is_authenticated:
applications = DomainApplication.objects.filter(creator=request.user)
- # Let's exclude the approved applications since our
- # domain_applications context will be used to populate
- # the active applications table
- context["domain_applications"] = applications.exclude(status="approved")
+ context["domain_applications"] = applications
domains = request.user.permissions.values(
"role",