route for deleting an application

This commit is contained in:
dandds
2019-04-10 07:15:15 -04:00
parent 0348af7ce7
commit dac764ab82
6 changed files with 105 additions and 1 deletions

View File

@@ -86,6 +86,7 @@ _PORTFOLIO_APP_MGMT_PERMISSION_SETS = [
"permissions": [
Permissions.EDIT_APPLICATION,
Permissions.CREATE_APPLICATION,
Permissions.DELETE_APPLICATION,
Permissions.EDIT_APPLICATION_MEMBER,
Permissions.CREATE_APPLICATION_MEMBER,
Permissions.EDIT_ENVIRONMENT,

View File

@@ -8,6 +8,7 @@ class Permissions(object):
VIEW_APPLICATION = "view_application"
EDIT_APPLICATION = "edit_application"
CREATE_APPLICATION = "create_application"
DELETE_APPLICATION = "delete_application"
VIEW_APPLICATION_MEMBER = "view_application_member"
EDIT_APPLICATION_MEMBER = "edit_application_member"
CREATE_APPLICATION_MEMBER = "create_application_member"

View File

@@ -15,6 +15,7 @@ from atst.domain.portfolios import Portfolios
from atst.forms.application import NewApplicationForm, ApplicationForm
from atst.domain.authz.decorator import user_can_access_decorator as user_can
from atst.models.permissions import Permissions
from atst.utils.flash import formatted_flash as flash
@portfolios_bp.route("/portfolios/<portfolio_id>/applications")
@@ -118,3 +119,18 @@ def access_environment(portfolio_id, environment_id):
token = app.csp.cloud.get_access_token(env_role)
return redirect(url_for("atst.csp_environment_access", token=token))
@portfolios_bp.route(
"/portfolios/<portfolio_id>/applications/<application_id>/delete", methods=["POST"]
)
@user_can(Permissions.DELETE_APPLICATION, message="delete application")
def delete_application(portfolio_id, application_id):
application = Applications.get(application_id)
Applications.delete(application)
flash("application_deleted", application_name=application.name)
return redirect(
url_for("portfolios.portfolio_applications", portfolio_id=portfolio_id)
)

View File

@@ -148,6 +148,15 @@ MESSAGES = {
""",
"category": "success",
},
"application_deleted": {
"title_template": "Success!",
"message_template": """
You have successfully deleted the {{ application_name }} application.
To view the retained activity log, visit the portfolio administration
page. <a href="#">Undo this action</a>.
""",
"category": "success",
},
}