Skip to content
Snippets Groups Projects
Commit 02bdfef6 authored by Julio Arrieta's avatar Julio Arrieta
Browse files

Alta video terminado! listo para probar

parent cedfee9b
No related branches found
No related tags found
No related merge requests found
......@@ -28,25 +28,18 @@
<Layout>
<DimensionLayout dim="0">
<Group type="103" groupAlignment="0" attributes="0">
<EmptySpace min="0" pref="980" max="32767" attributes="0"/>
<Group type="103" rootIndex="1" groupAlignment="0" attributes="0">
<Group type="102" attributes="0">
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
<Component id="jPanel14" min="-2" pref="980" max="-2" attributes="0"/>
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
</Group>
<Group type="102" alignment="1" attributes="0">
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
<Component id="jPanel14" min="-2" pref="980" max="-2" attributes="0"/>
</Group>
</Group>
</DimensionLayout>
<DimensionLayout dim="1">
<Group type="103" groupAlignment="0" attributes="0">
<EmptySpace min="0" pref="550" max="32767" attributes="0"/>
<Group type="103" rootIndex="1" groupAlignment="0" attributes="0">
<Group type="102" attributes="0">
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
<Component id="jPanel14" min="-2" pref="550" max="-2" attributes="0"/>
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
</Group>
<Group type="102" alignment="1" attributes="0">
<EmptySpace max="32767" attributes="0"/>
<Component id="jPanel14" min="-2" pref="550" max="-2" attributes="0"/>
<EmptySpace max="-2" attributes="0"/>
</Group>
</Group>
</DimensionLayout>
......@@ -280,7 +273,7 @@
</Property>
</Properties>
<Events>
<EventHandler event="focusGained" listener="java.awt.event.FocusListener" parameters="java.awt.event.FocusEvent" handler="spSegundosFocusGained"/>
<EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="spSegundosStateChanged"/>
</Events>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription">
......@@ -288,24 +281,30 @@
</Constraint>
</Constraints>
</Component>
<Component class="javax.swing.JSpinner" name="spHora">
<Component class="javax.swing.JSpinner" name="spHoras">
<Properties>
<Property name="model" type="javax.swing.SpinnerModel" editor="org.netbeans.modules.form.editors2.SpinnerModelEditor">
<SpinnerModel initial="0" maximum="5" minimum="0" numberType="java.lang.Integer" stepSize="1" type="number"/>
</Property>
</Properties>
<Events>
<EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="spHorasStateChanged"/>
</Events>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription">
<AbsoluteConstraints x="420" y="120" width="60" height="-1"/>
</Constraint>
</Constraints>
</Component>
<Component class="javax.swing.JSpinner" name="spMinuto">
<Component class="javax.swing.JSpinner" name="spMinutos">
<Properties>
<Property name="model" type="javax.swing.SpinnerModel" editor="org.netbeans.modules.form.editors2.SpinnerModelEditor">
<SpinnerModel initial="0" maximum="60" minimum="0" numberType="java.lang.Integer" stepSize="1" type="number"/>
</Property>
</Properties>
<Events>
<EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="spMinutosStateChanged"/>
</Events>
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription">
<AbsoluteConstraints x="490" y="120" width="60" height="-1"/>
......@@ -396,7 +395,7 @@
<Component class="javax.swing.JLabel" name="lbMsjDuracion">
<Constraints>
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription">
<AbsoluteConstraints x="420" y="140" width="200" height="15"/>
<AbsoluteConstraints x="340" y="140" width="330" height="15"/>
</Constraint>
</Constraints>
</Component>
......
......@@ -3,20 +3,15 @@ package Presentacion.Video;
import Logica.Clases.Fabrica;
import Logica.Clases.Video;
import Logica.DataType.DtCategoria;
import Logica.DataType.DtUsuario;
import Logica.DataType.DtVideo;
import Logica.Enumerados.Privacidad;
import Logica.Interfaces.IAdmin;
import java.awt.Color;
//
import java.sql.Time;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Iterator;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.swing.BorderFactory;
......@@ -58,23 +53,23 @@ public class frmAltaVideo extends javax.swing.JDialog {
descripcion = "";
}
private boolean validarDuracion(int _segundos){
if (_segundos <= 0) {
lbMsjDescripcion.setText(" La duración no puede ser cero");
lbMsjDuracion.setOpaque(true);
lbMsjDuracion.setForeground(Color.WHITE);
lbMsjDuracion.setBackground(colorError);
return false;
private boolean validarDuracion(int s, int m, int h){
if ( s > 0 || m > 0 || h > 0) {
return true;
}
return true;
lbMsjDuracion.setOpaque(true);
lbMsjDuracion.setForeground(Color.WHITE);
lbMsjDuracion.setBackground(colorError);
lbMsjDuracion.setText(" El campo duración es obligatorio");
return false;
}
private void limpiarCampos(){
txtNombre.setText("");
txtDescripcion.setText("");
txtUrl.setText("");
spHora.setValue(0);
spMinuto.setValue(0);
spHoras.setValue(0);
spMinutos.setValue(0);
spSegundos.setValue(0);
usrSeleccionado="";
categoria = "";
......@@ -109,10 +104,10 @@ public class frmAltaVideo extends javax.swing.JDialog {
return false;
}
private boolean validarTxt(JTextField txt, int largo,JLabel lb,String nombreCampo){
private boolean validarTxt(JTextField txt, int max,JLabel lb,String nombreCampo){
try{
if(txt.getText().length() > largo ){
lb.setText(" El campo supera los "+largo+" caracteres");
if(txt.getText().length() > max ){
lb.setText(" El campo supera los "+max+" caracteres");
cambiarColoresError(txt, lb);
return false;
}
......@@ -121,12 +116,7 @@ public class frmAltaVideo extends javax.swing.JDialog {
cambiarColoresError(txt, lb);
return false;
}
else if(nombreCampo.equals("Nombre") ){
// if(!validarNombres(nombre)){
// lb.setText(" El nombre \"" + nombre + "\" no es válido");
// cambiarColoresError(txt, lb);
// return false;
// }
else if(nombreCampo.equals("Nombre") ){
for (DtVideo video : sys.listarVideosDeUsuario()) {
if(video.getNombre().equals(nombre)){
lb.setText(" El nombre del video ya existe");
......@@ -185,8 +175,8 @@ public class frmAltaVideo extends javax.swing.JDialog {
btnAceptar = new javax.swing.JButton();
btnCancelar = new javax.swing.JButton();
spSegundos = new javax.swing.JSpinner();
spHora = new javax.swing.JSpinner();
spMinuto = new javax.swing.JSpinner();
spHoras = new javax.swing.JSpinner();
spMinutos = new javax.swing.JSpinner();
jLabel135 = new javax.swing.JLabel();
jLabel136 = new javax.swing.JLabel();
jLabel137 = new javax.swing.JLabel();
......@@ -294,18 +284,28 @@ public class frmAltaVideo extends javax.swing.JDialog {
jPanel14.add(btnCancelar, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 463, 290, 70));
spSegundos.setModel(new javax.swing.SpinnerNumberModel(0, 0, 60, 1));
spSegundos.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusGained(java.awt.event.FocusEvent evt) {
spSegundosFocusGained(evt);
spSegundos.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
spSegundosStateChanged(evt);
}
});
jPanel14.add(spSegundos, new org.netbeans.lib.awtextra.AbsoluteConstraints(560, 120, 60, -1));
spHora.setModel(new javax.swing.SpinnerNumberModel(0, 0, 5, 1));
jPanel14.add(spHora, new org.netbeans.lib.awtextra.AbsoluteConstraints(420, 120, 60, -1));
spHoras.setModel(new javax.swing.SpinnerNumberModel(0, 0, 5, 1));
spHoras.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
spHorasStateChanged(evt);
}
});
jPanel14.add(spHoras, new org.netbeans.lib.awtextra.AbsoluteConstraints(420, 120, 60, -1));
spMinuto.setModel(new javax.swing.SpinnerNumberModel(0, 0, 60, 1));
jPanel14.add(spMinuto, new org.netbeans.lib.awtextra.AbsoluteConstraints(490, 120, 60, -1));
spMinutos.setModel(new javax.swing.SpinnerNumberModel(0, 0, 60, 1));
spMinutos.addChangeListener(new javax.swing.event.ChangeListener() {
public void stateChanged(javax.swing.event.ChangeEvent evt) {
spMinutosStateChanged(evt);
}
});
jPanel14.add(spMinutos, new org.netbeans.lib.awtextra.AbsoluteConstraints(490, 120, 60, -1));
jLabel135.setText("Duración:");
jPanel14.add(jLabel135, new org.netbeans.lib.awtextra.AbsoluteConstraints(340, 100, -1, -1));
......@@ -326,27 +326,22 @@ public class frmAltaVideo extends javax.swing.JDialog {
jPanel14.add(lbMsjUrl, new org.netbeans.lib.awtextra.AbsoluteConstraints(340, 200, 330, 15));
jPanel14.add(lbMsjFecha, new org.netbeans.lib.awtextra.AbsoluteConstraints(340, 430, 250, 15));
jPanel14.add(lbMsjDescripcion, new org.netbeans.lib.awtextra.AbsoluteConstraints(340, 370, 330, 15));
jPanel14.add(lbMsjDuracion, new org.netbeans.lib.awtextra.AbsoluteConstraints(420, 140, 200, 15));
jPanel14.add(lbMsjDuracion, new org.netbeans.lib.awtextra.AbsoluteConstraints(340, 140, 330, 15));
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 980, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jPanel14, javax.swing.GroupLayout.PREFERRED_SIZE, 980, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jPanel14, javax.swing.GroupLayout.PREFERRED_SIZE, 980, javax.swing.GroupLayout.PREFERRED_SIZE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 550, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jPanel14, javax.swing.GroupLayout.PREFERRED_SIZE, 550, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel14, javax.swing.GroupLayout.PREFERRED_SIZE, 550, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
pack();
......@@ -359,8 +354,8 @@ public class frmAltaVideo extends javax.swing.JDialog {
nombre = txtNombre.getText().trim();//Obtiene el nombre y quita los espacios de los extremos
descripcion = txtDescripcion.getText().trim();//Obtiene la descripcion y quita los espacios de los extremos
url = txtUrl.getText().trim();//Obtiene la url y quita los espacios de los extremos
int horas = (Integer)spHora.getValue();
int minutos = (Integer)spMinuto.getValue();
int horas = (Integer)spHoras.getValue();
int minutos = (Integer)spMinutos.getValue();
int segundos = (Integer)spSegundos.getValue();
Time duracion = new Time(horas, minutos, segundos);
java.sql.Date fecha = null;
......@@ -368,11 +363,10 @@ public class frmAltaVideo extends javax.swing.JDialog {
if( jDateChooser1.getDate() != null){
java.util.Date utilDate = jDateChooser1.getDate();//Obtiene la fecha del JDateChooser en formato Date
fecha = new java.sql.Date(utilDate.getTime());//Lo combierte al tipo Date sql
}
}
//Arrays para validaciones campos de texto
JTextField v1[] = {txtNombre,txtUrl}; //campos a validar
int[] v2= {30,2083}; //Largos de los campos
int[] v2= {30,2083}; //Largos maximos de los campos Nombre y URL
JLabel[] v3= { lbMsjNombre, lbMsjUrl}; //labels para mostrar mensajes
String[] v4 ={"Nombre","URL","Descricion"};//Nombre del campo
boolean[] v5 ={false,false,false};//Estado inicial de las validaciones, cada elemento es una validacion de un campo especifico
......@@ -381,7 +375,7 @@ public class frmAltaVideo extends javax.swing.JDialog {
v5[i] = true;
}
}
if(validarDuracion(segundos)){
if(validarDuracion(segundos, minutos, horas)){
v5[2] = true;
}
if (fecha == null) {
......@@ -393,19 +387,12 @@ public class frmAltaVideo extends javax.swing.JDialog {
}
if(v5[0]==false|| v5[1]==false || v5[2]==false){
return;
}
}
try {
DtVideo dtVideo = new DtVideo(Video.getNuevoId(), nombre, descripcion, duracion, fecha, url, Privacidad.PRIVADO, categoria, 0, 0);
int opcion=JOptionPane.showConfirmDialog(null,
"Desea guardar el video con los siguientes datos?\n"+
"Usuario: "+usrSeleccionado+"\n"+
"Nombre: "+nombre+"\n"+
"Descripción: "+descripcion+"\n"+
"Duración: "+duracion+"\n"+
"fecha de publicacón: "+fecha
, "Confirmar alt de Video", JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
"¿Desea guardar el video \""+nombre+"\"?"
, "Confirmar alta de Video", JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
if(opcion==0){
System.out.println("nomre: "+nombre+" descripcion: "+descripcion+" duracion: "+duracion+" fecha: "+ fecha+" url: "+url+" privacidad: "+Privacidad.PRIVADO+" categoria: "+categoria);
sys.altaVideo(dtVideo);
......@@ -430,17 +417,6 @@ public class frmAltaVideo extends javax.swing.JDialog {
Calendar c = new GregorianCalendar();//Objeto de tipo calendario con la fecha actual
java.util.Date fechaActual = new Date(c.get(Calendar.YEAR)-1900,c.get(Calendar.MONTH),c.get(Calendar.DATE));//Obtiene la fecha actual del calendario
jDateChooser1.setDate(fechaActual);//Setea el JDateChooser con la fecha actual
//Se obtienen los valores de la fecha actual para su validacion
// anioActual = c.get(Calendar.YEAR);
// mesActual = c.get(Calendar.MONTH);
// diaActual = c.get(Calendar.DATE);
// System.out.println("dia actual"+diaActual);
// Calendar max = Calendar.getInstance();
// max.set(Calendar.YEAR,anioActual);
// max.set(Calendar.MONTH,mesActual);
// max.set(Calendar.DATE,diaActual);
// jDateChooser1.setMaxSelectableDate(max.getTime());
// jDateChooser1.setMaxSelectableDate(fechaActual.getTime());
try {
// Obtengo todos los nickname y los cargo en el listDuenioVideo(Lista de dueños de videos)
limpiarLstCategorias();
......@@ -519,11 +495,29 @@ public class frmAltaVideo extends javax.swing.JDialog {
lbMsjUrl.setOpaque(false);
}//GEN-LAST:event_txtUrlFocusGained
private void spSegundosFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_spSegundosFocusGained
// TODO add your handling code here:
lbMsjDuracion.setText("");
lbMsjDuracion.setOpaque(false);
}//GEN-LAST:event_spSegundosFocusGained
private void spSegundosStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_spSegundosStateChanged
// Al cambiar el valor verifica y restaura los valores
if(validarDuracion((Integer)spSegundos.getValue(),(Integer)spMinutos.getValue(),(Integer)spHoras.getValue())){
lbMsjDuracion.setText("");
lbMsjDuracion.setOpaque(false);
}
}//GEN-LAST:event_spSegundosStateChanged
private void spMinutosStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_spMinutosStateChanged
// Al cambiar el valor verifica y restaura los valores
if(validarDuracion((Integer)spSegundos.getValue(),(Integer)spMinutos.getValue(),(Integer)spHoras.getValue())){
lbMsjDuracion.setText("");
lbMsjDuracion.setOpaque(false);
}
}//GEN-LAST:event_spMinutosStateChanged
private void spHorasStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_spHorasStateChanged
// Al cambiar el valor verifica y restaura los valores
if(validarDuracion((Integer)spSegundos.getValue(),(Integer)spMinutos.getValue(),(Integer)spHoras.getValue())){
lbMsjDuracion.setText("");
lbMsjDuracion.setOpaque(false);
}
}//GEN-LAST:event_spHorasStateChanged
// Variables declaration - do not modify//GEN-BEGIN:variables
......@@ -552,8 +546,8 @@ public class frmAltaVideo extends javax.swing.JDialog {
private javax.swing.JLabel lbMsjUrl;
private javax.swing.JList<String> lstAsignarCategoria;
private javax.swing.JList<String> lstDuenioVideo;
private javax.swing.JSpinner spHora;
private javax.swing.JSpinner spMinuto;
private javax.swing.JSpinner spHoras;
private javax.swing.JSpinner spMinutos;
private javax.swing.JSpinner spSegundos;
private javax.swing.JTextArea txtDescripcion;
private javax.swing.JTextField txtNombre;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment