Ejemplo n.º 1
0
        public async Task <LoginResponse> postRegister(string email, string username, string password)
        {
            var formContent = new FormUrlEncodedContent(new[]
            {
                new KeyValuePair <string, string>("email", email),
                new KeyValuePair <string, string>("username", username),
                new KeyValuePair <string, string>("password", password)
            });

            HttpResponseMessage result = await post("/user/register", formContent);

            string content = await result.Content.ReadAsStringAsync();

            if (result.IsSuccessStatusCode)
            {
                LoginReturn returnData = JsonConvert.DeserializeObject <LoginReturn>(content);

                Console.WriteLine(returnData.message + " " + returnData.data.authCode);
                Preferences.Set(SharedPreferences.AUTH_CODE, returnData.data.authCode);
                Preferences.Set(SharedPreferences.ADMIN_TYPE, returnData.data.authCode);
                return(returnData);
            }
            else
            {
                LoginErrorResponse returnData = JsonConvert.DeserializeObject <LoginErrorResponse>(content);

                Console.WriteLine(returnData.message + " " + returnData.statusCode);
                return(returnData);
            }
        }
Ejemplo n.º 2
0
        private async Task DoLogin()
        {
            List <KeyValuePair <string, string> > values = new List <KeyValuePair <string, string> >
            {
                new KeyValuePair <string, string>("UserName", UserName),
                new KeyValuePair <string, string>("Password", Password)
            };

            if (FieldValidation.ValidateFields(values))
            {
                CanLogin = false;
                try
                {
                    LoginAPIHelper loginAPIHelper = new LoginAPIHelper();
                    var            result         = await loginAPIHelper.Authenticate(UserName, Password).ConfigureAwait(false);

                    if (result.GetType() == typeof(LoginErrorResponse))
                    {
                        LoginErrorResponse response = result as LoginErrorResponse;
                        MessageBox.Show(response.Error_Description, response.Error, MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    else if (result.GetType() == typeof(AuthenticatedUser))
                    {
                        AuthenticatedUser authenticatedUser = result as AuthenticatedUser;
                        LoggedInUser      loggedInUser      = await loginAPIHelper.GetLoggedInUser(authenticatedUser.Access_Token).ConfigureAwait(false);

                        loggedInUser.Token = authenticatedUser.Access_Token;
                        Application.Current.Properties["LoggedInUser"] = loggedInUser;
                        Application.Current.Dispatcher.Invoke((Action) delegate
                        {
                            ProjectSelection projectSelection = new ProjectSelection();
                            projectSelection.Show();
                            this.Close();
                        });
                    }
                    else
                    {
                        MessageBox.Show("OOPS! Unexpected error occured", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    CanLogin = true;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    CanLogin = true;
                }
            }
        }