public User(string name, int age, bool enabled, RegisterStatus status) { Name = name; Age = age; Enabled = enabled; Status = status; }
public IActionResult Index([FromBody] RegisterDTO Register) { // RegisterStatus to return RegisterStatus objRegisterStatus = new RegisterStatus(); objRegisterStatus.status = "Registration Failure"; objRegisterStatus.isSuccessful = false; // Only allow Registration for non-Super Admins if it is turned on in Settings GeneralSettings objGeneralSettings = new GeneralSettings(GetConnectionString()); if ( (!objGeneralSettings.AllowRegistration) && (!UtilitySecurity.IsSuperUser(this.User.Identity.Name, GetConnectionString()))) { objRegisterStatus.status = "Registration is not allowed for non-Administrators."; objRegisterStatus.isSuccessful = false; } else { string strCurrentHostLocation = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}"; objRegisterStatus = RegisterUser(Register, GetConnectionString(), _hostEnvironment, _userManager, _signInManager, strCurrentHostLocation, false, true); } return(Ok(objRegisterStatus)); }
public static string GetInfo(this RegisterStatus status) { switch (status) { case RegisterStatus.UsedName: return("Error.nameAlreadyInUse"); case RegisterStatus.OK: return("OK"); } throw new ArgumentException("status"); }
public static string GetInfo(this RegisterStatus status) { switch (status) { case RegisterStatus.UsedName: return("Duplicate Email"); // maybe not wise to give this info out... case RegisterStatus.OK: return("OK"); } throw new ArgumentException("status"); }
public static string GetInfo(this RegisterStatus status) { switch (status) { case RegisterStatus.UsedName: return("Duplicated Name"); case RegisterStatus.OK: return("OK"); } throw new ArgumentException("status"); }
public static string ToRegisterStatusString(this RegisterStatus source) { switch (source) { case RegisterStatus.WasNot: return("Не состоял"); case RegisterStatus.Drug: return("В наркодиспансере"); case RegisterStatus.Psych: return("В психдиспансере"); case RegisterStatus.Police: return("В полиции"); } return(string.Empty); }
// guid, newGUID, newPassword // <Error>Error.invalidEmail</Error> // <Error>LinkWebAccountDialog.matchErrorSame</Error> protected override void HandleRequest() { if (!IsValidEmail(Query["newGUID"]) || Query["newPassword"] == null || Query["guid"] == null) { WriteErrorLine("Invalid email"); } else { string key = Database.REG_LOCK; string lockToken = null; try { while ((lockToken = Database.AcquireLock(key)) == null) { ; } DbAccount acc; LoginStatus status = Database.Verify(Query["guid"], "", out acc); if (status == LoginStatus.OK) { //what? can register in game? kill the account lock Database.RenameUUID(acc, Query["newGUID"], lockToken); Database.ChangePassword(acc.UUID, Query["newPassword"]); WriteLine("<Success />"); } else { RegisterStatus s = Database.Register(Query["newGUID"], Query["newPassword"], false, out acc); if (s == RegisterStatus.OK) { WriteLine("<Success />"); } else { WriteErrorLine(s.GetInfo()); } } } finally { if (lockToken != null) { Database.ReleaseLock(key, lockToken); } } } }
public async void CheckUserExists() { RegisterStatus status = await _loginService.CheckUserExists(DeviceUtility.DeviceId); if (status.GetStatus == (int)UserStatus.RegisteredAndApproved) { IsLoading = false; GoToMapScreen(); } else { ShowAlert(status.GetDescription); } IsLoading = false; }
public async void ClickHandler(object sender, EventArgs e) { EditText editTextName = FindViewById <EditText> (Resource.Id.editText_name); EditText editTextComment = FindViewById <EditText> (Resource.Id.editText_comment); ProgressDialog progressDialog = ProgressDialog.Show(this, string.Empty, Resources.GetString(Resource.String.Wait), true, false); RegisterStatus result = await _loginService.Register(editTextName.Text, editTextComment.Text, DeviceUtility.DeviceId); if (result.GetStatus != (int)UserStatus.RegisteredAndApproved) { progressDialog.Dismiss(); _toastService.ShowMessage(result.GetDescription); return; } GoToMapScreen(); }
private void registerLogic(string username, string password, string firstName, string lastName, string email) { JObject obj = new APICaller("register.php") .AddParam("username", username) .AddParam("password", password) .AddParam("firstName", firstName) .AddParam("lastName", lastName) .AddParam("email", email) .Call(); Console.WriteLine(obj); RegisterStatus status = RegisterStatus.UnknownError; if (!Enum.TryParse <RegisterStatus>(obj["message"].ToString(), out status)) { status = RegisterStatus.UnknownError; } RegisterResult(status); }
public void handleRegister() { if (RPassword != RRepeatPassword) { XtraMessageBox.Show("确认密码不一致,请重新输入", "信息提示"); return; } RegisterStatus rs = ls.Register(RName, RUsername); switch (rs) { case RegisterStatus.NameDuplicate: XtraMessageBox.Show("真实姓名已有,请重新输入", "信息提示"); break; case RegisterStatus.UsernameDuplicate: XtraMessageBox.Show("用户名已有,请重新输入", "信息提示"); break; case RegisterStatus.Nullerr: XtraMessageBox.Show("真实姓名或用户名不能为空,请重新输入", "信息提示"); break; case RegisterStatus.Success: User u = new User() { name = RName, username = RUsername, psw = RPassword }; if (um.Insert(u) > 0) { XtraMessageBox.Show("注册成功", "信息提示"); handleReset(); } break; default: break; } }
private void KeyController_RegisterHotKeyEvent(KeyHandler key, RegisterStatus type) { string registerMsg = string.Empty; switch (type) { case RegisterStatus.FAILURE: registerMsg = string.Format("Register hot keys {0} failed.", key.Key.ToString()); break; case RegisterStatus.SUCCESS: registerMsg = string.Format("Register hot keys {0} succeed.", key.Key.ToString()); break; case RegisterStatus.UNREGISTERED: registerMsg = string.Format("Unregister hot keys {0} succeed.", key.Key.ToString()); break; case RegisterStatus.UNREGISTER_FAILED: registerMsg = string.Format("Unregister hot keys {0} failed.", key.Key.ToString()); break; } MessagerEvent?.Invoke(MessageType.MESSAGE, registerMsg); }
public void SetValue(int value) { this.Value = value; this.Status = RegisterStatus.Set; }
public Register() { this.Status = RegisterStatus.NotSet; }
protected override void HandleMessage(Client client, HELLO message) { KeyValuePair <string, bool> versionStatus = Settings.CheckClientVersion(message.BuildVersion); if (!versionStatus.Value) { client.SendMessage(new FAILURE { ErrorId = (int)FailureIDs.JSON_DIALOG, ErrorDescription = JSONErrorIDHandler. FormatedJSONError( errorID: ErrorIDs.OUTDATED_CLIENT, labels: new[] { "{CLIENT_BUILD_VERSION}", "{SERVER_BUILD_VERSION}" }, arguments: new[] { message.BuildVersion, versionStatus.Key } ) }); Manager.TryDisconnect(client, DisconnectReason.OUTDATED_CLIENT); return; } LoginStatus s1 = Manager.Database.Verify(message.GUID, message.Password, out DbAccount acc); if (s1 == LoginStatus.AccountNotExists) { RegisterStatus s2 = Manager.Database.Register(message.GUID, message.Password, true, out acc); //Register guest but do not allow join game. client.SendMessage(new FAILURE() { ErrorId = (int)FailureIDs.JSON_DIALOG, ErrorDescription = JSONErrorIDHandler. FormatedJSONError( errorID: ErrorIDs.DISABLE_GUEST_ACCOUNT, labels: null, arguments: null ) }); Manager.TryDisconnect(client, DisconnectReason.DISABLE_GUEST_ACCOUNT); return; } else if (s1 == LoginStatus.InvalidCredentials) { client.SendMessage(new FAILURE { ErrorId = (int)FailureIDs.DEFAULT, ErrorDescription = "Bad login." }); Manager.TryDisconnect(client, DisconnectReason.BAD_LOGIN); } client.ConnectedBuild = message.BuildVersion; client.Account = acc; client.AccountId = acc.AccountId; if (AccountInUseManager.ContainsKey(client.AccountId)) { do { double timeout = client.CheckAccountInUseTimeout; if (timeout <= 0) { break; } List <Message> outgoing = new List <Message> { new FAILURE { ErrorId = (int)ErrorIDs.NORMAL_CONNECTION, ErrorDescription = $"Account in use ({timeout:n0} second{(timeout > 1 ? "s" : "")} until timeout)." }, new FAILURE { ErrorId = (int)ErrorIDs.NORMAL_CONNECTION, ErrorDescription = $"Connection failed! Retrying..." } }; client.SendMessage(outgoing); Thread.Sleep(3 * 1000); if (client.CheckAccountInUseTimeout <= 0) { break; } } while (client.Socket.Connected && client.State != ProtocolState.Disconnected); client.RemoveAccountInUse(); } ConnectionProtocol TryConnect = Manager.TryConnect(client); if (!TryConnect.Connected) { ErrorIDs errorID = TryConnect.ErrorID; string[] labels; string[] arguments; DisconnectReason reason; switch (errorID) { case ErrorIDs.SERVER_FULL: { labels = new[] { "{MAX_USAGE}" }; arguments = new[] { Manager.MaxClients.ToString() }; reason = DisconnectReason.SERVER_FULL; } break; case ErrorIDs.ACCOUNT_BANNED: { labels = new[] { "{CLIENT_NAME}" }; arguments = new[] { acc.Name }; reason = DisconnectReason.ACCOUNT_BANNED; } break; case ErrorIDs.INVALID_DISCONNECT_KEY: { labels = new[] { "{CLIENT_NAME}" }; arguments = new[] { acc.Name }; reason = DisconnectReason.INVALID_DISCONNECT_KEY; } break; case ErrorIDs.LOST_CONNECTION: { labels = new[] { "{CLIENT_NAME}" }; arguments = new[] { acc.Name }; reason = DisconnectReason.LOST_CONNECTION; } break; default: { labels = new[] { "{UNKNOW_ERROR_INSTANCE}" }; arguments = new[] { "connection aborted by unexpected protocol at line <b>340</b> or line <b>346</b> from 'TryConnect' function in RealmManager for security reasons" }; reason = DisconnectReason.UNKNOW_ERROR_INSTANCE; } break; } client.SendMessage(new FAILURE { ErrorId = (int)FailureIDs.JSON_DIALOG, ErrorDescription = JSONErrorIDHandler. FormatedJSONError( errorID: errorID, labels: labels, arguments: arguments ) }); Manager.TryDisconnect(client, reason); return; } else { World world = Manager.GetWorld(message.GameId); if (acc.AccountType == (int)AccountType.VIP_ACCOUNT) { DateTime _currentTime = DateTime.Now; DateTime _vipRegistration = acc.AccountLifetime; if (_vipRegistration <= _currentTime) { acc.AccountType = (int)AccountType.FREE_ACCOUNT; acc.Flush(); acc.Reload(); FAILURE _failure = new FAILURE { ErrorId = (int)FailureIDs.JSON_DIALOG, ErrorDescription = JSONErrorIDHandler .FormatedJSONError( errorID: ErrorIDs.VIP_ACCOUNT_OVER, labels: new[] { "{CLIENT_NAME}", "{SERVER_TIME}", "{REGISTRATION_TIME}", "{CURRENT_TIME}" }, arguments: new[] { acc.Name, string.Format(new DateProvider(), "{0}", DateTime.Now), string.Format(new DateProvider(), "{0}", acc.AccountLifetime.AddDays(-30)), string.Format(new DateProvider(), "{0}", acc.AccountLifetime) } ) }; client.SendMessage(_failure); Manager.TryDisconnect(client, DisconnectReason.VIP_ACCOUNT_OVER); return; } } if (world == null) { client.SendMessage(new FAILURE { ErrorId = (int)FailureIDs.DEFAULT, ErrorDescription = "Invalid world." }); Manager.TryDisconnect(client, DisconnectReason.INVALID_WORLD); return; } if (world.NeedsPortalKey) { if (!world.PortalKey.SequenceEqual(message.Key)) { client.SendMessage(new FAILURE { ErrorId = (int)FailureIDs.DEFAULT, ErrorDescription = "Invalid portal key." }); Manager.TryDisconnect(client, DisconnectReason.INVALID_PORTAL_KEY); return; } if (world.PortalKeyExpired) { client.SendMessage(new FAILURE { ErrorId = (int)FailureIDs.DEFAULT, ErrorDescription = "Portal key expired." }); Manager.TryDisconnect(client, DisconnectReason.PORTAL_KEY_EXPIRED); return; } } if (message.MapInfo.Length > 0 || world.Id == -6) { (world as Test).LoadJson(Encoding.Default.GetString(message.MapInfo)); } if (world.IsLimbo) { world = world.GetInstance(client); } client.Random = new wRandom(world.Seed); client.TargetWorld = world.Id; client.SendMessage(new MAPINFO { Width = world.Map.Width, Height = world.Map.Height, Name = world.Name, Seed = world.Seed, ClientWorldName = world.Name, Difficulty = world.Difficulty, Background = world.Background, AllowTeleport = world.AllowTeleport, ShowDisplays = world.ShowDisplays, ClientXML = world.ClientXml, ExtraXML = Manager.GameData.AdditionXml, Music = world.Name }); client.State = ProtocolState.Handshaked; } }
public async Task RegisterAsync(params string[] Args) { EmbedBuilder Builder = new EmbedBuilder() { Title = GetEntry("TwitchTrack"), Color = Color.Red }; if (Settings.TwitchTrack.ChannelId == 0) { await Context.Channel.SendMessageAsync(GetEntry("SetReport", "PREFIX", Settings.Prefix)); return; } if (Args.Length == 0) { Builder.Description = GetEntry("HowToAdd", "PREFIX", Settings.Prefix); } else if (Args.Length > 1) { Builder.Description = GetEntry("NoSpace"); } else { RegisterStatus Status = Global.TwitchTracker.Register(Args[0]); UserResponse?User = null; if (Status != RegisterStatus.UserNotFound) { User = Global.TwitchTracker.GetUser(Args[0]); } switch (Status) { case RegisterStatus.UserNotFound: Builder.Description = GetGlobalEntry("UserNotFound"); break; default: Builder.ThumbnailUrl = User.Value.Avatar; if (Settings.TwitchTrack.UserIds.Contains(User.Value.Id)) { Builder.Description = GetEntry("AlreadyTracked", "USER", $"{ User.Value.DisplayName }({ User.Value.LoginUsername })"); break; } Builder.Color = Global.Pink; Builder.ThumbnailUrl = User.Value.Avatar; Builder.Description = GetEntry("StartedTracking", "USER", $"{ User.Value.DisplayName }({ User.Value.LoginUsername })"); Global.GuildSettings.Modify(Settings.GuildId, Settings => { Settings.TwitchTrack.UserIds.Add(User.Value.Id); }); break; } } await Context.Channel.SendMessageAsync("", embed : Builder.Build()); }
public IActionResult Index([FromBody] RegisterDTO Register) { // RegisterStatus to return RegisterStatus objRegisterStatus = new RegisterStatus(); objRegisterStatus.status = "Registration Failure"; objRegisterStatus.isSuccessful = false; // Get values passed var paramUserName = Register.userName.Trim(); var paramPassword = Register.password.Trim(); var paramFirstName = Register.firstName.Trim(); var paramLastName = Register.lastName.Trim(); var paramEmail = Register.email.Trim(); // Validation **************************** EmailValidation objEmailValidation = new EmailValidation(); if (!objEmailValidation.IsValidEmail(paramEmail)) { objRegisterStatus.status = "This Email is not valid."; objRegisterStatus.isSuccessful = false; return(Ok(objRegisterStatus)); } if ((paramUserName == null) || (paramUserName.Length < 1)) { objRegisterStatus.status = "This Username is not long enough."; objRegisterStatus.isSuccessful = false; return(Ok(objRegisterStatus)); } // Create Account **************************** try { var user = new ApplicationUser { UserName = paramUserName, Email = paramEmail }; var result = _userManager.CreateAsync(user, paramPassword).Result; if (result.Succeeded) { // Sign the User in var SignInResult = _signInManager.PasswordSignInAsync( paramUserName, paramPassword, false, lockoutOnFailure: false).Result; if (!SignInResult.Succeeded) { // Return the error objRegisterStatus.status = $"Could not sign user {paramUserName} in."; objRegisterStatus.isSuccessful = false; return(Ok(objRegisterStatus)); } } else { // Create user failed // Return the errors from the Memberhip API Creation string strErrors = ""; foreach (var Error in result.Errors) { strErrors = strErrors + "\n" + Error.Description; } objRegisterStatus.status = strErrors; objRegisterStatus.isSuccessful = false; return(Ok(objRegisterStatus)); } objRegisterStatus.status = "Success"; objRegisterStatus.isSuccessful = true; return(Ok(objRegisterStatus)); } catch (Exception ex) { objRegisterStatus.status = ex.Message; objRegisterStatus.isSuccessful = false; return(Ok(objRegisterStatus)); } }
private static string ErrorCodeToString(RegisterStatus createStatus) { switch (createStatus) { case RegisterStatus.DuplicateUserName: return "User name already exists. Please enter a different user name."; case RegisterStatus.DuplicateEmail: return "A user name for that e-mail address already exists. Please enter a different e-mail address."; case RegisterStatus.InvalidPassword: return "The password provided is invalid. Please enter a valid password value."; case RegisterStatus.InvalidEmail: return "The e-mail address provided is invalid. Please check the value and try again."; case RegisterStatus.InvalidUserName: return "The user name provided is invalid. Please check the value and try again."; case RegisterStatus.ProviderError: return "The authentication provider returned an error. Please verify your entry and try again. If the problem persists, please contact your system administrator."; case RegisterStatus.UserRejected: return "The user creation request has been canceled. Please verify your entry and try again. If the problem persists, please contact your system administrator."; default: return "An unknown error occurred. Please verify your entry and try again. If the problem persists, please contact your system administrator."; } }
public static RegisterStatus RegisterUser(RegisterDTO Register, string _DefaultConnection, IWebHostEnvironment _hostEnvironment, UserManager <ApplicationUser> _userManager, SignInManager <ApplicationUser> _signInManager, string CurrentHostLocation, bool BypassVerify, bool SignUserIn) { // RegisterStatus to return RegisterStatus objRegisterStatus = new RegisterStatus(); objRegisterStatus.status = "Registration Failure"; objRegisterStatus.isSuccessful = false; objRegisterStatus.requiresVerification = false; // Get values passed var paramUserName = Register.userName.Trim(); var paramPassword = Register.password.Trim(); var paramFirstName = Register.firstName.Trim(); var paramLastName = Register.lastName.Trim(); var paramEmail = Register.email.Trim(); // Validation **************************** EmailValidation objEmailValidation = new EmailValidation(); if (!objEmailValidation.IsValidEmail(paramEmail)) { objRegisterStatus.status = "This Email is not valid."; objRegisterStatus.isSuccessful = false; return(objRegisterStatus); } if ((paramUserName == null) || (paramUserName.Length < 1)) { objRegisterStatus.status = "This Username is not long enough."; objRegisterStatus.isSuccessful = false; return(objRegisterStatus); } var optionsBuilder = new DbContextOptionsBuilder <ADefHelpDeskContext>(); optionsBuilder.UseSqlServer(_DefaultConnection); using (var context = new ADefHelpDeskContext(optionsBuilder.Options)) { // Check the Username var objAdefHelpDeskUserName = (from AdefHelpDeskUsers in context.AdefHelpDeskUsers where AdefHelpDeskUsers.Username == paramUserName select AdefHelpDeskUsers).FirstOrDefault(); if (objAdefHelpDeskUserName != null) { // User is already taken objRegisterStatus.status = "This Username is already taken."; objRegisterStatus.isSuccessful = false; return(objRegisterStatus); } // Check the Email var objAdefHelpDeskEmail = (from AdefHelpDeskUsers in context.AdefHelpDeskUsers where AdefHelpDeskUsers.Email == paramEmail select AdefHelpDeskUsers).FirstOrDefault(); if (objAdefHelpDeskEmail != null) { // User is already taken objRegisterStatus.status = "This Email address is already taken."; objRegisterStatus.isSuccessful = false; return(objRegisterStatus); } } // Create Account **************************** // User Table try { using (var context = new ADefHelpDeskContext(optionsBuilder.Options)) { AdefHelpDeskUsers objAdefHelpDeskUsers = new AdefHelpDeskUsers(); objAdefHelpDeskUsers.Username = paramUserName; objAdefHelpDeskUsers.Email = paramEmail; objAdefHelpDeskUsers.FirstName = paramFirstName; objAdefHelpDeskUsers.LastName = paramLastName; objAdefHelpDeskUsers.Password = ""; // No longer store the password here context.AdefHelpDeskUsers.Add(objAdefHelpDeskUsers); context.SaveChanges(); } } catch (Exception ex) { // Return the error objRegisterStatus.status = ex.GetBaseException().Message; objRegisterStatus.isSuccessful = false; return(objRegisterStatus); } // Membership API var user = new ApplicationUser { UserName = paramUserName, Email = paramEmail }; var result = _userManager.CreateAsync(user, paramPassword).Result; if (!result.Succeeded) { // Create user failed try { // Delete user from the User table using (var context = new ADefHelpDeskContext(optionsBuilder.Options)) { var objAdefHelpDeskUser = (from AdefHelpDeskUsers in context.AdefHelpDeskUsers where AdefHelpDeskUsers.Username == paramUserName select AdefHelpDeskUsers).FirstOrDefault(); if (objAdefHelpDeskUser != null) { context.AdefHelpDeskUsers.Remove(objAdefHelpDeskUser); context.SaveChanges(); } } } catch { // Do nothing if this fails } // Return the errors from the Memberhip API Creation string strErrors = ""; foreach (var Error in result.Errors) { strErrors = strErrors + "\n" + Error.Description; } objRegisterStatus.status = strErrors; objRegisterStatus.isSuccessful = false; return(objRegisterStatus); } objRegisterStatus.status = "Success"; objRegisterStatus.isSuccessful = true; // *** Verified Accounts // Determine if verified registration is turned on // and BypassVerify is also on GeneralSettings objGeneralSettings = new GeneralSettings(_DefaultConnection); if ((!BypassVerify) && (objGeneralSettings.VerifiedRegistration)) { // Get a random verify code string strVerifyCode = CreateVerificationKey(5); // Write it to the users record using (var context = new ADefHelpDeskContext(optionsBuilder.Options)) { var objAdefHelpDeskUser = (from AdefHelpDeskUsers in context.AdefHelpDeskUsers where AdefHelpDeskUsers.Username == paramUserName select AdefHelpDeskUsers).FirstOrDefault(); if (objAdefHelpDeskUser != null) { objAdefHelpDeskUser.VerificationCode = strVerifyCode; context.AdefHelpDeskUsers.Update(objAdefHelpDeskUser); context.SaveChanges(); } } // Send the user the verification email string strFullName = $"{paramFirstName} {paramLastName}"; // Get file and make replacements string strEmailContents = System.IO.File.ReadAllText(System.IO.Path.Combine(_hostEnvironment.ContentRootPath, "SystemFiles", "Email-UserVerification.txt").Replace(@"\", @"/")); strEmailContents = strEmailContents.Replace("[strFullName]", strFullName); strEmailContents = strEmailContents.Replace("[CurrentHostLocation]", CurrentHostLocation); strEmailContents = strEmailContents.Replace("[paramUserName]", paramUserName); strEmailContents = strEmailContents.Replace("[strVerifyCode]", strVerifyCode); // Send Email // Async is turned off because we may have verified registration but the email server may not be working // The user needs to know this because their registration cannot proceed string smtpStatus = Email.SendMail( false, _DefaultConnection, paramEmail, strFullName, "", "", objGeneralSettings.SMTPFromEmail, "Verification Email", "ADefHelpDesk Registration Verification Email", $"{strEmailContents} <br><br> This Email was sent from: {CurrentHostLocation}."); if (smtpStatus != "") { // There was some sort of error - return it objRegisterStatus.status = smtpStatus; objRegisterStatus.isSuccessful = false; objRegisterStatus.requiresVerification = true; return(objRegisterStatus); } // Tell user they need to use the code that was just sent objRegisterStatus.requiresVerification = true; objRegisterStatus.status = $"Your registration was successful. "; objRegisterStatus.status = objRegisterStatus.status + $"However, registration is verified. "; objRegisterStatus.status = objRegisterStatus.status + $"You have been emailed a verification code that must be used to complete your registration."; } else { if (SignUserIn) { // Sign the User in var SignInResult = _signInManager.PasswordSignInAsync( paramUserName, paramPassword, false, lockoutOnFailure: false).Result; if (!SignInResult.Succeeded) { // Return the error objRegisterStatus.status = $"Could not sign user {paramUserName} in."; objRegisterStatus.isSuccessful = false; return(objRegisterStatus); } } } return(objRegisterStatus); }
public void Register([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] User user, out RegisterStatus RegisterResult, [System.Xml.Serialization.XmlIgnoreAttribute()] out bool RegisterResultSpecified) { object[] results = this.Invoke("Register", new object[] { user}); RegisterResult = ((RegisterStatus)(results[0])); RegisterResultSpecified = ((bool)(results[1])); }
void TimerTick() { RegisterStatus s = RegisterStatus.Ok; Handler?.Invoke(this, s); }
protected override void HandlePacket(Client client, HELLO packet) { if (SERVER_VERSION != packet.BuildVersion) { client.SendMessage(new FAILURE { ErrorId = 8, ErrorDescription = JSONErrorIDHandler. FormatedJSONError( errorID: ErrorIDs.OUTDATED_CLIENT, labels: new[] { "{CLIENT_BUILD_VERSION}", "{SERVER_BUILD_VERSION}" }, arguments: new[] { packet.BuildVersion, SERVER_VERSION } ) }); client.Disconnect(DisconnectReason.OUTDATED_CLIENT); return; } if (!INTERNAL_SERVER_BUILD.Contains(packet.InternalBuildVersion)) //support for multi internal server build versions { client.SendMessage(new FAILURE { ErrorId = 8, ErrorDescription = JSONErrorIDHandler. FormatedJSONError( errorID: ErrorIDs.OUTDATED_INTERNAL_CLIENT, labels: null, arguments: null ) }); client.Disconnect(DisconnectReason.OUTDATED_INTERNAL_CLIENT); return; } DbAccount acc; LoginStatus s1 = client.Manager.Database.Verify(packet.GUID, packet.Password, out acc); if (s1 == LoginStatus.AccountNotExists) { RegisterStatus s2 = client.Manager.Database.Register(packet.GUID, packet.Password, true, out acc); //Register guest but do not allow join game. client.SendMessage(new FAILURE() { ErrorId = 8, ErrorDescription = JSONErrorIDHandler. FormatedJSONError( errorID: ErrorIDs.DISABLE_GUEST_ACCOUNT, labels: null, arguments: null ) }); client.Disconnect(DisconnectReason.DISABLE_GUEST_ACCOUNT); return; } else if (s1 == LoginStatus.InvalidCredentials) { client.SendMessage(new FAILURE { ErrorId = 0, ErrorDescription = "Bad login." }); client.Disconnect(DisconnectReason.BAD_LOGIN); } client.ConnectedBuild = packet.BuildVersion; Tuple <bool, ErrorIDs> TryConnect = client.Manager.TryConnect(client); if (!TryConnect.Item1) { client.Account = null; ErrorIDs errorID = TryConnect.Item2; string[] labels; string[] arguments; DisconnectReason type; switch (TryConnect.Item2) { case ErrorIDs.SERVER_FULL: { labels = new[] { "{MAX_USAGE}" }; arguments = new[] { $"{client.Manager.MaxClients}" }; type = DisconnectReason.SERVER_FULL; } break; case ErrorIDs.ACCOUNT_BANNED: { labels = new[] { "{CLIENT_NAME}" }; arguments = new[] { client.Account.Name }; type = DisconnectReason.ACCOUNT_BANNED; } break; case ErrorIDs.INVALID_DISCONNECT_KEY: { labels = new[] { "{CLIENT_NAME}" }; arguments = new[] { client.Account.Name }; type = DisconnectReason.INVALID_DISCONNECT_KEY; } break; case ErrorIDs.LOST_CONNECTION: { labels = new[] { "{CLIENT_NAME}" }; arguments = new[] { client.Account.Name }; type = DisconnectReason.LOST_CONNECTION; } break; default: { labels = new[] { "{UNKNOW_ERROR_INSTANCE}" }; arguments = new[] { "connection aborted by unexpected protocol at line <b>340</b> or line <b>346</b> from 'TryConnect' function in RealmManager for security reasons" }; type = DisconnectReason.UNKNOW_ERROR_INSTANCE; } break; } client.SendMessage(new FAILURE { ErrorId = 8, ErrorDescription = JSONErrorIDHandler. FormatedJSONError( errorID: errorID, labels: labels, arguments: arguments ) }); client.Disconnect(type); return; } else { if (packet.GameId == World.NEXUS_LIMBO) { packet.GameId = World.NEXUS_ID; } World world = client.Manager.GetWorld(packet.GameId); if (world == null && packet.GameId == World.TUT_ID) { world = client.Manager.AddWorld(new Tutorial(false)); } if (!client.Manager.Database.AcquireLock(acc)) { //SendFailure(client, "Account in Use (" + // client.Manager.Database.GetLockTime(acc) + " seconds until timeout)"); client.Disconnect(DisconnectReason.ACCOUNT_IN_USE); return; } if (world == null) { client.SendMessage(new FAILURE { ErrorId = 1, ErrorDescription = "Invalid world." }); client.Disconnect(DisconnectReason.INVALID_WORLD); return; } if (world.NeedsPortalKey) { if (!world.PortalKey.SequenceEqual(packet.Key)) { client.SendMessage(new FAILURE { ErrorId = 1, ErrorDescription = "Invalid Portal Key" }); client.Disconnect(DisconnectReason.INVALID_PORTAL_KEY); return; } if (world.PortalKeyExpired) { client.SendMessage(new FAILURE { ErrorId = 1, ErrorDescription = "Portal key expired." }); client.Disconnect(DisconnectReason.PORTAL_KEY_EXPIRED); return; } } if (packet.MapInfo.Length > 0 || world.Id == -6) //Test World { (world as Test).LoadJson(Encoding.Default.GetString(packet.MapInfo)); } if (world.IsLimbo) { world = world.GetInstance(client); } client.Account = acc; client.Random = new wRandom(world.Seed); client.TargetWorld = world.Id; client.SendMessage(new MAPINFO { Width = world.Map.Width, Height = world.Map.Height, Name = world.Name, Seed = world.Seed, ClientWorldName = world.ClientWorldName, Difficulty = world.Difficulty, Background = world.Background, AllowTeleport = world.AllowTeleport, ShowDisplays = world.ShowDisplays, ClientXML = world.ClientXml, ExtraXML = Manager.GameData.AdditionXml, Music = world.Name }); client.State = ProtocolState.Handshaked; } }
public void ChangeRegisterStatus(RegisterStatus registerStatus) { RegisterStatus = registerStatus; }
public void Clear() { this.Value = 0; this.Status = RegisterStatus.NotSet; }
/// <summary> /// Base constructor, which initializes BaseService(News) /// </summary> /// <param name="username"></param> /// <param name="email"></param> /// <param name="password"></param> /// <param name="status"></param> /// <returns></returns> public User RegisterUser(string username, string email, string password, out RegisterStatus status) { var passwordSalt = _passwordMethodsProvider.CreateSalt(); var newUser = new User { Login = username, CreatedDate = DateTime.Now, PasswordSalt = passwordSalt, Password = _passwordMethodsProvider.CreatePasswordHash(password, passwordSalt), Email = email, IsActivated = true, IsLockedOut = false, LastLockedOutDate = null, LastLoginDate = null, }; _context.Add(newUser); status = RegisterStatus.Success; return newUser; }
public void Deserialize(BinaryReader reader) { Status = (RegisterStatus)reader.ReadByte(); }
/// <summary> /// Adds user provided data to the database using the db context /// </summary> /// <param name="fullName"></param> /// <param name="username"></param> /// <param name="password"></param> /// <param name="confirmPassword"></param> /// <returns></returns> private async Task <RegisterStatus> RegisterUser(String fullName, String username, String password, String confirmPassword) { RegisterStatus registerStatus; if (String.IsNullOrWhiteSpace(fullName) || String.IsNullOrWhiteSpace(username) || String.IsNullOrWhiteSpace(password) || String.IsNullOrWhiteSpace(confirmPassword)) { registerStatus = new RegisterStatus() { Message = "Required fields are empty!", Error = true }; return(registerStatus); } using (var db = new EventContext()) { if (!IsPasswordEqual(password, confirmPassword)) { registerStatus = new RegisterStatus() { Message = "Passwords doesn't match!", Error = true }; return(registerStatus); } // Get all users in db and validate //var allUsersQuery = from users in db.Users select users; var allUsersQuery = await System.Threading.Tasks.Task.Run(() => from users in db.Users select users); foreach (var reguser in allUsersQuery) { if (reguser.Username.Equals(username)) { registerStatus = new RegisterStatus() { Message = "Username already exists!", Error = true }; return(registerStatus); } else if (!(fullName.Length >= 3 && password.Length >= 3)) { registerStatus = new RegisterStatus() { Message = "Username and Password size must be more than 2 characters", Error = true }; return(registerStatus); } } // Add new user to db var newUser = new User { Name = fullName, Username = username, Password = password }; db.Users.Add(newUser); try { db.SaveChanges(); } catch (Exception ex) { Utilites.Helper.SaveLog(ex); registerStatus = new RegisterStatus() { Message = "Internal Database Error!", Error = true }; return(registerStatus); } registerStatus = new RegisterStatus() { Message = "User registration successful!", Error = false }; return(registerStatus); } }
public RegisterStatus CreateAdminLogin([FromBody] RegisterDTO objRegister) { // RegisterStatus to return RegisterStatus objRegisterStatus = new RegisterStatus(); objRegisterStatus.status = "Registration Failure"; objRegisterStatus.isSuccessful = false; // Test for a strong password if (!UtilitySecurity.IsPasswordStrong(objRegister.password)) { objRegisterStatus.status = "The password is not strong enough."; objRegisterStatus.isSuccessful = false; return(objRegisterStatus); } // Do not run if we can connect to the current database if (CurrentVersion().isNewDatabase == false) { objRegisterStatus.isSuccessful = false; objRegisterStatus.status = "Cannot create the Admin account because the database is already set-up. Reload your web browser to upgrade using the updated database connection."; } else { // Run the scripts to set-up the database DTOStatus objDTOStatus = RunUpdateScripts(NewDatabaseVersion, _hostEnvironment, GetConnectionString()); if (!objDTOStatus.Success) { // If scripts have an error return it objRegisterStatus.isSuccessful = false; objRegisterStatus.status = objDTOStatus.StatusMessage; } else { // Create the Administrator string strCurrentHostLocation = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}"; objRegisterStatus = RegisterController.RegisterUser( objRegister, GetConnectionString(), _hostEnvironment, _userManager, _signInManager, strCurrentHostLocation, true, true); // There was an error creating the Administrator if (!objRegisterStatus.isSuccessful) { // Delete the record in the version table // So the install can be run again objDTOStatus = ResetVersionTable(); if (!objDTOStatus.Success) { // If there is an error return it objRegisterStatus.isSuccessful = false; objRegisterStatus.status = objDTOStatus.StatusMessage; } else { // Delete the user in case they were partially created objDTOStatus = DeleteAllUsers(); if (!objDTOStatus.Success) { // If there is an error return it objRegisterStatus.isSuccessful = false; objRegisterStatus.status = objDTOStatus.StatusMessage; } } } else { // Update the created user to be a SuperUser objDTOStatus = MakeUserASuperUser(objRegister.userName); #region Set the upload file path try { string strDefaultFilesPath = ADefHelpDeskApp.Controllers.ApplicationSettingsController.GetFilesPath(_DefaultFilesPath, GetConnectionString()); // Get GeneralSettings GeneralSettings objGeneralSettings = new GeneralSettings(GetConnectionString()); objGeneralSettings.UpdateFileUploadPath(GetConnectionString(), strDefaultFilesPath); } catch { // Do nothing if this fails // Admin can set the file path manually } #endregion if (!objDTOStatus.Success) { // If there is an error return it objRegisterStatus.isSuccessful = false; objRegisterStatus.status = objDTOStatus.StatusMessage; } } } } return(objRegisterStatus); }
public byte[] Export(Core.Reports.Enums.ExportType exportType, string[] parameters) { var filterCriteria = string.Empty; var startDate = default(DateTime); var endDate = default(DateTime); var districtList = new List <long>(); var infringementType = default(InfringementType?); var infringementValue = default(decimal?); var registerStatus = default(RegisterStatus?); var periodType = string.Empty; foreach (var parameter in parameters) { var parts = parameter.Split(new[] { '=' }, StringSplitOptions.RemoveEmptyEntries); if (parts.Length != 2) { continue; } if (parts[0].Equals("districtID", StringComparison.InvariantCultureIgnoreCase)) { long districtID = 0; if (long.TryParse(parts[1], out districtID)) { districtList.Add(districtID); } } else if (parts[0].Equals("startDate", StringComparison.InvariantCultureIgnoreCase)) { DateTime.TryParseExact(parts[1], "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal, out startDate); } else if (parts[0].Equals("endDate", StringComparison.InvariantCultureIgnoreCase)) { DateTime.TryParseExact(parts[1], "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal, out endDate); } else if (parts[0].Equals("infringementType", StringComparison.InvariantCultureIgnoreCase)) { InfringementType infringementType_ = 0; if (Enum.TryParse(parts[1], out infringementType_)) { infringementType = infringementType_; } } else if (parts[0].Equals("registerStatus", StringComparison.InvariantCultureIgnoreCase)) { RegisterStatus registerStatus_ = 0; if (Enum.TryParse(parts[1], out registerStatus_)) { registerStatus = registerStatus_; } } else if (parts[0].Equals("infringementValue", StringComparison.InvariantCultureIgnoreCase)) { decimal infringementValue_ = 0; if (decimal.TryParse(parts[1], out infringementValue_)) { infringementValue = infringementValue_; } } else if (parts[0].Equals("periodType", StringComparison.InvariantCultureIgnoreCase)) { periodType = parts[1]; } } if (periodType.Equals("thisMonth", StringComparison.InvariantCultureIgnoreCase)) { var now = DateTime.Now; startDate = new DateTime(now.Year, now.Month, 1); endDate = now.Date.AddDays(1); } else if (periodType.Equals("lastMonth", StringComparison.InvariantCultureIgnoreCase)) { var now = DateTime.Now; startDate = new DateTime(now.Year, now.Month, 1).AddMonths(-1); endDate = startDate.AddMonths(1).AddMilliseconds(-1); } else if (periodType.Equals("thisYear", StringComparison.InvariantCultureIgnoreCase)) { var now = DateTime.Now; startDate = new DateTime(now.Year, 1, 1); endDate = now.Date.AddDays(1); } else if (periodType.Equals("lastYear", StringComparison.InvariantCultureIgnoreCase)) { var now = DateTime.Now; startDate = new DateTime(now.Year, 1, 1).AddYears(-1); endDate = startDate.AddYears(1).AddMilliseconds(-1); } using (var dbContext = new DataContext()) { //dbContext.Database.Log = f => Debug.WriteLine(f); endDate = endDate.AddDays(1).AddMilliseconds(-1); var query = dbContext.OffenceRegister .AsNoTracking() .Include(f => f.Register) .Include(f => f.Register.District) .Include(f => f.Court) .Include(f => f.Register.Person) .Include(f => f.InfringementLocation) .Include(f => f.EvidenceLog) .Include(f => f.EvidenceLog.SpeedLog) .Include(f => f.EvidenceLog.ChargeInfos) .Include(f => f.EvidenceLog.InfringementEvidences) .Include(f => f.EvidenceLog.HandWrittenCaptureLog) .Where(f => (f.Register.DistrictID.HasValue && districtList.Contains(f.Register.DistrictID.Value)) && (f.InfringementDate >= startDate && f.InfringementDate <= endDate)); if (infringementType.HasValue) { query = query.Where(f => f.InfringementType == infringementType.Value); } if (registerStatus.HasValue) { query = query.Where(f => f.Register.RegisterStatus == (int)registerStatus.Value); } if (infringementValue.HasValue) { query = query.Where(f => f.CapturedAmount.HasValue && f.CapturedAmount.Value >= infringementValue.Value); } var offences = query.OrderByDescending(f => f.InfringementDate).ToList(); var models = new List <OutstandingInfringerModel>(); foreach (var offence in offences) { var model = new OutstandingInfringerModel(); model.ReferenceNumber = offence.ReferenceNumber; model.DistrictName = offence.Register.District == null ? string.Empty : offence.Register.District.BranchName; model.OffenceLocation = offence.InfringementLocation == null ? string.Empty : offence.InfringementLocation.Description; model.OutstandingAmount = offence.Register.OutstandingAmount.Value; model.OffenceDate = offence.InfringementDate; model.OffenderName = offence.Register.Person == null ? string.Empty : string.Format("{0} {1}", offence.Register.Person.FirstNames, offence.Register.Person.LastName); model.OffenderEmail = offence.Register.Person == null ? string.Empty : offence.Register.Person.Email; model.OffenderMobile = offence.Register.Person == null ? string.Empty : offence.Register.Person.MobileNumber; model.FormattedRegisterStatus = offence.Register.RegisterStatus.ToString(); if (offence.EvidenceLog != null) { if (offence.EvidenceLog.ChargeInfos != null && offence.EvidenceLog.ChargeInfos.Count > 0) { var firstChargeInfo = offence.EvidenceLog.ChargeInfos.First(); model.OffenceCode = firstChargeInfo.OffenceCode.Code; model.OffenceDescription = firstChargeInfo.PrimaryDescription; } if (offence.EvidenceLog.HandWrittenCaptureLog != null) { model.OffenceLocation = offence.EvidenceLog.HandWrittenCaptureLog.OffenceLocationStreet; if (!string.IsNullOrWhiteSpace(offence.EvidenceLog.HandWrittenCaptureLog.OffenceLocationSuburb)) { model.OffenceLocation += string.Format("\n{0}", offence.EvidenceLog.HandWrittenCaptureLog.OffenceLocationSuburb); } if (!string.IsNullOrWhiteSpace(offence.EvidenceLog.HandWrittenCaptureLog.OffenceLocationTown)) { model.OffenceLocation += string.Format("\n{0}", offence.EvidenceLog.HandWrittenCaptureLog.OffenceLocationTown); } } } models.Add(model); } filterCriteria += string.Format("District: {0} ", districtList.Count == 1 ? dbContext.Districts.Find(districtList[0]).BranchName : "ALL"); filterCriteria += string.Format("Period: {0:yyyy/MM/dd} - {1:yyyy/MM/dd} ", startDate, endDate); filterCriteria += string.Format("Infringement Type: {0} ", infringementType.HasValue ? infringementType.ToString() : "ALL"); if (infringementValue.HasValue && infringementValue.Value > 0) { filterCriteria += string.Format("Values >: {0:0.00} ", infringementValue.Value); } filterCriteria += string.Format("Register Status: {0} ", registerStatus.HasValue ? registerStatus.ToString() : "ALL"); if (exportType == ExportType.PDF) { return(StreamPdfReport(BuildReport(models, filterCriteria))); } else if (exportType == ExportType.Excel) { return(StreamExcelReport(BuildReport(models, filterCriteria))); } else { throw new NotSupportedException(); } } }
public CriminalInfo(RegisterStatus registerStatus, CriminalStatus criminalStatus) { RegisterStatus = registerStatus; CriminalStatus = criminalStatus; }
public RegisterResponseParameters(RegisterStatus status) { Status = status; }
public override int GetHashCode() { return(RegisterStatus.GetHashCode() ^ CriminalStatus.GetHashCode()); }