Clean up code and formatting
This commit is contained in:
parent
d296d3c237
commit
4dab326eef
@ -35,7 +35,6 @@ class PermissionsForm(Form):
|
||||
description=translate(
|
||||
"portfolios.applications.members.form.env_mgmt.description"
|
||||
),
|
||||
false_values=(False, "False", 'false', ''),
|
||||
)
|
||||
perms_team_mgmt = BooleanField(
|
||||
translate("portfolios.applications.members.form.team_mgmt.label"),
|
||||
@ -43,7 +42,6 @@ class PermissionsForm(Form):
|
||||
description=translate(
|
||||
"portfolios.applications.members.form.team_mgmt.description"
|
||||
),
|
||||
false_values=(False, "False", 'false', ''),
|
||||
)
|
||||
perms_del_env = BooleanField(
|
||||
translate("portfolios.applications.members.form.del_env.label"),
|
||||
|
@ -9,7 +9,11 @@ from atst.domain.audit_log import AuditLog
|
||||
from atst.domain.common import Paginator
|
||||
from atst.domain.environment_roles import EnvironmentRoles
|
||||
from atst.forms.application import ApplicationForm, EditEnvironmentForm
|
||||
from atst.forms.application_member import NewForm as MemberForm, UpdateMemberForm, PermissionsForm
|
||||
from atst.forms.application_member import (
|
||||
NewForm as NewMemberForm,
|
||||
UpdateMemberForm,
|
||||
PermissionsForm,
|
||||
)
|
||||
from atst.forms.data import ENV_ROLE_NO_ACCESS as NO_ACCESS
|
||||
from atst.domain.authz.decorator import user_can_access_decorator as user_can
|
||||
from atst.models.environment_role import CSPRole
|
||||
@ -35,65 +39,21 @@ def get_environments_obj_for_app(application):
|
||||
return environments_obj
|
||||
|
||||
|
||||
def data_for_app_env_roles_form(application):
|
||||
# this whole thing can be deleted when #1067 is rebased/merged! (and check other fns here)
|
||||
csp_roles = [role.value for role in CSPRole]
|
||||
csp_roles.insert(0, NO_ACCESS)
|
||||
# dictionary for sorting application members by environments
|
||||
# and roles within those environments
|
||||
environments_dict = {
|
||||
e.id: {role_name: [] for role_name in csp_roles}
|
||||
for e in application.environments
|
||||
}
|
||||
for member in application.members:
|
||||
env_ids = set(environments_dict.keys())
|
||||
for env_role in member.environment_roles:
|
||||
role_members_list = environments_dict[env_role.environment_id][
|
||||
env_role.role
|
||||
]
|
||||
role_members_list.append(
|
||||
{
|
||||
"application_role_id": str(member.id),
|
||||
"user_name": member.user_name,
|
||||
"role_name": env_role.role,
|
||||
}
|
||||
)
|
||||
env_ids.remove(env_role.environment_id)
|
||||
|
||||
# any leftover environment IDs are ones the app member
|
||||
# does not have access to
|
||||
for env_id in env_ids:
|
||||
role_members_list = environments_dict[env_id][NO_ACCESS]
|
||||
role_members_list.append(
|
||||
{
|
||||
"application_role_id": str(member.id),
|
||||
"user_name": member.user_name,
|
||||
"role_name": NO_ACCESS,
|
||||
}
|
||||
)
|
||||
|
||||
# transform the data into the shape the form needs
|
||||
nested_data = [
|
||||
{
|
||||
"env_id": env_id,
|
||||
"team_roles": [
|
||||
{"role": role, "members": members} for role, members in roles.items()
|
||||
],
|
||||
}
|
||||
for env_id, roles in environments_dict.items()
|
||||
]
|
||||
|
||||
return {"envs": nested_data}
|
||||
|
||||
|
||||
def get_members_data(application):
|
||||
members_data = []
|
||||
for member in application.members:
|
||||
permission_sets = {
|
||||
"perms_team_mgmt": "True",
|
||||
# "perms_team_mgmt": bool(member.has_permission_set(PermissionSets.EDIT_APPLICATION_TEAM)),
|
||||
"perms_env_mgmt": bool(member.has_permission_set(PermissionSets.EDIT_APPLICATION_ENVIRONMENTS)),
|
||||
"perms_del_env": bool(member.has_permission_set(PermissionSets.DELETE_APPLICATION_ENVIRONMENTS)),
|
||||
"perms_team_mgmt": bool(
|
||||
member.has_permission_set(PermissionSets.EDIT_APPLICATION_TEAM)
|
||||
),
|
||||
"perms_env_mgmt": bool(
|
||||
member.has_permission_set(PermissionSets.EDIT_APPLICATION_ENVIRONMENTS)
|
||||
),
|
||||
"perms_del_env": bool(
|
||||
member.has_permission_set(
|
||||
PermissionSets.DELETE_APPLICATION_ENVIRONMENTS
|
||||
)
|
||||
),
|
||||
}
|
||||
roles = EnvironmentRoles.get_for_application_member(member.id)
|
||||
environment_roles = [
|
||||
@ -132,7 +92,7 @@ def get_new_member_form(application):
|
||||
for e in application.environments
|
||||
]
|
||||
|
||||
return MemberForm(data={"environment_roles": env_roles})
|
||||
return NewMemberForm(data={"environment_roles": env_roles})
|
||||
|
||||
|
||||
def render_settings_page(application, **kwargs):
|
||||
@ -302,7 +262,7 @@ def delete_environment(environment_id):
|
||||
)
|
||||
def create_member(application_id):
|
||||
application = Applications.get(application_id)
|
||||
form = MemberForm(http_request.form)
|
||||
form = NewMemberForm(http_request.form)
|
||||
|
||||
if form.validate():
|
||||
try:
|
||||
@ -371,5 +331,4 @@ def remove_member(application_id, application_role_id):
|
||||
)
|
||||
@user_can(Permissions.EDIT_APPLICATION_MEMBER, message="update application member")
|
||||
def update_member(application_id, application_role_id):
|
||||
import ipdb; ipdb.set_trace()
|
||||
pass
|
||||
return redirect(url_for("applications.settings", application_id=g.application.id))
|
||||
|
@ -18,7 +18,6 @@
|
||||
<legend>
|
||||
{{ field(id=id, checked=True, **{"v-model": "isChecked"}) }}
|
||||
{{ field.label(for=id) | safe }}
|
||||
{{ field.data }}
|
||||
|
||||
{% if field.description %}
|
||||
<p class='usa-input__help'>
|
||||
|
@ -91,11 +91,11 @@
|
||||
</a>
|
||||
{{ MultiStepModalForm(
|
||||
name=new_member_modal_name,
|
||||
form=member.form,
|
||||
form=new_member_form,
|
||||
form_action=url_for("applications.create_member", application_id=application.id),
|
||||
steps=[
|
||||
member_steps.MemberStepOne(member.form),
|
||||
member_steps.MemberStepTwo(member.form, application)
|
||||
member_steps.MemberStepOne(new_member_form),
|
||||
member_steps.MemberStepTwo(new_member_form, application)
|
||||
],
|
||||
) }}
|
||||
{% endif %}
|
||||
@ -123,7 +123,7 @@
|
||||
{% set modal_name = "edit_member-{}".format(loop.index) %}
|
||||
{% call Modal(modal_name, dismissable=True) %}
|
||||
<form id='{{ modal_name }}' method="POST" action="{{ url_for('applications.update_member', application_id=application.id, application_role_id=member.role_id) }}">
|
||||
{{ member.form.csrf_token() }}
|
||||
{{ member.form.csrf_token }}
|
||||
<h4>{{ "portfolios.applications.members.form.project_perms" | translate }}</h4>
|
||||
<div class="application-perms">
|
||||
{% set team_mgmt = "perms_team_mgmt-{}".format(member.role_id) %}
|
||||
|
@ -41,9 +41,9 @@ def test_update_member_form():
|
||||
form_data = {
|
||||
"member_role_id": 123,
|
||||
"permission_sets": {
|
||||
"perms_team_mgmt": PermissionSets.EDIT_APPLICATION_TEAM,
|
||||
"perms_env_mgmt": PermissionSets.VIEW_APPLICATION,
|
||||
"perms_del_env": PermissionSets.VIEW_APPLICATION,
|
||||
"perms_team_mgmt": True,
|
||||
"perms_env_mgmt": False,
|
||||
"perms_del_env": False,
|
||||
},
|
||||
"environment_roles": {
|
||||
"environment_id": 123,
|
||||
|
Loading…
x
Reference in New Issue
Block a user