private async Task Login(string username, string password, bool rememberMe) { ActivateLoading(); bool error = false; User user = null; try { user = (await Service.GetTable<User>() .Where(t => t.Username == username && t.Password == password).ToListAsync()).FirstOrDefault(); } catch (Exception ex) { error = true; } if (error) { await new MessageDialog("Something went wrong!").ShowAsync(); return; } if (user == null) { await new MessageDialog("The username, password combination does not match!").ShowAsync(); return; } App.User = user; if (rememberMe) { var settings = new SettingsHelper(); settings.SetUsernameToSettings(username); settings.SetPasswordToSettings(password); settings.SetRememberMeToSettings(true); } switch (user.Type) { case UserType.Volunteer: Frame.Navigate(typeof(MainPage)); break; case UserType.Medic: Frame.Navigate(typeof(MainPage)); break; case UserType.Manager: Frame.Navigate(typeof(MainPage)); break; default: break; } }
private async void UpdateButton_Click(object sender, RoutedEventArgs e) { bool error = false; DisableErrors(); if (!CheckInput()) return; if (!txtPassword.Password.Equals(txtRepeatPassword.Password)) { await new MessageDialog("Passwords do not match!").ShowAsync(); return; } try { var existingUser = (await Service.GetTable<User>() .Where(t => t.Id == App.User.Id).ToListAsync()).FirstOrDefault(); existingUser.Password = txtPassword.Password; existingUser.Fullname = txtName.Text; existingUser.Email = txtEmail.Text; existingUser.Address = txtAddress.Text; existingUser.PhoneNumber = txtPhone.Text; existingUser.Type = (cmbUserType.SelectedItem as NameType).Type; await Service.UpdateItemAsync(existingUser); App.User = existingUser; var settings = new SettingsHelper(); if (settings.GetRememberMeFromSettings()) { settings.SetPasswordToSettings(existingUser.Password); } } catch (Exception ex) { error = true; } if (error) { await new MessageDialog("Something went wrong!").ShowAsync(); return; } Frame.GoBack(); }