Files
SCM-Manager/scm-ui/src/users/containers/DeleteUserButton.js

59 lines
1.0 KiB
JavaScript
Raw Normal View History

2018-07-10 15:18:37 +02:00
// @flow
import React from "react";
import type {
User
} from "../types/User";
import {
confirmAlert
} from '../../components/ConfirmAlert';
2018-07-10 15:18:37 +02:00
type Props = {
user: User,
deleteUser: (link: string) => void,
2018-07-10 15:18:37 +02:00
};
class DeleteUserButton extends React.Component < Props > {
2018-07-10 15:18:37 +02:00
deleteUser = () => {
2018-07-10 16:37:27 +02:00
this.props.deleteUser(this.props.user._links.delete.href);
2018-07-10 15:18:37 +02:00
};
confirmDelete = () => {
confirmAlert({
title: 'Delete user',
message: 'Do you really want to delete the user?',
buttons: [{
label: 'Yes',
onClick: () => this.deleteUser()
},
{
label: 'No',
onClick: () => null
}
]
})
}
2018-07-10 16:37:27 +02:00
isDeletable = () => {
return this.props.user._links.delete;
2018-07-10 15:18:37 +02:00
};
2018-07-10 16:37:27 +02:00
render() {
if (!this.isDeletable()) {
return;
}
return ( <
button type = "button"
onClick = {
(e) => {
this.confirmDelete()
}
} >
Delete User <
/button>
2018-07-10 16:37:27 +02:00
);
}
}
2018-07-10 15:18:37 +02:00
export default DeleteUserButton;