X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/ba827c8901ad45c3a8af49bf11af20c90bd46376..b1a6da4a288560a87e0e38ad2fd73fb227e3fc66:/src/views-components/user-dialog/manage-dialog.tsx

diff --git a/src/views-components/user-dialog/manage-dialog.tsx b/src/views-components/user-dialog/manage-dialog.tsx
index 953e312eea..ddf73fb3de 100644
--- a/src/views-components/user-dialog/manage-dialog.tsx
+++ b/src/views-components/user-dialog/manage-dialog.tsx
@@ -8,9 +8,10 @@ import { WithDialogProps } from "~/store/dialog/with-dialog";
 import { withDialog } from '~/store/dialog/with-dialog';
 import { WithStyles, withStyles } from '@material-ui/core/styles';
 import { ArvadosTheme } from '~/common/custom-theme';
-import { compose } from "redux";
-import { USER_MANAGE_DIALOG } from "~/store/users/users-actions";
+import { compose, Dispatch } from "redux";
+import { USER_MANAGE_DIALOG, openSetupShellAccount } from "~/store/users/users-actions";
 import { UserResource } from "~/models/user";
+import { connect } from "react-redux";
 
 type CssRules = 'spacing';
 
@@ -25,9 +26,18 @@ interface UserManageDataProps {
     data: UserResource;
 }
 
-type UserManageProps = UserManageDataProps & WithStyles<CssRules>;
+interface UserManageActionProps {
+    openSetupShellAccount: (uuid: string) => void;
+}
+
+const mapDispatchToProps = (dispatch: Dispatch) => ({
+    openSetupShellAccount: (uuid: string) => dispatch<any>(openSetupShellAccount(uuid))
+});
+
+type UserManageProps = UserManageDataProps & UserManageActionProps & WithStyles<CssRules>;
 
 export const UserManageDialog = compose(
+    connect(null, mapDispatchToProps),
     withDialog(USER_MANAGE_DIALOG),
     styles)(
         (props: WithDialogProps<UserManageProps> & UserManageProps) =>
@@ -46,7 +56,7 @@ export const UserManageDialog = compose(
                     <Typography variant="body2" className={props.classes.spacing}>
                         As an admin, you can setup a shell account for this user. The login name is automatically generated from the user's e-mail address.
                     </Typography>
-                    <Button variant="contained" color="primary">
+                    <Button variant="contained" color="primary" onClick={() => props.openSetupShellAccount(props.data.uuid)}>
                         {`SETUP SHELL ACCOUNT FOR ${props.data.firstName} ${props.data.lastName}`}
                     </Button>
                 </DialogContent>
