diff --git a/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccion.java b/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccion.java index 02feb82fbfe8efa394ebb435b6447584990ed802..da802ad74ee8f34832dc9c0f5b7b0cbb02ac2e92 100644 --- a/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccion.java +++ b/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccion.java @@ -32,7 +32,8 @@ public class frmConsultaListaDeReproduccion extends javax.swing.JDialog { lstUsuarios.setModel(modeloUsuario); } catch (Exception e) { - JOptionPane.showMessageDialog(null, "Ha ocurrido un error", "Error", JOptionPane.ERROR_MESSAGE); + JOptionPane.showMessageDialog(null, "Ha ocurrido un error\n" + e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE); + dispose(); } } @@ -247,7 +248,8 @@ public class frmConsultaListaDeReproduccion extends javax.swing.JDialog { lstVideos.setModel(modelo); } catch (Exception e) { - JOptionPane.showMessageDialog(null, "Ha ocurrido un error", "Error", JOptionPane.ERROR_MESSAGE); + JOptionPane.showMessageDialog(null, "Ha ocurrido un error\n" + e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE); + dispose(); } }//GEN-LAST:event_lstListasRepValueChanged diff --git a/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccionEliminada.form b/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccionEliminada.form new file mode 100644 index 0000000000000000000000000000000000000000..74ed9c1302a20b7cf15d6fc7f299d00fb5913d44 --- /dev/null +++ b/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccionEliminada.form @@ -0,0 +1,181 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JDialogFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="2"/> + <Property name="title" type="java.lang.String" value="Consultar lista de reproduccion"/> + <Property name="resizable" type="boolean" value="false"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="false"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + </AuxValues> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="jPanel20" min="-2" pref="333" max="-2" attributes="0"/> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="jPanel20" min="-2" pref="450" max="-2" attributes="0"/> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel20"> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JButton" name="btnAceptar"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Tahoma" size="20" style="0"/> + </Property> + <Property name="text" type="java.lang.String" value="Aceptar"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnAceptarMouseClicked"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="370" width="290" height="60"/> + </Constraint> + </Constraints> + </Component> + <Container class="javax.swing.JScrollPane" name="jScrollPane38"> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="140" width="290" height="210"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JList" name="lstVideos"> + <Properties> + <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.editors2.ListModelEditor"> + <StringArray count="0"/> + </Property> + <Property name="toolTipText" type="java.lang.String" value="Doble clic para ver mas informacion de video"/> + </Properties> + <AuxValues> + <AuxValue name="JavaCodeGenerator_TypeParameters" type="java.lang.String" value="<String>"/> + </AuxValues> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JLabel" name="jLabel108"> + <Properties> + <Property name="text" type="java.lang.String" value="Categoría:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel109"> + <Properties> + <Property name="text" type="java.lang.String" value="Privacidad:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="60" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel110"> + <Properties> + <Property name="text" type="java.lang.String" value="Nombre:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel111"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Tahoma" size="14" style="0"/> + </Property> + <Property name="text" type="java.lang.String" value="Videos de la lista:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="110" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbTipo"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="90" y="40" width="210" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbCategoria"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="90" y="80" width="210" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbPrivacidad"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="90" y="60" width="210" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel112"> + <Properties> + <Property name="text" type="java.lang.String" value="Tipo:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="40" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbNombre"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="90" y="20" width="210" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccionEliminada.java b/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccionEliminada.java new file mode 100644 index 0000000000000000000000000000000000000000..9e98ff9d5fadee327819a2a98d721a52b7f78da5 --- /dev/null +++ b/UyTube_aplicacion/src/Presentacion/ListaDeReproduccion/frmConsultaListaDeReproduccionEliminada.java @@ -0,0 +1,151 @@ +package Presentacion.ListaDeReproduccion; + +import Logica.DataType.*; +import Logica.Enumerados.TipoListaDeReproduccion; +import Logica.Enumerados.TipoValoracion; +import Logica.Fabrica; +import Logica.Interfaces.IAdmin; +import Presentacion.Video.frmConsultaVideo; +import java.util.ArrayList; +import javax.swing.DefaultListModel; +import javax.swing.JOptionPane; + +public class frmConsultaListaDeReproduccionEliminada extends javax.swing.JDialog { + + Fabrica f = Fabrica.getInstancia(); + IAdmin Sys = f.getIAdmin(); + ArrayList<DtVideo> Listavideos; + + public frmConsultaListaDeReproduccionEliminada(javax.swing.JDialog parent, boolean modal, int idLista) { + super(parent, modal); + initComponents(); + this.setLocationRelativeTo(null); + + try { + // obtiene los datos de la lista a mostrar + DtListaDeReproduccion dtLista = Sys.seleccionarListaDeReproduccion(idLista); + ArrayList<DtVideo> listaVideos = Sys.listarVideosDeListaDeReproduccion(); + + // Lista los videos que contiene la lista de reproduccion + DefaultListModel modeloUsuario = new DefaultListModel(); + for (DtVideo it : listaVideos) { + modeloUsuario.addElement(it.getNombre()); + } + lstVideos.setModel(modeloUsuario); + + // carga los datos de la lista en los labels + lbNombre.setText(dtLista.getNombre()); + lbCategoria.setText(dtLista.getCategoria()); + lbPrivacidad.setText(dtLista.getPrivacidad().toString()); + if (dtLista.getTipo() == TipoListaDeReproduccion.POR_DEFECTO) { + lbTipo.setText("POR DEFECTO"); + } + if (dtLista.getTipo() == TipoListaDeReproduccion.PARTICULAR) { + lbTipo.setText("PARTICULAR"); + } + } catch (Exception e) { + JOptionPane.showMessageDialog(null, "Ha ocurrido un error\n" + e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE); + dispose(); + } + + } + + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + jPanel20 = new javax.swing.JPanel(); + btnAceptar = new javax.swing.JButton(); + jScrollPane38 = new javax.swing.JScrollPane(); + lstVideos = new javax.swing.JList<>(); + jLabel108 = new javax.swing.JLabel(); + jLabel109 = new javax.swing.JLabel(); + jLabel110 = new javax.swing.JLabel(); + jLabel111 = new javax.swing.JLabel(); + lbTipo = new javax.swing.JLabel(); + lbCategoria = new javax.swing.JLabel(); + lbPrivacidad = new javax.swing.JLabel(); + jLabel112 = new javax.swing.JLabel(); + lbNombre = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); + setTitle("Consultar lista de reproduccion"); + setResizable(false); + + jPanel20.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnAceptar.setFont(new java.awt.Font("Tahoma", 0, 20)); // NOI18N + btnAceptar.setText("Aceptar"); + btnAceptar.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnAceptarMouseClicked(evt); + } + }); + jPanel20.add(btnAceptar, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 370, 290, 60)); + + lstVideos.setToolTipText("Doble clic para ver mas informacion de video"); + jScrollPane38.setViewportView(lstVideos); + + jPanel20.add(jScrollPane38, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 140, 290, 210)); + + jLabel108.setText("CategorÃa:"); + jPanel20.add(jLabel108, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 80, -1, -1)); + + jLabel109.setText("Privacidad:"); + jPanel20.add(jLabel109, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 60, -1, -1)); + + jLabel110.setText("Nombre:"); + jPanel20.add(jLabel110, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 20, -1, -1)); + + jLabel111.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N + jLabel111.setText("Videos de la lista:"); + jPanel20.add(jLabel111, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 110, -1, -1)); + + lbTipo.setText(" "); + jPanel20.add(lbTipo, new org.netbeans.lib.awtextra.AbsoluteConstraints(90, 40, 210, -1)); + + lbCategoria.setText(" "); + jPanel20.add(lbCategoria, new org.netbeans.lib.awtextra.AbsoluteConstraints(90, 80, 210, -1)); + + lbPrivacidad.setText(" "); + jPanel20.add(lbPrivacidad, new org.netbeans.lib.awtextra.AbsoluteConstraints(90, 60, 210, -1)); + + jLabel112.setText("Tipo:"); + jPanel20.add(jLabel112, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 40, -1, -1)); + + lbNombre.setText(" "); + jPanel20.add(lbNombre, new org.netbeans.lib.awtextra.AbsoluteConstraints(90, 20, 210, -1)); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel20, javax.swing.GroupLayout.PREFERRED_SIZE, 333, javax.swing.GroupLayout.PREFERRED_SIZE) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel20, javax.swing.GroupLayout.PREFERRED_SIZE, 450, javax.swing.GroupLayout.PREFERRED_SIZE) + ); + + pack(); + }// </editor-fold>//GEN-END:initComponents + + private void btnAceptarMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnAceptarMouseClicked + dispose(); + }//GEN-LAST:event_btnAceptarMouseClicked + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton btnAceptar; + private javax.swing.JLabel jLabel108; + private javax.swing.JLabel jLabel109; + private javax.swing.JLabel jLabel110; + private javax.swing.JLabel jLabel111; + private javax.swing.JLabel jLabel112; + private javax.swing.JPanel jPanel20; + private javax.swing.JScrollPane jScrollPane38; + private javax.swing.JLabel lbCategoria; + private javax.swing.JLabel lbNombre; + private javax.swing.JLabel lbPrivacidad; + private javax.swing.JLabel lbTipo; + private javax.swing.JList<String> lstVideos; + // End of variables declaration//GEN-END:variables +} diff --git a/UyTube_aplicacion/src/Presentacion/Usuario/frmConsultaUsuarioEliminado.java b/UyTube_aplicacion/src/Presentacion/Usuario/frmConsultaUsuarioEliminado.java index a444c18c53002bcdaceaad281523a32b00483f65..bfb489830e76fb20f4a35db4843c21063152e006 100644 --- a/UyTube_aplicacion/src/Presentacion/Usuario/frmConsultaUsuarioEliminado.java +++ b/UyTube_aplicacion/src/Presentacion/Usuario/frmConsultaUsuarioEliminado.java @@ -7,6 +7,10 @@ import Logica.DataType.DtVideo; import Logica.Enumerados.Privacidad; import Logica.Fabrica; import Logica.Interfaces.IAdmin; +import Presentacion.ListaDeReproduccion.frmConsultaListaDeReproduccion; +import Presentacion.ListaDeReproduccion.frmConsultaListaDeReproduccionEliminada; +import Presentacion.Video.frmConsultaVideo; +import Presentacion.Video.frmConsultaVideoEliminado; import java.awt.Image; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -235,7 +239,6 @@ public class frmConsultaUsuarioEliminado extends javax.swing.JDialog { listarVideos(listaDeVideos); listaDeListasRep = sys.listarListasDeReproduccionDeUsuario(nick); listarListassRep(listaDeListasRep); - sys.liberarMemoriaUsuario(); } catch (Exception e) { JOptionPane.showMessageDialog(null, "Ha ocurrido un error\n" + e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE); } @@ -251,9 +254,23 @@ public class frmConsultaUsuarioEliminado extends javax.swing.JDialog { }//GEN-LAST:event_btnAceptarActionPerformed private void lstVideosMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_lstVideosMouseClicked + // Doble clic en la lista de videos + if (evt.getClickCount() != 2) return; + if (lstVideos.getSelectedIndex()<0) return; + + int indexSeleccionado = lstVideos.getSelectedIndex(); + int idVideo = listaDeVideos.get(indexSeleccionado).getId(); + new frmConsultaVideoEliminado(this, true, idVideo).setVisible(true); }//GEN-LAST:event_lstVideosMouseClicked private void lstListaReproduccionMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_lstListaReproduccionMouseClicked + // Doble clic en la lista de Listas de reproduccion + if (evt.getClickCount() != 2) return; + if (lstListaReproduccion.getSelectedIndex()<0) return; + + int indexSeleccionado = lstListaReproduccion.getSelectedIndex(); + int idLista = listaDeListasRep.get(indexSeleccionado).getId(); + new frmConsultaListaDeReproduccionEliminada(this, true, idLista).setVisible(true); }//GEN-LAST:event_lstListaReproduccionMouseClicked diff --git a/UyTube_aplicacion/src/Presentacion/Video/frmConsultaVideoEliminado.form b/UyTube_aplicacion/src/Presentacion/Video/frmConsultaVideoEliminado.form new file mode 100644 index 0000000000000000000000000000000000000000..9044c307f0778cd294a2d537ec003d60d7efdd4d --- /dev/null +++ b/UyTube_aplicacion/src/Presentacion/Video/frmConsultaVideoEliminado.form @@ -0,0 +1,270 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.7" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JDialogFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="2"/> + <Property name="title" type="java.lang.String" value="Consultar video"/> + <Property name="resizable" type="boolean" value="false"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="false"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + </AuxValues> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <EmptySpace min="0" pref="505" max="32767" attributes="0"/> + <Group type="103" rootIndex="1" groupAlignment="0" attributes="0"> + <Component id="jPanel15" alignment="0" pref="505" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <EmptySpace min="0" pref="489" max="32767" attributes="0"/> + <Group type="103" rootIndex="1" groupAlignment="0" attributes="0"> + <Component id="jPanel15" alignment="0" pref="489" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel15"> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel83"> + <Properties> + <Property name="text" type="java.lang.String" value="Nombre:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel84"> + <Properties> + <Property name="text" type="java.lang.String" value="Duración:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="50" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel85"> + <Properties> + <Property name="text" type="java.lang.String" value="URL:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel86"> + <Properties> + <Property name="text" type="java.lang.String" value="Descripción:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="200" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Container class="javax.swing.JScrollPane" name="jScrollPane24"> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="200" width="380" height="130"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JTextArea" name="txtDescripcion"> + <Properties> + <Property name="editable" type="boolean" value="false"/> + <Property name="columns" type="int" value="20"/> + <Property name="lineWrap" type="boolean" value="true"/> + <Property name="rows" type="int" value="5"/> + </Properties> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JLabel" name="jLabel87"> + <Properties> + <Property name="text" type="java.lang.String" value="Privacidad:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="140" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel88"> + <Properties> + <Property name="text" type="java.lang.String" value="Categoría:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="170" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbNombre"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="20" width="390" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbDuracion"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="50" width="390" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbUrl"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Events> + <EventHandler event="mousePressed" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="lbUrlMousePressed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="80" width="390" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbPrivacidad"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="140" width="390" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbCategoria"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="170" width="380" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnAceptar"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Tahoma" size="24" style="0"/> + </Property> + <Property name="text" type="java.lang.String" value="Aceptar"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnAceptarActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="410" width="460" height="60"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel94"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Tahoma" size="14" style="0"/> + </Property> + <Property name="text" type="java.lang.String" value="Les gustó:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="340" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel95"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Tahoma" size="14" style="0"/> + </Property> + <Property name="text" type="java.lang.String" value="No les gustó:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="370" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbCantDisLikes"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="110" y="370" width="370" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbCantLikes"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="110" y="340" width="370" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel89"> + <Properties> + <Property name="text" type="java.lang.String" value="Publicación:"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="110" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lbFechaPublicacion"> + <Properties> + <Property name="text" type="java.lang.String" value=" "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="110" width="390" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/UyTube_aplicacion/src/Presentacion/Video/frmConsultaVideoEliminado.java b/UyTube_aplicacion/src/Presentacion/Video/frmConsultaVideoEliminado.java new file mode 100644 index 0000000000000000000000000000000000000000..da427c6b8e09b289e5c9079c478f9acbd32c6bef --- /dev/null +++ b/UyTube_aplicacion/src/Presentacion/Video/frmConsultaVideoEliminado.java @@ -0,0 +1,238 @@ + +package Presentacion.Video; + +import Logica.DataType.DtVideo; +import Logica.Fabrica; +import Logica.Interfaces.IAdmin; +import javax.swing.JOptionPane; + +public class frmConsultaVideoEliminado extends javax.swing.JDialog { + + private IAdmin sys; + private String enlace = ""; + + public frmConsultaVideoEliminado(javax.swing.JDialog parent, boolean modal, int idVideo) { + // Constructor para abrir ventana desde otro caso de uso + super(parent, modal); + initComponents(); + this.setLocationRelativeTo(null); + limpiarElementosDeVentana(); + + try { + // obtiene la instancia de sistema + sys = Fabrica.getInstancia().getIAdmin(); + + // El sistema ya tiene un usuario seleccionado + mostrarDatosDeVideo(sys.seleccionarVideo(idVideo)); + + } catch (Exception e) { + JOptionPane.showMessageDialog(null, "Ha ocurrido un error\n" + e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE); + dispose(); + } + } + + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + jPanel15 = new javax.swing.JPanel(); + jLabel83 = new javax.swing.JLabel(); + jLabel84 = new javax.swing.JLabel(); + jLabel85 = new javax.swing.JLabel(); + jLabel86 = new javax.swing.JLabel(); + jScrollPane24 = new javax.swing.JScrollPane(); + txtDescripcion = new javax.swing.JTextArea(); + jLabel87 = new javax.swing.JLabel(); + jLabel88 = new javax.swing.JLabel(); + lbNombre = new javax.swing.JLabel(); + lbDuracion = new javax.swing.JLabel(); + lbUrl = new javax.swing.JLabel(); + lbPrivacidad = new javax.swing.JLabel(); + lbCategoria = new javax.swing.JLabel(); + btnAceptar = new javax.swing.JButton(); + jLabel94 = new javax.swing.JLabel(); + jLabel95 = new javax.swing.JLabel(); + lbCantDisLikes = new javax.swing.JLabel(); + lbCantLikes = new javax.swing.JLabel(); + jLabel89 = new javax.swing.JLabel(); + lbFechaPublicacion = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); + setTitle("Consultar video"); + setResizable(false); + + jPanel15.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + jLabel83.setText("Nombre:"); + jPanel15.add(jLabel83, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 20, -1, -1)); + + jLabel84.setText("Duración:"); + jPanel15.add(jLabel84, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 50, -1, -1)); + + jLabel85.setText("URL:"); + jPanel15.add(jLabel85, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 80, -1, -1)); + + jLabel86.setText("Descripción:"); + jPanel15.add(jLabel86, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 200, -1, -1)); + + txtDescripcion.setEditable(false); + txtDescripcion.setColumns(20); + txtDescripcion.setLineWrap(true); + txtDescripcion.setRows(5); + jScrollPane24.setViewportView(txtDescripcion); + + jPanel15.add(jScrollPane24, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 200, 380, 130)); + + jLabel87.setText("Privacidad:"); + jPanel15.add(jLabel87, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 140, -1, -1)); + + jLabel88.setText("CategorÃa:"); + jPanel15.add(jLabel88, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 170, -1, -1)); + + lbNombre.setText(" "); + jPanel15.add(lbNombre, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 20, 390, -1)); + + lbDuracion.setText(" "); + jPanel15.add(lbDuracion, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 50, 390, -1)); + + lbUrl.setText(" "); + lbUrl.addMouseListener(new java.awt.event.MouseAdapter() { + public void mousePressed(java.awt.event.MouseEvent evt) { + lbUrlMousePressed(evt); + } + }); + jPanel15.add(lbUrl, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 80, 390, -1)); + + lbPrivacidad.setText(" "); + jPanel15.add(lbPrivacidad, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 140, 390, -1)); + + lbCategoria.setText(" "); + jPanel15.add(lbCategoria, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 170, 380, -1)); + + btnAceptar.setFont(new java.awt.Font("Tahoma", 0, 24)); // NOI18N + btnAceptar.setText("Aceptar"); + btnAceptar.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnAceptarActionPerformed(evt); + } + }); + jPanel15.add(btnAceptar, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 410, 460, 60)); + + jLabel94.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N + jLabel94.setText("Les gustó:"); + jPanel15.add(jLabel94, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 340, -1, -1)); + + jLabel95.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N + jLabel95.setText("No les gustó:"); + jPanel15.add(jLabel95, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 370, -1, -1)); + + lbCantDisLikes.setText(" "); + jPanel15.add(lbCantDisLikes, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 370, 370, 20)); + + lbCantLikes.setText(" "); + jPanel15.add(lbCantLikes, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 340, 370, 20)); + + jLabel89.setText("Publicación:"); + jPanel15.add(jLabel89, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 110, -1, -1)); + + lbFechaPublicacion.setText(" "); + jPanel15.add(lbFechaPublicacion, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 110, 390, -1)); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 505, Short.MAX_VALUE) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel15, javax.swing.GroupLayout.DEFAULT_SIZE, 505, Short.MAX_VALUE)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 489, Short.MAX_VALUE) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel15, javax.swing.GroupLayout.DEFAULT_SIZE, 489, Short.MAX_VALUE)) + ); + + pack(); + }// </editor-fold>//GEN-END:initComponents + + private void btnAceptarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAceptarActionPerformed + // boton aceptar + dispose(); + }//GEN-LAST:event_btnAceptarActionPerformed + + private void lbUrlMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_lbUrlMousePressed + // al cloquear sobre la URL del video + if (lbUrl.getText().isEmpty() || enlace.isEmpty()) return; + + // Fuente: + // http://www.forosdelweb.com/f45/jlabel-como-hipervinculo-netbeans-948388/ + try { + if (java.awt.Desktop.isDesktopSupported()) { + java.awt.Desktop desktop = java.awt.Desktop.getDesktop(); + if (desktop.isSupported(java.awt.Desktop.Action.BROWSE)) { + desktop.browse(new java.net.URI(enlace)); + } + } + } catch (Exception e) { + JOptionPane.showMessageDialog(null, "Ha ocurrido un error\n" + e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE); + } + }//GEN-LAST:event_lbUrlMousePressed + + /////////////////////////////////////////////////////////////////////////////////////////// + private void mostrarDatosDeVideo(DtVideo v){ + lbNombre.setText(v.getNombre()); + lbDuracion.setText(v.getDuracion().toString()); + lbUrl.setText(obtenerTextoComoEnlace(v.getUrlVideoOriginal(), v.getUrlVideoOriginal())); + enlace = v.getUrlVideoOriginal(); + lbPrivacidad.setText(v.getPrivacidad().toString()); + lbCategoria.setText(v.getCategoria()); + txtDescripcion.setText(v.getDescripcion()); + lbCantLikes.setText(String.valueOf(v.getCantLikes())); + lbCantDisLikes.setText(String.valueOf(v.getCantDisLikes())); + lbFechaPublicacion.setText(v.getFechaPublicacion().toString()); + } + private void limpiarElementosDeVentana(){ + enlace = ""; + // limpieza de labels + lbNombre.setText(""); + lbDuracion.setText(""); + lbUrl.setText(""); + lbPrivacidad.setText(""); + lbCategoria.setText(""); + txtDescripcion.setText(""); + lbCantLikes.setText(""); + lbCantDisLikes.setText(""); + lbFechaPublicacion.setText(""); + } + public String obtenerTextoComoEnlace(String enlace, String texto) { + // Extraido de + // http://www.forosdelweb.com/f45/jlabel-como-hipervinculo-netbeans-948388/ + return"<html><a href=" + '"' + enlace + '"'+ ">" + texto + "</a></html>"; + } + /////////////////////////////////////////////////////////////////////////////////////////// + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton btnAceptar; + private javax.swing.JLabel jLabel83; + private javax.swing.JLabel jLabel84; + private javax.swing.JLabel jLabel85; + private javax.swing.JLabel jLabel86; + private javax.swing.JLabel jLabel87; + private javax.swing.JLabel jLabel88; + private javax.swing.JLabel jLabel89; + private javax.swing.JLabel jLabel94; + private javax.swing.JLabel jLabel95; + private javax.swing.JPanel jPanel15; + private javax.swing.JScrollPane jScrollPane24; + private javax.swing.JLabel lbCantDisLikes; + private javax.swing.JLabel lbCantLikes; + private javax.swing.JLabel lbCategoria; + private javax.swing.JLabel lbDuracion; + private javax.swing.JLabel lbFechaPublicacion; + private javax.swing.JLabel lbNombre; + private javax.swing.JLabel lbPrivacidad; + private javax.swing.JLabel lbUrl; + private javax.swing.JTextArea txtDescripcion; + // End of variables declaration//GEN-END:variables +}