diff --git a/src/components/dashboard/users/UserPasswordForm.tsx b/src/components/dashboard/users/UserPasswordForm.tsx index e8adb8ee16..a071111ad6 100644 --- a/src/components/dashboard/users/UserPasswordForm.tsx +++ b/src/components/dashboard/users/UserPasswordForm.tsx @@ -15,7 +15,7 @@ type IProps = { const UserPasswordForm: FunctionComponent = ({ userId }: IProps) => { const element = useRef(null); - let user: UserDto + const user = useRef(); const loadUser = useCallback(async () => { const page = element.current; @@ -30,17 +30,17 @@ const UserPasswordForm: FunctionComponent = ({ userId }: IProps) => { return; } - user = await window.ApiClient.getUser(userId); + user.current = await window.ApiClient.getUser(userId); const loggedInUser = await Dashboard.getCurrentUser(); - if (!user.Policy || !user.Configuration) { + if (!user.current.Policy || !user.current.Configuration) { throw new Error('Unexpected null user policy or configuration'); } - LibraryMenu.setTitle(user.Name); + LibraryMenu.setTitle(user.current.Name); - if (user.HasConfiguredPassword) { - if (!user.Policy?.IsAdministrator) { + if (user.current.HasConfiguredPassword) { + if (!user.current.Policy?.IsAdministrator) { (page.querySelector('#btnResetPassword') as HTMLDivElement).classList.remove('hide'); } (page.querySelector('#fldCurrentPassword') as HTMLDivElement).classList.remove('hide'); @@ -49,7 +49,7 @@ const UserPasswordForm: FunctionComponent = ({ userId }: IProps) => { (page.querySelector('#fldCurrentPassword') as HTMLDivElement).classList.add('hide'); } - const canChangePassword = loggedInUser?.Policy?.IsAdministrator || user.Policy.EnableUserPreferenceAccess; + const canChangePassword = loggedInUser?.Policy?.IsAdministrator || user.current.Policy.EnableUserPreferenceAccess; (page.querySelector('.passwordSection') as HTMLDivElement).classList.toggle('hide', !canChangePassword); import('../../autoFocuser').then(({ default: autoFocuser }) => { @@ -78,7 +78,7 @@ const UserPasswordForm: FunctionComponent = ({ userId }: IProps) => { const onSubmit = (e: Event) => { if ((page.querySelector('#txtNewPassword') as HTMLInputElement).value != (page.querySelector('#txtNewPasswordConfirm') as HTMLInputElement).value) { toast(globalize.translate('PasswordMatchError')); - } else if((page.querySelector('#txtNewPassword') as HTMLInputElement).value == '' && user.Policy?.IsAdministrator) { + } else if ((page.querySelector('#txtNewPassword') as HTMLInputElement).value == '' && user.current?.Policy?.IsAdministrator) { toast(globalize.translate('PasswordMissingSaveError')); } else { loading.show();