Esempio n. 1
0
        private async void MostrarCancionesDePlaylist(Playlist playlist)
        {
            CancionDAO     cancionDAO = new CancionDAO(UsuarioActual.Token);
            List <Cancion> respuesta;

            try
            {
                respuesta = await cancionDAO.CargarPorIdPlaylist(playlist.Id);
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                return;
            }
            if (respuesta.Count == 1 && respuesta[0].Id == 0)
            {
                ListaDeCancionesDePlaylist.Visibility    = Visibility.Collapsed;
                LabelNoHayCancionesEnPlaylist.Visibility = Visibility.Visible;
            }
            else
            {
                ListaDeCancionesDePlaylist.Visibility    = Visibility.Visible;
                LabelNoHayCancionesEnPlaylist.Visibility = Visibility.Collapsed;
                ListaDeCancionesDePlaylist.AsignarCanciones(respuesta);
                await CargarArtistasDeCanciones(respuesta);

                ListaDeCancionesDePlaylist.AsignarCanciones(respuesta);
                await CargarAlbumDeCanciones(respuesta);

                ListaDeCancionesDePlaylist.AsignarCanciones(respuesta);
            }
        }
Esempio n. 2
0
        private async void MostrarAlbumesDeArtista(Artista artista)
        {
            AlbumDAO     albumDAO = new AlbumDAO(UsuarioActual.Token);
            List <Album> respuesta;

            try
            {
                respuesta = await albumDAO.CargarPorIdArtista(artista.Id);
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                return;
            }

            if (respuesta.Count == 1 && respuesta[0].Id == 0)
            {
                ListaDeAlbumesDeArtista.Visibility    = Visibility.Collapsed;
                LabelNoHayAlbumesDeArtista.Visibility = Visibility.Visible;
                ListaDeCancionesDeArtista.Visibility  = Visibility.Collapsed;
                LabelNoHayCancionesDeAlbum.Visibility = Visibility.Collapsed;
            }
            else
            {
                ListaDeAlbumesDeArtista.Visibility    = Visibility.Visible;
                LabelNoHayAlbumesDeArtista.Visibility = Visibility.Collapsed;
                ListaDeAlbumesDeArtista.AsignarAlbumes(respuesta);
            }
        }
Esempio n. 3
0
        private async void CargarPlaylists()
        {
            if (CargarPlaylistsLibre)
            {
                CargarPlaylistsLibre = false;
                PlaylistDAO playlistDAO = new PlaylistDAO(UsuarioActual.Token);
                try
                {
                    PlaylistsDeUsuarioActual = await playlistDAO.CargarPorIdConsumidor(UsuarioActual.Id);
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                    return;
                }
                if (PlaylistsDeUsuarioActual.Count == 1 && PlaylistsDeUsuarioActual[0].Id == 0)
                {
                    ListaDePlaylists.Visibility               = Visibility.Collapsed;
                    LabelNoHayPlaylists.Visibility            = Visibility.Visible;
                    ListaDeCancionesDePlaylist.Visibility     = Visibility.Collapsed;
                    LabelNoHayCancionesDescargadas.Visibility = Visibility.Collapsed;
                }
                else
                {
                    ListaDePlaylists.AsignarPlaylists(PlaylistsDeUsuarioActual);
                    PropagarPlaylists();
                    ListaDePlaylists.Visibility    = Visibility.Visible;
                    LabelNoHayPlaylists.Visibility = Visibility.Collapsed;
                }

                CargarPlaylistsLibre = true;
            }
        }
 private async void ButtonGuardar_Click(object sender, RoutedEventArgs e)
 {
     if (ValidarCampos())
     {
         byte[] datosDeCaratula = ServiciosDeIO.CargarBytesDeArchivo(DireccionDeArchivoDeCaratula);
         foreach (Genero item in DataGridGeneros.ItemsSource)
         {
             if (((CheckBox)CheckBoxColumn.GetCellContent(item)).IsChecked == true)
             {
                 GenerosSeleccionados.Add(item.Id);
             }
         }
         AlbumDAO albumDAO = new AlbumDAO(UsuarioActual.Token);
         try
         {
             bool resultado = await albumDAO.RegistrarAlbum(TextBoxNombreDeAlbum.Text, TextBoxDescripcionDeAlbum.Text, GenerosSeleccionados, datosDeCaratula);
         }
         catch (Exception ex)
         {
             MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
             MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
         }
         GenerosSeleccionados = new List <int>();
     }
     else
     {
     }
 }
Esempio n. 5
0
        private async void OpcionDePlaylists_Click(object sender, RoutedEventArgs e)
        {
            MenuItem seleccion            = sender as MenuItem;
            Playlist playlistSeleccionada = PlaylistsEnMenuDeContexto.FirstOrDefault(p => p.Nombre == seleccion.Header.ToString());

            if (playlistSeleccionada != null)
            {
                PlaylistDAO playlistDAO = new PlaylistDAO(Token);
                bool        resultado   = false;
                try
                {
                    resultado = await playlistDAO.AgregarCancionAPlaylist(playlistSeleccionada.Id, CancionSeleccionada.Id);
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                    return;
                }
                if (resultado)
                {
                    MessageBox.Show("Cancion agregada");
                }
                else
                {
                    MessageBox.Show("Hubo un error agregando la cancion, intentelo mas tarde", "Vaya");
                }
            }
            else
            {
                MessageBox.Show("Hubo un error seleccionando la playlist. Intentelo de nuevo");
            }
        }
Esempio n. 6
0
        private async void CargarGeneros()
        {
            if (CargarGenerosLibre)
            {
                CargarGenerosLibre = false;
                GeneroDAO     generoDAO = new GeneroDAO(UsuarioActual.Token);
                List <Genero> respuesta;
                try
                {
                    respuesta = await generoDAO.CargarTodos();
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                    return;
                }
                if (respuesta.Count == 1 && respuesta[0].Id == 0)
                {
                    ListaDeGeneros.Visibility    = Visibility.Collapsed;
                    LabelNoHayGeneros.Visibility = Visibility.Visible;
                }
                else
                {
                    ListaDeGeneros.AsignarGeneros(respuesta);
                    ListaDeGeneros.Visibility    = Visibility.Visible;
                    LabelNoHayGeneros.Visibility = Visibility.Collapsed;
                }

                CargarGenerosLibre = true;
            }
        }
Esempio n. 7
0
        private async Task <bool> CargarAlbumDeCanciones(List <Cancion> canciones)
        {
            AlbumDAO albumDAO = new AlbumDAO(Token);

            foreach (Cancion cancion in canciones)
            {
                if (cancion.Album != null)
                {
                    Album respuesta;
                    try
                    {
                        respuesta = await albumDAO.CargarPorId(cancion.Album.Id);
                    }
                    catch (Exception ex)
                    {
                        MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                        MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                        return(false);
                    }

                    cancion.Album = respuesta;
                }
            }
            return(true);
        }
        private async void ButtonAceptar_Click(object sender, RoutedEventArgs e)
        {
            PlaylistDAO playlistDAO         = new PlaylistDAO(usuarioActual.Token);
            bool        resultadoDeGuardado = false;

            if (ValidarCampos())
            {
                try
                {
                    resultadoDeGuardado = await playlistDAO.CrearPlaylist(TextBoxNombreDePlaylist.Text);
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                    return;
                }
            }
            else
            {
                MessageBox.Show("El nombre de la playlist que ingreso no es valido", "Error");
                return;
            }
            if (resultadoDeGuardado)
            {
                MessageBox.Show("El la playlist fue creada", "¡Exito!");
            }
            else
            {
                MessageBox.Show("No se pudo guardar la playlist :( /n Intentelo mas tarde", "Vaya");
            }
            Close();
        }
        private async void DataGridListaDeAlbumes_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (e.AddedItems.Count == 1)
            {
                Album albumSeleccionado = e.AddedItems[0] as Album;

                CancionDAO cancionDAO = new CancionDAO(Artista.Token);
                try
                {
                    CancionesDeAlbum = await cancionDAO.CargarPorIdAlbum(albumSeleccionado.Id);
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                }
                if (CancionesDeAlbum.Count == 1 && CancionesDeAlbum[0].Id == 0)
                {
                    DataGridListaDeCancionesEnAlbum.Visibility = Visibility.Collapsed;
                    LabelNoHayCancionesEnAlbum.Visibility      = Visibility.Visible;
                }
                else
                {
                    DataGridListaDeCancionesEnAlbum.Visibility = Visibility.Visible;
                    LabelNoHayCancionesEnAlbum.Visibility      = Visibility.Collapsed;
                }

                DataGridListaDeCancionesEnAlbum.ItemsSource = CancionesDeAlbum;
            }
        }
        private async void ButtonAgregarCancionAAlbum_Click(object sender, RoutedEventArgs e)
        {
            Album albumSeleccionado = (Album)DataGridListaDeAlbumes.SelectedItem;

            if (albumSeleccionado != null)
            {
                Cancion  cancionSeleccionada = ((FrameworkElement)sender).DataContext as Cancion;
                AlbumDAO albumDAO            = new AlbumDAO(Artista.Token);
                try
                {
                    bool resultado = await albumDAO.AgregarCancionAAlbum(albumSeleccionado.Id, cancionSeleccionada.Id);

                    CargarDatos();
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                }
            }
            else
            {
                MessageBox.Show("Debe elegir un album", "Ningun album seleccionado");
            }
        }
Esempio n. 11
0
        private async void MostrarCancionesDeAlbumDeArtista(Album album)
        {
            CancionDAO     cancionDAO = new CancionDAO(UsuarioActual.Token);
            List <Cancion> respuesta;

            try
            {
                respuesta = await cancionDAO.CargarPorIdAlbum(album.Id);
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                return;
            }
            if (respuesta.Count == 1 && respuesta[0].Id == 0)
            {
                ListaDeCancionesDeArtista.Visibility  = Visibility.Collapsed;
                LabelNoHayCancionesDeAlbum.Visibility = Visibility.Visible;
            }
            else
            {
                ListaDeCancionesDeArtista.Visibility  = Visibility.Visible;
                LabelNoHayCancionesDeAlbum.Visibility = Visibility.Collapsed;
                ListaDeCancionesDeArtista.AsignarCanciones(respuesta);
                await CargarArtistasDeCanciones(respuesta);

                ListaDeCancionesDeArtista.AsignarCanciones(respuesta);
                await CargarAlbumDeCanciones(respuesta);

                ListaDeCancionesDeArtista.AsignarCanciones(respuesta);
            }
            ImageCaratulaDeAlbum.Source = CargarImagen(await ServiciosDeIO.CargarCaratulaDeAlbumPorId(album.Id, UsuarioActual.Token));
        }
Esempio n. 12
0
        private async void CargarPrivadas()
        {
            if (CargarPrivadasLibre)
            {
                CargarPrivadasLibre = false;
                CancionDAO     cancionDAO = new CancionDAO(UsuarioActual.Token);
                List <Cancion> respuesta;
                try
                {
                    respuesta = await cancionDAO.CargarPrivadasPorIdConsumidor(UsuarioActual.Id);
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                    return;
                }
                if (respuesta.Count == 1 && respuesta[0].Id == 0)
                {
                    ListaDeCancionesPrivadas.Visibility = Visibility.Collapsed;
                    LabelNoHayBiblioteca.Visibility     = Visibility.Visible;
                }
                else
                {
                    ListaDeCancionesPrivadas.AsignarCanciones(respuesta);
                    ListaDeCancionesPrivadas.Visibility = Visibility.Visible;
                    LabelNoHayBiblioteca.Visibility     = Visibility.Collapsed;
                }

                CargarPrivadasLibre = true;
            }
        }
Esempio n. 13
0
        private async void ButtonGuardar_Click(object sender, RoutedEventArgs e)
        {
            Mouse.OverrideCursor = Cursors.Wait;
            if (ValidarCampos())
            {
                byte[] datosDeAudio    = ServiciosDeIO.CargarBytesDeArchivo(DireccionDeArchivoDeAudio);
                byte[] datosDeCaratula = ServiciosDeIO.CargarBytesDeArchivo(DireccionDeArchivoDeCaratula);
                int    duracionDeAudio = ServiciosDeIO.ObtenerDuracionDeCancion(DireccionDeArchivoDeAudio);
                if (TipoDeUsuario == TipoDeUsuario.Artista)
                {
                    foreach (Genero item in DataGridGeneros.ItemsSource)
                    {
                        if (((CheckBox)CheckBoxColumn.GetCellContent(item)).IsChecked == true)
                        {
                            GenerosSeleccionados.Add(item.Id);
                        }
                    }
                }
                CancionDAO cancionDAO = new CancionDAO(UsuarioActual.Token);
                bool       resultado  = false;
                try
                {
                    if (TipoDeUsuario == TipoDeUsuario.Artista)
                    {
                        resultado = await cancionDAO.RegistrarCancionDeArtista(TextBoxNombreDeCancion.Text, GenerosSeleccionados, datosDeAudio, datosDeCaratula, duracionDeAudio);
                    }
                    else if (TipoDeUsuario == TipoDeUsuario.Consumidor)
                    {
                        resultado = await cancionDAO.RegistrarCancionDeConsumidor(TextBoxNombreDeCancion.Text, datosDeAudio, datosDeCaratula, duracionDeAudio);
                    }
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                    Mouse.OverrideCursor = null;
                }
                if (resultado)
                {
                    MessageBox.Show("Cancion registrada", "¡Exito!");
                    Close();
                }
                else
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(new Exception());
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                }
            }
            else
            {
                MessageBox.Show("Campos invalidos. Verifique e intentelo de nuevo", "Error");
                Mouse.OverrideCursor = null;
            }

            Mouse.OverrideCursor = null;
        }
Esempio n. 14
0
        private async void CargarCancionesDescargadas()
        {
            if (CargarCancionesDescargadasLibre)
            {
                CargarCancionesDescargadasLibre = false;
                List <int>     idsCancionesDescargadas = ServiciosDeIO.ListarCancionesDescargadas();
                List <Cancion> cancionesDescargadas    = new List <Cancion>();
                foreach (int idCancion in idsCancionesDescargadas)
                {
                    if (ModoConectado)
                    {
                        CancionDAO cancionDAO = new CancionDAO(UsuarioActual.Token);
                        try
                        {
                            cancionesDescargadas.Add(await cancionDAO.CargarPorId(idCancion));
                        }
                        catch (Exception ex)
                        {
                            MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                            MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                            return;
                        }
                    }
                    else
                    {
                        cancionesDescargadas.Add(ServiciosDeIO.ObtenerCancionLocal(idCancion));
                    }
                }
                ListaDeCancionesDescargadas.AsignarCanciones(cancionesDescargadas);
                if (ModoConectado)
                {
                    if (cancionesDescargadas.Count == 1 && cancionesDescargadas[0].Id == 0)
                    {
                        ListaDeCancionesDescargadas.Visibility    = Visibility.Collapsed;
                        LabelNoHayCancionesDescargadas.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        ListaDeCancionesDescargadas.Visibility    = Visibility.Visible;
                        LabelNoHayCancionesDescargadas.Visibility = Visibility.Collapsed;
                        ListaDeCancionesDescargadas.AsignarCanciones(cancionesDescargadas);
                        await CargarArtistasDeCanciones(cancionesDescargadas);

                        ListaDeCancionesDescargadas.AsignarCanciones(cancionesDescargadas);
                        await CargarAlbumDeCanciones(cancionesDescargadas);

                        ListaDeCancionesDescargadas.AsignarCanciones(cancionesDescargadas);
                    }
                }
                CargarCancionesDescargadasLibre = true;
            }
        }
        private async void CargarGeneros()
        {
            GeneroDAO generoDAO = new GeneroDAO(UsuarioActual.Token);

            try
            {
                GenerosCargados = await generoDAO.CargarTodos();
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
            }
            DataGridGeneros.ItemsSource = GenerosCargados;
        }
 private async void AsignarImagenDeCancionActual(int idCancion)
 {
     byte[] imagen;
     try
     {
         imagen = await ServiciosDeIO.CargarCaratulaDeCancionPorId(idCancion, Token);
     }
     catch (Exception ex)
     {
         MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
         MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
         return;
     }
     ImageCaratulaDeAlbum.Source = CargarImagen(imagen);
 }
        private async void ButtonEliminarCancion_Click(object sender, RoutedEventArgs e)
        {
            Cancion    albumSeleccionado = ((FrameworkElement)sender).DataContext as Cancion;
            CancionDAO cancionDAO        = new CancionDAO(Artista.Token);

            try
            {
                bool resultado = await cancionDAO.Eliminar(albumSeleccionado.Id);

                CargarDatos();
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
            }
        }
        private async void ButtonReproducir_Click(object sender, RoutedEventArgs e)
        {
            Album          albumSeleccionado = ((FrameworkElement)sender).DataContext as Album;
            CancionDAO     cancionDAO        = new CancionDAO(Token);
            List <Cancion> cancionesDeAlbum;

            try
            {
                cancionesDeAlbum = await cancionDAO.CargarPorIdAlbum(albumSeleccionado.Id);
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                return;
            }
            ControladorDeReproduccion.AsignarCanciones(cancionesDeAlbum);
        }
        private async void CargarDatos()
        {
            try
            {
                CancionDAO cancionDAO = new CancionDAO(Artista.Token);
                AlbumDAO   albumDAO   = new AlbumDAO(Artista.Token);
                AlbumesCargados = await albumDAO.CargarPorIdArtista(Artista.Id);

                CancionesPrivadas = await cancionDAO.CargarPrivadasPorIdArtista(Artista.Id);
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
            }

            if (AlbumesCargados.Count == 1 && AlbumesCargados[0].Id == 0)
            {
                DataGridListaDeAlbumes.Visibility = Visibility.Collapsed;
                LabelNoHayAlbumes.Visibility      = Visibility.Visible;
            }
            else
            {
                DataGridListaDeAlbumes.Visibility = Visibility.Visible;
                LabelNoHayAlbumes.Visibility      = Visibility.Collapsed;
            }

            if (CancionesPrivadas.Count == 1 && CancionesPrivadas[0].Id == 0)
            {
                DataGridListaDeCancionesSinAlbum.Visibility = Visibility.Collapsed;
                LabelNoHayCancionesPrivadas.Visibility      = Visibility.Visible;
            }
            else
            {
                DataGridListaDeCancionesSinAlbum.Visibility = Visibility.Visible;
                LabelNoHayCancionesPrivadas.Visibility      = Visibility.Collapsed;
            }
            DataGridListaDeAlbumes.ItemsSource           = AlbumesCargados;
            DataGridListaDeCancionesSinAlbum.ItemsSource = CancionesPrivadas;
            if (DataGridListaDeAlbumes.Items.Count > 0)
            {
                DataGridListaDeAlbumes.SelectedItem = DataGridListaDeAlbumes.Items[0];
            }
        }
Esempio n. 20
0
 private void ButtonDescargar_Click(object sender, RoutedEventArgs e)
 {
     if (ModoConectado)
     {
         Cancion             cancionSeleccionada = ((FrameworkElement)sender).DataContext as Cancion;
         ServiciosDeDescarga serviciosDeDescarga = new ServiciosDeDescarga();
         try
         {
             serviciosDeDescarga.DescargarAudioDeCancion(cancionSeleccionada.Id, Token);
             serviciosDeDescarga.DescargarCaratulaDeCancion(cancionSeleccionada.Id, Token);
             serviciosDeDescarga.DescargarInformacionDeCancion(cancionSeleccionada.Id, Token);
         }
         catch (Exception ex)
         {
             MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
             MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
             return;
         }
         ActualizarLista();
     }
 }
Esempio n. 21
0
        private async void ButtonAñadirACola_Click(object sender, RoutedEventArgs e)
        {
            Playlist       playlistSeleccionada = ((FrameworkElement)sender).DataContext as Playlist;
            CancionDAO     cancionDAO           = new CancionDAO(Token);
            List <Cancion> cancionesDePlaylist;

            try
            {
                cancionesDePlaylist = await cancionDAO.CargarPorIdPlaylist(playlistSeleccionada.Id);
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                return;
            }
            foreach (Cancion cancion in cancionesDePlaylist)
            {
                ControladorDeReproduccion.AgregarCancionAlFinal(cancion);
            }
        }
        private async void ButtonEliminarAlbum_Click(object sender, RoutedEventArgs e)
        {
            if ((DataGridListaDeCancionesEnAlbum.Items[0] as Cancion).Id == 0 && DataGridListaDeCancionesEnAlbum.Items.Count == 1)
            {
                Album    albumSeleccionado = ((FrameworkElement)sender).DataContext as Album;
                AlbumDAO albumDAO          = new AlbumDAO(Artista.Token);
                try
                {
                    bool resultado = await albumDAO.Eliminar(albumSeleccionado.Id);

                    CargarDatos();
                }
                catch (Exception ex)
                {
                    MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                    MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                }
            }
            else
            {
                MessageBox.Show("Vacie el album de canciones e intentelo nuevamente", "No puede eliminar un álbum vacio");
            }
        }
Esempio n. 23
0
        private async void ButtonIniciarSesion_Click(object sender, RoutedEventArgs e)
        {
            Usuario usuario = new Usuario()
            {
                CorreoElectronico = TextBoxNombreDeUsuario.Text,
                Contrasena        = PasswordBoxContraseña.Password
            };
            UsuarioDAO usuarioDAO = new UsuarioDAO();
            RespuestaDeAutenticacion respuesta = new RespuestaDeAutenticacion();

            try
            {
                respuesta = await usuarioDAO.ValidarUsuario(usuario);
            }
            catch (Exception ex)
            {
                MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                usuario.Id = int.Parse(ConfigurationManager.AppSettings["IdUltimoUsuario"]);
                if (usuario.Id != 0)
                {
                    MessageBoxResult resultadoDeMessageBox = MessageBox.Show("Puede inciar sesion como el ultimo usuario que se conecto, sin embargo solo tendra acceso a sus canciones descargadas.\n ¿Desea iniciar sesion de esta forma?", "Aviso", MessageBoxButton.YesNo);
                    if (resultadoDeMessageBox == MessageBoxResult.Yes)
                    {
                        Consumidor.PantallaPrincipalDeConsumidor pantallaPrincipalDeConsumidor = new Consumidor.PantallaPrincipalDeConsumidor(usuario, Controlador, false);
                        Controlador.CambiarANuevaPage(pantallaPrincipalDeConsumidor);
                    }
                    return;
                }
            }

            if (respuesta.Response)
            {
                usuario.Token         = respuesta.Token;
                usuario.TipoDeUsuario = respuesta.TipoDeUsuario;
                usuario.Id            = respuesta.IdUsuario;

                if (respuesta.TipoDeUsuario == TipoDeUsuario.Consumidor)
                {
                    Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                    config.AppSettings.Settings["IdUltimoUsuario"].Value = usuario.Id.ToString();
                    config.Save(ConfigurationSaveMode.Modified);
                    ConfigurationManager.RefreshSection("appSettings");
                    Consumidor.PantallaPrincipalDeConsumidor pantallaPrincipalDeConsumidor = new Consumidor.PantallaPrincipalDeConsumidor(usuario, Controlador, true);
                    Controlador.CambiarANuevaPage(pantallaPrincipalDeConsumidor);
                }
                else if (respuesta.TipoDeUsuario == TipoDeUsuario.Artista)
                {
                    PaginasDeArtista.PantallaPrincipalDeArtista pantallaPrincipalDeArtista = new PaginasDeArtista.PantallaPrincipalDeArtista(usuario, Controlador);
                    Controlador.CambiarANuevaPage(pantallaPrincipalDeArtista);
                }
                else
                {
                    MessageBox.Show("Error, usuario indefinido" + respuesta.Token + " " + respuesta.IdUsuario);
                }
            }
            else
            {
                MessageBox.Show("Correo electronico o contraseña invalidos");
            }
        }
Esempio n. 24
0
 private async void ButtonGuardar_Click(object sender, RoutedEventArgs e)
 {
     if (ComboBoxTipoDeUsuario.SelectedIndex >= 0)
     {
         if (ComboBoxTipoDeUsuario.SelectedIndex == 0)
         {
             if (ValidarDatosDeConsumidor())
             {
                 UsuarioDAO usuarioDAO        = new UsuarioDAO();
                 Artista    usuarioARegistrar = new Artista
                 {
                     NombreDeusuario   = TextBoxNombreDeUsuario.Text,
                     CorreoElectronico = TextBoxCorreo.Text,
                     Contrasena        = PasswordBoxContraseña.Password,
                     TipoDeUsuario     = TipoDeUsuario.Consumidor,
                     Nombre            = string.Empty,
                     Descripcion       = string.Empty
                 };
                 bool resultado = false;
                 try
                 {
                     resultado = await usuarioDAO.RegistrarUsuario(usuarioARegistrar);
                 }
                 catch (Exception ex)
                 {
                     MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                     MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                 }
                 if (resultado)
                 {
                     MessageBox.Show("Registro exitoso", "¡Exito!");
                 }
                 Controlador.Regresar();
             }
         }
         else if (ComboBoxTipoDeUsuario.SelectedIndex == 1)
         {
             if (ValidarDatosDeArtista())
             {
                 UsuarioDAO usuarioDAO        = new UsuarioDAO();
                 Artista    usuarioARegistrar = new Artista
                 {
                     NombreDeusuario   = TextBoxNombreDeUsuario.Text,
                     CorreoElectronico = TextBoxCorreo.Text,
                     Contrasena        = PasswordBoxContraseña.Password,
                     TipoDeUsuario     = TipoDeUsuario.Artista,
                     Nombre            = TextBoxNombreArtista.Text,
                     Descripcion       = TextBlockDescripcionArtista.Text
                 };
                 bool resultado = false;
                 try
                 {
                     resultado = await usuarioDAO.RegistrarUsuario(usuarioARegistrar);
                 }
                 catch (Exception ex)
                 {
                     MensajeDeErrorParaMessageBox mensaje = EncadenadorDeExcepciones.ManejarExcepcion(ex);
                     MessageBox.Show(mensaje.Mensaje, mensaje.Titulo);
                 }
                 if (resultado)
                 {
                     MessageBox.Show("Registro exitoso", "¡Exito!");
                 }
                 Controlador.Regresar();
             }
         }
     }
 }