public void LoginClick(object sender, EventArgs args) { EditText usernameField = FindViewById <EditText>(Resource.Id.Login_UsernameField); EditText passwordField = FindViewById <EditText>(Resource.Id.Login_PasswordField); UserAccount user = userController.LogIn(usernameField.Text, passwordField.Text); if (user == null) { StringMessageDialogFragment dialog = StringMessageDialogFragment.CreateInstance("Invalid username or password."); dialog.Show(FragmentManager, "Login Failed"); } else { Intent homeIntent = new Intent(this, typeof(HomeActivity)); homeIntent.PutExtra("UserController", JsonConvert.SerializeObject(userController, Formatting.Indented, SerializationBinderHelper.Settings)); StartActivity(homeIntent); Finish(); } }
public void CreateClick(object sender, EventArgs args) { Dictionary <string, IEnumerable <string> > errors = new Dictionary <string, IEnumerable <string> > { { "Username errors:", UsernameChecks(userNameField.Text) }, { "Password errors:", PasswordChecks(passwordField.Text) }, { "Email errors:", EmailChecks(emailField.Text) }, { "Phone number errors:", PhoneNumberChecks(phoneNumberField.Text) } }; Dictionary <string, IEnumerable <string> > errorsCaught = errors.Where(p => p.Value.Any()).ToDictionary(p => p.Key, p => p.Value); if (errorsCaught.Count > 0) { string errorMessage = String.Empty; foreach (KeyValuePair <string, IEnumerable <string> > errorPair in errorsCaught) { errorMessage += errorPair.Key; foreach (string message in errorPair.Value) { errorMessage += $"\n\t\t{message}"; } errorMessage += "\n\n"; } StringMessageDialogFragment dialog = StringMessageDialogFragment.CreateInstance(errorMessage); dialog.Show(FragmentManager, "Invalid information"); } else { UserAccount user = userController.CreateAccount(userNameField.Text, passwordField.Text, emailField.Text, phoneNumberField.Text); userController.LogIn(user.UserName, passwordField.Text); Intent intent = new Intent(this, typeof(HomeActivity)); intent.PutExtra("UserController", JsonConvert.SerializeObject(userController)); StartActivity(intent); Finish(); } }
private void Save_Click(object sender, EventArgs args) { if (!IsNameValid() || !IsDescriptionValid() || !IsFrequencyValid() || !IsDateValid()) { string errorMessage = "Invalid input for one or more fields."; StringMessageDialogFragment dialog = StringMessageDialogFragment.CreateInstance(errorMessage); dialog.Show(FragmentManager, "Invalid information"); } else { Goal goal; string name = taskNameField.Text; string description = taskDescriptionField.Text; DateTime deadline = new DateTime(deadlineDate.Year, deadlineDate.Month, deadlineDate.Day, deadlineTime.Hour, deadlineTime.Minute, deadlineTime.Second); if (IsRecurring) { TimeSpan frequency; switch (frequencyButton.Text) { case "Daily": frequency = new TimeSpan(1, 0, 0, 0); break; case "Weekly": frequency = new TimeSpan(7, 0, 0, 0); break; case "Monthly": // I CAN'T DEAL WITH MONTHS HERE frequency = new TimeSpan(30, 0, 0, 0); break; case "Yearly": frequency = new TimeSpan(365, 0, 0, 0); break; default: frequency = default(TimeSpan); break; } goal = new RecurringGoal { TaskName = name, Deadline = deadline, Description = description, Frequency = frequency, Points = points }; goalController.CreateRecurringGoal(userController.CurrentUser.UserName, (RecurringGoal)goal); } else { goal = new NonRecurringGoal { TaskName = name, Deadline = deadline, Description = description, Points = points }; goalController.CreateNonRecurringGoal(userController.CurrentUser.UserName, (NonRecurringGoal)goal); } GoBack(); } }