From c1ab118481da5004b9ed0caaf1223c94b0b9decc Mon Sep 17 00:00:00 2001 From: John Mitchell Date: Fri, 6 Mar 2020 11:03:36 -0500 Subject: [PATCH] remove unnecessary org rest calls for notifcation tabs on proj wfjt --- awx/ui_next/src/screens/Project/Project.jsx | 27 ++-------------- .../screens/Template/WorkflowJobTemplate.jsx | 32 ++++--------------- 2 files changed, 8 insertions(+), 51 deletions(-) diff --git a/awx/ui_next/src/screens/Project/Project.jsx b/awx/ui_next/src/screens/Project/Project.jsx index 12f18407d8..1f75a05c79 100644 --- a/awx/ui_next/src/screens/Project/Project.jsx +++ b/awx/ui_next/src/screens/Project/Project.jsx @@ -25,8 +25,6 @@ class Project extends Component { contentError: null, isInitialized: false, isNotifAdmin: false, - isAuditorOfThisOrg: false, - isAdminOfThisOrg: false, }; this.loadProject = this.loadProject.bind(this); this.loadProjectAndRoles = this.loadProjectAndRoles.bind(this); @@ -65,22 +63,10 @@ class Project extends Component { role_level: 'notification_admin_role', }), ]); - const [auditorRes, adminRes] = await Promise.all([ - OrganizationsAPI.read({ - id: data.organization, - role_level: 'auditor_role', - }), - OrganizationsAPI.read({ - id: data.organization, - role_level: 'admin_role', - }), - ]); setBreadcrumb(data); this.setState({ project: data, isNotifAdmin: notifAdminRes.data.results.length > 0, - isAuditorOfThisOrg: auditorRes.data.results.length > 0, - isAdminOfThisOrg: adminRes.data.results.length > 0, }); } catch (err) { this.setState({ contentError: err }); @@ -124,18 +110,9 @@ class Project extends Component { hasContentLoading, isInitialized, isNotifAdmin, - isAuditorOfThisOrg, - isAdminOfThisOrg, } = this.state; - const canSeeNotificationsTab = - me.is_superuser || - me.is_system_auditor || - isNotifAdmin || - isAuditorOfThisOrg; - const canToggleNotifications = - me.is_superuser || - (isNotifAdmin && - (me.is_system_auditor || isAuditorOfThisOrg || isAdminOfThisOrg)); + const canSeeNotificationsTab = me.is_system_auditor || isNotifAdmin; + const canToggleNotifications = isNotifAdmin; const tabsArray = [ { name: i18n._(t`Details`), link: `${match.url}/details` }, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplate.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplate.jsx index 0020df5e05..d00142066c 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplate.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplate.jsx @@ -33,8 +33,6 @@ class WorkflowJobTemplate extends Component { template: null, webhook_key: null, isNotifAdmin: false, - isAuditorOfThisOrg: false, - isAdminOfThisOrg: false, }; this.loadTemplate = this.loadTemplate.bind(this); this.loadSchedules = this.loadSchedules.bind(this); @@ -77,27 +75,14 @@ class WorkflowJobTemplate extends Component { ); data.summary_fields.webhook_credential.kind = name; } - const [notifAdminRes, auditorRes, adminRes] = await Promise.all([ - OrganizationsAPI.read({ - page_size: 1, - role_level: 'notification_admin_role', - }), - OrganizationsAPI.read({ - id: data.organization, - role_level: 'auditor_role', - }), - OrganizationsAPI.read({ - id: data.organization, - role_level: 'admin_role', - }), - ]); - this.setState({ template: data }); + const notifAdminRes = await OrganizationsAPI.read({ + page_size: 1, + role_level: 'notification_admin_role', + }); setBreadcrumb(data); this.setState({ template: data, isNotifAdmin: notifAdminRes.data.results.length > 0, - isAuditorOfThisOrg: auditorRes.data.results.length > 0, - isAdminOfThisOrg: adminRes.data.results.length > 0, }); } catch (err) { this.setState({ contentError: err }); @@ -124,15 +109,10 @@ class WorkflowJobTemplate extends Component { template, webhook_key, isNotifAdmin, - isAuditorOfThisOrg, - isAdminOfThisOrg, } = this.state; - const canSeeNotificationsTab = - me.is_system_auditor || isNotifAdmin || isAuditorOfThisOrg; - const canToggleNotifications = - isNotifAdmin && - (me.is_system_auditor || isAuditorOfThisOrg || isAdminOfThisOrg); + const canSeeNotificationsTab = me.is_system_auditor || isNotifAdmin; + const canToggleNotifications = isNotifAdmin; const tabsArray = [ { name: i18n._(t`Details`), link: `${match.url}/details` },