/// <summary> /// Выполнить вход пользователя в систему /// </summary> /// <remarks>Если пароль равен null, то он не проверяется</remarks> public bool Login(string login, string password, out string errMsg) { login = login == null ? "" : login.Trim(); int roleID; if (AppData.MainData.CheckUser(login, password, password != null, out roleID, out errMsg)) { UserLogin = login; Role = ServerComm.GetRole(roleID); RoleID = roleID; RoleName = AppData.MainData.GetRoleName(RoleID); UserID = AppData.MainData.GetUserID(login); LoggedOn = true; LogOnDT = DateTime.Now; rightList = AppData.MainData.GetRightList(roleID); InitViewSetRightList(ViewSettings.ViewSetList); AppData.Log.WriteAction((password == null ? (Localization.UseRussian ? "Вход в систему без пароля: " : "Login without a password: "******"Вход в систему: " : "Login: "******" (" + RoleName + ")", Log.ActTypes.Action); return(true); } else { Logout(); string err = login == "" ? errMsg : login + " - " + errMsg; AppData.Log.WriteAction((Localization.UseRussian ? "Неудачная попытка входа в систему: " : "Unsuccessful login attempt: ") + err, Log.ActTypes.Error); return(false); } }