using PDF_Office.Helper; using PDF_Office.Model; using Prism.Commands; using Prism.Mvvm; using Prism.Regions; using Prism.Services.Dialogs; using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; namespace PDF_Office.ViewModels.Dialog.ServiceDialog { public class PasswordUpdataRegionViewModel : BindableBase, INavigationAware { private string uuid = ServiceHelper.GetDeviceSerialNumber(); private LoginDialogViewModel LoginDialogViewModel; public IDialogService dialogs; public bool IsNavigationTarget(NavigationContext navigationContext) { return true; } public void OnNavigatedFrom(NavigationContext navigationContext) { } public void OnNavigatedTo(NavigationContext navigationContext) { navigationContext.Parameters.TryGetValue("LoginDialogViewModel", out LoginDialogViewModel); LoginEmail = LoginDialogViewModel.LoginEmail; } private bool enableNextStep = false; public bool EnableNextStep { get { return enableNextStep; } set { SetProperty(ref enableNextStep, value); } } private string _LoginEmail = ""; public string LoginEmail { get { return _LoginEmail; } set { SetProperty(ref _LoginEmail, value); CheckEnableNextStepEncrypt(); } } private string _LoginPasswordlook; public string LoginPasswordlook { get { return _LoginPasswordlook; } set { SetProperty(ref _LoginPasswordlook, value); } } private string _LoginPasswordlook2; public string LoginPasswordlook2 { get { return _LoginPasswordlook2; } set { SetProperty(ref _LoginPasswordlook2, value); } } private string _LoginPassword = ""; public string LoginPassword { get { return _LoginPassword; } set { SetProperty(ref _LoginPassword, value); PasswordUpdatalookVis = Visibility.Collapsed; if (string.IsNullOrEmpty(LoginPassword)) { ChkVis = Visibility.Collapsed; } else { ChkVis = Visibility.Visible; } CheckEnableNextStepEncrypt(); } } private string _LoginPasswordMsg = "Enter the new password again"; public string LoginPasswordMsg { get { return _LoginPasswordMsg; } set { SetProperty(ref _LoginPasswordMsg, value); } } private Visibility _ChkVis = Visibility.Collapsed; public Visibility ChkVis { get { return _ChkVis; } set { SetProperty(ref _ChkVis, value); } } private Visibility _ChkVis2 = Visibility.Collapsed; public Visibility ChkVis2 { get { return _ChkVis2; } set { SetProperty(ref _ChkVis2, value); } } private Visibility _LoginPasswordVisibility = Visibility.Visible; public Visibility LoginPasswordVisibility { get { return _LoginPasswordVisibility; } set { if (value == Visibility.Visible) { LoginTextVisibility = Visibility.Collapsed; } else { LoginTextVisibility = Visibility.Visible; } SetProperty(ref _LoginPasswordVisibility, value); } } private Visibility _LoginTextVisibility = Visibility.Collapsed; public Visibility LoginTextVisibility { get { return _LoginTextVisibility; } set { SetProperty(ref _LoginTextVisibility, value); } } private string _LoginPassword2 = ""; public string LoginPassword2 { get { return _LoginPassword2; } set { SetProperty(ref _LoginPassword2, value); PasswordUpdatalookVis = Visibility.Collapsed; if (string.IsNullOrEmpty(LoginPassword2)) { ChkVis2 = Visibility.Collapsed; } else { ChkVis2 = Visibility.Visible; } CheckEnableNextStepEncrypt(); } } private string _LoginPasswordMsg2 = "Enter your password"; public string LoginPasswordMsg2 { get { return _LoginPasswordMsg2; } set { SetProperty(ref _LoginPasswordMsg2, value); } } private Visibility _LoginPasswordVisibility2 = Visibility.Visible; public Visibility LoginPasswordVisibility2 { get { return _LoginPasswordVisibility2; } set { if (value == Visibility.Visible) { LoginTextVisibility2 = Visibility.Collapsed; } else { LoginTextVisibility2 = Visibility.Visible; } SetProperty(ref _LoginPasswordVisibility2, value); } } private Visibility _LoginTextVisibility2 = Visibility.Collapsed; public Visibility LoginTextVisibility2 { get { return _LoginTextVisibility2; } set { SetProperty(ref _LoginTextVisibility2, value); } } private string _PasswordUpdatamsglook = ""; public string PasswordUpdatamsglook { get { return _PasswordUpdatamsglook; } set { SetProperty(ref _PasswordUpdatamsglook, value); } } private Visibility _PasswordUpdatalookVis = Visibility.Collapsed; public Visibility PasswordUpdatalookVis { get { return _PasswordUpdatalookVis; } set { SetProperty(ref _PasswordUpdatalookVis, value); } } public DelegateCommand DisplayPasswordCommand { get; set; } public DelegateCommand DisplayPasswordCommand2 { get; set; } public DelegateCommand ChangeEmailCommand { get; set; } public DelegateCommand GoCodeUpdataCommand { get; set; } public DelegateCommand PasswordUpdataCommand { get; set; } public DelegateCommand LinkLicenseCommand { get; set; } public DelegateCommand LoginPasswordChangedCommand { get; set; } public DelegateCommand LoginPasswordChanged2Command { get; set; } PasswordUpdataRegionViewModel(IRegionManager regionManager, IDialogService dialogService) { dialogs = dialogService; DisplayPasswordCommand = new DelegateCommand(DisplayPassword); DisplayPasswordCommand2 = new DelegateCommand(DisplayPassword2); PasswordUpdataCommand = new DelegateCommand(PasswordUpdata); LoginPasswordChangedCommand = new DelegateCommand(LoginPasswordChanged); LoginPasswordChanged2Command = new DelegateCommand(LoginPasswordChanged2); } private void LoginPasswordChanged() { if (LoginPassword.Length < 6) { LoginPasswordlook = "At least 6 characters"; } else if (LoginPassword.Length > 24) { LoginPasswordlook = "Up to 24 characters"; } else { LoginPasswordlook = ""; } } private void LoginPasswordChanged2() { if (LoginPassword2.Length < 6) { LoginPasswordlook2 = "At least 6 characters"; } else if (LoginPassword2.Length > 24) { LoginPasswordlook2 = "Up to 24 characters"; } else { LoginPasswordlook2 = ""; } } private void PasswordUpdata() { if (ServiceHelper.Rebirth(LoginEmail, LoginPassword2, LoginPassword, LoginDialogViewModel.PasswordCode) == "success") { LoginDialogViewModel.RegionMan("LoginRegion"); } else { PasswordUpdatamsglook = ServiceHelper.Rebirth(LoginEmail, LoginPassword2, LoginPassword, LoginDialogViewModel.PasswordCode); PasswordUpdatalookVis = Visibility.Visible; } } private void CheckEnableNextStepEncrypt() { EnableNextStep = true; if (LoginPassword.Length < 6 || LoginPassword.Length > 24 || LoginPassword2.Length < 6 || LoginPassword2.Length > 24) { EnableNextStep = false; } } public void DisplayPassword(object e) { var chk = e as CheckBox; if (chk != null) { if (chk.IsChecked == true) { LoginPasswordVisibility = Visibility.Collapsed; } else { LoginPasswordVisibility = Visibility.Visible; } } } public void DisplayPassword2(object e) { var chk = e as CheckBox; if (chk != null) { if (chk.IsChecked == true) { LoginPasswordVisibility2 = Visibility.Collapsed; } else { LoginPasswordVisibility2 = Visibility.Visible; } } } } }