Ejemplo n.º 1
0
        private void btnRegister_Click(object sender, EventArgs e)
        {
            this.accountServer = this.settings["Launcher"]["Accounts"];

            //Lets ping first
            AccountServer.PingRequestStatusCode ping = PingServer(this.settings["Launcher"]["Accounts"]);
            if (ping != AccountServer.PingRequestStatusCode.Ok)
            {
                //Try the backup
                if ((ping = PingServer(this.settings["Launcher"]["AccountsBackup"])) != AccountServer.PingRequestStatusCode.Ok)
                {
                    int num3 = (int)MessageBox.Show("Server error, could not connect. Is your firewall enabled?");
                    return;
                }
                this.accountServer = this.settings["Launcher"]["AccountsBackup"];
            }

            switch (AccountServer.RegisterAccount(new AccountServer.RegisterRequestObject()
            {
                Username = this.txtUsername.Text.Trim(),
                PasswordHash = Md5.Hash(this.txtPassword.Text.Trim()),
                Email = this.txtEmail.Text.Trim()
            }, this.accountServer))

            {
            case AccountServer.RegistrationStatusCode.Ok:
                int num1 = (int)MessageBox.Show("Account created!");
                break;

            case AccountServer.RegistrationStatusCode.MalformedData:
                int num2 = (int)MessageBox.Show("Error: malformed username/password");
                break;

            case AccountServer.RegistrationStatusCode.UsernameTaken:
                int num3 = (int)MessageBox.Show("Username is taken");
                break;

            case AccountServer.RegistrationStatusCode.EmailTaken:
                int num4 = (int)MessageBox.Show("Email is already used");
                break;

            case AccountServer.RegistrationStatusCode.WeakCredentials:
                string msg  = "(too short/invalid characters/invalid email)";
                int    num5 = (int)MessageBox.Show("Credentials are invalid: " + (AccountServer.Reason != null ? AccountServer.Reason : msg));
                break;

            case AccountServer.RegistrationStatusCode.ServerError:
                string defaultMsg = "Server error, could not connect. Is your firewall enabled?";
                int    num6       = (int)MessageBox.Show((AccountServer.Reason != null ? AccountServer.Reason : defaultMsg));
                break;
            }
        }
        /// <summary>
        /// Registers a new account
        /// </summary>
        public static bool RegisterAccount(string Username, string Password, string Email)
        {
            string msg;

            IStatus.RegisterRequestObject request = new IStatus.RegisterRequestObject();
            request.Username     = Username;
            request.PasswordHash = Helpers.Md5.Hash(Password);
            request.Email        = Email;

            switch (AccountServer.RegisterAccount(request, CurrentUrl))
            {
            case IStatus.RegistrationStatusCode.Ok:
                MessageBox.Show("Account created!", "Register Request");
                return(true);

            case IStatus.RegistrationStatusCode.MalformedData:
                msg = "Error: malformed username/password";
                MessageBox.Show(string.IsNullOrWhiteSpace(AccountServer.Reason) ? msg : "Error: " + AccountServer.Reason, "Register Request");
                break;

            case IStatus.RegistrationStatusCode.UsernameTaken:
                msg = "Error: Username is taken.";
                MessageBox.Show(string.IsNullOrWhiteSpace(AccountServer.Reason) ? msg : "Error: " + AccountServer.Reason, "Register Request");
                break;

            case IStatus.RegistrationStatusCode.EmailTaken:
                msg = "Error: Email is already used.";
                MessageBox.Show(string.IsNullOrWhiteSpace(AccountServer.Reason) ? msg : "Error: " + AccountServer.Reason, "Register Request");
                break;

            case IStatus.RegistrationStatusCode.WeakCredentials:
                msg = "too short/invalid characters/invalid email";
                MessageBox.Show("Error: Credentials are invalid.\n\r("
                                + (string.IsNullOrWhiteSpace(AccountServer.Reason) ? msg : AccountServer.Reason) + ")", "Register Request");
                break;

            case IStatus.RegistrationStatusCode.ServerError:
                msg = "Server error, could not connect. Is your firewall enabled?";
                MessageBox.Show(string.IsNullOrWhiteSpace(AccountServer.Reason) ? msg : "Error: " + AccountServer.Reason, "Register Request");
                break;

            case IStatus.RegistrationStatusCode.NoResponse:
                msg = "Server error, received no response from the server.";
                MessageBox.Show(string.IsNullOrWhiteSpace(AccountServer.Reason) ? msg : "Error: " + AccountServer.Reason, "Register Request");
                break;
            }

            return(false);
        }