--- /dev/null
+import { Dialog, DialogTitle, DialogContent, DialogActions, Button} from '@mui/material';
+
+const ConfirmRevoke = ( { open, onClose, onConfirm } ) => {
+
+ return (
+ <Dialog open={ open } onClose={ onClose } >
+ <DialogTitle>Confirm Revoke</DialogTitle>
+ <DialogContent>
+ Are you sure you want to revoke this client?
+ </DialogContent>
+ <DialogActions>
+ <Button onClick={ onClose }>Cancel</Button>
+ <Button onClick={ onConfirm } variant='contained' color='primary'>Revoke</Button>
+ </DialogActions>
+ </Dialog>
+ );
+};
+
+export default ConfirmRevoke;
\ No newline at end of file
import 'tailwindcss/tailwind.css';
import { VPNService } from '../../services';
import CreateVPNClientDialog from './CreateVPNClientDialog';
+import { ConfirmRevoke } from '../components';
const VPN = () => {
/*const [token, setToken] = useState('');
const [password, setPassword] = useState('');*/
/*const [clientName, setClientName] = useState('');
const [staticIp, setStaticIp] = useState('');
- const [useStaticIp, setUseStaticIp] = useState(false);
- const [revokeClientName, setRevokeClientName] = useState('');*/
+ const [useStaticIp, setUseStaticIp] = useState(false);*/
+ const [revokeOpen, setRevokeOpen] = useState( false );
+ const [revokeClientName, setRevokeClientName] = useState('');
const [clients, setClients] = useState([]);
const [availableClients, setAvailableClients] = useState( [] );
const [message, setMessage] = useState('');
return (
<Container>
+ { revokeOpen &&
+ <ConfirmRevoke
+ open={revokeOpen}
+ onClose={() => setRevokeOpen(false)}
+ onConfirm={handleRevokeClientSubmit.bind(null, revokeClientName)}
+ />}
<Button variant="contained" color="primary" onClick={() => setCreateOpen(true)}>Create Client</Button>
{createOpen && <CreateVPNClientDialog open={createOpen} onClose={() => setCreateOpen(false)} onCreate={handleCreateClientSubmit}/>}
{/*<Typography variant="h5" className="mt-6">Create OpenVPN Client</Typography>
<Button
variant="contained"
color="secondary"
- onClick={() => handleRevokeClientSubmit(row.original.clientName)}
+ onClick={() => {
+ setRevokeClientName( row.original.clientName );
+ setRevokeOpen( true );
+ }}
>
- Delete
+ Revoke
</Button>
),
},