cleaning up navigation

This commit is contained in:
Beverly Nguyen
2024-04-15 16:08:31 -07:00
parent dfe5b2e020
commit a171ba73c4
4 changed files with 77 additions and 9 deletions

View File

@@ -25,6 +25,7 @@ from app.main.views.dashboard import (
)
from app.models.organization import AllOrganizations, Organization
from app.models.user import InvitedOrgUser, User
from app.utils.navigation_dictionaries import using_organization_nav
from app.utils.csv import Spreadsheet
from app.utils.user import user_has_permissions, user_is_platform_admin
@@ -84,6 +85,7 @@ def organization_dashboard(org_id):
download_link=url_for(
".download_organization_usage_report", org_id=org_id, selected_year=year
),
org_navigation_links=using_organization_nav(),
)
@@ -145,6 +147,7 @@ def organization_trial_mode_services(org_id):
return render_template(
"views/organizations/organization/trial-mode-services.html",
search_form=SearchByNameForm(),
org_navigation_links=using_organization_nav(),
)
@@ -156,6 +159,7 @@ def manage_org_users(org_id):
users=current_organization.team_members,
show_search_box=(len(current_organization.team_members) > 7),
form=SearchUsersForm(),
org_navigation_links=using_organization_nav(),
)
@@ -174,7 +178,8 @@ def invite_org_user(org_id):
return redirect(url_for(".manage_org_users", org_id=org_id))
return render_template(
"views/organizations/organization/users/invite-org-user.html", form=form
"views/organizations/organization/users/invite-org-user.html", form=form,
org_navigation_links=using_organization_nav(),
)
@@ -228,6 +233,7 @@ def cancel_invited_org_user(org_id, invited_user_id):
def organization_settings(org_id):
return render_template(
"views/organizations/organization/settings/index.html",
org_navigation_links=using_organization_nav(),
)
@@ -251,6 +257,7 @@ def edit_organization_name(org_id):
return render_template(
"views/organizations/organization/settings/edit-name.html",
form=form,
org_navigation_links=using_organization_nav(),
)
@@ -271,6 +278,7 @@ def edit_organization_type(org_id):
return render_template(
"views/organizations/organization/settings/edit-type.html",
form=form,
org_navigation_links=using_organization_nav(),
)
@@ -309,6 +317,7 @@ def edit_organization_domains(org_id):
return render_template(
"views/organizations/organization/settings/edit-domains.html",
form=form,
org_navigation_links=using_organization_nav(),
)
@@ -327,6 +336,7 @@ def edit_organization_notes(org_id):
return render_template(
"views/organizations/organization/settings/edit-organization-notes.html",
form=form,
org_navigation_links=using_organization_nav(),
)
@@ -357,10 +367,11 @@ def edit_organization_billing_details(org_id):
return render_template(
"views/organizations/organization/settings/edit-organization-billing-details.html",
form=form,
org_navigation_links=using_organization_nav(),
)
@main.route("/organizations/<uuid:org_id>/billing")
@user_is_platform_admin
def organization_billing(org_id):
return render_template("views/organizations/organization/billing.html")
return render_template("views/organizations/organization/billing.html",org_navigation_links=using_organization_nav(),)

View File

@@ -1,11 +1,34 @@
<nav class="navigation">
<!-- <nav class="navigation">
<ul>
<li><a class="usa-link{{ org_navigation.is_selected('dashboard') }}" href="{{ url_for('.organization_dashboard', org_id=current_org.id) }}">Usage</a></li>
<li><a class="usa-link{{ org_navigation.is_selected('team-members') }}" href="{{ url_for('.manage_org_users', org_id=current_org.id) }}">Team members</a></li>
{% if current_user.platform_admin %}
{% if current_user.platform_admin %}
<li><a class="usa-link{{ org_navigation.is_selected('settings') }}" href="{{ url_for('.organization_settings', org_id=current_org.id) }}">Settings</a></li>
<li><a class="usa-link{{ org_navigation.is_selected('trial-services') }}" href="{{ url_for('.organization_trial_mode_services', org_id=current_org.id) }}">Trial mode services</a></li>
<li><a class="usa-link{{ org_navigation.is_selected('billing') }}" href="{{ url_for('.organization_billing', org_id=current_org.id) }}">Billing</a></li>
{% endif %}
{% endif %}
</ul>
</nav>
</nav> -->
{% if org_navigation_links %}
<nav aria-label="Side navigation,">
<ul class="usa-sidenav" itemtype="http://schema.org/ItemList">
{% for item in org_navigation_links %}
{% if not item['requires_permission'] or current_user.platform_admin %}
<li class="usa-sidenav__item" href="{{ url_for(item['link'], org_id=current_org.id) }}"
itemprop="itemListElement"
itemscope
itemtype="http://schema.org/ListItem"
>
<a class="{% if request.endpoint == item['link'] %}usa-current{% endif %}" href="{{ url_for(item['link'], org_id=current_org.id) }}" itemprop="item">
<span itemprop="name">{{item['name']}}</span>
</a>
</li>
{% endif %}
{% endfor %}
</ul>
</nav>
{% endif %}

View File

@@ -15,16 +15,22 @@
The file service_navigation.html is included only in withnav_template. It's not used in settings_template. That is one out of the two differences between settings template and withnav template. As a result, when other templates extend settings_template, they include the serviceNavigation block but keep it empty. The settings_template.html is specifically used for these pages in the app: manage-users.html, service-settings.html, and user-profile.html.
In addition, for templates that previously extended org_template.html, there's an addition of the orgNavBreadcrumb block.
In addition, for templates that previously extended org_template.html, there's an addition of the orgNavBreadcrumb block. serviceNavigation should be empty on templates that previously extended org_template
{% block orgNavBreadcrumb %}
{% include "/new/components/org_nav_breadcrumb.html" %}
{% endblock %}
#}
{% block orgNavBreadcrumb %}{% endblock %}
{% if current_org.name %}
{% block orgNavBreadcrumb %}{% include "/new/components/org_nav_breadcrumb.html" %}{% endblock %}
{% endif %}
<div class="grid-row margin-top-5">
<div class="grid-col-3">
{% block sideNavigation %}
{% include "/new/components/main_nav.html" %}
{% if org_navigation_links %}
{% include "/new/components/org_nav.html" %}
{% else %}
{% include "/new/components/main_nav.html" %}
{% endif %}
{#
Include settings_nav.html for child templates that previously extended settings_template.

View File

@@ -0,0 +1,28 @@
def using_organization_nav():
return [
{
"name": "Usage",
"link": ".organization_dashboard",
"requires_permission": False,
},
{
"name": "Team members",
"link": ".manage_org_users",
"requires_permission": False,
},
{
"name": "Settings",
"link": ".organization_settings",
"requires_permission": False,
},
{
"name": "Trial mode services",
"link": ".organization_trial_mode_services",
"requires_permission": False,
},
{
"name": "Billing",
"link": ".organization_billing",
"requires_permission": False,
},
]