Example #1
0
        private async void RegisterButton_ClickAsync(object sender, EventArgs e)
        {
            TextView errorTextView = FindViewById <TextView>(Resource.Id.errorTextView);

            if (CrossConnectivity.Current.IsConnected)
            {
                errorTextView.Visibility = ViewStates.Gone;
                if (!dataValid || EmptyField())
                {
                    errorTextView.Text       = "Wypełnij dane poprawnie...";
                    errorTextView.Visibility = ViewStates.Visible;
                }
                else
                {
                    registerUser.UserName = registerUser.Email.Split('@').ElementAt(0);
                    var registerSuceed = await WebApiDataController.RegisterUser(this, registerUser);

                    if (!registerSuceed)
                    {
                        errorTextView.Text       = "Konto o podanym adresie już istnieje";
                        errorTextView.Visibility = ViewStates.Visible;
                    }
                    else
                    {
                        Toast.MakeText(this, "Zarejestrowano pomyślnie", ToastLength.Short);

                        AlertDialog.Builder dialog = new AlertDialog.Builder(this);
                        AlertDialog         alert  = dialog.Create();
                        alert.SetTitle("Ważne!");
                        alert.SetMessage("Aktywuj konto linkiem wysłanym w wiadomości e-mail. Link wygasa za 6 godzin.");
                        alert.SetButton("OK", (c, ev) =>
                        {
                            alert.Hide();
                            Bundle extras = new Bundle();
                            extras.PutString("email", emailEditText.Text);
                            extras.PutBoolean("registered", true);
                            FinishActivity(1);
                            Intent intent = new Intent(this, typeof(SignInActivity));
                            intent.PutExtras(extras);
                            StartActivity(intent);
                        });
                        alert.Show();
                        errorTextView.Visibility = ViewStates.Gone;
                    }
                }
            }
            else
            {
                errorTextView.Text       = "Brak połączenia z internetem";
                errorTextView.Visibility = ViewStates.Visible;
            }
        }