Beispiel #1
0
        // Handler para enviar un punto a otro usuario
        private async void ListSendBadges_ItemSelected(object sender, SelectedItemChangedEventArgs e)
        {
            // Retorno si no tengo nada seleccionado
            if (ListSendBadges.SelectedItem == null)
            {
                return;
            }

            ListSendBadges.SelectedItem = null;

            var attrSelected = e.SelectedItem as BasicAttrModel;

            // Creo un objeto de configuracion
            var promptConfig = new PromptConfig();

            promptConfig.InputType     = InputType.Name;
            promptConfig.IsCancellable = true;

            promptConfig.Title       = string.Format("Medalla {0}", attrSelected.attrName);
            promptConfig.Message     = string.Format("Enviar a {0}?", userModel.userName);
            promptConfig.Placeholder = "Mensaje Opcional";
            promptConfig.OkText      = "Enviar";
            promptConfig.CancelText  = "Cancelar";
            promptConfig.SetMaxLength(255);

            // Despliego el PopUp
            var result = await UserDialogs.Instance.PromptAsync(promptConfig);

            if (result.Ok)
            {
                //var Text = result.Text;

                // Invoco el servicio para el envio de una medalla a un usuario
                var response = await _badgeServices.SendAttrPoint(userModel, attrSelected, result.Text);

                Analytics.TrackEvent("BadgeSended");

                // Reviso si hubo algun fallo
                if (response.IsSuccessStatusCode)
                {
                    UserDialogs.Instance.Toast("Medalla enviada!", TimeSpan.FromMilliseconds(2500));
                }
                else
                {
                    await DisplayAlert("Oooooppsss, fallo en el envio", string.Format("Hemos tenido un pequeño fallo, ¿intentas mas tarde?. {0}", response.StatusCode), "OK");
                }
            }
        }
        private async void EditStatus_Clicked(object sender, EventArgs e)
        {
            // Creo un objeto de configuracion
            var promptConfig = new PromptConfig();

            promptConfig.InputType     = InputType.Name;
            promptConfig.IsCancellable = true;

            promptConfig.Title       = "Tu estado";
            promptConfig.Message     = String.Format("\"{0}\"", MasterySingleton.Instance._userInfo.userStatus);
            promptConfig.Placeholder = "Nuevo estado";
            promptConfig.OkText      = "Cambiar";
            promptConfig.CancelText  = "Cancelar";
            promptConfig.SetMaxLength(255);

            // Despliego el PopUp
            var result = await UserDialogs.Instance.PromptAsync(promptConfig);

            if (result.Ok)
            {
                var Text = result.Text;

                // Actualizo el estado que el usuario ve en el menu Master
                MasterySingleton.Instance._userInfo.userStatus = Text;
                LabelStatus.Text = MasterySingleton.Instance._userInfo.userStatus;

                // Invoco el servicio para la actualizacion del estado
                var resFail = await _userServices.UpdateUserStatus(Text);

                Analytics.TrackEvent("User Change Status");

                // Reviso si hubo algun fallo
                if (resFail != "")
                {
                    await DisplayAlert("Oooooppsss, fallo en el cambio de estado", resFail, "OK");
                }
            }
        }
Beispiel #3
0
        private void PromptAction()
        {
            var config = new PromptConfig();

            config.AndroidStyleId = 0;
            config.SetCancelText("Cancel");
            config.SetOkText("Ok");
            config.SetCancellable(true);
            config.OnAction = (x) => { };
            config.SetOnTextChanged((x) => { });
            config.SetTitle("Add bookmark");
            config.SetPlaceholder("Add bookmark name");
            string text = "My bookmark";

            config.SetText(text);
            config.SetMaxLength(70 + 5);
            config.SetInputMode(InputType.Default);


            var dialog = DependencyService.Get <ICustomUserDialog>();

            dialog.Prompt(config);
        }