diff options
Diffstat (limited to 'Software/Visual_Studio/FSE/Modules/Tango.FSE.UsersAndRoles/ViewModels/UserDetailsViewVM.cs')
| -rw-r--r-- | Software/Visual_Studio/FSE/Modules/Tango.FSE.UsersAndRoles/ViewModels/UserDetailsViewVM.cs | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.UsersAndRoles/ViewModels/UserDetailsViewVM.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.UsersAndRoles/ViewModels/UserDetailsViewVM.cs index 9f021ddb1..701e67aa8 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.UsersAndRoles/ViewModels/UserDetailsViewVM.cs +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.UsersAndRoles/ViewModels/UserDetailsViewVM.cs @@ -36,6 +36,20 @@ namespace Tango.FSE.UsersAndRoles.ViewModels set { _organization = value; RaisePropertyChangedAuto(); } } + private bool _isResetUserPassword; + public bool IsResetUserPassword + { + get { return _isResetUserPassword; } + set { _isResetUserPassword = value; RaisePropertyChangedAuto(); } + } + + private String _resetPassword; + public String ResetPassword + { + get { return _resetPassword; } + set { _resetPassword = value; RaisePropertyChangedAuto(); } + } + private bool _isNewUser; public bool IsNewUser { @@ -121,11 +135,26 @@ namespace Tango.FSE.UsersAndRoles.ViewModels public RelayCommand GeneratePasswordCommand { get; set; } + public RelayCommand ResetPasswordCommand { get; set; } + + public RelayCommand GenerateResetPasswordCommand { get; set; } + public UserDetailsViewVM() { SaveCommand = new RelayCommand(Save, () => IsFree); GeneratePasswordCommand = new RelayCommand(GeneratePassword); SendInvitation = true; + + ResetPasswordCommand = new RelayCommand(() => { IsResetUserPassword = true; GenerateResetPassword(); }); + GenerateResetPasswordCommand = new RelayCommand(GenerateResetPassword); + } + + private void GenerateResetPassword() + { + if (IsResetUserPassword) + { + ResetPassword = Services.OrganizationsService.GenerateRandomPassword(); + } } private void GeneratePassword() @@ -190,7 +219,7 @@ namespace Tango.FSE.UsersAndRoles.ViewModels bool user_is_current_user_and_fse_admin_and_not_twine_admin = user.Guid == CurrentUser.Guid && user.HasRole(Roles.FSEAdministrator) && !user.HasRole(Roles.FSETwineAdministrator); var collection = new RolesCollection(); - collection.Add(new RoleModel(roles.SingleOrDefault(x => x.RoleEnum == Roles.FSETechnician)) { IsSelected = isNew}); + collection.Add(new RoleModel(roles.SingleOrDefault(x => x.RoleEnum == Roles.FSETechnician)) { IsSelected = isNew }); collection.Add(new RoleModel(roles.SingleOrDefault(x => x.RoleEnum == Roles.FSEAdvancedTechnician), Roles.FSETechnician)); collection.Add(new RoleModel(roles.SingleOrDefault(x => x.RoleEnum == Roles.FSEAdministrator), Roles.FSETechnician, Roles.FSEAdvancedTechnician) { IsEnabled = !user_is_current_user_and_fse_admin_and_not_twine_admin }); @@ -273,7 +302,7 @@ namespace Tango.FSE.UsersAndRoles.ViewModels if (!IsNewUser) { - await Services.OrganizationsService.UpdateUser(User); + await Services.OrganizationsService.UpdateUser(User, IsResetUserPassword, ResetPassword); } else { @@ -386,6 +415,8 @@ namespace Tango.FSE.UsersAndRoles.ViewModels public void OnNavigatedToWithObject(NavigationObject obj) { + IsResetUserPassword = false; + ResetPassword = null; User = null; IsNewUser = obj.IsNewUser; Organization = obj.Organization; |
