diff --git a/UyTube_aplicacion/src/Presentacion/Usuario/frmModificarUsuario.form b/UyTube_aplicacion/src/Presentacion/Usuario/frmModificarUsuario.form index ed433b8eceb5df6ea53aec63a6e57cf6bfa34af1..ef5d5bd1005291ae04f15a4620411e578f6559cb 100644 --- a/UyTube_aplicacion/src/Presentacion/Usuario/frmModificarUsuario.form +++ b/UyTube_aplicacion/src/Presentacion/Usuario/frmModificarUsuario.form @@ -179,7 +179,7 @@ <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> <Font name="Tahoma" size="14" style="1"/> </Property> - <Property name="text" type="java.lang.String" value="Seleccionar"/> + <Property name="text" type="java.lang.String" value="Seleccionar imagen"/> <Property name="toolTipText" type="java.lang.String" value=""/> <Property name="cursor" type="java.awt.Cursor" editor="org.netbeans.modules.form.editors2.CursorEditor"> <Color id="Cursor Por defecto"/> @@ -190,7 +190,7 @@ </Events> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="480" y="450" width="120" height="60"/> + <AbsoluteConstraints x="450" y="370" width="170" height="50"/> </Constraint> </Constraints> </Component> @@ -267,9 +267,9 @@ <Component class="javax.swing.JButton" name="btnListaReprodiccion"> <Properties> <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> - <Font name="Tahoma" size="24" style="0"/> + <Font name="Tahoma" size="14" style="0"/> </Property> - <Property name="text" type="java.lang.String" value="Lista de reproduccion"/> + <Property name="text" type="java.lang.String" value="Modificar lista de reproducción"/> </Properties> <Events> <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnListaReprodiccionActionPerformed"/> @@ -283,9 +283,9 @@ <Component class="javax.swing.JButton" name="btnVideo"> <Properties> <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> - <Font name="Tahoma" size="24" style="0"/> + <Font name="Tahoma" size="14" style="0"/> </Property> - <Property name="text" type="java.lang.String" value="Video"/> + <Property name="text" type="java.lang.String" value="Modificar video"/> </Properties> <Events> <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnVideoActionPerformed"/> @@ -322,7 +322,7 @@ </Properties> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="330" y="430" width="140" height="110"/> + <AbsoluteConstraints x="330" y="370" width="110" height="110"/> </Constraint> </Constraints> @@ -333,7 +333,7 @@ <Component class="javax.swing.JLabel" name="lbImg"> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="0" y="0" width="140" height="110"/> + <AbsoluteConstraints x="5" y="5" width="100" height="100"/> </Constraint> </Constraints> </Component> @@ -346,40 +346,17 @@ </Constraint> </Constraints> </Component> - <Component class="javax.swing.JLabel" name="lbOpcional"> - <Properties> - <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> - <Font name="Tahoma" size="18" style="0"/> - </Property> - <Property name="text" type="java.lang.String" value="Opcional *"/> - </Properties> - <Constraints> - <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="480" y="520" width="-1" height="-1"/> - </Constraint> - </Constraints> - </Component> - <Component class="javax.swing.JLabel" name="lbImagen"> - <Constraints> - <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="340" y="420" width="140" height="110"/> - </Constraint> - </Constraints> - </Component> <Component class="javax.swing.JTextField" name="txtContraNueva1"> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="470" y="340" width="160" height="-1"/> + <AbsoluteConstraints x="470" y="300" width="160" height="-1"/> </Constraint> </Constraints> </Component> <Component class="javax.swing.JTextField" name="txtContraNueva"> - <Events> - <EventHandler event="keyTyped" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txtContraNuevaKeyTyped"/> - </Events> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="470" y="310" width="160" height="-1"/> + <AbsoluteConstraints x="470" y="270" width="160" height="-1"/> </Constraint> </Constraints> </Component> @@ -406,7 +383,7 @@ </Properties> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="330" y="340" width="-1" height="-1"/> + <AbsoluteConstraints x="330" y="300" width="-1" height="-1"/> </Constraint> </Constraints> </Component> @@ -416,7 +393,7 @@ </Properties> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="330" y="310" width="-1" height="-1"/> + <AbsoluteConstraints x="330" y="270" width="-1" height="-1"/> </Constraint> </Constraints> </Component> @@ -426,7 +403,7 @@ </Properties> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="330" y="200" width="-1" height="-1"/> + <AbsoluteConstraints x="330" y="180" width="-1" height="-1"/> </Constraint> </Constraints> </Component> @@ -439,7 +416,7 @@ </Events> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="330" y="260" width="-1" height="-1"/> + <AbsoluteConstraints x="330" y="230" width="-1" height="-1"/> </Constraint> </Constraints> </Component> @@ -471,18 +448,38 @@ </Component> <Component class="javax.swing.JLabel" name="lbImagen1"> <Properties> - <Property name="text" type="java.lang.String" value="Imagen"/> + <Property name="text" type="java.lang.String" value="Imagen (opcional)"/> </Properties> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="360" y="400" width="-1" height="20"/> + <AbsoluteConstraints x="330" y="340" width="-1" height="20"/> </Constraint> </Constraints> </Component> <Component class="com.toedter.calendar.JDateChooser" name="dcFecha"> <Constraints> <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> - <AbsoluteConstraints x="450" y="200" width="170" height="-1"/> + <AbsoluteConstraints x="450" y="180" width="170" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnQuitarImagen"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Tahoma" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Quitar imagen"/> + <Property name="toolTipText" type="java.lang.String" value=""/> + <Property name="cursor" type="java.awt.Cursor" editor="org.netbeans.modules.form.editors2.CursorEditor"> + <Color id="Cursor Por defecto"/> + </Property> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnQuitarImagenActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="450" y="430" width="170" height="50"/> </Constraint> </Constraints> </Component> diff --git a/UyTube_aplicacion/src/Presentacion/Usuario/frmModificarUsuario.java b/UyTube_aplicacion/src/Presentacion/Usuario/frmModificarUsuario.java index 8f12c4802e21763457a2ffd1fd06f21d2c6d46f8..ad75ef0c568adea7fd85d784c1ee0b523f72cdcc 100644 --- a/UyTube_aplicacion/src/Presentacion/Usuario/frmModificarUsuario.java +++ b/UyTube_aplicacion/src/Presentacion/Usuario/frmModificarUsuario.java @@ -7,14 +7,11 @@ import Logica.Fabrica; import Logica.Interfaces.IAdmin; import Presentacion.ListaDeReproduccion.frmModificarListaDeReproduccion; import Presentacion.Video.frmModificarVideo; -import Presentacion.Video.frmValorarVideo; -import Presentacion.frmPrincipal; -import com.sun.org.apache.bcel.internal.generic.Select; import java.awt.Image; import java.io.File; -import java.sql.Date; -import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.regex.Matcher; +import java.util.regex.Pattern; import javax.swing.DefaultListModel; import javax.swing.ImageIcon; import javax.swing.JFileChooser; @@ -22,10 +19,11 @@ import javax.swing.JOptionPane; import javax.swing.filechooser.FileNameExtensionFilter; public class frmModificarUsuario extends javax.swing.JDialog { - + IAdmin sys; DtUsuario user; String ruta; + public frmModificarUsuario(java.awt.Frame parent, boolean modal) { super(parent, modal); initComponents(); @@ -37,7 +35,7 @@ public class frmModificarUsuario extends javax.swing.JDialog { btnVideo.setEnabled(false); btnListaReprodiccion.setEnabled(false); desactivarCampos(); - try { + try { // obtiene la instancia de sistema sys = Fabrica.getInstancia().getIAdmin(); @@ -46,7 +44,7 @@ public class frmModificarUsuario extends javax.swing.JDialog { } catch (Exception e) { JOptionPane.showMessageDialog(null, "Ha ocurrido un error", "Error", JOptionPane.ERROR_MESSAGE); } - + } @SuppressWarnings("unchecked") @@ -79,8 +77,6 @@ public class frmModificarUsuario extends javax.swing.JDialog { jpImagen = new javax.swing.JPanel(); lbImg = new javax.swing.JLabel(); jSeparator6 = new javax.swing.JSeparator(); - lbOpcional = new javax.swing.JLabel(); - lbImagen = new javax.swing.JLabel(); txtContraNueva1 = new javax.swing.JTextField(); txtContraNueva = new javax.swing.JTextField(); txtApellido = new javax.swing.JTextField(); @@ -93,6 +89,7 @@ public class frmModificarUsuario extends javax.swing.JDialog { rbPrivado = new javax.swing.JRadioButton(); lbImagen1 = new javax.swing.JLabel(); dcFecha = new com.toedter.calendar.JDateChooser(); + btnQuitarImagen = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setTitle("Modificar usuario"); @@ -139,7 +136,7 @@ public class frmModificarUsuario extends javax.swing.JDialog { lbMes.add(btnModificar, new org.netbeans.lib.awtextra.AbsoluteConstraints(670, 490, 270, 50)); btnSeleccionar.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N - btnSeleccionar.setText("Seleccionar"); + btnSeleccionar.setText("Seleccionar imagen"); btnSeleccionar.setToolTipText(""); btnSeleccionar.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR)); btnSeleccionar.addActionListener(new java.awt.event.ActionListener() { @@ -147,7 +144,7 @@ public class frmModificarUsuario extends javax.swing.JDialog { btnSeleccionarActionPerformed(evt); } }); - lbMes.add(btnSeleccionar, new org.netbeans.lib.awtextra.AbsoluteConstraints(480, 450, 120, 60)); + lbMes.add(btnSeleccionar, new org.netbeans.lib.awtextra.AbsoluteConstraints(450, 370, 170, 50)); jSeparator10.setOrientation(javax.swing.SwingConstants.VERTICAL); lbMes.add(jSeparator10, new org.netbeans.lib.awtextra.AbsoluteConstraints(640, 0, 10, 560)); @@ -169,8 +166,8 @@ public class frmModificarUsuario extends javax.swing.JDialog { lbMes.add(jScrollPane51, new org.netbeans.lib.awtextra.AbsoluteConstraints(740, 100, 200, 160)); - btnListaReprodiccion.setFont(new java.awt.Font("Tahoma", 0, 24)); // NOI18N - btnListaReprodiccion.setText("Lista de reproduccion"); + btnListaReprodiccion.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N + btnListaReprodiccion.setText("Modificar lista de reproducción"); btnListaReprodiccion.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnListaReprodiccionActionPerformed(evt); @@ -178,8 +175,8 @@ public class frmModificarUsuario extends javax.swing.JDialog { }); lbMes.add(btnListaReprodiccion, new org.netbeans.lib.awtextra.AbsoluteConstraints(670, 340, 270, 50)); - btnVideo.setFont(new java.awt.Font("Tahoma", 0, 24)); // NOI18N - btnVideo.setText("Video"); + btnVideo.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N + btnVideo.setText("Modificar video"); btnVideo.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btnVideoActionPerformed(evt); @@ -198,36 +195,25 @@ public class frmModificarUsuario extends javax.swing.JDialog { jpImagen.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); jpImagen.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); - jpImagen.add(lbImg, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 140, 110)); + jpImagen.add(lbImg, new org.netbeans.lib.awtextra.AbsoluteConstraints(5, 5, 100, 100)); - lbMes.add(jpImagen, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 430, 140, 110)); + lbMes.add(jpImagen, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 370, 110, 110)); lbMes.add(jSeparator6, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 40, 650, 20)); - - lbOpcional.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N - lbOpcional.setText("Opcional *"); - lbMes.add(lbOpcional, new org.netbeans.lib.awtextra.AbsoluteConstraints(480, 520, -1, -1)); - lbMes.add(lbImagen, new org.netbeans.lib.awtextra.AbsoluteConstraints(340, 420, 140, 110)); - lbMes.add(txtContraNueva1, new org.netbeans.lib.awtextra.AbsoluteConstraints(470, 340, 160, -1)); - - txtContraNueva.addKeyListener(new java.awt.event.KeyAdapter() { - public void keyTyped(java.awt.event.KeyEvent evt) { - txtContraNuevaKeyTyped(evt); - } - }); - lbMes.add(txtContraNueva, new org.netbeans.lib.awtextra.AbsoluteConstraints(470, 310, 160, -1)); + lbMes.add(txtContraNueva1, new org.netbeans.lib.awtextra.AbsoluteConstraints(470, 300, 160, -1)); + lbMes.add(txtContraNueva, new org.netbeans.lib.awtextra.AbsoluteConstraints(470, 270, 160, -1)); lbMes.add(txtApellido, new org.netbeans.lib.awtextra.AbsoluteConstraints(390, 100, 230, -1)); lbApellido.setText("Apellido"); lbMes.add(lbApellido, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 100, -1, -1)); lbRCN.setText("Repita contraseña"); - lbMes.add(lbRCN, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 340, -1, -1)); + lbMes.add(lbRCN, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 300, -1, -1)); lbCN.setText("Contraseña nueva"); - lbMes.add(lbCN, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 310, -1, -1)); + lbMes.add(lbCN, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 270, -1, -1)); lbFecha.setText("Fecha de Nac."); - lbMes.add(lbFecha, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 200, -1, -1)); + lbMes.add(lbFecha, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 180, -1, -1)); chkCambiarContra.setText("Cambiar contraseña"); chkCambiarContra.addActionListener(new java.awt.event.ActionListener() { @@ -235,7 +221,7 @@ public class frmModificarUsuario extends javax.swing.JDialog { chkCambiarContraActionPerformed(evt); } }); - lbMes.add(chkCambiarContra, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 260, -1, -1)); + lbMes.add(chkCambiarContra, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 230, -1, -1)); grpPrivacidad.add(rbPublico); rbPublico.setText("Publico"); @@ -245,9 +231,20 @@ public class frmModificarUsuario extends javax.swing.JDialog { rbPrivado.setText("Privado"); lbMes.add(rbPrivado, new org.netbeans.lib.awtextra.AbsoluteConstraints(840, 270, -1, -1)); - lbImagen1.setText("Imagen"); - lbMes.add(lbImagen1, new org.netbeans.lib.awtextra.AbsoluteConstraints(360, 400, -1, 20)); - lbMes.add(dcFecha, new org.netbeans.lib.awtextra.AbsoluteConstraints(450, 200, 170, -1)); + lbImagen1.setText("Imagen (opcional)"); + lbMes.add(lbImagen1, new org.netbeans.lib.awtextra.AbsoluteConstraints(330, 340, -1, 20)); + lbMes.add(dcFecha, new org.netbeans.lib.awtextra.AbsoluteConstraints(450, 180, 170, 20)); + + btnQuitarImagen.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N + btnQuitarImagen.setText("Quitar imagen"); + btnQuitarImagen.setToolTipText(""); + btnQuitarImagen.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR)); + btnQuitarImagen.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnQuitarImagenActionPerformed(evt); + } + }); + lbMes.add(btnQuitarImagen, new org.netbeans.lib.awtextra.AbsoluteConstraints(450, 430, 170, 50)); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); @@ -272,15 +269,16 @@ public class frmModificarUsuario extends javax.swing.JDialog { pack(); }// </editor-fold>//GEN-END:initComponents - private void listarUsuarios(ArrayList<DtUsuario> ListaUsuarios){ + private void listarUsuarios(ArrayList<DtUsuario> ListaUsuarios) { DefaultListModel modelo = new DefaultListModel(); for (DtUsuario it : ListaUsuarios) { modelo.addElement(it.getNickname()); } lstUsuarios.setModel(modelo); - + } - private void desactivarCampos(){ + + private void desactivarCampos() { txtNombre.setEnabled(false); txtContraNueva.setEnabled(false); txtContraNueva1.setEnabled(false); @@ -296,20 +294,19 @@ public class frmModificarUsuario extends javax.swing.JDialog { lbCorreo.setEnabled(false); lbDescripcion.setEnabled(false); lbFecha.setEnabled(false); - lbOpcional.setEnabled(false); chkCambiarContra.setEnabled(false); rbPublico.setEnabled(false); rbPrivado.setEnabled(false); btnModificar.setEnabled(false); btnSeleccionar.setEnabled(false); + btnQuitarImagen.setEnabled(false); txtDescrpcion.setEnabled(false); - - - + } - private void activarCampos(){ - - txtNombre.setEnabled(true); + + private void activarCampos() { + + txtNombre.setEnabled(true); txtDescrpcion.setEnabled(true); txtNombreCanal.setEnabled(true); txtApellido.setEnabled(true); @@ -322,37 +319,37 @@ public class frmModificarUsuario extends javax.swing.JDialog { lbCorreo.setEnabled(true); lbDescripcion.setEnabled(true); lbFecha.setEnabled(true); - lbOpcional.setEnabled(true); chkCambiarContra.setEnabled(true); rbPublico.setEnabled(true); rbPrivado.setEnabled(true); btnModificar.setEnabled(true); btnSeleccionar.setEnabled(true); + btnQuitarImagen.setEnabled(true); txtDescrpcion.setEnabled(true); } - - private String seleccionarImagen() { + + private String seleccionarImagen() { // Crea un JFileChooser JFileChooser JFC = new JFileChooser(); // crea un filtro para aceptar solo algunas extensiones FileNameExtensionFilter filtroImagen = new FileNameExtensionFilter("JPG, PNG", "jpg", "png"); // Agrega el filtro al JFileChooser JFC.setFileFilter(filtroImagen); - + // archivo seleccionado File archivo; // para saber si se selecciono algo o se cancelo int resultado; - + while (true) { // muestra el JFileChooser resultado = JFC.showOpenDialog(this); - + // Si pasa algo que no sea el aceptar - if (resultado != JFileChooser.APPROVE_OPTION){ + if (resultado != JFileChooser.APPROVE_OPTION) { return ""; } - + // obtiene el archivo seleccionado archivo = JFC.getSelectedFile(); @@ -362,7 +359,7 @@ public class frmModificarUsuario extends javax.swing.JDialog { String rutaArchivo = archivo.getAbsolutePath(); // obtiene el archivo como imagen a partir de la ruta Image img = new ImageIcon(rutaArchivo).getImage(); - + // verifica que tanto se deformará la imagen al mostrarla en un cuadrado float deformacion; if (img.getHeight(null) > img.getWidth(null)) { @@ -370,7 +367,7 @@ public class frmModificarUsuario extends javax.swing.JDialog { } else { deformacion = img.getWidth(null) / img.getHeight(null); } - + if (deformacion < 1.3 && deformacion >= 1) { // si no se deforma demasiado // devuelve la ruta absoluta @@ -389,8 +386,8 @@ public class frmModificarUsuario extends javax.swing.JDialog { } } } - - private void cargarImagenEnJlabel(javax.swing.JLabel jLabelx, String Ruta){ + + private void cargarImagenEnJlabel(javax.swing.JLabel jLabelx, String Ruta) { jLabelx.setText(null); // Carga la imagen a la variable de tipo Image Image img = new ImageIcon(Ruta).getImage(); @@ -401,66 +398,81 @@ public class frmModificarUsuario extends javax.swing.JDialog { // establece la imagen en el label jLabelx.setIcon(icono); } - - + + private boolean validarNombres(String _nombre) { + Pattern patronNombres = Pattern.compile("^([A-Za-zÑñÁáÉéÍíÓóÚú]+)\\s*([A-Za-zÑñÁáÉéÍíÓóÚú]+)\\s*([A-Za-zÑñÁáÉéÍíÓóÚú]+)$"); + Matcher mather = patronNombres.matcher(_nombre); + if (mather.find() == true) { + return true; + } + return false; + } + private void btnModificarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnModificarActionPerformed try { - - - if(lstUsuarios.isSelectionEmpty()){ - JOptionPane.showMessageDialog(null, "Seleccione un usuario para modificar", "Error", JOptionPane.WARNING_MESSAGE); - - }else{ - if(txtNombre.getText().isEmpty()){ - JOptionPane.showMessageDialog(null, "El campo nombre no puede quedar vacío", "Error", JOptionPane.WARNING_MESSAGE); - - }else{ - if(txtApellido.getText().isEmpty()){ - JOptionPane.showMessageDialog(null, "El campo apellido no puede quedar vacío", "Error", JOptionPane.WARNING_MESSAGE); - - }else{ - if(txtNombreCanal.getText().isEmpty()){ - JOptionPane.showMessageDialog(null, "El campo nombre de canal no puede quedar vacío", "Error", JOptionPane.WARNING_MESSAGE); - - }else{ - - - String pass = user.getContrasenia(); - if (chkCambiarContra.isSelected()) { - - if (!(txtContraNueva.getText().equals("") && txtContraNueva1.getText().equals(""))) { - - if (txtContraNueva.getText().equals(txtContraNueva1.getText())) { - pass = txtContraNueva.getText(); - } else { - JOptionPane.showMessageDialog(null, "Las contraseñas no coinciden, no se pudo efectuar el cambio de contraseña. Inténtelo de nuevo", "OK", JOptionPane.WARNING_MESSAGE); - return; - } + if (lstUsuarios.isSelectionEmpty()) { + JOptionPane.showMessageDialog(null, "Seleccione un usuario para modificar", "Error", JOptionPane.WARNING_MESSAGE); + } else { + if (txtNombre.getText().isEmpty()) { + JOptionPane.showMessageDialog(null, "El campo nombre no puede quedar vacío", "Error", JOptionPane.WARNING_MESSAGE); } else { - JOptionPane.showMessageDialog(null, "Ingrese la contraseña nueva", "OK", JOptionPane.WARNING_MESSAGE); - return; - } - } - java.sql.Date fecha = null; //casteo fecha - if (dcFecha.getDate() != null) { - java.util.Date utilDate = dcFecha.getDate(); - fecha = new java.sql.Date(utilDate.getTime()); + txtNombre.setText(txtNombre.getText().trim()); + if (!validarNombres(txtNombre.getText())) { + JOptionPane.showMessageDialog(null, "El nombre tiene caracteres no válidos", "Error", JOptionPane.WARNING_MESSAGE); + } else { + if (txtApellido.getText().isEmpty()) { + JOptionPane.showMessageDialog(null, "El campo apellido no puede quedar vacío", "Error", JOptionPane.WARNING_MESSAGE); + } else { + txtApellido.setText(txtNombre.getText().trim()); + if (!validarNombres(txtApellido.getText())) { + JOptionPane.showMessageDialog(null, "El apellido tiene caracteres no válidos", "Error", JOptionPane.WARNING_MESSAGE); + } else { + if (txtNombreCanal.getText().isEmpty()) { + JOptionPane.showMessageDialog(null, "El campo nombre de canal no puede quedar vacío", "Error", JOptionPane.WARNING_MESSAGE); + } else { + txtNombreCanal.setText(txtNombre.getText().trim()); + String pass = user.getContrasenia(); + if (chkCambiarContra.isSelected()) { + + if (!(txtContraNueva.getText().equals("") && txtContraNueva1.getText().equals(""))) { + + if (txtContraNueva.getText().equals(txtContraNueva1.getText())) { + pass = txtContraNueva.getText(); + } else { + JOptionPane.showMessageDialog(null, "Las contraseñas no coinciden, no se pudo efectuar el cambio de contraseña. Inténtelo de nuevo", "OK", JOptionPane.WARNING_MESSAGE); + return; + } + + } else { + JOptionPane.showMessageDialog(null, "Ingrese la contraseña nueva", "OK", JOptionPane.WARNING_MESSAGE); + return; + } + } + java.sql.Date fecha = null; //casteo fecha + if (dcFecha.getDate() != null) { + java.util.Date utilDate = dcFecha.getDate(); + fecha = new java.sql.Date(utilDate.getTime()); + } + DtUsuario u = new DtUsuario(user.getNickname(), pass, txtNombre.getText(), txtApellido.getText(), user.getCorreo(), fecha, ruta, PROPERTIES); + Privacidad priv; + if (rbPrivado.isSelected()) { + priv = Privacidad.PRIVADO; + } else { + priv = Privacidad.PUBLICO; + } + DtCanal c = new DtCanal(0, txtNombreCanal.getText(), txtDescrpcion.getText(), priv); + sys.modificarUsuarioYCanal(u, c); + + JOptionPane.showMessageDialog(null, "Datos modificados correctamente", "OK", JOptionPane.INFORMATION_MESSAGE); + dispose(); + + } } - DtUsuario u = new DtUsuario(user.getNickname(), pass, txtNombre.getText(), txtApellido.getText(), user.getCorreo(), fecha, ruta, PROPERTIES); - Privacidad priv; - if(rbPrivado.isSelected()){ - priv = Privacidad.PRIVADO; - }else{ - priv = Privacidad.PUBLICO; + } + } } - DtCanal c = new DtCanal(0, txtNombreCanal.getText(), txtDescrpcion.getText(), priv); - sys.modificarUsuarioYCanal(u, c); - - JOptionPane.showMessageDialog(null, "Datos modificados correctamente", "OK", JOptionPane.INFORMATION_MESSAGE); - dispose(); - - }}}} + } } catch (Exception e) { JOptionPane.showMessageDialog(null, "Ha ocurrido un error\n" + e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE); } @@ -468,13 +480,16 @@ public class frmModificarUsuario extends javax.swing.JDialog { private void btnSeleccionarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnSeleccionarActionPerformed //cargarImagen(lbImagen); + String rutaAnterior = ruta; ruta = seleccionarImagen(); - cargarImagenEnJlabel(lbImg, ruta); - + if (ruta.isEmpty()) { + ruta = rutaAnterior; + } + cargarImagenEnJlabel(lbImg, ruta); }//GEN-LAST:event_btnSeleccionarActionPerformed private void btnListaReprodiccionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnListaReprodiccionActionPerformed - new frmModificarListaDeReproduccion(this,true,lstUsuarios.getSelectedValue()).setVisible(true); + new frmModificarListaDeReproduccion(this, true, lstUsuarios.getSelectedValue()).setVisible(true); }//GEN-LAST:event_btnListaReprodiccionActionPerformed private void btnVideoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnVideoActionPerformed @@ -485,46 +500,42 @@ public class frmModificarUsuario extends javax.swing.JDialog { sys.liberarMemoriaUsuario(); dispose(); }//GEN-LAST:event_btnCancelarActionPerformed - private void cargarDatosDelUsuario(DtUsuario u){ + private void cargarDatosDelUsuario(DtUsuario u) { txtNombre.setText(u.getNombre()); txtApellido.setText(u.getApellido()); - txtCorreo.setText(u.getCorreo()); + txtCorreo.setText(u.getCorreo()); dcFecha.setDate(u.getFechaNacimiento()); cargarImagenEnJlabel(lbImg, u.getImagen()); - + } - private void cargarDatosDelCanal(DtCanal c){ + + private void cargarDatosDelCanal(DtCanal c) { txtNombreCanal.setText(c.getNombre()); txtDescrpcion.setText(c.getDescripcion()); - if (c.getPrivacidad() == Privacidad.PUBLICO){ + if (c.getPrivacidad() == Privacidad.PUBLICO) { rbPublico.setSelected(true); - }else{ - rbPrivado.setSelected(true); + } else { + rbPrivado.setSelected(true); } } - - - - - + + private void lstUsuariosValueChanged(javax.swing.event.ListSelectionEvent evt) {//GEN-FIRST:event_lstUsuariosValueChanged - try { - if(! lstUsuarios.isSelectionEmpty()){ - activarCampos(); - } - btnVideo.setEnabled(true); - btnListaReprodiccion.setEnabled(true); + try { + if (!lstUsuarios.isSelectionEmpty()) { + activarCampos(); + } + btnVideo.setEnabled(true); + btnListaReprodiccion.setEnabled(true); String nick = lstUsuarios.getSelectedValue(); user = sys.seleccionarUsuario(nick); cargarDatosDelUsuario(user); DtCanal dtc = sys.obtenerCanalDeUsuario(); cargarDatosDelCanal(dtc); - ruta=user.getImagen(); + ruta = user.getImagen(); txtContraNueva.setText(""); txtContraNueva1.setText(""); - - - + } catch (Exception e) { JOptionPane.showMessageDialog(null, "Ha ocurrido un error", "Error", JOptionPane.ERROR_MESSAGE); @@ -532,35 +543,32 @@ public class frmModificarUsuario extends javax.swing.JDialog { }//GEN-LAST:event_lstUsuariosValueChanged private void chkCambiarContraActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chkCambiarContraActionPerformed - if(chkCambiarContra.isSelected()){ + if (chkCambiarContra.isSelected()) { txtContraNueva.setEnabled(true); txtContraNueva1.setEnabled(true); lbCN.setEnabled(true); lbRCN.setEnabled(true); - - }else{ - txtContraNueva.setEnabled(false); + + } else { + txtContraNueva.setEnabled(false); txtContraNueva1.setEnabled(false); lbCN.setEnabled(false); lbRCN.setEnabled(false); } // TODO add your handling code here: }//GEN-LAST:event_chkCambiarContraActionPerformed - private void txtContraNuevaKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txtContraNuevaKeyTyped - // TODO add your handling code here: - }//GEN-LAST:event_txtContraNuevaKeyTyped - - - - - - - - + private void btnQuitarImagenActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnQuitarImagenActionPerformed + // Quitar imagen + ruta = ""; + cargarImagenEnJlabel(lbImg, ruta); + }//GEN-LAST:event_btnQuitarImagenActionPerformed + + // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton btnCancelar; private javax.swing.JButton btnListaReprodiccion; private javax.swing.JButton btnModificar; + private javax.swing.JButton btnQuitarImagen; private javax.swing.JButton btnSeleccionar; private javax.swing.JButton btnVideo; private javax.swing.JCheckBox chkCambiarContra; @@ -580,13 +588,11 @@ public class frmModificarUsuario extends javax.swing.JDialog { private javax.swing.JLabel lbCorreo; private javax.swing.JLabel lbDescripcion; private javax.swing.JLabel lbFecha; - private javax.swing.JLabel lbImagen; private javax.swing.JLabel lbImagen1; private javax.swing.JLabel lbImg; private javax.swing.JPanel lbMes; private javax.swing.JLabel lbNombre; private javax.swing.JLabel lbNombreC; - private javax.swing.JLabel lbOpcional; private javax.swing.JLabel lbRCN; private javax.swing.JList<String> lstUsuarios; private javax.swing.JRadioButton rbPrivado;