mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-13 17:05:43 +01:00
Move api usage to separate file
This commit is contained in:
@@ -7,8 +7,11 @@ import {
|
|||||||
SubmitButton
|
SubmitButton
|
||||||
} from "@scm-manager/ui-components";
|
} from "@scm-manager/ui-components";
|
||||||
import { translate } from "react-i18next";
|
import { translate } from "react-i18next";
|
||||||
import { setPermissions } from "./setPermissions";
|
import {
|
||||||
import { apiClient } from "@scm-manager/ui-components";
|
loadAvailablePermissions,
|
||||||
|
loadPermissionsForEntity,
|
||||||
|
setPermissions
|
||||||
|
} from "./handlePermissions";
|
||||||
import PermissionCheckbox from "./PermissionCheckbox";
|
import PermissionCheckbox from "./PermissionCheckbox";
|
||||||
import { connect } from "react-redux";
|
import { connect } from "react-redux";
|
||||||
import { getLink } from "../../modules/indexResource";
|
import { getLink } from "../../modules/indexResource";
|
||||||
@@ -67,28 +70,21 @@ class SetPermissions extends React.Component<Props, State> {
|
|||||||
};
|
};
|
||||||
|
|
||||||
componentDidMount(): void {
|
componentDidMount(): void {
|
||||||
apiClient
|
loadAvailablePermissions(this.props.availablePermissionLink).then(
|
||||||
.get(this.props.availablePermissionLink)
|
response => {
|
||||||
.then(response => {
|
|
||||||
return response.json();
|
|
||||||
})
|
|
||||||
.then(response => {
|
|
||||||
const availablePermissions = response.permissions;
|
const availablePermissions = response.permissions;
|
||||||
const permissions = {};
|
const permissions = {};
|
||||||
availablePermissions.forEach(p => {
|
availablePermissions.forEach(p => {
|
||||||
permissions[p] = false;
|
permissions[p] = false;
|
||||||
});
|
});
|
||||||
this.setState({ permissions }, this.loadPermissionsForUser);
|
this.setState({ permissions }, this.loadPermissionsForEntity);
|
||||||
});
|
}
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
loadPermissionsForUser = () => {
|
loadPermissionsForEntity = () => {
|
||||||
apiClient
|
loadPermissionsForEntity(this.props.selectedPermissionsLink.href).then(
|
||||||
.get(this.props.selectedPermissionsLink.href)
|
response => {
|
||||||
.then(response => {
|
|
||||||
return response.json();
|
|
||||||
})
|
|
||||||
.then(response => {
|
|
||||||
const checkedPermissions = response.permissions;
|
const checkedPermissions = response.permissions;
|
||||||
this.setState(state => {
|
this.setState(state => {
|
||||||
const newPermissions = state.permissions;
|
const newPermissions = state.permissions;
|
||||||
@@ -99,7 +95,8 @@ class SetPermissions extends React.Component<Props, State> {
|
|||||||
overwritePermissionsLink: response._links.overwrite
|
overwritePermissionsLink: response._links.overwrite
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
});
|
}
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
submit = (event: Event) => {
|
submit = (event: Event) => {
|
||||||
|
|||||||
@@ -11,3 +11,15 @@ export function setPermissions(url: string, permissions: string[]) {
|
|||||||
return response;
|
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();
|
||||||
|
});
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user