From d790d2e7e118740f981dde50747a512e4475cbf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Sat, 19 Jan 2019 20:05:19 +0100 Subject: [PATCH] Move api usage to separate file --- .../permissions/components/SetPermissions.js | 33 +++++++++---------- ...setPermissions.js => handlePermissions.js} | 12 +++++++ 2 files changed, 27 insertions(+), 18 deletions(-) rename scm-ui/src/permissions/components/{setPermissions.js => handlePermissions.js} (57%) diff --git a/scm-ui/src/permissions/components/SetPermissions.js b/scm-ui/src/permissions/components/SetPermissions.js index 5d0d2b7a1f..10639a9516 100644 --- a/scm-ui/src/permissions/components/SetPermissions.js +++ b/scm-ui/src/permissions/components/SetPermissions.js @@ -7,8 +7,11 @@ import { SubmitButton } from "@scm-manager/ui-components"; import { translate } from "react-i18next"; -import { setPermissions } from "./setPermissions"; -import { apiClient } from "@scm-manager/ui-components"; +import { + loadAvailablePermissions, + loadPermissionsForEntity, + setPermissions +} from "./handlePermissions"; import PermissionCheckbox from "./PermissionCheckbox"; import { connect } from "react-redux"; import { getLink } from "../../modules/indexResource"; @@ -67,28 +70,21 @@ class SetPermissions extends React.Component { }; componentDidMount(): void { - apiClient - .get(this.props.availablePermissionLink) - .then(response => { - return response.json(); - }) - .then(response => { + loadAvailablePermissions(this.props.availablePermissionLink).then( + response => { const availablePermissions = response.permissions; const permissions = {}; availablePermissions.forEach(p => { permissions[p] = false; }); - this.setState({ permissions }, this.loadPermissionsForUser); - }); + this.setState({ permissions }, this.loadPermissionsForEntity); + } + ); } - loadPermissionsForUser = () => { - apiClient - .get(this.props.selectedPermissionsLink.href) - .then(response => { - return response.json(); - }) - .then(response => { + loadPermissionsForEntity = () => { + loadPermissionsForEntity(this.props.selectedPermissionsLink.href).then( + response => { const checkedPermissions = response.permissions; this.setState(state => { const newPermissions = state.permissions; @@ -99,7 +95,8 @@ class SetPermissions extends React.Component { overwritePermissionsLink: response._links.overwrite }; }); - }); + } + ); }; submit = (event: Event) => { diff --git a/scm-ui/src/permissions/components/setPermissions.js b/scm-ui/src/permissions/components/handlePermissions.js similarity index 57% rename from scm-ui/src/permissions/components/setPermissions.js rename to scm-ui/src/permissions/components/handlePermissions.js index 4c54036fab..4ef9507ce7 100644 --- a/scm-ui/src/permissions/components/setPermissions.js +++ b/scm-ui/src/permissions/components/handlePermissions.js @@ -11,3 +11,15 @@ export function setPermissions(url: string, permissions: string[]) { return response; }); } + +export function loadPermissionsForEntity(url: string) { + return apiClient.get(url).then(response => { + return response.json(); + }); +} + +export function loadAvailablePermissions(url: string) { + return apiClient.get(url).then(response => { + return response.json(); + }); +}