web: People: Added opportunity to delete group
This commit is contained in:
parent
17616763af
commit
1e274cc63f
@ -28,7 +28,7 @@ import {
|
||||
resendUserInvites,
|
||||
deleteUsers
|
||||
} from "../../../../../store/services/api";
|
||||
|
||||
import { deleteGroup } from '../../../../../store/group/actions';
|
||||
|
||||
|
||||
const wrapperStyle = {
|
||||
@ -53,7 +53,8 @@ const SectionHeaderContent = props => {
|
||||
onLoading,
|
||||
filter,
|
||||
history,
|
||||
settings
|
||||
settings,
|
||||
deleteGroup
|
||||
} = props;
|
||||
|
||||
const selectedUserIds = getSelectionIds(selection);
|
||||
@ -150,8 +151,9 @@ const SectionHeaderContent = props => {
|
||||
const onEditGroup = useCallback(() => history.push(`${settings.homepage}/group/edit/${group.id}`), [history, settings, group]);
|
||||
|
||||
const onDeleteGroup = useCallback(() => {
|
||||
toastr.success("Delete group action");
|
||||
}, []);
|
||||
deleteGroup(group.id)
|
||||
.then(() => toastr.success("Group has been removed successfully"));
|
||||
}, [deleteGroup, group]);
|
||||
|
||||
const getContextOptions = useCallback(() => {
|
||||
return [
|
||||
@ -214,5 +216,5 @@ const mapStateToProps = state => {
|
||||
|
||||
export default connect(
|
||||
mapStateToProps,
|
||||
{ updateUserStatus, updateUserType, fetchPeople }
|
||||
{ updateUserStatus, updateUserType, fetchPeople, deleteGroup }
|
||||
)(withTranslation()(withRouter(SectionHeaderContent)));
|
||||
|
@ -87,3 +87,21 @@ export function updateGroup(id, groupName, groupManager, members) {
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
export function deleteGroup(id) {
|
||||
return (dispatch, getState) => {
|
||||
const { people } = getState();
|
||||
const { groups, filter } = people;
|
||||
|
||||
return api
|
||||
.deleteGroup(id)
|
||||
.then(res => {
|
||||
checkResponseError(res);
|
||||
return dispatch(setGroups(groups.filter(g => g.id !== id)));
|
||||
})
|
||||
.then(() => {
|
||||
const newFilter = filter.clone(true);
|
||||
return fetchPeopleByFilter(dispatch, newFilter);
|
||||
});
|
||||
};
|
||||
}
|
||||
|
@ -227,3 +227,7 @@ export function updateGroup(id, groupName, groupManager, members) {
|
||||
const group = {groupId: id, groupName, groupManager, members};
|
||||
return axios.put(`${API_URL}/group/${id}.json`, group);
|
||||
}
|
||||
|
||||
export function deleteGroup(id) {
|
||||
return axios.delete(`${API_URL}/group/${id}.json`);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user