X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/8753f89e9f786a12cf72374ffb1c9146b598d285..facccf58114be4d8c7a08286cd2197bd222abdc1:/src/views-components/user-dialog/manage-dialog.tsx?ds=sidebyside

diff --git a/src/views-components/user-dialog/manage-dialog.tsx b/src/views-components/user-dialog/manage-dialog.tsx
index 8db1e053..b812f5cb 100644
--- a/src/views-components/user-dialog/manage-dialog.tsx
+++ b/src/views-components/user-dialog/manage-dialog.tsx
@@ -2,16 +2,16 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-import * as React from "react";
-import { Dialog, DialogTitle, DialogContent, DialogActions, Button, Typography } from "@material-ui/core";
-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 React from "react";
 import { compose, Dispatch } from "redux";
-import { USER_MANAGEMENT_DIALOG, openSetupShellAccount, loginAs } from "~/store/users/users-actions";
-import { UserResource } from "~/models/user";
 import { connect } from "react-redux";
+import { Dialog, DialogTitle, DialogContent, DialogActions, Button, Typography } from "@material-ui/core";
+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 { USER_MANAGEMENT_DIALOG, openSetupShellAccount, loginAs } from "store/users/users-actions";
+import { getUserDisplayName } from "models/user";
 
 type CssRules = 'spacing';
 
@@ -23,7 +23,7 @@ const styles = withStyles<CssRules>((theme: ArvadosTheme) => ({
 }));
 
 interface UserManageDataProps {
-    data: UserResource;
+    data: any;
 }
 
 interface UserManageActionProps {
@@ -47,24 +47,27 @@ export const UserManageDialog = compose(
                 onClose={props.closeDialog}
                 fullWidth
                 maxWidth="md">
-                <DialogTitle>{`Manage - ${props.data.firstName} ${props.data.lastName}`}</DialogTitle>
-                <DialogContent>
-                    <Typography variant="body2" className={props.classes.spacing}>
-                        As an admin, you can log in as this user. When youâve finished, you will need to log out and log in again with your own account.
+                {props.data &&
+                    <span>
+                        <DialogTitle>{`Manage - ${getUserDisplayName(props.data)}`}</DialogTitle>
+                        <DialogContent>
+                            <Typography variant='body1' className={props.classes.spacing}>
+                                As an admin, you can log in as this user. When youâve finished, you will need to log out and log in again with your own account.
                     </Typography>
-                    <Button variant="contained" color="primary" onClick={() => props.loginAs(props.data.uuid)}>
-                        {`LOG IN AS ${props.data.firstName} ${props.data.lastName}`}
-                    </Button>
-                    <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.
+                            <Button variant="contained" color="primary" onClick={() => props.loginAs(props.data.uuid)}>
+                                {`LOG IN AS ${getUserDisplayName(props.data)}`}
+                            </Button>
+                            <Typography variant='body1' 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" onClick={() => props.openSetupShellAccount(props.data.uuid)}>
-                        {`SETUP SHELL ACCOUNT FOR ${props.data.firstName} ${props.data.lastName}`}
-                    </Button>
-                </DialogContent>
+                            <Button variant="contained" color="primary" onClick={() => props.openSetupShellAccount(props.data.uuid)}>
+                                {`SETUP SHELL ACCOUNT FOR ${getUserDisplayName(props.data)}`}
+                            </Button>
+                        </DialogContent></span>}
+
                 <DialogActions>
                     <Button
-                        variant='flat'
+                        variant='text'
                         color='primary'
                         onClick={props.closeDialog}>
                         Close
