/// <summary>
        ///     Solicita al servidor buscar los creadores de contenido que coincida con el nombre
        /// </summary>
        /// <param name="sender">El objeto que invoco el evento</param>
        /// <param name="e">El evento invocado</param>
        private async void OnKeyUpBuscar(object sender, KeyEventArgs e)
        {
            var cadena = BuscarTextBox.Text;

            if (cadena != "")
            {
                try
                {
                    var creadoresDeContenido = await CreadorContenidoClient.SearchCreadorContenido(cadena);

                    CreadoreContenidoTabla.ItemsSource = creadoresDeContenido;
                }
                catch (HttpRequestException)
                {
                    new MensajeEmergente().MostrarMensajeError(
                        "No se puede conectar al servidor, verifique su conexión a " +
                        "internet");
                }
                catch (Exception ex)
                {
                    new MensajeEmergente().MostrarMensajeError(ex.Message);
                }
            }
            else
            {
                CreadoreContenidoTabla.ItemsSource = null;
                CreadoreContenidoTabla.ItemsSource = new List <CreadorContenido>();
            }
        }
        /// <summary>
        ///     Edita la informacion de un creador de contenido en base a lo que hay en los campos
        /// </summary>
        private async void EditarCreadorDeContenido()
        {
            if (ValidarTextBoxNombre() && ValidarTextBoxBiografia())
            {
                cancelarButton.IsEnabled         = false;
                registrarCreadorButton.IsEnabled = false;
                ActualizarCreadorDeContenidoAPartirDeCampos();
                var editado = false;
                try
                {
                    _creadorContenidoAEditar =
                        await CreadorContenidoClient.EditCreadorContenido(_creadorContenidoAEditar, _listaGenero);

                    editado = true;
                    if (_rutaImagen != "")
                    {
                        var clientePortadas = new CoversClient();
                        clientePortadas.UploadContentCreatorCover(_rutaImagen, _creadorContenidoAEditar.id);
                    }
                }
                catch (HttpRequestException)
                {
                    new MensajeEmergente().MostrarMensajeError("No se puede conectar al servidor");
                }
                catch (RpcException)
                {
                    new MensajeEmergente().MostrarMensajeError(
                        "No se pudo guardar la imagen de portada, puede subirla " +
                        "mas adelante");
                }
                catch (Exception ex)
                {
                    if (ex.Message == "AuntenticacionFallida")
                    {
                        new MensajeEmergente().MostrarMensajeError("No se puede autentican con las credenciales " +
                                                                   "proporcionadas, se cerrara la sesion");
                        MainWindow.OcultarMenu();
                        MainWindow.OcultarReproductor();
                        NavigationService?.Navigate(new IniciarSesion());
                    }
                    else
                    {
                        new MensajeEmergente().MostrarMensajeAdvertencia(ex.Message);
                    }
                }

                if (editado)
                {
                    NavigationService?.Navigate(new PerfilCreadorDeContenido());
                }
                cancelarButton.IsEnabled         = true;
                registrarCreadorButton.IsEnabled = true;
            }
        }
        /// <summary>
        ///     Recupera el creador de contenido del usuario logeado
        /// </summary>
        /// <returns>Task</returns>
        private async Task RecuperarCreadorDeContenido()
        {
            if (ManejadorDeUsuariosLogeados.GetManejadorDeUsuariosLogeados().ObtenerUsuarioLogeado() != null)
            {
                try
                {
                    _creadorContenido = await CreadorContenidoClient.GetCreadorContenidoFromActualUser();

                    DesactivarModoSinConexion();
                }
                catch (HttpRequestException)
                {
                    ActivarModoSinConexion();
                }
            }
Ejemplo n.º 4
0
        /// <summary>
        ///     Recupera la busqueda de los creadores de contenido que coincidan con el buscarTextBox
        /// </summary>
        /// <param name="sender">El objeto que invoco el evento</param>
        /// <param name="keyEventArgs">El evento invocado</param>
        public async void BuscarCreadoresDeContenido(object sender, KeyEventArgs keyEventArgs)
        {
            var cadenaBusqueda = buscarTextBox.Text;

            if (cadenaBusqueda != "")
            {
                try
                {
                    _creadoresContenidos = await CreadorContenidoClient.SearchCreadorContenido(cadenaBusqueda);

                    CreadoresDeContenidoListView.ItemsSource = _creadoresContenidos;
                    SinConexionGrid.Visibility = Visibility.Hidden;
                    CreadoresDeContenidoListView.Visibility = Visibility.Visible;
                    ColocarImagenesArtistas();
                }
                catch (HttpRequestException)
                {
                    CreadoresDeContenidoListView.Visibility = Visibility.Hidden;
                    SinConexionGrid.Visibility = Visibility.Visible;
                }
            }