Ejemplo n.º 1
0
        //Generate new link
        private async void GenerateButtonOnClick(object sender, EventArgs e)
        {
            try
            {
                if (!Methods.CheckConnectivity())
                {
                    Toast.MakeText(this, GetText(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Long)?.Show();
                    return;
                }

                //Show a progress
                AndHUD.Shared.Show(this, GetText(Resource.String.Lbl_Loading));

                var(apiStatus, respond) = await RequestsAsync.Global.CreateInvitationCodeAsync();

                switch (apiStatus)
                {
                case 200:
                {
                    switch (respond)
                    {
                    case CreateInvitationCodeObject result:
                    {
                        var unixTimestamp = DateTimeOffset.UtcNow.ToUnixTimeSeconds();


                        MAdapter.LinksList.Add(new InvitationDataObject
                                {
                                    Link = result.Link,
                                    Time = unixTimestamp.ToString()
                                });

                        MAdapter.NotifyDataSetChanged();

                        AndHUD.Shared.Dismiss(this);
                        break;
                    }
                    }

                    break;
                }

                default:
                    Methods.DisplayAndHudErrorResult(this, respond);
                    break;
                }
            }
            catch (Exception exception)
            {
                Methods.DisplayReportResultTrack(exception);
                AndHUD.Shared.Dismiss(this);
            }
        }
        //Generate new link
        private async void GenerateButtonOnClick(object sender, EventArgs e)
        {
            try
            {
                if (!Methods.CheckConnectivity())
                {
                    Toast.MakeText(this, GetText(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Long).Show();
                    return;
                }

                //Show a progress
                AndHUD.Shared.Show(this, GetText(Resource.String.Lbl_Loading));

                var(apiStatus, respond) = await RequestsAsync.Global.CreateInvitationCodeAsync();

                if (apiStatus == 200)
                {
                    if (respond is CreateInvitationCodeObject result)
                    {
                        var unixTimestamp = DateTimeOffset.UtcNow.ToUnixTimeSeconds();


                        MAdapter.LinksList.Add(new InvitationDataObject()
                        {
                            Link = result.Link,
                            Time = unixTimestamp.ToString()
                        });

                        MAdapter.NotifyDataSetChanged();

                        AndHUD.Shared.Dismiss(this);
                    }
                }
                else
                {
                    if (respond is ErrorObject errorMessage)
                    {
                        var errorText = errorMessage.Error.ErrorText;
                        //Show a Error image with a message
                        AndHUD.Shared.ShowError(this, errorText, MaskType.Clear, TimeSpan.FromSeconds(2));
                    }

                    // Methods.DisplayReportResult(this, respond);
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
                AndHUD.Shared.Dismiss(this);
            }
        }