From 126f6d3c563ec877a38d93801283bf54ab77b451 Mon Sep 17 00:00:00 2001
From: Lucas Garrido <LuC31G@gmail.com>
Date: Sun, 13 Oct 2019 03:05:46 -0300
Subject: [PATCH] Solucion en las privacidades

---
 .../src/java/com/uytube/AltaUsuario.java      |  4 +-
 UyTube_web/src/java/com/uytube/AltaVideo.java | 11 ++--
 .../src/java/com/uytube/BorrarUsuario.java    | 50 +++++++++++++++++++
 .../src/java/com/uytube/ModificarUsuario.java |  2 +-
 UyTube_web/web/AltaListaReproduccion.jsp      | 24 ++++-----
 UyTube_web/web/AltaUsuario.jsp                | 10 ++--
 UyTube_web/web/AltaVideo.jsp                  | 19 ++-----
 UyTube_web/web/ModificarListaReproduccion.jsp | 12 ++---
 UyTube_web/web/ModificarUsuario.jsp           | 28 +++++------
 UyTube_web/web/ModificarVideo.jsp             | 19 +++----
 UyTube_web/web/include/header-usuario.jsp     | 17 +++++--
 11 files changed, 116 insertions(+), 80 deletions(-)
 create mode 100644 UyTube_web/src/java/com/uytube/BorrarUsuario.java

diff --git a/UyTube_web/src/java/com/uytube/AltaUsuario.java b/UyTube_web/src/java/com/uytube/AltaUsuario.java
index 208332d..627f392 100644
--- a/UyTube_web/src/java/com/uytube/AltaUsuario.java
+++ b/UyTube_web/src/java/com/uytube/AltaUsuario.java
@@ -90,11 +90,11 @@ public class AltaUsuario extends HttpServlet {
             String pEmail = request.getParameter("email");
             String pFechaNa = request.getParameter("fechaNa");
             String pPassword = request.getParameter("password");
-            String pImaguen = request.getParameter("img");
+            String pImaguen = request.getParameter("imagen");
             String pPrivacidad = request.getParameter("privacidad");
             String pCanal = request.getParameter("canal");
             String pDescripcion = request.getParameter("descripcion");
-
+            
             IUsuario sys = Fabrica.getInstancia().getIUsuario();
 
             SimpleDateFormat formato = new SimpleDateFormat("yyyy-mm-dd");
diff --git a/UyTube_web/src/java/com/uytube/AltaVideo.java b/UyTube_web/src/java/com/uytube/AltaVideo.java
index e595a21..f239f20 100644
--- a/UyTube_web/src/java/com/uytube/AltaVideo.java
+++ b/UyTube_web/src/java/com/uytube/AltaVideo.java
@@ -113,13 +113,8 @@ public class AltaVideo extends HttpServlet {
             String pUrl = request.getParameter("url");
             String pFecha = request.getParameter("fecha");
             String pDescripcion = request.getParameter("descripcion");
-            String pPrivacidad = request.getParameter("privacidad");
             String pCategoria = request.getParameter("categoria");
-
-            Privacidad Priv = Privacidad.PRIVADO;
-            if (pPrivacidad != null && pPrivacidad.equals("PUBLICO")) {
-                Priv = Privacidad.PUBLICO;
-            }
+            
             //============ Casteo de string a date =================================
             SimpleDateFormat formato = new SimpleDateFormat("yyyy-mm-dd");
             Date fechaDate = null;
@@ -132,11 +127,11 @@ public class AltaVideo extends HttpServlet {
             }
             java.sql.Date data = new java.sql.Date(fechaDate.getTime());
             //======================================================================
+            
             //============= Casteo de string a Time ================================
             Time duracion = java.sql.Time.valueOf(pDuracion);
-
             //======================================================================
-            DtVideo vid = new DtVideo(0, pNombre, pDescripcion, duracion, data, pUrl, Priv, pCategoria, 0, 0);
+            DtVideo vid = new DtVideo(0, pNombre, pDescripcion, duracion, data, pUrl,Privacidad.PRIVADO, pCategoria, 0, 0);
 
             sys.altaVideo(vid);
             response.sendRedirect("/uytube/buscar?texto=" + vid.getNombre());
diff --git a/UyTube_web/src/java/com/uytube/BorrarUsuario.java b/UyTube_web/src/java/com/uytube/BorrarUsuario.java
new file mode 100644
index 0000000..5f096f7
--- /dev/null
+++ b/UyTube_web/src/java/com/uytube/BorrarUsuario.java
@@ -0,0 +1,50 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package com.uytube;
+
+import Logica.Clases.Usuario;
+import Logica.Fabrica;
+import Logica.Interfaces.IUsuario;
+import java.io.IOException;
+import java.io.PrintWriter;
+import javax.servlet.RequestDispatcher;
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ *
+ * @author Dofus
+ */
+@WebServlet(name = "BorrarUsuario", urlPatterns = {"/usuario-borrar"})
+public class BorrarUsuario extends HttpServlet {
+
+    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
+            throws ServletException, IOException {
+    }
+
+    @Override
+    protected void doGet(HttpServletRequest request, HttpServletResponse response)
+            throws ServletException, IOException {
+        try {
+            IUsuario sys = Fabrica.getInstancia().getIUsuario();
+            sys.bajaUsuario();
+            request.getSession().invalidate();
+            
+            RequestDispatcher rd; //objeto para despachar
+            rd = request.getRequestDispatcher("/");
+            rd.forward(request, response);
+        } catch (Exception e) {
+            System.out.println(e.getMessage());
+            RequestDispatcher rd; //objeto para despachar
+            rd = request.getRequestDispatcher("404.jsp");
+            rd.forward(request, response);
+        }
+    }
+
+}
diff --git a/UyTube_web/src/java/com/uytube/ModificarUsuario.java b/UyTube_web/src/java/com/uytube/ModificarUsuario.java
index c0bd0ab..4b7d68d 100644
--- a/UyTube_web/src/java/com/uytube/ModificarUsuario.java
+++ b/UyTube_web/src/java/com/uytube/ModificarUsuario.java
@@ -119,7 +119,7 @@ public class ModificarUsuario extends HttpServlet {
             String pPrivacidad = request.getParameter("privacidad");
             String pCanal = request.getParameter("canal");
             String pDescripcion = request.getParameter("descripcion");
-            String pImaguen = request.getParameter("img");
+            String pImaguen = request.getParameter("imagen");
 
             IUsuario sys = Fabrica.getInstancia().getIUsuario();
 
diff --git a/UyTube_web/web/AltaListaReproduccion.jsp b/UyTube_web/web/AltaListaReproduccion.jsp
index cd500a2..0d1781a 100644
--- a/UyTube_web/web/AltaListaReproduccion.jsp
+++ b/UyTube_web/web/AltaListaReproduccion.jsp
@@ -8,10 +8,10 @@
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!DOCTYPE html>
 <html lang="es">
-      <%
+    <%
         boolean sesionIniciada = (boolean) request.getAttribute("sesionIniciada");
         ArrayList<String> Categorias = (ArrayList) request.getAttribute("Categorias");
-       %>
+    %>
     <head>
         <meta charset="UTF-8">
         <meta http-equiv="X-UA-Compatible" content="IE=edge">
@@ -34,11 +34,10 @@
                 <div class="col-12">
                     <!-- Inclusion de la barra superior -->
                     <%
-                        if (sesionIniciada){
+                        if (sesionIniciada) {
                     %>
                     <%@ include file='include/header-usuario.jsp' %>
-                    <%
-                        }else{
+                    <%                    } else {
                     %>
                     <%@ include file='include/header-visitante.jsp' %>
                     <%
@@ -63,8 +62,7 @@
                             if (sesionIniciada) {
                         %>
                         <%@ include file='include/menu-usuario.jsp' %>
-                        <%
-                        } else {
+                        <%                        } else {
                         %>
                         <%@ include file='include/menu-visitante.jsp' %>
                         <%
@@ -89,13 +87,13 @@
                                                 <div class="col-md-5">
                                                     <label class="">Privacidad</label>
                                                 </div>
-                                                <div class="col-md-4 custom-control custom-radio">
-                                                    <input id="publico_1" name="privacidad_1" type="radio" class="custom-control-input" checked >
-                                                    <label class="custom-control-label" for="publico_1">Publico</label>
+                                                <div class="custom-control custom-radio">
+                                                    <input id="publico" name="privacidad" value="PUBLICO" type="radio" class="custom-control-input" checked>
+                                                    <label class="custom-control-label" for="publico">Publico</label>
                                                 </div>
-                                                <div class="col-md-3 custom-control custom-radio">
-                                                    <input id="privado_1" name="privacidad_1" type="radio" class="custom-control-input" >
-                                                    <label class="custom-control-label" for="privado_1">Privado</label>
+                                                <div class="custom-control custom-radio">
+                                                    <input id="privado" name="privacidad" value="PRIVADO" type="radio" class="custom-control-input">
+                                                    <label class="custom-control-label" for="privado">Privado</label>
                                                 </div>
                                             </div>
                                             <div class=" bd-light">
diff --git a/UyTube_web/web/AltaUsuario.jsp b/UyTube_web/web/AltaUsuario.jsp
index 1a32752..9c470c8 100644
--- a/UyTube_web/web/AltaUsuario.jsp
+++ b/UyTube_web/web/AltaUsuario.jsp
@@ -70,11 +70,11 @@
                                             <div class="d-block my-3">
                                                 <label for="cc-name">Privacidad del canal</label>
                                                 <div class="custom-control custom-radio">
-                                                    <input id="publico" name="privacidad" type="radio" class="custom-control-input" checked >
+                                                    <input id="publico" name="privacidad" value="PUBLICO" type="radio" class="custom-control-input" checked >
                                                     <label class="custom-control-label" for="publico">Publico</label>
                                                 </div>
                                                 <div class="custom-control custom-radio">
-                                                    <input id="privado" name="privacidad" name="foto" type="radio" class="custom-control-input" >
+                                                    <input id="privado" name="privacidad" value="PRIVADO" type="radio" class="custom-control-input" >
                                                     <label class="custom-control-label" for="privado">Privado</label>
                                                 </div>
                                             </div>
@@ -87,13 +87,13 @@
                                             <small class="text-muted">Opcional*</small><br><br>
 
 
-                                            <label id="label_email">Imagen de perfil</label>	
+                                            <label id="label_email">Imagen de perfil</label>
+                                            
                                             <div class="form-group">
-                                                <input id="input_Imagen_Perfil" type="file" class="file" multiple=false data-preview-file-type="any"><br>
+                                                <input accept=".PNG,.JPG,.jpg,.png" name="imagen" id="input_Imagen_Perfil" type="file" class="file" multiple=false data-preview-file-type="any"><br>
                                                 <small class="text-muted">Opcional*</small>
                                             </div>
 
-
                                             <hr class="mb-4">
 
                                             <div class="btn-toolbar" role="toolbar" aria-label="Toolbar with button groups">
diff --git a/UyTube_web/web/AltaVideo.jsp b/UyTube_web/web/AltaVideo.jsp
index 10f4be0..bad6bad 100644
--- a/UyTube_web/web/AltaVideo.jsp
+++ b/UyTube_web/web/AltaVideo.jsp
@@ -92,25 +92,12 @@
                                         </div>
                                     </div>										
                                     <div class="form-group row">
-                                        <div class="form-group col-md-4">
+                                        <div class="form-group col-md-5">
                                             <label for="inputFecha">Fecha</label>
                                             <input type="date" name="fecha" class="form-control"  id="inputFecha">
                                         </div>
-
-                                        <div class="form-group col-md-4">
-
-                                            <label  for="cc-name">Privacidad del video</label>
-                                            <div class="custom-control custom-radio">
-                                                <input id="publico" name="privacidad" type="radio" class="custom-control-input" >
-                                                <label class="custom-control-label" for="publico">Publico</label>
-                                            </div>
-                                            <div class="custom-control custom-radio">
-                                                <input id="privado" name="privacidad" name="foto" type="radio" class="custom-control-input" checked>
-                                                <label class="custom-control-label" for="privado">Privado</label>
-                                            </div>
-                                        </div>
-
-                                        <div class="form-group col-md-4">
+                                        
+                                        <div class="form-group col-md-7">
                                             <label for="inputCategoria">Categoría</label>
                                             <select id="inputCategoria" name="categoria" class="form-control">
                                                 <%
diff --git a/UyTube_web/web/ModificarListaReproduccion.jsp b/UyTube_web/web/ModificarListaReproduccion.jsp
index a0892a4..7f77fc6 100644
--- a/UyTube_web/web/ModificarListaReproduccion.jsp
+++ b/UyTube_web/web/ModificarListaReproduccion.jsp
@@ -86,7 +86,7 @@
                                             <br>
                                             <%
                                             } else {
-                                                
+
                                             %>
                                             <li class="list-group-item d-flex justify-content-between align-items-center">
                                                 <div class="col-md-4">
@@ -99,11 +99,11 @@
                                                         if (listasRep.getPrivacidad() == Privacidad.PRIVADO) {
                                                     %>
                                                     <div class="custom-control custom-radio">
-                                                        <input id="publico" name="privacidad" type="radio" class="custom-control-input" >
+                                                        <input id="publico" name="privacidad" value="PUBLICO" type="radio" class="custom-control-input" >
                                                         <label class="custom-control-label" for="publico">Publico</label>
                                                     </div>
                                                     <div class="custom-control custom-radio">
-                                                        <input id="privado" name="privacidad" name="foto" type="radio" class="custom-control-input" checked>
+                                                        <input id="privado" name="privacidad" value="PRIVADO" type="radio" class="custom-control-input" checked>
                                                         <label class="custom-control-label" for="privado">Privado</label>
                                                     </div>
                                                     <%
@@ -114,11 +114,11 @@
                                                     <% if (listasRep.getPrivacidad() == Privacidad.PUBLICO) {
                                                     %>
                                                     <div class="custom-control custom-radio">
-                                                        <input id="publico" name="privacidad" type="radio" class="custom-control-input" checked>
+                                                        <input id="publico" name="privacidad" value="PUBLICO" type="radio" class="custom-control-input" checked>
                                                         <label class="custom-control-label" for="publico">Publico</label>
                                                     </div>
                                                     <div class="custom-control custom-radio">
-                                                        <input id="privado" name="privacidad" name="foto" type="radio" class="custom-control-input">
+                                                        <input id="privado" name="privacidad" value="PRIVADO" type="radio" class="custom-control-input">
                                                         <label class="custom-control-label" for="privado">Privado</label>
                                                     </div>
                                                     <%
@@ -146,7 +146,7 @@
                                                     </select>
                                                 </div>
                                             </li>
-                                            <% 
+                                            <%
                                                 }
                                             %>
 
diff --git a/UyTube_web/web/ModificarUsuario.jsp b/UyTube_web/web/ModificarUsuario.jsp
index 5d3aec7..3eca67b 100644
--- a/UyTube_web/web/ModificarUsuario.jsp
+++ b/UyTube_web/web/ModificarUsuario.jsp
@@ -41,11 +41,10 @@
                 <div class="col-12">
                     <!-- Inclusion de la barra superior -->
                     <%
-                        if (sesionIniciada){
+                        if (sesionIniciada) {
                     %>
                     <%@ include file='include/header-usuario.jsp' %>
-                    <%
-                        }else{
+                    <%                    } else {
                     %>
                     <%@ include file='include/header-visitante.jsp' %>
                     <%
@@ -65,13 +64,12 @@
             <div class="row">
                 <div class="col-12">
                     <section class="principal">						
-                         <!-- Inclusion del menu lateral -->
+                        <!-- Inclusion del menu lateral -->
                         <%
                             if (sesionIniciada) {
                         %>
                         <%@ include file='include/menu-usuario.jsp' %>
-                        <%
-                        } else {
+                        <%                        } else {
                         %>
                         <%@ include file='include/menu-visitante.jsp' %>
                         <%
@@ -99,8 +97,8 @@
                                                 DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
                                                 String fecha = df.format(usuario.getFechaNacimiento());
                                             %>
-                                            <input  value="<%= fecha %>" class="form-control" name="fechaNa" type="date" id="input_fecha" name="trip-start" readonly="readonly"><br>
-                                                
+                                            <input  value="<%= fecha%>" class="form-control" name="fechaNa" type="date" id="input_fecha" name="trip-start" readonly="readonly"><br>
+
                                             <input value="<%= usuario.getContrasenia()%>" class="form-control" type="password" placeholder="Contraseña" id="input_Contraseña" required><br>
                                             <input value="<%= usuario.getContrasenia()%>" class="form-control" name="password" type="password" placeholder="Repetir contraseña" id="input_Repetir_contraseña" required>
                                             <%
@@ -109,11 +107,11 @@
                                             <div class="d-block my-3">
                                                 <label for="cc-name">Privacidad del canal</label>
                                                 <div class="custom-control custom-radio">
-                                                    <input id="publico" name="privacidad" type="radio" class="custom-control-input" checked >
+                                                    <input id="publico" name="privacidad" value="PUBLICO" type="radio" class="custom-control-input" checked>
                                                     <label class="custom-control-label" for="publico">Publico</label>
                                                 </div>
                                                 <div class="custom-control custom-radio">
-                                                    <input id="privado" name="privacidad" name="foto" type="radio" class="custom-control-input" >
+                                                    <input id="privado" name="privacidad" value="PRIVADO" type="radio" class="custom-control-input">
                                                     <label class="custom-control-label" for="privado">Privado</label>
                                                 </div>
                                             </div>
@@ -128,11 +126,11 @@
                                             <div class="d-block my-3">
                                                 <label for="cc-name">Privacidad del canal</label>
                                                 <div class="custom-control custom-radio">
-                                                    <input id="publico" name="privacidad" type="radio" class="custom-control-input" >
+                                                    <input id="publico" name="privacidad" value="PUBLICO" type="radio" class="custom-control-input" >
                                                     <label class="custom-control-label" for="publico">Publico</label>
                                                 </div>
                                                 <div class="custom-control custom-radio">
-                                                    <input id="privado" name="privacidad" name="foto" type="radio" class="custom-control-input" checked>
+                                                    <input id="privado" name="privacidad" value="PRIVADO" type="radio" class="custom-control-input" checked>
                                                     <label class="custom-control-label" for="privado">Privado</label>
                                                 </div>
                                             </div>
@@ -140,15 +138,15 @@
                                             <%
                                                 }
                                             %>
-                                            
-                                            <input value="<%= canal.getNombre() %>" class="form-control" name="canal" type="text" placeholder="Nombre del Canal" readonly="readonly" id="input_Nombre_canal" required><br>
+
+                                            <input value="<%= canal.getNombre()%>" class="form-control" name="canal" type="text" placeholder="Nombre del Canal" readonly="readonly" id="input_Nombre_canal" required><br>
 
                                             <textarea class="form-control" name="descripcion" id="input_descripcion" placeholder="Descripción del Canal" rows="3"> <%=canal.getDescripcion()%> </textarea>
 
                                             <br>   
                                             <label id="label_email">Imagen de perfil</label>	
                                             <div class="form-group">
-                                                <input value="<%= usuario.getImagen() %>" id="input_Imagen_Perfil" type="file" class="file" multiple=false data-preview-file-type="any"><br>
+                                                <input value="<%= usuario.getImagen()%>" name="imagen" id="input_Imagen_Perfil" type="file" class="file" multiple=false data-preview-file-type="any"><br>
                                             </div>
 
 
diff --git a/UyTube_web/web/ModificarVideo.jsp b/UyTube_web/web/ModificarVideo.jsp
index 754988c..a35d4d5 100644
--- a/UyTube_web/web/ModificarVideo.jsp
+++ b/UyTube_web/web/ModificarVideo.jsp
@@ -101,30 +101,27 @@
 
                                             <label  for="cc-name">Privacidad del video</label>
                                             <%
-                                                if (video.getPrivacidad() == Privacidad.PRIVADO) {
+                                                if (video.getPrivacidad().equals(Privacidad.PRIVADO)) {
                                             %>
                                             <div class="custom-control custom-radio">
-                                                <input id="publico" name="privacidad" type="radio" class="custom-control-input" >
+                                                <input id="publico" name="privacidad" value="PUBLICO" type="radio" class="custom-control-input" >
                                                 <label class="custom-control-label" for="publico">Publico</label>
                                             </div>
+                                            
                                             <div class="custom-control custom-radio">
-                                                <input id="privado" name="privacidad" name="foto" type="radio" class="custom-control-input" checked>
+                                                <input id="privado" name="privacidad" value="PRIVADO" type="radio" class="custom-control-input" checked>
                                                 <label class="custom-control-label" for="privado">Privado</label>
                                             </div>
                                             <%
-                                                }
-
-                                            %>
-
-                                            <%
-                                                if (video.getPrivacidad() == Privacidad.PUBLICO) {
+                                                }else {
                                             %>
                                             <div class="custom-control custom-radio">
-                                                <input id="publico" name="privacidad" type="radio" class="custom-control-input" checked>
+                                                <input id="publico" name="privacidad" value="PUBLICO" type="radio" class="custom-control-input" checked>
                                                 <label class="custom-control-label" for="publico">Publico</label>
                                             </div>
+                                            
                                             <div class="custom-control custom-radio">
-                                                <input id="privado" name="privacidad" name="foto" type="radio" class="custom-control-input">
+                                                <input id="privado" name="privacidad" value="PRIVADO" type="radio" class="custom-control-input">
                                                 <label class="custom-control-label" for="privado">Privado</label>
                                             </div>
                                             <%
diff --git a/UyTube_web/web/include/header-usuario.jsp b/UyTube_web/web/include/header-usuario.jsp
index d4524e9..51234f3 100644
--- a/UyTube_web/web/include/header-usuario.jsp
+++ b/UyTube_web/web/include/header-usuario.jsp
@@ -33,15 +33,26 @@ and open the template in the editor.
                     <div class="perfil item-header item-header3 flex-row justify-content-lg-space-between">
                         <div class="flex-row justify-content-lg-space-between alig-content-center" id="nombrePerfil">
                             <a href="/uytube/usuario-consultar?id=<%= usu.getNickname()%>">
-                            <%= usu.getNickname()%>
+                                <%= usu.getNickname()%>
                             </a>
-                        </div>					  
+                        </div>	
                         <div>
                             <a href="/uytube/usuario-consultar?id=<%= usu.getNickname()%>">
-                                <img id="fotoPerfil" src=<%= usu.getImagen()%> alt="Perfil">
+                                <%
+                                 if (usu.getImagen() == null || usu.getImagen().equals("")) {
+                                %>
+                                    <img id="fotoPerfil" src="imagenes/ukp.png" alt="Perfil">
+                                <%
+                                } else {
+                                %>
+                                    <img id="fotoPerfil" src=<%= usu.getImagen()%> alt="Perfil">
+                                <%
+                                    }
+                                %>
                             </a>
                         </div>
 
+
                     </div>
                 </nav>					
             </header>
-- 
GitLab