Exemple #1
0
 /// <summary>
 /// DataObject update to set ReadOnly, UIBarButton title update to show edit or done.
 /// </summary>
 /// <param name="contactInfo"></param>
 /// <param name="isAdding"></param>
 internal void UpDateDataFormView(ContactInfo contactInfo, bool isAdding = false)
 {
     dataForm.DataObject = contactInfo;
     // Setting edit button
     if (!isAdding)
     {
         if (editButton.Title.Equals("Edit"))
         {
             dataForm.IsReadOnly = true;
             editButton.Title    = "Edit";
         }
         else
         {
             dataForm.IsReadOnly = false;
             bool isValid = dataForm.Validate();
             if (!isValid)
             {
                 return;
             }
             dataForm.Commit();
             editButton.Title = "Done";
         }
         this.NavigationItem.SetRightBarButtonItem(editButton, true);
     }
     else
     {
         var okButton = new UIBarButtonItem();
         okButton.Title           = "OK";
         dataForm.IsReadOnly      = false;
         refreshLayout            = false;
         this.dataForm.DataObject = contactInfo;
         okButton.Clicked        += OnOK;
         this.NavigationItem.SetRightBarButtonItem(okButton, true);
     }
 }
        private async void CompleteRegBtn_Click(object sender, EventArgs e)
        {
            if (!(_sfDataForm.Validate() && _sfDataForm2.Validate()))
            {
                return;
            }
            _sfDataForm.Commit();
            _sfDataForm2.Commit();
            _client.FirstName = fullName.FirstName;
            _client.LastName  = fullName.LastName;
            if (_client.ProfilePhotoUrl == null)
            {
                _client.ProfilePhotoUrl = "default";
            }
            if (CrossConnectivity.Current.IsConnected)
            {
                //! Upload data to database and image to blob storage
                var userApiClient = new UserApiClient();
                await userApiClient.UpdateClient(_client);

                Toast.MakeText(Context.ApplicationContext, $"Welcome {_client.FirstName}", ToastLength.Short).Show();
                StartActivity(new Intent(Context.ApplicationContext, typeof(MainActivity)));
            }
            else
            {
                Toast.MakeText(Context.ApplicationContext, "No Internet Connection", ToastLength.Short).Show();
            }
        }
        private void Button_TouchDown(object sender, EventArgs e)
        {
            var isValid = dataForm.Validate();

            dataForm.Commit();

            if (!isValid)
            {
                return;
            }

            dataForm.IsReadOnly = true;
            button.Hidden       = true;
        }
        private void Label_Click(object sender, EventArgs e)
        {
            var isValid = dataForm.Validate();

            dataForm.Commit();

            if (!isValid)
            {
                Toast.MakeText(context, "Please enter valid details", ToastLength.Long).Show();
                return;
            }

            Toast.MakeText(context, "Money Transferred", ToastLength.Long).Show();
            dataForm.IsReadOnly    = true;
            transferButton.Enabled = false;
        }
        /// <summary>
        /// Updates read only property and
        /// </summary>
        private void UpdateDataFormView(bool commit = true)
        {
            var item  = dataForm.DataObject as ContactsInfo;
            var index = (listView.Adapter as ListViewCustomAdapter).ContactList.IndexOf(item);

            if (isReadOnly)
            {
                isReadOnly          = false;
                dataForm.IsReadOnly = false;
                editButton.Text     = "Done";
            }
            else
            {
                isReadOnly = true;
                if (commit)
                {
                    var isValid = dataForm.Validate();
                    if (!isValid)
                    {
                        return;
                    }

                    dataForm.Commit();
                }

                dataForm.IsReadOnly = true;
                if (index != -1)
                {
                    editButton.Text = "Edit";
                    (listView.Adapter as ListViewCustomAdapter).ContactList[index] = item;
                    (listView.Adapter as ListViewCustomAdapter).NotifyDataSetChanged();
                }
                else
                {
                    dataForm.DataObject = item;
                    (listView.Adapter as ListViewCustomAdapter).ContactList.Add(item);
                    HideKeyboard(this.context as Activity);
                    contactLabel.Text       = "Edit Contact";
                    dataFormView.Visibility = ViewStates.Gone;
                    listView.Visibility     = ViewStates.Visible;
                    addButton.Visibility    = ViewStates.Visible;
                }
            }
        }
 void Picker_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     dataForm.Commit("Color");
 }
Exemple #7
0
        private async void TxtView_Click(object sender, EventArgs e)
        {
            var isValid = dataForm.Validate() && dataForm2.Validate();

            if (!isValid)
            {
                return;
            }
            if (!isChecked)
            {
                Toast.MakeText(Context.ApplicationContext, "Accept the terms of use", ToastLength.Short).Show();
            }
            else
            {
                if (!CrossConnectivity.Current.IsConnected)
                {
                    Toast.MakeText(Context.ApplicationContext, "No Internet Connection", ToastLength.Short).Show();
                }
                else
                {
                    dataForm.Commit();
                    dataForm2.Commit();

                    var sfBsyIndicator = new SfBusyIndicator(Context.ApplicationContext);
                    sfBsyIndicator.AnimationType  = AnimationTypes.Ball;
                    sfBsyIndicator.TitlePlacement = TitlePlacement.Top;
                    sfBsyIndicator.TextColor      = Color.Purple;
                    sfBsyIndicator.ViewBoxHeight  = 100;
                    sfBsyIndicator.ViewBoxWidth   = 100;
                    sfBsyIndicator.IsBusy         = true;
                    sfBsyIndicator.SecondaryColor = Color.Purple;
                    sfBsyIndicator.SetBackgroundResource(Color.Transparent);

                    var builder = new AlertDialog.Builder(CrossCurrentActivity.Current.Activity,
                                                          Resource.Style.AlertDialogTheme);
                    var alertDialog = builder.SetView(sfBsyIndicator).Create();
                    alertDialog.SetCanceledOnTouchOutside(false);
                    alertDialog.Show();
                    alertDialog.Window.SetLayout(1000, 300);

                    var phoneNumber = string.Concat(phoneInfo.CountryCode, phoneInfo.PhoneNumber);
                    var httpClient  = new HttpClient();
                    var funcUri     =
                        $"https://e-spafunctions.azurewebsites.net/api/UserExistence?code=FvvkqYX9HQxJsr4AliXfv6jqZ3uttw8wzUNezzKiXHowx4EwUVdqdQ==&phoneNo={phoneNumber}";
                    var response = await httpClient.GetAsync(funcUri);

                    alertDialog.Cancel();


                    if (response.StatusCode == HttpStatusCode.OK)
                    {
                        Toast.MakeText(Context.ApplicationContext,
                                       "An Account is already associated with that phoneNumber", ToastLength.Long).Show();
                        var str = await response.Content.ReadAsStringAsync();

                        client = JsonConvert.DeserializeObject <Client>(str);
                    }
                    else
                    {
                        var fragment = new PhoneNumberVerificationFragment();
                        var phInfo   = JsonConvert.SerializeObject(phoneInfo);
                        var usInfo   = JsonConvert.SerializeObject(userInfo);

                        var bundle = new Bundle();
                        bundle.PutString("phoneInfo", phInfo);
                        bundle.PutString("userInfo", usInfo);
                        fragment.Arguments = bundle;


                        var alertDialogBuilder = new AlertDialog.Builder(CrossCurrentActivity.Current.Activity, Resource.Style.AppTheme)
                                                 .SetTitle("Phone Number Verification")
                                                 .SetMessage($"We shall be verifying the phone Number {string.Concat(phoneInfo.CountryCode,phoneInfo.PhoneNumber)} by sending an SMS with a verification Code. Press Yes to continue or No modify the Phone Number")
                                                 .SetNegativeButton("No", (s, arg) => { Dispose(); })
                                                 .SetPositiveButton("Yes", ((s, args) =>
                        {
                            var transaction = FragmentManager.BeginTransaction();
                            transaction.SetCustomAnimations(Resource.Animation.anim_enter, Resource.Animation.anim_exit)
                            .Replace(Resource.Id.authorizationContainer, fragment)
                            .AddToBackStack("RegisterNewUser")
                            .Commit();
                        }))
                                                 .Create();
                        alertDialogBuilder.Window.SetLayout(1000, 450);
                        alertDialogBuilder.Show();
                    }
                }
            }
        }
Exemple #8
0
 //On save
 private void OnSaved(object sender, EventArgs e)
 {
     dataForm.Validate();
     dataForm.Commit();
     formModel = dataForm.DataObject as DataFormModel;
 }