示例#1
0
		bool Execute(LoginViewModel.PasswordViewType passwordViewType, string login = null, string password = null)
		{
			Application.Current.ShutdownMode = ShutdownMode.OnExplicitShutdown;
			var loginViewModel = new LoginViewModel(_clientType, passwordViewType) { Title = _title };
			bool isAutoconnect = GlobalSettingsHelper.GlobalSettings.AutoConnect && passwordViewType == LoginViewModel.PasswordViewType.Connect;
			var saveCredential = !isAutoconnect;
			if (isAutoconnect)
			{
				loginViewModel.UserName = GlobalSettingsHelper.GlobalSettings.Login;
				loginViewModel.Password = GlobalSettingsHelper.GlobalSettings.Password;
			}
			else
			{
				loginViewModel.UserName = Settings.Default.UserName;
				loginViewModel.Password = Settings.Default.Password;
			}

			while (!loginViewModel.IsConnected && !loginViewModel.IsCanceled)
			{
				if (login != null && password != null)
				{
					loginViewModel.UserName = login;
					loginViewModel.Password = password;
					loginViewModel.SaveCommand.Execute();
				}
				else
				{
					if (isAutoconnect && (loginViewModel.UserName != "adm" || !GlobalSettingsHelper.GlobalSettings.DoNotAutoconnectAdm))
						loginViewModel.SaveCommand.Execute();
					else
						DialogService.ShowModalWindow(loginViewModel);
				}
				if (!string.IsNullOrEmpty(loginViewModel.Message))
					MessageBoxService.Show(loginViewModel.Message);
				isAutoconnect = false;
			}
			if (loginViewModel.IsConnected && saveCredential && (Settings.Default.UserName != loginViewModel.UserName || Settings.Default.Password != (loginViewModel.SavePassword ? loginViewModel.Password : string.Empty)))
			{
				Settings.Default.UserName = loginViewModel.UserName;
				Settings.Default.Password = loginViewModel.SavePassword ? loginViewModel.Password : string.Empty;
				Settings.Default.Save();
			}
			Application.Current.ShutdownMode = ShutdownMode.OnLastWindowClose;
			Login = loginViewModel.UserName;
			Password = loginViewModel.Password;
			return loginViewModel.IsConnected;
		}
示例#2
0
		public bool Validate(bool flag = true)
		{
			if (flag && ClientManager.CheckPermission(PermissionType.Oper_MayNotConfirmCommands))
			{
					return true;
			}
			else
			{
				var loginViewModel = new LoginViewModel(ClientType.Monitor, Infrastructure.Client.Login.ViewModels.LoginViewModel.PasswordViewType.Validate) { Title = "Оперативная задача. Авторизация", };
				DialogService.ShowModalWindow(loginViewModel);
				if (!loginViewModel.IsConnected && !loginViewModel.IsCanceled)
				{
					MessageBoxService.ShowError(loginViewModel.Message);
				}
				return loginViewModel.IsConnected;
			}
		}
示例#3
0
 private bool Execute(LoginViewModel.PasswordViewType passwordViewType)
 {
     Application.Current.ShutdownMode = ShutdownMode.OnExplicitShutdown;
     var loginViewModel = new LoginViewModel(_clientType, passwordViewType) { Title = _title };
     bool isAutoconnect = GetIsAutoConnect() && passwordViewType == LoginViewModel.PasswordViewType.Connect;
     while (!loginViewModel.IsConnected && !loginViewModel.IsCanceled)
     {
         if (isAutoconnect)
             loginViewModel.SaveCommand.Execute();
         else
             DialogService.ShowModalWindow(loginViewModel);
         if (!string.IsNullOrEmpty(loginViewModel.Message))
             MessageBoxService.Show(loginViewModel.Message);
         isAutoconnect = false;
     }
     Application.Current.ShutdownMode = ShutdownMode.OnLastWindowClose;
     return loginViewModel.IsConnected;
 }