Commit e5b2708b by Emanuel Lugo

Merge branch 'develop' of…

Merge branch 'develop' of https://phoebe.roshka.com/gitlab/jbaez/ProyectoFinal-Bootcamp into finalProtectedResource
parents c9f894c4 7f75482d
...@@ -4,7 +4,9 @@ target/ ...@@ -4,7 +4,9 @@ target/
!**/src/test/**/target/ !**/src/test/**/target/
### IntelliJ IDEA ### ### IntelliJ IDEA ###
.idea/gitmisc.xml
.idea/encodings.xml .idea/encodings.xml
.idea/misc.xml
.idea/** .idea/**
.idea/modules.xml .idea/modules.xml
.idea/jarRepositories.xml .idea/jarRepositories.xml
...@@ -14,6 +16,7 @@ target/ ...@@ -14,6 +16,7 @@ target/
*.iml *.iml
*.ipr *.ipr
/encodings.xml
### Eclipse ### ### Eclipse ###
.apt_generated .apt_generated
.classpath .classpath
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
<file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
</component>
</project>
\ No newline at end of file
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
</list> </list>
</option> </option>
</component> </component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK"> <component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" /> <output url="file://$PROJECT_DIR$/out" />
</component> </component>
</project> </project>
\ No newline at end of file
...@@ -20,10 +20,11 @@ public class Filtros extends HttpServlet { ...@@ -20,10 +20,11 @@ public class Filtros extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
List<Postulante> postulantes = listarPostulante(); List<Postulante> postulantes = listarPostulante();
String respuesta = req.getParameter("id"); String respuesta = req.getParameter("id");
boolean valor = Boolean.parseBoolean(req.getParameter("valor")); String valor = req.getParameter("valor");
String nombre = req.getParameter("nombreBuscar")== null ? "0" : req.getParameter("nombreBuscar"); String nombre = req.getParameter("nombreBuscar")== null ? "0" : req.getParameter("nombreBuscar");
System.out.println(nombre);
if(respuesta != null) { if(respuesta != null) {
System.out.println(valor);
System.out.println(respuesta);
update(Integer.parseInt(req.getParameter("id")), valor); update(Integer.parseInt(req.getParameter("id")), valor);
postulantes = listarPostulante(); postulantes = listarPostulante();
} else if(nombre.length() > 1){ } else if(nombre.length() > 1){
......
package com.roshka.proyectofinal.Postulante; package com.roshka.proyectofinal.Postulante;
import com.roshka.proyectofinal.DataBase; import com.roshka.proyectofinal.DataBase;
import com.roshka.proyectofinal.entity.Postulante; import com.roshka.proyectofinal.entity.Postulante;
import java.sql.Connection; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
...@@ -9,34 +8,34 @@ import java.sql.SQLException; ...@@ -9,34 +8,34 @@ import java.sql.SQLException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
public class PostulanteDao { public class PostulanteDao {
List<Postulante> postulante = null; public static int save(Postulante postulante) {
int status = 0;
public static int save(Postulante postulante){ try {
int status=0; Connection con = DataBase.getConnection();
try{ PreparedStatement ps = con.prepareStatement(
Connection con= DataBase.getConnection();
PreparedStatement ps=con.prepareStatement(
"insert into postulante(nombre,apellido,nro_cedula,correo,telefono,direccion,experiencia_laboral,estudio_universitario,notebook,bootcamp_id,aceptado) values (?,?,?,?,?,?,?,?,?,?,?)"); "insert into postulante(nombre,apellido,nro_cedula,correo,telefono,direccion,experiencia_laboral,estudio_universitario,notebook,bootcamp_id,aceptado) values (?,?,?,?,?,?,?,?,?,?,?)");
ps.setString(1,postulante.getNombre()); ps.setString(1, postulante.getNombre());
ps.setString(2,postulante.getApellido()); ps.setString(2, postulante.getApellido());
ps.setInt(3,postulante.getNro_cedula()); ps.setInt(3, postulante.getNro_cedula());
ps.setString(4,postulante.getCorreo()); ps.setString(4, postulante.getCorreo());
ps.setString(5,postulante.getTelefono()); ps.setString(5, postulante.getTelefono());
ps.setString(6,postulante.getDireccion()); ps.setString(6, postulante.getDireccion());
ps.setBoolean(7,postulante.getExpLaboral()); ps.setBoolean(7, postulante.getExpLaboral());
ps.setBoolean(8,postulante.getEstudioUniversitario()); ps.setBoolean(8, postulante.getEstudioUniversitario());
ps.setBoolean(9,postulante.getNotebook()); ps.setBoolean(9, postulante.getNotebook());
ps.setInt(10,postulante.getBootcampId()); ps.setInt(10, postulante.getBootcampId());
ps.setBoolean(11,postulante.getAceptado()); ps.setBoolean(11, postulante.getAceptado());
status=ps.executeUpdate(); status = ps.executeUpdate();
con.close(); con.close();
}catch(Exception ex){ex.printStackTrace();} } catch (Exception ex) {
ex.printStackTrace();
}
return status; return status;
} }
public static List<Postulante> listarPostulante(){ public static List<Postulante> listarPostulante() {
List<Postulante> postulante = new ArrayList<>(); List<Postulante> postulante = new ArrayList<>();
String sql = "select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, a.telefono, a.direccion, " + String sql = "select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, a.telefono, a.direccion, " +
"a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, c.nombre_lenguaje as bootcamp, \n" + "a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, c.nombre_lenguaje as bootcamp, \n" +
...@@ -44,11 +43,11 @@ public class PostulanteDao { ...@@ -44,11 +43,11 @@ public class PostulanteDao {
" inner join bootcamp b on b.id= a.bootcamp_id\n" + " inner join bootcamp b on b.id= a.bootcamp_id\n" +
" inner join lenguaje c on c.id=b.id_lenguaje\n" + " inner join lenguaje c on c.id=b.id_lenguaje\n" +
" order by a.id;"; " order by a.id;";
try{ try {
Connection con= DataBase.getConnection(); Connection con = DataBase.getConnection();
PreparedStatement ps=con.prepareStatement(sql); PreparedStatement ps = con.prepareStatement(sql);
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
while(rs.next()){ while (rs.next()) {
Postulante postulanteObject = new Postulante(); Postulante postulanteObject = new Postulante();
postulanteObject.setId(rs.getInt("id")); postulanteObject.setId(rs.getInt("id"));
postulanteObject.setNombre(rs.getString("nombre")); postulanteObject.setNombre(rs.getString("nombre"));
...@@ -73,39 +72,29 @@ public class PostulanteDao { ...@@ -73,39 +72,29 @@ public class PostulanteDao {
return postulante; return postulante;
} }
public static void update(int id, Boolean valor){ public static void update(int id, String valor) {
if(valor==true){ boolean v = valor.equals("0") ? false : true;
try{
Connection con= DataBase.getConnection(); try {
PreparedStatement ps=con.prepareStatement("update postulante set aceptado= false\n" + Connection con = DataBase.getConnection();
"where id=?"); PreparedStatement ps = con.prepareStatement("update postulante set aceptado= ? where id=?");
ps.setInt(1,id); ps.setBoolean(1, v);
ps.setInt(2, id);
ps.executeUpdate(); ps.executeUpdate();
con.close(); con.close();
}catch(Exception ex){
ex.printStackTrace();
} }
}else { catch (Exception ex) {
try{
Connection con= DataBase.getConnection();
PreparedStatement ps=con.prepareStatement("update postulante set aceptado= true\n" +
"where id=?");
ps.setInt(1,id);
ps.executeUpdate();
con.close();
}catch(Exception ex){
ex.printStackTrace(); ex.printStackTrace();
} }
}
} }
public static List<Postulante> buscarPorNombre(String nombre){ public static List<Postulante> buscarPorNombre(String nombre) {
List<Postulante> postulante = null; List<Postulante> postulante = null;
Postulante postulanteObject = null; Postulante postulanteObject = null;
try{ try {
Connection con= DataBase.getConnection(); Connection con = DataBase.getConnection();
PreparedStatement ps=con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, " + PreparedStatement ps = con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, " +
"a.telefono, a.direccion, a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, " + "a.telefono, a.direccion, a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, " +
"c.nombre_lenguaje as bootcamp, \n" + "a.aceptado from postulante a\n" + "c.nombre_lenguaje as bootcamp, \n" + "a.aceptado from postulante a\n" +
" inner join bootcamp b on b.id= a.bootcamp_id\n" + " inner join bootcamp b on b.id= a.bootcamp_id\n" +
...@@ -115,8 +104,8 @@ public class PostulanteDao { ...@@ -115,8 +104,8 @@ public class PostulanteDao {
System.out.println(nombre); System.out.println(nombre);
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
postulante = new ArrayList<>(); postulante = new ArrayList<>();
postulanteObject= new Postulante(); postulanteObject = new Postulante();
while(rs.next()){ while (rs.next()) {
postulanteObject.setId(rs.getInt("id")); postulanteObject.setId(rs.getInt("id"));
postulanteObject.setNombre(rs.getString("nombre")); postulanteObject.setNombre(rs.getString("nombre"));
...@@ -134,17 +123,17 @@ public class PostulanteDao { ...@@ -134,17 +123,17 @@ public class PostulanteDao {
postulante.add(postulanteObject); postulante.add(postulanteObject);
} }
con.close(); con.close();
}catch(Exception ex){ } catch (Exception ex) {
ex.printStackTrace(); ex.printStackTrace();
} }
return postulante; return postulante;
} }
public static List<Postulante> listarPostulanteAceptados(){ public static List<Postulante> listarPostulanteAceptados() {
List<Postulante> postulante = null; List<Postulante> postulante = null;
try{ try {
Connection con= DataBase.getConnection(); Connection con = DataBase.getConnection();
PreparedStatement ps=con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, " + PreparedStatement ps = con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, " +
"a.telefono, a.direccion, a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, " + "a.telefono, a.direccion, a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, " +
"c.nombre_lenguaje as bootcamp, \n" + "a.aceptado from postulante a\n" + "c.nombre_lenguaje as bootcamp, \n" + "a.aceptado from postulante a\n" +
" inner join bootcamp b on b.id= a.bootcamp_id\n" + " inner join bootcamp b on b.id= a.bootcamp_id\n" +
...@@ -152,8 +141,8 @@ public class PostulanteDao { ...@@ -152,8 +141,8 @@ public class PostulanteDao {
" where a.aceptado= true "); " where a.aceptado= true ");
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
postulante = new ArrayList<>(); postulante = new ArrayList<>();
Postulante postulanteObject= new Postulante(); Postulante postulanteObject = new Postulante();
while(rs.next()){ while (rs.next()) {
postulanteObject.setId(rs.getInt("id")); postulanteObject.setId(rs.getInt("id"));
postulanteObject.setNombre(rs.getString("nombre")); postulanteObject.setNombre(rs.getString("nombre"));
postulanteObject.setApellido(rs.getString("apellido")); postulanteObject.setApellido(rs.getString("apellido"));
...@@ -170,17 +159,17 @@ public class PostulanteDao { ...@@ -170,17 +159,17 @@ public class PostulanteDao {
postulante.add(postulanteObject); postulante.add(postulanteObject);
} }
con.close(); con.close();
}catch(Exception ex){ } catch (Exception ex) {
ex.printStackTrace(); ex.printStackTrace();
} }
return postulante; return postulante;
} }
public static List<Postulante> listarPorBootcamp(String nombre){ public static List<Postulante> listarPorBootcamp(String nombre) {
List<Postulante> postulante = null; List<Postulante> postulante = null;
try{ try {
Connection con= DataBase.getConnection(); Connection con = DataBase.getConnection();
PreparedStatement ps=con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, a.telefono, a.direccion, \n" + PreparedStatement ps = con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, a.telefono, a.direccion, \n" +
" a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, c.nombre_lenguaje as bootcamp, \n" + " a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, c.nombre_lenguaje as bootcamp, \n" +
" a.aceptado from postulante a\n" + " a.aceptado from postulante a\n" +
" inner join bootcamp b on b.id= a.bootcamp_id\n" + " inner join bootcamp b on b.id= a.bootcamp_id\n" +
...@@ -189,8 +178,8 @@ public class PostulanteDao { ...@@ -189,8 +178,8 @@ public class PostulanteDao {
ps.setString(1, "%" + nombre + "%"); ps.setString(1, "%" + nombre + "%");
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
postulante = new ArrayList<>(); postulante = new ArrayList<>();
Postulante postulanteObject= new Postulante(); Postulante postulanteObject = new Postulante();
while(rs.next()){ while (rs.next()) {
postulanteObject.setId(rs.getInt("id")); postulanteObject.setId(rs.getInt("id"));
postulanteObject.setNombre(rs.getString("nombre")); postulanteObject.setNombre(rs.getString("nombre"));
postulanteObject.setApellido(rs.getString("apellido")); postulanteObject.setApellido(rs.getString("apellido"));
...@@ -207,18 +196,18 @@ public class PostulanteDao { ...@@ -207,18 +196,18 @@ public class PostulanteDao {
postulante.add(postulanteObject); postulante.add(postulanteObject);
} }
con.close(); con.close();
}catch(Exception ex){ } catch (Exception ex) {
ex.printStackTrace(); ex.printStackTrace();
} }
return postulante; return postulante;
} }
public static List<Postulante> buscarPorNoteBook(){ public static List<Postulante> buscarPorNoteBook() {
List<Postulante> postulante = null; List<Postulante> postulante = null;
Postulante postulanteObject = null; Postulante postulanteObject = null;
try{ try {
Connection con= DataBase.getConnection(); Connection con = DataBase.getConnection();
PreparedStatement ps=con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, " + PreparedStatement ps = con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo, " +
"a.telefono, a.direccion, a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, " + "a.telefono, a.direccion, a.experiencia_laboral, a.estudio_universitario, a.bootcamp_id, a.notebook, " +
"c.nombre_lenguaje as bootcamp, \n" + "a.aceptado from postulante a\n" + "c.nombre_lenguaje as bootcamp, \n" + "a.aceptado from postulante a\n" +
" inner join bootcamp b on b.id= a.bootcamp_id\n" + " inner join bootcamp b on b.id= a.bootcamp_id\n" +
...@@ -226,8 +215,8 @@ public class PostulanteDao { ...@@ -226,8 +215,8 @@ public class PostulanteDao {
" where a.notebook=true "); " where a.notebook=true ");
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
postulante = new ArrayList<>(); postulante = new ArrayList<>();
postulanteObject= new Postulante(); postulanteObject = new Postulante();
while(rs.next()){ while (rs.next()) {
postulanteObject.setId(rs.getInt("id")); postulanteObject.setId(rs.getInt("id"));
postulanteObject.setNombre(rs.getString("nombre")); postulanteObject.setNombre(rs.getString("nombre"));
...@@ -245,9 +234,11 @@ public class PostulanteDao { ...@@ -245,9 +234,11 @@ public class PostulanteDao {
postulante.add(postulanteObject); postulante.add(postulanteObject);
} }
con.close(); con.close();
}catch(Exception ex){ } catch (Exception ex) {
ex.printStackTrace(); ex.printStackTrace();
} }
return postulante; return postulante;
} }
} }
...@@ -3,6 +3,8 @@ package com.roshka.proyectofinal.Postulante; ...@@ -3,6 +3,8 @@ package com.roshka.proyectofinal.Postulante;
import com.roshka.proyectofinal.DataBase; import com.roshka.proyectofinal.DataBase;
import com.roshka.proyectofinal.entity.Postulante; import com.roshka.proyectofinal.entity.Postulante;
import com.roshka.proyectofinal.entity.Bootcamp; import com.roshka.proyectofinal.entity.Bootcamp;
import com.roshka.proyectofinal.entity.PostulanteLenguaje;
import jakarta.servlet.RequestDispatcher;
import jakarta.servlet.ServletException; import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServlet;
...@@ -15,57 +17,66 @@ import java.sql.PreparedStatement; ...@@ -15,57 +17,66 @@ import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.Statement; import java.sql.Statement;
@WebServlet("/SaveServlet") @WebServlet("/SaveServlet")
public class SaveServlet extends HttpServlet { public class SaveServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { throws ServletException, IOException {
response.setContentType("text/html"); response.setContentType("text/html");
PrintWriter out=response.getWriter(); PrintWriter out = response.getWriter();
boolean rechazarDatos = false; boolean rechazarDatos = false;
int bootcampActual = 3; int bootcampActual = Integer.parseInt(request.getParameter("bootcamp"));
try { try {
Connection con = DataBase.getConnection(); Connection con = DataBase.getConnection();
//
Statement stmt = con.createStatement(); Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT correo,bootcamp_id FROM postulante WHERE postulante.bootcamp_id =" + bootcampActual); ResultSet rs = stmt.executeQuery(
// "SELECT correo,bootcamp_id FROM postulante WHERE postulante.bootcamp_id =" + bootcampActual);
String nombre=request.getParameter("nombre");
String apellido=request.getParameter("apellido"); String nombre = request.getParameter("nombre");
int cedula=Integer.parseInt(request.getParameter("cedula")); String apellido = request.getParameter("apellido");
String correo=request.getParameter("correo"); int cedula = Integer.parseInt(request.getParameter("cedula"));
//BUCLE PARA VERIFICAR EL CORREO EN EL BOOTCAMP ACTUAL String correo = request.getParameter("correo");
while (rs.next()){ // BUCLE PARA VERIFICAR EL CORREO EN EL BOOTCAMP ACTUAL
String correoBase =rs.getString("correo"); while (rs.next()) {
String correoBase = rs.getString("correo");
int bootcampIdBase = rs.getInt("bootcamp_id"); int bootcampIdBase = rs.getInt("bootcamp_id");
if(correo.equals(correoBase) && (bootcampIdBase==bootcampActual)){ if (correo.equals(correoBase) && (bootcampIdBase == bootcampActual)) {
rechazarDatos = true; rechazarDatos = true;
} }
} }
String telefono=request.getParameter("telefono"); rs = stmt.executeQuery("SELECT * FROM lenguaje");
String direccion=request.getParameter("direccion"); int contador = 0;
boolean experienciaProgramando = false; while (rs.next()) {
String nombreLenguaje = rs.getString("nombre_lenguaje");
if (request.getParameter(nombreLenguaje) != null) {
contador++;
}
}
if (contador == 0) {
rechazarDatos = true;
}
String telefono = request.getParameter("telefono");
String direccion = request.getParameter("direccion");
boolean experienciaLaboral = false; boolean experienciaLaboral = false;
boolean universidad = false; boolean universidad = false;
boolean notebook = false; boolean notebook = false;
if (request.getParameter("experiencia_laboral") != null){ if (request.getParameter("experiencia_laboral") != null) {
experienciaLaboral = true; experienciaLaboral = true;
} }
if (request.getParameter("experiencia_programando") != null) { if (request.getParameter("notebook") != null) {
experienciaProgramando = true;
}
if (request.getParameter("notebook") != null){
notebook = true; notebook = true;
} }
if (request.getParameter("universidad") != null){ if (request.getParameter("universidad") != null) {
universidad = true; universidad = true;
} }
Bootcamp bootcamp = new Bootcamp();
Postulante postulante=new Postulante(); Postulante postulante = new Postulante();
//SI LOS DATOS SON CORRECTOS NO SE RECHAZAN ENTONCES CARGA A LA BASE PostulanteLenguaje cargarLenguaje = new PostulanteLenguaje();
if (!rechazarDatos){ int status = 0;
int statusLenguaje = 0;
// SI LOS DATOS SON CORRECTOS NO SE RECHAZAN ENTONCES CARGA A LA BASE
if (!rechazarDatos) {
postulante.setNombre(nombre); postulante.setNombre(nombre);
postulante.setApellido(apellido); postulante.setApellido(apellido);
postulante.setNro_cedula(cedula); postulante.setNro_cedula(cedula);
...@@ -77,34 +88,64 @@ public class SaveServlet extends HttpServlet { ...@@ -77,34 +88,64 @@ public class SaveServlet extends HttpServlet {
postulante.setNotebook(notebook); postulante.setNotebook(notebook);
postulante.setBootcampId(bootcampActual); postulante.setBootcampId(bootcampActual);
postulante.setAceptado(false); postulante.setAceptado(false);
status = PostulanteDao.save(postulante);
rs = stmt.executeQuery("SELECT id FROM postulante WHERE postulante.nro_cedula=" + cedula
+ " AND postulante.bootcamp_id=" + bootcampActual + " ORDER BY id DESC LIMIT 1");
int idUltimoPostulante = 0;
while (rs.next()) {
idUltimoPostulante = rs.getInt("id");
}
rs = stmt.executeQuery("SELECT * FROM lenguaje");
while (rs.next()) {
int idLenguaje = rs.getInt("id");
String nombreLenguaje = rs.getString("nombre_lenguaje");
if (request.getParameter(nombreLenguaje) != null) {
cargarLenguaje.setIdLenguaje(idLenguaje);
cargarLenguaje.setIdPostulante(idUltimoPostulante);
statusLenguaje = PostulanteLenguajeDao.save(cargarLenguaje);
}
}
} }
int status=PostulanteDao.save(postulante); if (status > 0) {
if(status>0){ // out.print("<p>Record saved successfully!</p>");
//out.print("<p>Record saved successfully!</p>");
out.print(" <div class=\"alert\">\n" + out.print(" <div class=\"alert\">\n" +
" <span class=\"closebtn\" onclick=\"this.parentElement.style.display='none';\">&times;</span> \n" + " <span class=\"closebtn\" onclick=\"this.parentElement.style.display='none';\">&times;</span> \n"
+
" <strong>Formulario Cargado!</strong> EXITOSAMENTE CARGADO\n" + " <strong>Formulario Cargado!</strong> EXITOSAMENTE CARGADO\n" +
"</div>"); "</div>");
request.getRequestDispatcher("formulario.jsp").include(request, response); request.setAttribute("bootcamp", bootcampActual);
}else{ RequestDispatcher rd = request.getRequestDispatcher("formulario.jsp");
if (rechazarDatos){ rd.include(request, response);
//out.println("El correo ingresado ya esta registrado para el bootcamp actual"); // RequestDispatcher rd = request.getRequestDispatcher("formulario.jsp");
out.print(" <div class=\"alert info\">\n" + // rd.include(request, response);
" <span class=\"closebtn\" onclick=\"this.parentElement.style.display='none';\">&times;</span> \n" + } else {
" <strong>Formulario ya Cargado!</strong> YA EXISTE EL FORMULARIO\n" + if (rechazarDatos) {
"</div>");
request.getRequestDispatcher("formulario.jsp").include(request, response); out.print("<div class='alert info''>");
}else { out.print(
"<span class='closebtn'' onclick='this.parentElement.style.display='none';'>&times;</span>");
out.print("<strong>Formulario ya Cargado!</strong> YA EXISTE EL FORMULARIO");
out.print("</div>");
// request.getRequestDispatcher("formulario.jsp").include(request, response);
request.setAttribute("bootcamp", bootcampActual);
RequestDispatcher rd = request.getRequestDispatcher("formulario.jsp");
rd.include(request, response);
} else {
out.println("Error al cargar datos"); out.println("Error al cargar datos");
out.print(" <div class=\"alert info error\">\n" + out.print("<div class='alert info error'>" +
" <span class=\"closebtn\" onclick=\"this.parentElement.style.display='none';\">&times;</span> \n" + "<span class=\"closebtn\" onclick=\"this.parentElement.style.display='none';\">&times;</span> \n"
" <strong>Formulario ya Cargado!</strong> YA EXISTE EL FORMULARIO\n" + +
"<strong>Formulario ya Cargado!</strong> YA EXISTE EL FORMULARIO\n" +
"</div>"); "</div>");
request.getRequestDispatcher("formulario.jsp").include(request, response); request.setAttribute("bootcamp", bootcampActual);
RequestDispatcher rd = request.getRequestDispatcher("formulario.jsp");
rd.include(request, response);
// request.getRequestDispatcher("formulario.jsp").include(request, response);
} }
} }
} catch (Exception ex) {
}catch (Exception ex){
ex.printStackTrace(); ex.printStackTrace();
} }
out.close(); out.close();
......
...@@ -15,7 +15,7 @@ public class BootcampDao { ...@@ -15,7 +15,7 @@ public class BootcampDao {
try{ try{
Connection con= DataBase.getConnection(); Connection con= DataBase.getConnection();
PreparedStatement ps=con.prepareStatement( PreparedStatement ps=con.prepareStatement(
"insert into bootcamp (id_lenguaje,id_profesor,fecha_inicio,fecha_fin,descripcion,imagen,titulo,activo) values (?,?,?,?,?,?,?,?)"); "insert into bootcamp (id_lenguaje,id_profesor,fecha_inicio,fecha_fin,descripcion,imagen,titulo,activo) values (?,?,?::date,?::date,?,?,?,?)");
ps.setInt(1,b.getId_lenguaje()); ps.setInt(1,b.getId_lenguaje());
ps.setInt(2,b.getId_profesor()); ps.setInt(2,b.getId_profesor());
ps.setString(3,b.getFecha_inicio()); ps.setString(3,b.getFecha_inicio());
...@@ -38,7 +38,7 @@ public class BootcampDao { ...@@ -38,7 +38,7 @@ public class BootcampDao {
try{ try{
Connection con= DataBase.getConnection(); Connection con= DataBase.getConnection();
PreparedStatement ps=con.prepareStatement( PreparedStatement ps=con.prepareStatement(
"update Bootcamp set id_lenguaje=?,id_profesor=?,fecha_inicio=?,fecha_fin=?,descripcion=?,titulo=?,activo=? where id=?"); "update bootcamp set id_lenguaje=?,id_profesor=?,fecha_inicio=?::date,fecha_fin=?::date,descripcion=?,titulo=?,activo=? where id=?");
ps.setInt(1,b.getId_lenguaje()); ps.setInt(1,b.getId_lenguaje());
ps.setInt(2,b.getId_profesor()); ps.setInt(2,b.getId_profesor());
ps.setString(3,b.getFecha_inicio()); ps.setString(3,b.getFecha_inicio());
...@@ -50,13 +50,13 @@ public class BootcampDao { ...@@ -50,13 +50,13 @@ public class BootcampDao {
status=ps.executeUpdate(); status=ps.executeUpdate();
System.out.println(status);
con.close(); con.close();
}catch(Exception ex){ex.printStackTrace();} }catch(Exception ex){ex.printStackTrace();}
return status; return status;
} }
public static List<Bootcamp> listar(){ public static List<Bootcamp> listar(){
ArrayList<Bootcamp> list = new ArrayList<>(); ArrayList<Bootcamp> list = new ArrayList<>();
String sql = "select a.id, a.fecha_inicio, a.fecha_fin, a.descripcion, a.titulo,\n" + String sql = "select a.id, a.fecha_inicio, a.fecha_fin, a.descripcion, a.titulo,\n" +
...@@ -126,9 +126,8 @@ public class BootcampDao { ...@@ -126,9 +126,8 @@ public class BootcampDao {
b.setTitulo(rs.getString("titulo")); b.setTitulo(rs.getString("titulo"));
b.setFecha_fin(rs.getString("fecha_fin")); b.setFecha_fin(rs.getString("fecha_fin"));
b.setFecha_inicio(rs.getString("fecha_inicio")); b.setFecha_inicio(rs.getString("fecha_inicio"));
b.setNombre_profesor(rs.getString("nombre")); b.setId_profesor(rs.getInt("id_profesor"));
b.setApellido_profesor(rs.getString("apellido")); b.setId_lenguaje(rs.getInt("id_lenguaje"));
b.setNombre_lenguaje(rs.getString("nombre_lenguaje"));
b.setImagen(rs.getString("imagen")); b.setImagen(rs.getString("imagen"));
} }
con.close(); con.close();
......
package com.roshka.proyectofinal.bootcamp; package com.roshka.proyectofinal.bootcamp;
import com.roshka.proyectofinal.entity.Bootcamp;
import jakarta.servlet.RequestDispatcher; import jakarta.servlet.RequestDispatcher;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
import jakarta.servlet.ServletException; import jakarta.servlet.ServletException;
import java.io.IOException; import java.io.IOException;
@WebServlet("/EditServletBootcamp")
public class EditServlet extends HttpServlet { public class EditServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { throws ServletException, IOException {
response.setContentType("text/html");
String sid=request.getParameter("id"); String sid=request.getParameter("id");
int id=Integer.parseInt(sid); int id=Integer.parseInt(sid);
request.setAttribute("id", id); BootcampDao bootcampDao = new BootcampDao();
Bootcamp bootcamp = bootcampDao.getBootcampById(id);
request.setAttribute("Bootcamp", bootcamp);
RequestDispatcher rd = request.getRequestDispatcher("formulario_bootcamp.jsp"); RequestDispatcher rd = request.getRequestDispatcher("formulario_bootcamp.jsp");
rd.forward(request, response); rd.include(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int id_lenguaje= Integer.parseInt(request.getParameter("id_lenguaje2"));
int id_profesor= Integer.parseInt(request.getParameter("id_profesor2"));
String fecha_inicio=request.getParameter("fecha_inicio2");
String fecha_fin=request.getParameter("fecha_fin2");
String descripcion=request.getParameter("descripcion2");
String imagen=request.getParameter("imagen2");
String titulo=request.getParameter("titulo2");
int id = Integer.parseInt(request.getParameter("id"));
String activoStr = request.getParameter("activo2");
System.out.println(activoStr);
Boolean activo = true;
if ( activoStr == null ) {
activo = false;
}else if (activoStr.equals("on")) {
activo = true;
}
System.out.println(activo);
Bootcamp bootcamp =new Bootcamp( id_lenguaje, id_profesor, fecha_inicio, fecha_fin, descripcion, imagen, titulo, activo);
bootcamp.setId(id);
int status=BootcampDao.update(bootcamp);
if(status>0){
response.sendRedirect("formulario_bootcamp.jsp");
}else{
System.out.println("Sorry! unable to update record");
} }
}
} }
\ No newline at end of file
...@@ -2,6 +2,7 @@ package com.roshka.proyectofinal.bootcamp; ...@@ -2,6 +2,7 @@ package com.roshka.proyectofinal.bootcamp;
import com.roshka.proyectofinal.entity.Bootcamp; import com.roshka.proyectofinal.entity.Bootcamp;
import jakarta.servlet.ServletException; import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
...@@ -9,6 +10,7 @@ import jakarta.servlet.http.HttpServletResponse; ...@@ -9,6 +10,7 @@ import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.io.PrintWriter; import java.io.PrintWriter;
@WebServlet("/SaveServletBootcamp")
public class SaveServlet extends HttpServlet { public class SaveServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { throws ServletException, IOException {
...@@ -23,8 +25,9 @@ public class SaveServlet extends HttpServlet { ...@@ -23,8 +25,9 @@ public class SaveServlet extends HttpServlet {
String imagen=request.getParameter("imagen"); String imagen=request.getParameter("imagen");
String titulo=request.getParameter("titulo"); String titulo=request.getParameter("titulo");
String activoStr=request.getParameter("activo"); String activoStr=request.getParameter("activo");
System.out.println(activoStr);
Boolean activo = false; Boolean activo = false;
if ( activoStr == "on" ) { if ( activoStr.equals("on") ) {
activo = true; activo = true;
} }
...@@ -33,7 +36,7 @@ public class SaveServlet extends HttpServlet { ...@@ -33,7 +36,7 @@ public class SaveServlet extends HttpServlet {
int status= BootcampDao.save(b); int status= BootcampDao.save(b);
if(status>0){ if(status>0){
out.print("<p>Record saved successfully!</p>"); out.print("<p>Record saved successfully!</p>");
request.getRequestDispatcher("index.html").include(request, response); request.getRequestDispatcher("formulario_bootcamp.jsp").include(request, response);
}else{ }else{
out.println("Sorry! unable to save record"); out.println("Sorry! unable to save record");
} }
......
...@@ -8,6 +8,11 @@ public class Lenguaje { ...@@ -8,6 +8,11 @@ public class Lenguaje {
} }
public Lenguaje(int id, String nombre_lenguaje) {
this.id = id;
this.nombre_lenguaje = nombre_lenguaje;
}
public int getId() { public int getId() {
return id; return id;
} }
......
...@@ -44,9 +44,34 @@ public class Postulante { ...@@ -44,9 +44,34 @@ public class Postulante {
this.aceptado = aceptado; this.aceptado = aceptado;
} }
public int getNroCedula() {
return nroCedula;
}
public String getNombreBootcamp() {
return nombreBootcamp;
}
public boolean isExpLaboral() {
return expLaboral;
}
public boolean isEstudioUniversitario() {
return estudioUniversitario;
}
public boolean isNotebook() {
return notebook;
}
public boolean isAceptado() {
return aceptado;
}
public int getId() { public int getId() {
return id; return id;
} }
public int getNro_cedula() { public int getNro_cedula() {
return nroCedula; return nroCedula;
} }
...@@ -118,35 +143,13 @@ public class Postulante { ...@@ -118,35 +143,13 @@ public class Postulante {
this.id = id; this.id = id;
} }
public int getNroCedula() {
return nroCedula;
}
public void setNroCedula(int nroCedula) { public void setNroCedula(int nroCedula) {
this.nroCedula = nroCedula; this.nroCedula = nroCedula;
} }
public String getNombreBootcamp() {
return nombreBootcamp;
}
public void setNombreBootcamp(String nombreBootcamp) { public void setNombreBootcamp(String nombreBootcamp) {
this.nombreBootcamp = nombreBootcamp; this.nombreBootcamp = nombreBootcamp;
} }
public boolean isExpLaboral() {
return expLaboral;
}
public boolean isEstudioUniversitario() {
return estudioUniversitario;
}
public boolean isNotebook() {
return notebook;
}
public boolean isAceptado() {
return aceptado;
}
} }
package com.roshka.proyectofinal.lenguaje;
import com.roshka.proyectofinal.entity.Lenguaje;
import jakarta.servlet.RequestDispatcher;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/EditServletLenguaje")
public class EditServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String sid=request.getParameter("id");
int id=Integer.parseInt(sid);
LenguajeDao lenguajeDao = new LenguajeDao();
Lenguaje lenguaje = lenguajeDao.getLenguajeById(id);
request.setAttribute("Lenguaje", lenguaje);
RequestDispatcher rd = request.getRequestDispatcher("formulario_lenguaje.jsp");
rd.include(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String nombre_lenguaje=request.getParameter("nombre_lenguaje");
int id = Integer.parseInt(request.getParameter("id"));
System.out.println(id);
Lenguaje lenguaje =new Lenguaje(id,nombre_lenguaje);
int status=LenguajeDao.update(lenguaje);
if(status>0){
response.sendRedirect("formulario_lenguaje.jsp");
}else{
System.out.println("Sorry! unable to update record");
}
}
}
...@@ -66,6 +66,22 @@ public class LenguajeDao { ...@@ -66,6 +66,22 @@ public class LenguajeDao {
return status; return status;
} }
public static int update(Lenguaje l){
int status=0;
try{
Connection con= DataBase.getConnection();
PreparedStatement ps=con.prepareStatement(
"update lenguaje set nombre_lenguaje=? where id=?");
ps.setString(1,l.getNombre_lenguaje());
ps.setInt(2,l.getId());
status=ps.executeUpdate();
con.close();
}catch(Exception ex){ex.printStackTrace();}
return status;
}
public static Lenguaje getLenguajeById(int id){ public static Lenguaje getLenguajeById(int id){
Lenguaje lenguaje=new Lenguaje(); Lenguaje lenguaje=new Lenguaje();
......
...@@ -78,7 +78,7 @@ public class LoginServlet extends HttpServlet { ...@@ -78,7 +78,7 @@ public class LoginServlet extends HttpServlet {
catch (Exception ignored) { } catch (Exception ignored) { }
// Si no es posible redireccionar a la pagina solicitada, llevar a la main page // Si no es posible redireccionar a la pagina solicitada, llevar a la main page
RequestDispatcher rd = request.getRequestDispatcher("menu.html"); RequestDispatcher rd = request.getRequestDispatcher("menu.jsp");
rd.include(request,response); rd.include(request,response);
} else { } else {
......
package com.roshka.proyectofinal.profesor;
import com.roshka.proyectofinal.entity.Lenguaje;
import com.roshka.proyectofinal.entity.Profesor;
import jakarta.servlet.RequestDispatcher;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/EditServletProfesor")
public class EditServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int id = Integer.parseInt(request.getParameter("id"));
ProfesorDao profesorDao = new ProfesorDao();
// Profesor profesor = profesorDao.getProfesorById(id);
// request.setAttribute("Profesor", profesor);
RequestDispatcher rd = request.getRequestDispatcher("formulario_profesor.jsp");
rd.include(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int id = Integer.parseInt(request.getParameter("id"));
String nombre = request.getParameter("nombre");
String apellido = request.getParameter("apellido");
String email = request.getParameter("correo");
int nro_cedula = Integer.parseInt(request.getParameter("nro_cedula"));
Profesor profesor =new Profesor(nro_cedula, nombre, apellido, email);
profesor.setId(id);
// int status=ProfesorDao.update(profesor);
// if(status>0){
// response.sendRedirect("formulario_profesor.jsp");
// }else{
// System.out.println("Sorry! unable to update record");
// }
}
}
package com.roshka.proyectofinal.profesor;
import com.roshka.proyectofinal.entity.Profesor;
import jakarta.servlet.RequestDispatcher;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import static com.roshka.proyectofinal.profesor.ProfesorDao.buscarPorNombre;
import static com.roshka.proyectofinal.profesor.ProfesorDao.listarProfesor;
@WebServlet("/filtros-profesor")
public class Filtros extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
List<Profesor> profesores = listarProfesor();
String nombre = req.getParameter("nombreBuscar");
String apellido = req.getParameter("apellidoBuscar");
System.out.println(nombre);
System.out.println(apellido);
if(nombre!=null || apellido!=null){
profesores = buscarPorNombre(nombre, apellido);
}
req.getServletContext().setAttribute("profesores", profesores);
RequestDispatcher reqDisp= req.getRequestDispatcher("profesor-consulta.jsp");
reqDisp.forward(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
List<Profesor > nombre = listarProfesor();
List<Profesor > apellido = listarProfesor();
req.getServletContext().setAttribute("nombre", nombre);
req.getServletContext().setAttribute("apellido", apellido);
RequestDispatcher reqDisp= req.getRequestDispatcher("profesor-consulta.jsp");
reqDisp.forward(req,resp);
}
}
...@@ -30,35 +30,54 @@ public class ProfesorDao { ...@@ -30,35 +30,54 @@ public class ProfesorDao {
return status; return status;
} }
public static List<Profesor> listarProfesor(){
public static List<Profesor> listar(){
ArrayList<Profesor> list = new ArrayList<>(); ArrayList<Profesor> list = new ArrayList<>();
String sql = "select * from profesor"; String sql = "select * from profesor";
try{ try{
Connection con= DataBase.getConnection(); Connection con= DataBase.getConnection();
PreparedStatement ps=con.prepareStatement(sql); PreparedStatement ps=con.prepareStatement(sql);
ResultSet rs = ps.executeQuery(); ResultSet rs = ps.executeQuery();
while(rs.next()){ while(rs.next()){
Profesor profe = new Profesor(); Profesor profesorObject = new Profesor();
profe.setId(rs.getInt("id")); profesorObject.setNombre(rs.getString("nombre"));
profe.setNombre(rs.getString("nombre")); profesorObject.setApellido(rs.getString("apellido"));
profe.setApellido(rs.getString("apellido")); profesorObject.setNro_cedula(rs.getInt("nro_cedula"));
profe.setNro_cedula(rs.getInt("nro_cedula")); profesorObject.setCorreo(rs.getString("correo"));
profe.setCorreo(rs.getString("correo")); list.add(profesorObject);
list.add(profe);
} }
con.close(); con.close();
} catch (SQLException e) { } catch (SQLException e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
return list; return list;
} }
public static List<Profesor> buscarPorNombre(String nombre, String apellido){
List<Profesor> profesores = new ArrayList<>();
Profesor profesorObject = new Profesor();
try{
Connection con= DataBase.getConnection();
PreparedStatement ps=con.prepareStatement("select a.id, a.nombre, a.apellido, a.nro_cedula, a.correo from profesor a " +
" where a.nombre ilike ? and a.apellido ilike ? ");
ps.setString(1, "%" + nombre + "%");
ps.setString(2, "%" + apellido + "%");
System.out.println(nombre);
ResultSet rs = ps.executeQuery();
while(rs.next()){
profesorObject.setNombre(rs.getString("nombre"));
profesorObject.setApellido(rs.getString("apellido"));
profesorObject.setNro_cedula(rs.getInt("nro_cedula"));
profesorObject.setCorreo(rs.getString("correo"));
profesores.add(profesorObject);
}
con.close();
}catch(Exception ex){
ex.printStackTrace();
}
return profesores;
}
public static int delete(int id){ public static int delete(int id){
int status=0; int status=0;
try{ try{
...@@ -72,25 +91,4 @@ public class ProfesorDao { ...@@ -72,25 +91,4 @@ public class ProfesorDao {
return status; return status;
} }
public static Profesor getProfesorById(int id){
Profesor p=new Profesor();
try{
Connection con=DataBase.getConnection();
PreparedStatement ps=con.prepareStatement("select * from profesor where id=?");
ps.setInt(1,id);
ResultSet rs=ps.executeQuery();
if(rs.next()){
p.setId(rs.getInt("id"));
p.setNombre(rs.getString("nombre"));
p.setApellido(rs.getString("apellido"));
p.setNro_cedula(rs.getInt("nro_cedula"));
p.setCorreo(rs.getString("correo"));
}
con.close();
}catch(Exception ex){ex.printStackTrace();}
return p;
}
} }
\ No newline at end of file
(function() {
const form = document.querySelector('#agarraunolaputa');
const checkboxes = form.querySelectorAll('input[type=checkbox]');
const checkboxLength = checkboxes.length;
const firstCheckbox = checkboxLength > 0 ? checkboxes[0] : null;
function init() {
if (firstCheckbox) {
for (let i = 0; i < checkboxLength; i++) {
checkboxes[i].addEventListener('change', checkValidity);
}
checkValidity();
}
}
function isChecked() {
for (let i = 0; i < checkboxLength; i++) {
if (checkboxes[i].checked) return true;
}
return false;
}
function checkValidity() {
const errorMessage = !isChecked() ? 'Debe seleccionar al menos un lenguaje que conozca' : '';
firstCheckbox.setCustomValidity(errorMessage);
}
init();
})();
\ No newline at end of file
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootcamp</title>
<meta name="author" content="cssremix.com">
<meta name="robots" content="index,follow">
<link rel="canonical" href="https://cssremix.com">
<style>
@charset "UTF-8";:root{--bs-font-bold:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",bold,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient;--bs-body-font-family:var(--bs-font-bold);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:white;--bs-body-bg:#fff}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{background:url('https://www.bgeneral.com/wp-content/uploads/2020/09/landing%20recargas/fondo-azul-desktop.png');margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}p{margin-top:0;margin-bottom:1rem}ul{padding-left:2rem;margin-top:0;margin-bottom:1rem}img{vertical-align:middle}::-moz-focus-inner{padding:0;border-style:none}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}.lead{font-size:1.25rem;font-weight:300}.img-fluid{max-width:100%;height:auto}.container{width:100%;padding-right:var(--bs-gutter-x,.75rem);padding-left:var(--bs-gutter-x,.40rem);margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){h3{font-size:1.75rem}.container{max-width:1140px}}@media (min-width:1400px){.container{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(var(--bs-gutter-y) * -1);margin-right:calc(var(--bs-gutter-x) * -.5);margin-left:calc(var(--bs-gutter-x) * -.5)}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}@media (min-width:992px){.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-12{flex:0 0 auto;width:100%}}.mx-auto{margin-right:auto!important;margin-left:auto!important}.text-center{text-align:center!important}#hero{padding:80px 0;margin-bottom:40px;background-color:#3f51b5;color:white}#hero h1{margin-bottom:30px;color:white}
</style>
<style>#hero{padding:40px 0;margin-bottom:40px;background-color:white;color:white}#hero h1{margin-bottom:40px;color:#fff}.footer{margin-top:40px;padding:40px 0;background-color:white;color:white}.footer a{color:white}.table-responsive{font-size:15px}
h2 { color: white;font-weight: bold;font-family: 'Monaco', sans-serif font-weight: 100; }
h1 { color: white; font-weight: bold;font-family: 'Monaco', sans-serif font-weight: 100;}
h3 { color: white;font-weight: bold;font-family: 'Monaco', sans-serif font-weight: 100; }
h4 { color: white;font-weight: bold;font-family: 'Monaco', sans-serif font-weight: 100; }
h6 { color: white;font-weight: bold;font-family: 'Monaco', sans-serif font-weight: 100; }
mb-1 { color: black; }
@media (min-width: 400px) {p {font-size: 17px, color white;} .leading{font-size:1.25rem;font-weight:300;} }
.card-body p {font-size: 0rem,background-color white ;font-weight: bold;}
.star-ratings-css {
unicode-bidi: bidi-override;
color: white;
font-size: 25px;
height: 25px;
position: relative;
padding: 0;
margin-left: 10px;
}
.star-ratings-css-top {
color: white;
padding: 0;
position: absolute;
z-index: 1;
display: block;
top: 0;
left: 0;
overflow: hidden;
}
.star-ratings-css-bottom {
padding: 0;
display: block;
z-index: 0;
}
.card-h{
transition: .3s transform cubic-bezier(.155,1.105,.295,1.12),.3s box-shadow,.3s -webkit-transform cubic-bezier(.155,1.105,.295,1.12);
cursor: pointer;
height: 90%;
background-color: white;
}
.card-h:hover{
transform: scale(1.025);
box-shadow: 0 10px 20px white, 0 4px 8px white;
background-color: white;
}
.card-h .card-body {padding: 1rem;}
.card-h {height: unset;}
.card-img-top {
width: 70%;
height: 400px;
object-fit: cover;
}
lite-youtube{background-color:white;position:relative;display:block;contain:content;background-position:center center;background-size:cover;cursor:pointer;}lite-youtube::before{content:'';display:block;position:absolute;top:0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==);background-position:top;background-repeat:repeat-x;height:60px;padding-bottom:50px;width:100%;transition:all .2s cubic-bezier(0,0,.2,1)}lite-youtube::after{content:"";display:block;padding-bottom:calc(100% / (16 / 9))}lite-youtube>iframe{width:100%;height:100%;position:absolute;top:0;left:0;border:0}lite-youtube>.lty-playbtn{width:68px;height:48px;position:absolute;cursor:pointer;transform:translate3d(-50%,-50%,0);top:50%;left:50%;z-index:1;background-color:transparent;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 68 48"><path fill="%23f00" fill-opacity="0.8" d="M66.52,7.74c-0.78-2.93-2.49-5.41-5.42-6.19C55.79,.13,34,0,34,0S12.21,.13,6.9,1.55 C3.97,2.33,2.27,4.81,1.48,7.74C0.06,13.05,0,24,0,24s0.06,10.95,1.48,16.26c0.78,2.93,2.49,5.41,5.42,6.19 C12.21,47.87,34,48,34,48s21.79-0.13,27.1-1.55c2.93-0.78,4.64-3.26,5.42-6.19C67.94,34.95,68,24,68,24S67.94,13.05,66.52,7.74z"></path><path d="M 45,24 27,14 27,34" fill="%23fff"></path></svg>');filter:grayscale(100%);transition:filter .1s cubic-bezier(0,0,.2,1);border:none}lite-youtube .lty-playbtn:focus,lite-youtube:hover>.lty-playbtn{filter:none}lite-youtube.lyt-activated{cursor:unset}lite-youtube.lyt-activated::before,lite-youtube.lyt-activated>.lty-playbtn{opacity:0;pointer-events:none}.lyt-visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}
</style>
<link rel="preload" as="image" href="images/1280x853.webp">
<link rel="preload" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
<noscript><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet"></noscript>
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-6907191851278817" crossorigin="anonymous"></script>
</head>
<body>
<div class="col-lg-7 mx-auto mt-5 mb-5">
<h3 class="h3 mt-5">¿QUE ES UN BOOTCAMP?</h3>
<br>
<h6> ES UN CAMPO DE ENTRENAMIENTO INTENSIVO Y GRATUITO PARA PRINCIPIANTES QUE YA PROGRAMAN Y QUIEREN SER PARTE DE LA EMPRESA </h6>
<br>
<h3 class="h4">¿CUANTOS MESES DURA EL ENTRENAMIENTO Y CUAL ES SU HORARIO?</h3>
<br>
<h6>AL SER INTENSIVO Y TENIENDO EN CUENTA QUE LOS ASPIRANTES DEBEN FINALIZARLO CON UN CONOCIMIENTO APTO PARA REALIZAR UN PROYECTO DEL ÁREA, SE DA COMO LAPSO DE TIEMPO UN MES CON UN HORARIO DE 8:00 A 18:00 HS </h6>
</div>
</div><!-- /row -->
</div><!-- /container -->
<div class="col-lg-7 mx-auto mb-5">
<h3> REQUISITOS</h3>
</div>
<div class="col-lg-7 mx-auto mb-2">
<i class="fal fa-fast-forward"></i>
</div>
<div class="col-lg-7 mx-auto mb-2">
<h3 class="h6">1. DISPOSICION DE TIEMPO </h6>
<br>
</div>
<div class="col-lg-7 mx-auto mb-2">
<i class="fal fa-clone"></i>
</div>
<div class="col-lg-7 mx-auto mb-2">
<h3 class="h6">2. DISPONER DE UNA NOTEBOOK </h6>
<br>
</div>
<div class="col-lg-7 mx-auto mb-2">
<i class="fal fa-highlighter"></i>
</div>
<div class="col-lg-7 mx-auto mb-2">
<h3 class="h6">3. APROBAR EXAMENES </h6>
<br>
</div>
<div class="col-lg-7 mx-auto mb-2">
<i class="fal fa-dumbbell"></i>
</div>
<div class="col-lg-7 mx-auto mb-2">
<h3 class="h6">4. FIRMAR CARTA DE COMPROMISO </h3>
<br>
</div>
</div>
</div>
</div><!-- /row -->
</div><!-- /container -->
<div class="col-lg-7 mx-auto mb-5">
<h3> EDICIONES DE BOOTCAMP </h3>
</div>
</div><!-- /row -->
<div class="row">
<div class="col-lg-7 mx-auto mb-2" >
<div class="card card-h mb-4">
<img src="https://zetsan.com/wp-content/uploads/2020/10/1366_2000.jpeg" lazyload" alt="">
<div class="card-body">
<p class="mb-1"> BOOTCAMP JAVA </p>
<p class="mb-1"> Inicio: 18/04/2023</p>
<p class="mb-1"> Fin: 18/05/2023</p>
<form action="aca el link de la pestaña postulacion">
<input type="submit" value="POSTULAR" />
</form>
</div></div>
</div>
<div class="col-lg-7 mx-auto mb-2">
<div class="card card-h mb-4">
<img src="https://www.pngmart.com/files/13/Android-Logo-PNG-File.png" class="card-img-top lazyload" alt="Learning Web Design: A Beginner's Guide to HTML, CSS, JavaScript, and Web Graphics">
<div class="card-body">
<p class="mb-1"> BOOTCAMP ANDROID </p>
<p class="mb-1"> Inicio: 18/06/2023</p>
<p class="mb-1"> Fin: 18/07/2023</p>
<form action="aca el link de la pestaña postulacion">
<input type="submit" value="POSTULAR" />
</form>
</div></div>
</div>
<div class="col-lg-7 mx-auto mb-2">
<div class="card card-h mb-4">
<img src="https://p4.wallpaperbetter.com/wallpaper/710/859/671/technology-apple-ios-12-wallpaper-preview.jpg" lazyload" alt="">
<div class="card-body">
<p class="mb-1"> BOOTCAMP iOS </p>
<p class="mb-1"> Inicio: 18/08/2023</p>
<p class="mb-1"> Fin: 18/09/2023</p>
<form action="aca el link de la pestaña postulacion">
<input type="submit" value="POSTULAR" />
</form>
</div></div>
</div>
</div>
</body>
</div>
</div>
</div>
</div>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.sql.*,java.sql.Connection,java.sql.ResultSet,com.roshka.proyectofinal.DataBase"%>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" />
<title>Bootcamp</title>
<meta name="author" content="cssremix.com">
<meta name="robots" content="index,follow">
<link rel="canonical" href="https://cssremix.com">
<style>
@charset "UTF-8";
:root {
--bs-font-bold: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", bold, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient;
--bs-body-font-family: var(--bs-font-bold);
--bs-body-font-size: 1rem;
--bs-body-font-weight: 400;
--bs-body-line-height: 1.5;
--bs-body-color: white;
--bs-body-bg: #fff
}
*,
::after,
::before {
box-sizing: border-box
}
@media (prefers-reduced-motion:no-preference) {
:root {
scroll-behavior: smooth
}
}
body {
background: url('https://www.bgeneral.com/wp-content/uploads/2020/09/landing%20recargas/fondo-azul-desktop.png');
margin: 0;
font-family: var(--bs-body-font-family);
font-size: var(--bs-body-font-size);
font-weight: var(--bs-body-font-weight);
line-height: var(--bs-body-line-height);
color: var(--bs-body-color);
text-align: var(--bs-body-text-align);
background-color: var(--bs-body-bg);
-webkit-text-size-adjust: 100%
}
h1 {
font-size: calc(1.375rem + 1.5vw)
}
@media (min-width:1200px) {
h1 {
font-size: 2.5rem
}
}
h2 {
font-size: calc(1.325rem + .9vw)
}
@media (min-width:1200px) {
h2 {
font-size: 2rem
}
}
h3 {
font-size: calc(1.3rem + .6vw)
}
p {
margin-top: 0;
margin-bottom: 1rem
}
ul {
padding-left: 2rem;
margin-top: 0;
margin-bottom: 1rem
}
img {
vertical-align: middle
}
::-moz-focus-inner {
padding: 0;
border-style: none
}
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-year-field {
padding: 0
}
::-webkit-inner-spin-button {
height: auto
}
::-webkit-search-decoration {
-webkit-appearance: none
}
::-webkit-color-swatch-wrapper {
padding: 0
}
::file-selector-button {
font: inherit
}
::-webkit-file-upload-button {
font: inherit;
-webkit-appearance: button
}
.lead {
font-size: 1.25rem;
font-weight: 300
}
.img-fluid {
max-width: 100%;
height: auto
}
.container {
width: 100%;
padding-right: var(--bs-gutter-x, .75rem);
padding-left: var(--bs-gutter-x, .40rem);
margin-right: auto;
margin-left: auto
}
@media (min-width:576px) {
.container {
max-width: 540px
}
}
@media (min-width:768px) {
.container {
max-width: 720px
}
}
@media (min-width:992px) {
.container {
max-width: 960px
}
}
@media (min-width:1200px) {
h3 {
font-size: 1.75rem
}
.container {
max-width: 1140px
}
}
@media (min-width:1400px) {
.container {
max-width: 1320px
}
}
.row {
--bs-gutter-x: 1.5rem;
--bs-gutter-y: 0;
display: flex;
flex-wrap: wrap;
margin-top: calc(var(--bs-gutter-y) * -1);
margin-right: calc(var(--bs-gutter-x) * -.5);
margin-left: calc(var(--bs-gutter-x) * -.5)
}
.row>* {
flex-shrink: 0;
width: 100%;
max-width: 100%;
padding-right: calc(var(--bs-gutter-x) * .5);
padding-left: calc(var(--bs-gutter-x) * .5);
margin-top: var(--bs-gutter-y)
}
@media (min-width:992px) {
.col-lg-10 {
flex: 0 0 auto;
width: 83.33333333%
}
.col-lg-12 {
flex: 0 0 auto;
width: 100%
}
}
.mx-auto {
margin-right: auto!important;
margin-left: auto!important
}
.text-center {
text-align: center!important
}
#hero {
padding: 80px 0;
margin-bottom: 40px;
background-color: #3f51b5;
color: white
}
#hero h1 {
margin-bottom: 30px;
color: white
}
</style>
<style>
#hero {
padding: 40px 0;
margin-bottom: 40px;
background-color: white;
color: white
}
#hero h1 {
margin-bottom: 40px;
color: #fff
}
.footer {
margin-top: 40px;
padding: 40px 0;
background-color: white;
color: white
}
.footer a {
color: white
}
.table-responsive {
font-size: 15px
}
h2 {
color: white;
font-weight: bold;
font-family: 'Monaco', sans-serif font-weight: 100;
}
h1 {
color: white;
font-weight: bold;
font-family: 'Monaco', sans-serif font-weight: 100;
}
h3 {
color: white;
font-weight: bold;
font-family: 'Monaco', sans-serif font-weight: 100;
}
h4 {
color: white;
font-weight: bold;
font-family: 'Monaco', sans-serif font-weight: 100;
}
h6 {
color: white;
font-weight: bold;
font-family: 'Monaco', sans-serif font-weight: 100;
}
mb-1 {
color: black;
}
@media (min-width: 400px) {
p {
font-size: 17px, color white;
}
.leading {
font-size: 1.25rem;
font-weight: 300;
}
}
.card-body p {
font-size: 0rem, background-color white;
font-weight: bold;
}
.star-ratings-css {
unicode-bidi: bidi-override;
color: white;
font-size: 25px;
height: 25px;
position: relative;
padding: 0;
margin-left: 10px;
}
.star-ratings-css-top {
color: white;
padding: 0;
position: absolute;
z-index: 1;
display: block;
top: 0;
left: 0;
overflow: hidden;
}
.star-ratings-css-bottom {
padding: 0;
display: block;
z-index: 0;
}
.card-h {
transition: .3s transform cubic-bezier(.155, 1.105, .295, 1.12), .3s box-shadow, .3s -webkit-transform cubic-bezier(.155, 1.105, .295, 1.12);
cursor: pointer;
height: 90%;
background-color: white;
}
.card-h:hover {
transform: scale(1.025);
box-shadow: 0 10px 20px white, 0 4px 8px white;
background-color: white;
}
.card-h .card-body {
padding: 1rem;
}
.card-h {
height: unset;
}
.card-img-top {
width: 70%;
height: 400px;
object-fit: cover;
}
lite-youtube {
background-color: white;
position: relative;
display: block;
contain: content;
background-position: center center;
background-size: cover;
cursor: pointer;
}
lite-youtube::before {
content: '';
display: block;
position: absolute;
top: 0;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==);
background-position: top;
background-repeat: repeat-x;
height: 60px;
padding-bottom: 50px;
width: 100%;
transition: all .2s cubic-bezier(0, 0, .2, 1)
}
lite-youtube::after {
content: "";
display: block;
padding-bottom: calc(100% / (16 / 9))
}
lite-youtube>iframe {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
border: 0
}
lite-youtube>.lty-playbtn {
width: 68px;
height: 48px;
position: absolute;
cursor: pointer;
transform: translate3d(-50%, -50%, 0);
top: 50%;
left: 50%;
z-index: 1;
background-color: transparent;
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 68 48"><path fill="%23f00" fill-opacity="0.8" d="M66.52,7.74c-0.78-2.93-2.49-5.41-5.42-6.19C55.79,.13,34,0,34,0S12.21,.13,6.9,1.55 C3.97,2.33,2.27,4.81,1.48,7.74C0.06,13.05,0,24,0,24s0.06,10.95,1.48,16.26c0.78,2.93,2.49,5.41,5.42,6.19 C12.21,47.87,34,48,34,48s21.79-0.13,27.1-1.55c2.93-0.78,4.64-3.26,5.42-6.19C67.94,34.95,68,24,68,24S67.94,13.05,66.52,7.74z"></path><path d="M 45,24 27,14 27,34" fill="%23fff"></path></svg>');
filter: grayscale(100%);
transition: filter .1s cubic-bezier(0, 0, .2, 1);
border: none
}
lite-youtube .lty-playbtn:focus,
lite-youtube:hover>.lty-playbtn {
filter: none
}
lite-youtube.lyt-activated {
cursor: unset
}
lite-youtube.lyt-activated::before,
lite-youtube.lyt-activated>.lty-playbtn {
opacity: 0;
pointer-events: none
}
.lyt-visually-hidden {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px
}
</style>
<link rel="preload" as="image" href="images/1280x853.webp">
<link rel="preload" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
<noscript><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet"></noscript>
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-6907191851278817" crossorigin="anonymous"></script>
</head>
<body>
<div class="col-lg-7 mx-auto mt-5 mb-5">
<h3 class="h3 mt-5">¿QUE ES UN BOOTCAMP?</h3>
<br>
<h6> ES UN CAMPO DE ENTRENAMIENTO INTENSIVO Y GRATUITO PARA PRINCIPIANTES QUE YA PROGRAMAN Y QUIEREN SER PARTE DE LA EMPRESA </h6>
<br>
<h3 class="h4">¿CUANTOS MESES DURA EL ENTRENAMIENTO Y CUAL ES SU HORARIO?</h3>
<br>
<h6>AL SER INTENSIVO Y TENIENDO EN CUENTA QUE LOS ASPIRANTES DEBEN FINALIZARLO CON UN CONOCIMIENTO APTO PARA REALIZAR UN PROYECTO DEL ÁREA, SE DA COMO LAPSO DE TIEMPO UN MES CON UN HORARIO DE 8:00 A 18:00 HS </h6>
</div>
</div>
<!-- /row -->
</div>
<!-- /container -->
<div class="col-lg-7 mx-auto mb-5">
<h3> REQUISITOS</h3>
</div>
<div class="col-lg-7 mx-auto mb-2">
<i class="fal fa-fast-forward"></i>
</div>
<div class="col-lg-7 mx-auto mb-2">
<h3 class="h6">1. DISPOSICION DE TIEMPO </h6>
<br>
</div>
<div class="col-lg-7 mx-auto mb-2">
<i class="fal fa-clone"></i>
</div>
<div class="col-lg-7 mx-auto mb-2">
<h3 class="h6">2. DISPONER DE UNA NOTEBOOK </h6>
<br>
</div>
<div class="col-lg-7 mx-auto mb-2">
<i class="fal fa-highlighter"></i>
</div>
<div class="col-lg-7 mx-auto mb-2">
<h3 class="h6">3. APROBAR EXAMENES </h6>
<br>
</div>
<div class="col-lg-7 mx-auto mb-2">
<i class="fal fa-dumbbell"></i>
</div>
<div class="col-lg-7 mx-auto mb-2">
<h3 class="h6">4. FIRMAR CARTA DE COMPROMISO </h3>
<br>
</div>
</div>
</div>
</div>
<!-- /row -->
</div>
<!-- /container -->
<div class="col-lg-7 mx-auto mb-5">
<h3> EDICIONES DE BOOTCAMP </h3>
</div>
</div>
<!-- /row -->
<div class="row">
<%
Connection con = DataBase.getConnection();
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM bootcamp WHERE activo=true");
while(rs.next()){
%>
<div class="col-lg-7 mx-auto mb-2">
<div class="card card-h mb-4">
<img src="https://zetsan.com/wp-content/uploads/2020/10/1366_2000.jpeg" lazyload alt=<%=rs.getString( "titulo") %>>
<div class="card-body ">
<p class="mb-1 ">
<%= rs.getString("titulo") %>
</p>
<p class="mb-1 "> Inicio:
<%=rs.getString("fecha_inicio")%>
</p>
<p class="mb-1 "> Fin:
<%=rs.getString("fecha_fin")%>
</p>
<form action="formulario.jsp">
<input name="bootcamp" type="hidden" value=<%=rs.getInt( "id") %>>
<button type="submit">POSTULAR</button>
</form>
</div>
</div>
</div>
<%
}
%>
</div>
</body>
</div>
</div>
</div>
</div>
</body>
</html>
\ No newline at end of file
@import 'https://fonts.googleapis.com/css?family=Open+Sans|Quicksand:400,700';
/*--------------------
General Style
---------------------*/
*,
*::before,
*::after {
box-sizing: border-box;
}
body,
html {
height: 100%;
font-family: 'Quicksand', sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
body {
background: rgba(30,29,31,1);
background: -moz-linear-gradient(-45deg, rgba(30,29,31,1) 0%, rgb(13, 16, 73) 100%);
background: -webkit-gradient(left top, right bottom, color-stop(0%, rgba(30,29,31,1)), color-stop(100%, rgb(11, 7, 92)));
background: -webkit-linear-gradient(-45deg, rgba(30,29,31,1) 0%, rgb(21, 11, 159) 100%);
background: -o-linear-gradient(-45deg, rgba(30,29,31,1) 0%, rgb(33, 23, 119) 100%);
background: -ms-linear-gradient(-45deg, rgba(30,29,31,1) 0%, rgb(26, 18, 98) 100%);
background: linear-gradient(135deg, rgba(30,29,31,1) 0%, rgb(8, 10, 110) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e1d1f', endColorstr='#df405a', GradientType=1 );
}
/*--------------------
Text
---------------------*/
h2, h3 {
font-size: 16px;
letter-spacing: -1px;
line-height: 20px;
}
h2 {
color: black;
text-align: center;
}
h3 {
color: black;
text-align: right;
}
/*--------------------
Icons
---------------------*/
.i {
width: 20px;
height: 20px;
}
.i-login {
margin: 13px 0px 0px 15px;
position: relative;
float: left;
background-image: url(data:image/png;base64,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);
background-size: 18px 18px;
background-repeat: no-repeat;
background-position: center;
}
.i-more {
background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjY0cHgiIGhlaWdodD0iNjRweCIgdmlld0JveD0iMCAwIDYxMiA2MTIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDYxMiA2MTI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGc+Cgk8ZyBpZD0ibW9yZSI+CgkJPGc+CgkJCTxwYXRoIGQ9Ik03Ni41LDIyOS41QzM0LjMsMjI5LjUsMCwyNjMuOCwwLDMwNnMzNC4zLDc2LjUsNzYuNSw3Ni41UzE1MywzNDguMiwxNTMsMzA2UzExOC43LDIyOS41LDc2LjUsMjI5LjV6IE03Ni41LDM0NC4yICAgICBjLTIxLjEsMC0zOC4yLTE3LjEwMS0zOC4yLTM4LjJjMC0yMS4xLDE3LjEtMzguMiwzOC4yLTM4LjJzMzguMiwxNy4xLDM4LjIsMzguMkMxMTQuNywzMjcuMSw5Ny42LDM0NC4yLDc2LjUsMzQ0LjJ6ICAgICAgTTUzNS41LDIyOS41Yy00Mi4yLDAtNzYuNSwzNC4zLTc2LjUsNzYuNXMzNC4zLDc2LjUsNzYuNSw3Ni41UzYxMiwzNDguMiw2MTIsMzA2UzU3Ny43LDIyOS41LDUzNS41LDIyOS41eiBNNTM1LjUsMzQ0LjIgICAgIGMtMjEuMSwwLTM4LjItMTcuMTAxLTM4LjItMzguMmMwLTIxLjEsMTcuMTAxLTM4LjIsMzguMi0zOC4yczM4LjIsMTcuMSwzOC4yLDM4LjJDNTczLjcsMzI3LjEsNTU2LjYsMzQ0LjIsNTM1LjUsMzQ0LjJ6ICAgICAgTTMwNiwyMjkuNWMtNDIuMiwwLTc2LjUsMzQuMy03Ni41LDc2LjVzMzQuMyw3Ni41LDc2LjUsNzYuNXM3Ni41LTM0LjMsNzYuNS03Ni41UzM0OC4yLDIyOS41LDMwNiwyMjkuNXogTTMwNiwzNDQuMiAgICAgYy0yMS4xLDAtMzguMi0xNy4xMDEtMzguMi0zOC4yYzAtMjEuMSwxNy4xLTM4LjIsMzguMi0zOC4yYzIxLjEsMCwzOC4yLDE3LjEsMzguMiwzOC4yQzM0NC4yLDMyNy4xLDMyNy4xLDM0NC4yLDMwNiwzNDQuMnoiIGZpbGw9IiNkZjQwNWEiLz4KCQk8L2c+Cgk8L2c+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==);
background-size: 20px 20px;
background-repeat: no-repeat;
background-position: center;
}
.i-save {
background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjY0cHgiIGhlaWdodD0iNjRweCIgdmlld0JveD0iMCAwIDYxMiA2MTIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDYxMiA2MTI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGc+Cgk8ZyBpZD0idGljayI+CgkJPGc+CgkJCTxwYXRoIGQ9Ik00MzYuNywxOTYuNzAxTDI1OC4xODgsMzc1LjIxM2wtODIuODY5LTgyLjg4N2MtNy4yODctNy4yODctMTkuMTI1LTcuMjg3LTI2LjQxMiwwcy03LjI4NywxOS4xMjUsMCwyNi40MTIgICAgIGw5My44MDgsOTMuODA4YzAuNjMxLDAuODk5LDEuMDE0LDEuOTMyLDEuODE3LDIuNzM1YzMuNzY4LDMuNzY4LDguNzIxLDUuNTA4LDEzLjY1NSw1LjM3NGM0LjkzNCwwLjExNSw5LjkwNy0xLjYwNiwxMy42NzQtNS4zNzQgICAgIGMwLjgwMy0wLjgwNCwxLjE4Ni0xLjgzNiwxLjgxNy0yLjczNWwxODkuNDM0LTE4OS40MzNjNy4yODYtNy4yODcsNy4yODYtMTkuMTI1LDAtMjYuNDEyICAgICBDNDU1LjgwNiwxODkuNDE0LDQ0My45ODcsMTg5LjQxNCw0MzYuNywxOTYuNzAxeiBNMzA2LDBDMTM2Ljk5MiwwLDAsMTM2Ljk5MiwwLDMwNnMxMzYuOTkyLDMwNiwzMDYsMzA2ICAgICBjMTY4Ljk4OCwwLDMwNi0xMzYuOTkyLDMwNi0zMDZTNDc1LjAwOCwwLDMwNiwweiBNMzA2LDU3My43NUMxNTguMTI1LDU3My43NSwzOC4yNSw0NTMuODc1LDM4LjI1LDMwNiAgICAgQzM4LjI1LDE1OC4xMjUsMTU4LjEyNSwzOC4yNSwzMDYsMzguMjVjMTQ3Ljg3NSwwLDI2Ny43NSwxMTkuODc1LDI2Ny43NSwyNjcuNzVDNTczLjc1LDQ1My44NzUsNDUzLjg3NSw1NzMuNzUsMzA2LDU3My43NXoiIGZpbGw9IiMyMGMxOTgiLz4KCQk8L2c+Cgk8L2c+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==);
background-size: 20px 20px;
background-repeat: no-repeat;
background-position: center;
}
.i-warning {
background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMS4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDYxMi44MTYgNjEyLjgxNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjEyLjgxNiA2MTIuODE2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjY0cHgiIGhlaWdodD0iNjRweCI+CjxnPgoJPHBhdGggZD0iTTMwNi40MDgsMEMxMzcuMzY4LDAsMC4zNzEsMTM2Ljk5NywwLjM3MSwzMDYuMDM3czEzNi45OTcsMzA2Ljc3OSwzMDYuMDM3LDMwNi43NzlzMzA2LjAzNy0xMzcuODEzLDMwNi4wMzctMzA2LjAzNyAgIEM2MTIuNDQ1LDEzNy43MzksNDc1LjQ0OCwwLDMwNi40MDgsMHogTTMwNi40MDgsNTgzLjE0N2MtMTUyLjIwMywwLTI3Ni4zNjgtMTI0LjE2NS0yNzYuMzY4LTI3Ni4zNjggICBTMTU0LjIwNSwyOS41OTUsMzA2LjQwOCwyOS41OTVTNTgyLjc3NiwxNTMuNzYsNTgyLjc3NiwzMDYuNzc5UzQ1OC42MTEsNTgzLjE0NywzMDYuNDA4LDU4My4xNDd6IE0zMjEuNjEzLDQzMS43NiAgIGMwLDguODI3LTcuMTk1LDE2LjAyMS0xNi4wMjEsMTYuMDIxYy04LjgyNywwLTE2LjAyMS03LjE5NS0xNi4wMjEtMTYuMDIxYzAtOC44MjcsNy4xOTUtMTYuMDIxLDE2LjAyMS0xNi4wMjEgICBTMzIxLjYxMyw0MjIuOTM0LDMyMS42MTMsNDMxLjc2eiBNMjkwLjM4NywzNTMuMjExdi0xODAuMjRjMC04LjAxMSw2LjM3OS0xNC4zOSwxNC4zOS0xNC4zOWM4LjAxMSwwLDE0LjM5LDYuMzc5LDE0LjM5LDE0LjM5ICAgdjE4MC4yNGMwLDguMDExLTYuMzc5LDE0LjM5LTE0LjM5LDE0LjM5QzI5Ni43NjYsMzY4LjQ5MSwyOTAuMzg3LDM2MS4yMjIsMjkwLjM4NywzNTMuMjExeiIgZmlsbD0iI2Y1ZDg3OCIvPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+Cjwvc3ZnPgo=);
background-size: 20px 20px;
background-repeat: no-repeat;
background-position: center;
}
.i-close {
background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTguMS4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDYxMi40NDUgNjEyLjQ0NSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjEyLjQ0NSA2MTIuNDQ1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjY0cHgiIGhlaWdodD0iNjRweCI+CjxnPgoJPHBhdGggZD0iTTUyMi42NDIsODkuODA0QzQ2NC45LDMyLjA2MiwzODguMDExLDAsMzA2LjIyMywwUzE0Ny41NDUsMzIuMDYyLDg5LjgwNCw4OS44MDQgICBjLTExOS40MTYsMTE5LjQxNi0xMTkuNDE2LDMxMy40MjIsMCw0MzIuODM4YzU3Ljc0MSw1Ny43NDEsMTM0LjYzMSw4OS44MDQsMjE2LjQxOSw4OS44MDRzMTU4LjY3OC0zMi4wNjIsMjE2LjQxOS04OS44MDQgICBDNjQyLjA1OCw0MDMuMjI1LDY0Mi4wNTgsMjA5LjIyLDUyMi42NDIsODkuODA0eiBNNTAxLjc4Nyw1MDEuNzg3Yy01Mi4xMDEsNTIuMTAxLTEyMS43OTEsODAuOTcyLTE5NS41NjQsODAuOTcyICAgcy0xNDMuNDYzLTI4Ljg3MS0xOTUuNTY0LTgwLjk3MlMyOS42ODcsMzc5Ljk5NSwyOS42ODcsMzA2LjIyM3MyOC44NzEtMTQzLjQ2Myw4MC45NzItMTk1LjU2NHMxMjEuODY2LTgwLjk3MiwxOTUuNTY0LTgwLjk3MiAgIHMxNDMuNDYzLDI4Ljg3MSwxOTUuNTY0LDgwLjk3MnM4MC45NzIsMTIxLjg2Niw4MC45NzIsMTk1LjU2NFM1NTMuODg3LDQ0OS42ODYsNTAxLjc4Nyw1MDEuNzg3eiBNMzk5LjIxOCwyMzQuODk5bC03NC41MTUsNzQuNTE1ICAgbDc0LjUxNSw3NC41MTVjNS42NDEsNS42NDEsNS42NDEsMTUuMjE1LDAsMjAuODU1Yy0zLjE5MSwzLjE5MS02LjM4Myw0LjAwOC0xMC4zOTEsNC4wMDhjLTQuMDA4LDAtNy4xOTktMS42MzMtMTAuMzktNC4wMDggICBsLTc0LjU4OS03NC41MTVsLTc0LjU4OSw3NC41MTVjLTMuMTkxLDMuMTkxLTYuMzgzLDQuMDA4LTEwLjM5LDQuMDA4cy03LjE5OS0xLjYzMy0xMC4zOS00LjAwOCAgIGMtNS42NDEtNS42NDEtNS42NDEtMTUuMjE1LDAtMjAuODU1bDc0LjUxNS03NC41MTVsLTc0LjUxNS03NC41MTVjLTUuNjQxLTUuNjQxLTUuNjQxLTE1LjIxNSwwLTIwLjg1NSAgIGM1LjY0MS01LjY0MSwxNS4yMTUtNS42NDEsMjAuODU1LDBsNzQuNTE1LDc0LjUxNWw3NC41MTUtNzQuNTE1YzUuNjQxLTUuNjQxLDE1LjIxNS01LjY0MSwyMC44NTUsMCAgIEM0MDQuODU4LDIxOS42ODUsNDA0Ljg1OCwyMjguNDQyLDM5OS4yMTgsMjM0Ljg5OXoiIGZpbGw9IiNmNTVhNGUiLz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K);
background-size: 20px 20px;
background-repeat: no-repeat;
background-position: center;
}
.i-left {
background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjY0cHgiIGhlaWdodD0iNjRweCIgdmlld0JveD0iMCAwIDQxNC4yOTggNDE0LjI5OSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDE0LjI5OCA0MTQuMjk5OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxnPgoJPHBhdGggZD0iTTMuNjYzLDQxMC42MzdjMi40NDEsMi40NCw1LjY0LDMuNjYxLDguODM5LDMuNjYxYzMuMTk5LDAsNi4zOTgtMS4yMjEsOC44MzktMy42NjFsMTg1LjgwOS0xODUuODFsMTg1LjgxLDE4NS44MTEgICBjMi40NCwyLjQ0LDUuNjQxLDMuNjYxLDguODQsMy42NjFjMy4xOTgsMCw2LjM5Ny0xLjIyMSw4LjgzOS0zLjY2MWM0Ljg4MS00Ljg4MSw0Ljg4MS0xMi43OTYsMC0xNy42NzlsLTE4NS44MTEtMTg1LjgxICAgbDE4NS44MTEtMTg1LjgxYzQuODgxLTQuODgyLDQuODgxLTEyLjc5NiwwLTE3LjY3OGMtNC44ODItNC44ODItMTIuNzk2LTQuODgyLTE3LjY3OSwwbC0xODUuODEsMTg1LjgxTDIxLjM0LDMuNjYzICAgYy00Ljg4Mi00Ljg4Mi0xMi43OTYtNC44ODItMTcuNjc4LDBjLTQuODgyLDQuODgxLTQuODgyLDEyLjc5NiwwLDE3LjY3OGwxODUuODEsMTg1LjgwOUwzLjY2MywzOTIuOTU5ICAgQy0xLjIxOSwzOTcuODQxLTEuMjE5LDQwNS43NTYsMy42NjMsNDEwLjYzN3oiIGZpbGw9IiM4NzMxNGUiLz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K);
background-size: 16px 16px;
background-repeat: no-repeat;
background-position: center;
}
/*--------------------
Login Box
---------------------*/
.box {
width: 330px;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.box-form {
width: 320px;
position: relative;
z-index: 1;
}
.box-login-tab {
width: 50%;
height: 40px;
background: #fdfdfd;
position: relative;
float: left;
z-index: 1;
-webkit-border-radius: 6px 6px 0 0;
-moz-border-radius: 6px 6px 0 0;
border-radius: 6px 6px 0 0;
-webkit-transform: perspective(5px) rotateX(0.93deg) translateZ(-1px);
transform: perspective(5px) rotateX(0.93deg) translateZ(-1px);
-webkit-transform-origin: 0 0;
transform-origin: 0 0;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-box-shadow: 15px -15px 30px rgba(0,0,0,0.32);
-moz-box-shadow: 15px -15px 30px rgba(0,0,0,0.32);
box-shadow: 15px -15px 30px rgba(0,0,0,0.32);
}
.box-login-title {
width: 35%;
height: 40px;
position: absolute;
float: left;
z-index: 2;
}
.box-login {
position: relative;
top: -4px;
width: 320px;
background: #fdfdfd;
text-align: center;
overflow: hidden;
z-index: 2;
-webkit-border-top-right-radius: 6px;
-webkit-border-bottom-left-radius: 6px;
-webkit-border-bottom-right-radius: 6px;
-moz-border-radius-topright: 6px;
-moz-border-radius-bottomleft: 6px;
-moz-border-radius-bottomright: 6px;
border-top-right-radius: 6px;
border-bottom-left-radius: 6px;
border-bottom-right-radius: 6px;
-webkit-box-shadow: 15px 30px 30px rgba(0,0,0,0.32);
-moz-box-shadow: 15px 30px 30px rgba(0,0,0,0.32);
box-shadow: 15px 30px 30px rgba(0,0,0,0.32);
}
.box-info {
width: 260px;
top: 60px;
position: absolute;
right: -5px;
padding: 15px 15px 15px 30px;
background-color: rgba(255,255,255,0.6);
border: 1px solid rgba(255,255,255,0.2);
z-index: 0;
-webkit-border-radius: 6px;
-moz-border-radius: 6px;
border-radius: 6px;
-webkit-box-shadow: 15px 30px 30px rgba(0,0,0,0.32);
-moz-box-shadow: 15px 30px 30px rgba(0,0,0,0.32);
box-shadow: 15px 30px 30px rgba(0,0,0,0.32);
}
.line-wh {
width: 100%;
height: 1px;
top: 0px;
margin: 12px auto;
position: relative;
border-top: 1px solid rgba(255,255,255,0.3);
}
/*--------------------
Form
---------------------*/
a { text-decoration: none; }
button:focus { outline:0; }
.b {
height: 24px;
line-height: 24px;
background-color: transparent;
border: none;
cursor: pointer;
}
.b-form {
opacity: 0.5;
margin: 10px 20px;
float: right;
}
.b-info {
opacity: 0.5;
float: left;
}
.b-form:hover,
.b-info:hover {
opacity: 1;
}
.b-support, .b-cta {
width: 100%;
padding: 0px 15px;
font-family: 'Quicksand', sans-serif;
font-weight: 700;
letter-spacing: -1px;
font-size: 16px;
line-height: 32px;
cursor: pointer;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
border-radius: 16px;
}
.b-support {
border: #87314e 1px solid;
background-color: transparent;
color: #87314e;
margin: 6px 0;
}
.b-cta {
border: #df405a 1px solid;
background-color: #df405a;
color: #fff;
}
.b-support:hover, .b-cta:hover {
color: #fff;
background-color: blue;
border: blue 1px solid;
}
.fieldset-body {
display: table;
}
.fieldset-body p {
width: 100%;
display: inline-table;
padding: 5px 20px;
margin-bottom:2px;
}
label {
float: left;
width: 100%;
top: 0px;
color: #032942;
font-size: 13px;
font-weight: 700;
text-align: left;
line-height: 1.5;
}
label.checkbox {
float: left;
padding: 5px 20px;
line-height: 1.7;
}
input[type=text],
input[type=password] {
width: 100%;
height: 32px;
padding: 0px 10px;
background-color: rgba(0,0,0,0.03);
border: none;
display: inline;
color: #303030;
font-size: 16px;
font-weight: 400;
float: left;
-webkit-box-shadow: inset 1px 1px 0px rgba(0,0,0,0.05), 1px 1px 0px rgba(255,255,255,1);
-moz-box-shadow: inset 1px 1px 0px rgba(0,0,0,0.05), 1px 1px 0px rgba(255,255,255,1);
box-shadow: inset 1px 1px 0px rgba(0,0,0,0.05), 1px 1px 0px rgba(255,255,255,1);
}
input[type=text]:focus,
input[type=password]:focus {
background-color: cornflowerblue ;
outline: none;
}
input[type=submit] {
width: 100%;
height: 48px;
margin-top: 24px;
padding: 0px 20px;
font-family: 'Quicksand', sans-serif;
font-weight: 700;
font-size: 18px;
color: #fff;
line-height: 40px;
text-align: center;
background-color: blue;
border: 1px blue solid;
opacity: 1;
cursor: pointer;
}
input[type=submit]:hover {
background-color: blue;
border: 1px blue solid;
}
input[type=submit]:focus {
outline: none;
}
p.field span.i {
width: 24px;
height: 24px;
float: right;
position: relative;
margin-top: -26px;
right: 2px;
z-index: 2;
display: none;
-webkit-animation: bounceIn 0.6s linear;
-moz-animation: bounceIn 0.6s linear;
-o-animation: bounceIn 0.6s linear;
animation: bounceIn 0.6s linear;
}
/*--------------------
Transitions
---------------------*/
.box-form, .box-info, .b, .b-support, .b-cta,
input[type=submit], p.field span.i {
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
-ms-transition: all 0.3s;
-o-transition: all 0.3s;
transition: all 0.3s;
}
/*--------------------
Credits
---------------------*/
.icon-credits {
width: 100%;
position: absolute;
bottom: 4px;
font-family:'Open Sans', 'Helvetica Neue', Helvetica, sans-serif;
font-size: 12px;
color: rgba(255,255,255,0.1);
text-align: center;
z-index: -1;
}
.icon-credits a {
text-decoration: none;
color: rgba(255,255,255,0.2);
}
\ No newline at end of file
...@@ -12,9 +12,10 @@ body{ ...@@ -12,9 +12,10 @@ body{
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
height: 160%;} height: 160%;
} }
/* para el logo */ /* para el logo */
img{ img{
width: 165px; width: 165px;
...@@ -43,10 +44,8 @@ p:hover{ ...@@ -43,10 +44,8 @@ p:hover{
/* contenedor */ /* contenedor */
/* para el forrmulario */ /* para el forrmulario */
.form label{ .form label{
display: block; display: block;
border: none; border: none;
align-items:center; align-items:center;
...@@ -94,9 +93,10 @@ border-radius: 10px; ...@@ -94,9 +93,10 @@ border-radius: 10px;
text-decoration:none; text-decoration:none;
background-color: rgba(11, 49, 110, 0.75); background-color: rgba(11, 49, 110, 0.75);
background-image: url(imagenes/descarga.svg); background-image: url(imagenes/descarga.svg);
border-radius: 10px;; border-radius: 5px;;
padding: 15px; padding: 10px;
border-radius: 10px; border-radius: 10px;
margin:10px;
text-decoration: none; text-decoration: none;
color:#ffff; color:#ffff;
text-align:left; text-align:left;
...@@ -104,21 +104,37 @@ border-radius: 10px; ...@@ -104,21 +104,37 @@ border-radius: 10px;
width:80px; width:80px;
text-align:center; text-align:center;
} }
/*hola mundo*/
input#ruby,input#python,input#c,input#javascript,input#java{ input#ruby,input#python,input#c,input#javascript,input#java{
width:20px; width:30px;
} }
input#experiencia_laboral,input#notebook,input#universidad{ input#experiencia_laboral,input#notebook,input#universidad{
width:100px; width:500px;
} }
/* para el alert */
.alert {
padding: 10px;
background-color: background-color: #2196F3;
color: white;
}
.alert.info {background-color: #2196F3;}
.alert.error {background-color: #ff0000;}
.closebtn {
margin-left: 15px;
color: white;
font-weight: bold;
float: right;
font-size: 22px;
line-height: 20px;
cursor: pointer;
transition: 0.3s;
}
.closebtn:hover {
/* parrafo final */ color: black;
//mi parte jose leeme }
\ No newline at end of file
</style>
// Get all elements with class="closebtn"
var close = document.getElementsByClassName("closebtn");
var i;
// Loop through all close buttons
for (i = 0; i < close.length; i++) {
// When someone clicks on a close button
close[i].onclick = function(){
// Get the parent of <span class="closebtn"> (<div class="alert">)
var div = this.parentElement;
// Set the opacity of div to 0 (transparent)
div.style.opacity = "0";
// Hide the div after 600ms (the same amount of milliseconds it takes to fade out)
setTimeout(function(){ div.style.display = "none"; }, 600);
}
}
<%@ page language="java" contentType="text/html; charset=UTF-8" <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%> pageEncoding="UTF-8"%>
<!DOCTYPE html> <%@ page import="java.sql.*,java.sql.Connection,java.sql.ResultSet,com.roshka.proyectofinal.DataBase,jakarta.servlet.http.HttpServlet,jakarta.servlet.http.HttpServletRequest"%>
<html>
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="estilos/form.css" rel="stylesheet" type="text/css" /> <link href="estilos/form.css" rel="stylesheet" type="text/css" />
<link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" /> <link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" />
<!-- CSS only --> <!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-0evHe/X+R7YkIZDRvuzKMRqM+OrBnVFBL6DOitfPri4tjfHxaWutUpFmBp4vmVor" crossorigin="anonymous"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-0evHe/X+R7YkIZDRvuzKMRqM+OrBnVFBL6DOitfPri4tjfHxaWutUpFmBp4vmVor" crossorigin="anonymous">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="form.css" type="text/css">
<link href="css/bootstrap.css" rel="stylesheet" type="text/css" />
<script src="formJS.js"></script>
<script src="Javascript.js"></script>
<link rel="stylesheet" media="(max-width: 800px)" href="example.css" /> <link rel="stylesheet" media="(max-width: 800px)" href="example.css" />
<title>Formulario Postulante</title> <title>Formulario Postulante</title>
</head> </head>
...@@ -23,11 +26,25 @@ pageEncoding="UTF-8"%> ...@@ -23,11 +26,25 @@ pageEncoding="UTF-8"%>
<main class="create"> <main class="create">
<article class="contenedor"> <article class="contenedor">
<div> <div>
<%
int id =Integer.parseInt(request.getParameter("bootcamp"));
Connection con = DataBase.getConnection();
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM bootcamp WHERE id= "+id+ " LIMIT 1" );
rs.next();
%>
<h2>Descripcion:</h2>
<p>
<%= rs.getString("descripcion") %>
</p>
<p class="enter">Si sigues interesado y cumples con los requisitos, completa el siguiente formulario: </p> <p class="enter">Si sigues interesado y cumples con los requisitos, completa el siguiente formulario: </p>
<form method="post" action="SaveServlet" class="form"> <form method="get" action="SaveServlet" class="form">
<label class="mr-2" for="nombre">Ingrese su Nombre:</label> <input type="hidden" name="bootcamp" value="<%= request.getParameter("bootcamp") %>">
<label for="nombre">Ingrese su Nombre:</label>
<input required id="nombre" name="nombre" type="text"><br> <input required id="nombre" name="nombre" type="text"><br>
<label for="apellido">Ingrese su Apellido:</label> <label for="apellido">Ingrese su Apellido:</label>
...@@ -45,214 +62,77 @@ pageEncoding="UTF-8"%> ...@@ -45,214 +62,77 @@ pageEncoding="UTF-8"%>
<label for="direccion">Direccion:</label> <label for="direccion">Direccion:</label>
<input required id="direccion" name="direccion" type="text"><br> <input required id="direccion" name="direccion" type="text"><br>
<label for="experiencia_laboral">Experiencia laboral</label>
<!-- Si no lo marca el valor que envia es null y si lo marca es "ON" -->
<input id="experiencia_laboral" name="experiencia_laboral" type="checkbox"><br>
<%@ page import="com.roshka.proyectofinal.entity.Lenguaje, com.roshka.proyectofinal.lenguaje.LenguajeDao, java.util.List,java.util.Iterator" %> <label for="notebook">Cuenta con notebook</label>
<input id="notebook" name="notebook" type="checkbox"><br>
<label for="universidad">Estudio Universitario </label>
<input id="universidad" name="universidad" type="checkbox"><br>
<p for="experiencia_programando">Lenguajes de programacion que conoces:</p>
<%@ page import="com.roshka.proyectofinal.entity.Lenguaje, com.roshka.proyectofinal.lenguaje.LenguajeDao, java.util.List,java.util.Iterator" %>
<% <%
LenguajeDao lenDao = new LenguajeDao(); LenguajeDao lenDao = new LenguajeDao();
List<Lenguaje> listLenguaje = lenDao.listar(); List<Lenguaje> listLenguaje = lenDao.listar();
Iterator<Lenguaje> iter = listLenguaje.iterator(); Iterator<Lenguaje> iter = listLenguaje.iterator();
Lenguaje len = null; Lenguaje len = null;
%> %>
<ul> <ul id="agarraunolaputa">
<% while(iter.hasNext()){ <% while(iter.hasNext()){
len = iter.next(); len = iter.next();
%> %>
<li class="d-flex check-inline" > <li class="d-flex">
<label for=<%=len.getNombre_lenguaje() %> > <%= len.getNombre_lenguaje() %> </label><input value=<%=len.getId() %> id= <label for=<%=len.getNombre_lenguaje() %> > <%= len.getNombre_lenguaje() %> </label>
<input onclick="enviar(id)" value=<%=len.getId() %> id=
<%=len.getNombre_lenguaje() %> name= <%=len.getNombre_lenguaje() %> name=
<%=len.getNombre_lenguaje() %> type="checkbox"><br> <%=len.getNombre_lenguaje() %> type="checkbox" >
</li> </li>
<% } %> <% } %>
</ul> </ul>
<li class="d-flex">
<label for="experiencia_laboral" >Experiencia laboral</label>
</li>
<!-- Si no lo marca el valor que envia es null y si lo marca es "ON" -->
<input id="experiencia_laboral" name="experiencia_laboral" type="checkbox" ><br>
<p for="experiencia_programando">Lenguajes de programacion que conoces:</p>
<label for="notebook">Cuenta con notebook</label>
<input id="notebook" name="notebook" type="checkbox"><br>
<label for="universidad">Estudio Universitario </label>
<input id="universidad" name="universidad" type="checkbox"><br>
<input class="enviar info error" type="submit"> <input class="enviar info error" type="submit">
<input class="borrar" type="reset" value="Borrar"><br> <input class="borrar" type="reset" value="Borrar"><br>
<label for="otro">otro</label>
<input id="otro" name="otro" type="checkbox"><br>
<a href="index.html">volver</a> <a href="index.html">volver</a>
</form> </form>
</div>
</article> </article>
</main> </main>
</body> </body>
</html>
<style>
/* el header donde va el logo y el menu */
html,body{
background-image: url(imagenes/descarga.svg);
}
/* damos los estilos a todo lo que contiene el body */
body{
background-color: rgba(11, 49, 110, 0.75);
font-family:Calibri, Candara, Segoe, Segoe UI, Optima, Arial, sans-serif;
color: wheat;
font-weight: bold;
display: flex;
justify-content: center;
align-items: center;
height: 160%;}
}
/* para el logo */
img{
width: 165px;
padding: 10px;
}
p.enter{
text-align: center;
font-size: 20px;
}
/* para el parrafo */
p:hover{
color: yellow;
}
/* para el create o sea para el main */
.create{
width: 100%;
max-width: 785px;
min-width: 320px;
border-radius: 15px;
background-color: rgba(11, 49, 110, 0.75);
padding: 1rem;
}
/* contenedor */
/* para el forrmulario */
.form label{
display: block;
border: none;
align-items:center;
}
.form input{ </html>
display: block; <script>
border: none; (function() {
width: 50%; const form = document.querySelector('#agarraunolaputa');
align-items:center; const checkboxes = form.querySelectorAll('input[type=checkbox]');
} const checkboxLength = checkboxes.length;
.form input[type="email"],.form input[type="text"],.form input[type="number"]{ const firstCheckbox = checkboxLength > 0 ? checkboxes[0] : null;
background-color: transparent;
border-radius: 10px; function init() {
border: 1px solid #000; if (firstCheckbox) {
for (let i = 0; i < checkboxLength; i++) {
} checkboxes[i].addEventListener('change', checkValidity);
.form input:hover{
background-color: wheat;
}
a{
text-decoration: none;
}
ul{
list-style:none;
font-size:15px;
}
a{
text-decoration:none;
color:black;
background-color: #21211d;
border-radius: 10px;
color: #FFF;
padding: 10px;
margin:15px;
text-decoration: none;
cursor: pointer;
background-image: url(imagenes/descarga.svg);
}
.form input[type="reset"] , .form input[type="submit"]{
text-decoration:none;
background-color: rgba(11, 49, 110, 0.75);
background-image: url(imagenes/descarga.svg);
border-radius: 5px;;
padding: 10px;
border-radius: 10px;
margin:10px;
text-decoration: none;
color:#ffff;
text-align:left;
cursor: pointer;
width:80px;
text-align:center;
} }
/*hola mundo*/
input#ruby,input#python,input#c,input#javascript,input#java{
width:30px;
}
input#experiencia_laboral,input#notebook,input#universidad{
width:500px;
}
/* para el alert */ checkValidity();
.alert { }
padding: 10px; }
background-color: background-color: #2196F3;
color: white;
}
.alert.info {background-color: #2196F3;}
.alert.error {background-color: #ff0000;}
.closebtn {
margin-left: 15px;
color: white;
font-weight: bold;
float: right;
font-size: 22px;
line-height: 20px;
cursor: pointer;
transition: 0.3s;
}
.closebtn:hover {
color: black;
}
</style>
<script> function isChecked() {
var close = document.getElementsByClassName("enviar"); for (let i = 0; i < checkboxLength; i++) {
var i; if (checkboxes[i].checked) return true;
}
return false;
}
for (i = 0; i < close.length; i++) { function checkValidity() {
close[i].onclick = function(){ const errorMessage = !isChecked() ? 'Debe seleccionar al menos un lenguaje que conozca' : '';
var div = this.parentElement; firstCheckbox.setCustomValidity(errorMessage);
div.style.opacity = "0";
setTimeout(function(){ div.style.display = "none"; }, 600);
} }
} init();
</script> })();
\ No newline at end of file </script>
<%@ page import="com.roshka.proyectofinal.entity.Lenguaje, com.roshka.proyectofinal.entity.Bootcamp, com.roshka.proyectofinal.lenguaje.LenguajeDao, com.roshka.proyectofinal.bootcamp.BootcampDao, com.roshka.proyectofinal.entity.Profesor, com.roshka.proyectofinal.profesor.ProfesorDao, java.util.List,java.util.Iterator, java.util.ArrayList" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c" %>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="css/bootstrap.css" rel="stylesheet" type="text/css" /> <link href="css/bootstrap.css" rel="stylesheet" type="text/css" />
<!-- coneccion con el de css -->
<link rel="stylesheet" href="postulante.css">
<title>JSP Page</title> <title>JSP Page</title>
</head> </head>
<body> <body>
<div class="container"> <div class="container">
<h1>Crear Bootcamp</h1> <h1> CREAR BOOTCAMP </h1>
<%@ page import="com.roshka.proyectofinal.entity.Lenguaje, com.roshka.proyectofinal.entity.Bootcamp, com.roshka.proyectofinal.lenguaje.LenguajeDao, com.roshka.proyectofinal.bootcamp.BootcampDao, com.roshka.proyectofinal.entity.Profesor, com.roshka.proyectofinal.profesor.ProfesorDao, java.util.List,java.util.Iterator" %> <%@ page import="com.roshka.proyectofinal.entity.Lenguaje, com.roshka.proyectofinal.entity.Bootcamp, com.roshka.proyectofinal.lenguaje.LenguajeDao, com.roshka.proyectofinal.bootcamp.BootcampDao, com.roshka.proyectofinal.entity.Profesor, com.roshka.proyectofinal.profesor.ProfesorDao, java.util.List,java.util.Iterator" %>
<% <%
LenguajeDao lenDao = new LenguajeDao(); LenguajeDao lenDao = new LenguajeDao();
List<Lenguaje> listLenguaje = lenDao.listar(); List<Lenguaje> listLen = lenDao.listar();
Iterator<Lenguaje> iter = listLenguaje.iterator(); Iterator<Lenguaje> iter = listLen.iterator();
Lenguaje len = null; Lenguaje len = null;
ProfesorDao profeDao = new ProfesorDao(); ProfesorDao profeDao = new ProfesorDao();
List<Profesor> listProfesor = profeDao.listar(); List<Profesor> listProfesor = profeDao.listarProfesor();
Iterator<Profesor> iterProfe = listProfesor.iterator(); Iterator<Profesor> iterProfe = listProfesor.iterator();
Profesor profe = null; Profesor profe = null;
%> %>
<form action="" method="post"> <form action="SaveServletBootcamp" method="post">
<label for="lenguaje">Lenguajes:</label> <label for="titulo">titulo:</label>
<select name="lenguaje" id="lenguaje"> <input type="text" name="titulo" id="titulo">
<label for="descripcion">descripcion:</label>
<input type="text" name="descripcion" id="descripcion">
<label for="fecha_inicio">fecha de inicio:</label>
<input type="text" name="fecha_inicio" id="fecha_inicio">
<label for="fecha_fin">fecha de fin:</label>
<input type="text" name="fecha_fin" id="fecha_fin">
<label for="activo">Activo:</label>
<input type="checkbox" name="activo" id="activo">
<label for="imagen">Imagen:</label>
<input type="text" name="imagen" id="imagen">
<label for="id_lenguaje">Lenguajes:</label>
<select name="id_lenguaje" id="id_lenguaje">
<% while(iter.hasNext()){ <% while(iter.hasNext()){
len = iter.next(); len = iter.next();
%> %>
<option value=<%= len.getId() %> > <option value=<%= len.getId() %> >
<%= len.getNombre_lenguaje() %> <%= len.getNombre_lenguaje() %>
...@@ -39,8 +52,8 @@ ...@@ -39,8 +52,8 @@
<% } %> <% } %>
</select> </select>
<label for="lenguaje">Profesores:</label> <label for="id_profesor">Profesores:</label>
<select name="lenguaje" id="lenguaje"> <select name="id_profesor" id="id_profesor">
<% while(iterProfe.hasNext()){ <% while(iterProfe.hasNext()){
profe = iterProfe.next(); profe = iterProfe.next();
...@@ -50,8 +63,11 @@ ...@@ -50,8 +63,11 @@
</option> </option>
<% } %> <% } %>
</select> </select>
</form>
<button type="submit">
Crear Bootcamp
</button>
</form>
</div> </div>
...@@ -87,9 +103,9 @@ ...@@ -87,9 +103,9 @@
<th> <%= boot.getNombre_lenguaje() %> </th> <th> <%= boot.getNombre_lenguaje() %> </th>
<th> <%= boot.getNombre_profesor() + " " + boot.getApellido_profesor() %> </th> <th> <%= boot.getNombre_profesor() + " " + boot.getApellido_profesor() %> </th>
<th> <%= boot.getActivo() %> </th> <th> <%= boot.getActivo() %> </th>
<th> <form action="/bootcamp/EditServlet"> <th> <form action="EditServletBootcamp" method="get">
<input type="hidden" name="id" value=<%= boot.getId() %>> <input type="hidden" name="id" value=<%= boot.getId() %>>
<input type="submit" value="Editar" > </input> <input type="submit" value="Editar" ></input>
</form> </form>
</th> </th>
<th> <th>
...@@ -104,6 +120,64 @@ ...@@ -104,6 +120,64 @@
</table> </table>
</form> </form>
</div> </div>
</body>
<%
LenguajeDao lenDao2 = new LenguajeDao();
List<Lenguaje> listLenguaje2 = lenDao2.listar();
Iterator<Lenguaje> iter2 = listLenguaje2.iterator();
Lenguaje len2 = null;
ProfesorDao profeDao2 = new ProfesorDao();
List<Profesor> listProfesor2 = profeDao2.listarProfesor();
Iterator<Profesor> iterProfe2 = listProfesor2.iterator();
Profesor profe2 = null;
Bootcamp bootcampToEdit = (Bootcamp)request.getAttribute("Bootcamp");
if(bootcampToEdit != null){
%>
<form method="post" action="EditServletBootcamp">
<label for="titulo2">titulo:</label>
<input type="text" id="titulo2" name="titulo2" value="<%= bootcampToEdit.getTitulo() %>">
<label for="descripcion2">descripcion:</label>
<input type="text" id="descripcion2" name="descripcion2" value="<%= bootcampToEdit.getDescripcion() %>">
<label for="fecha_inicio2">fecha de inicio:</label>
<input type="text" id="fecha_inicio2" name="fecha_inicio2" value="<%= bootcampToEdit.getFecha_inicio() %>">
<label for="fecha_fin2">fecha de fin:</label>
<input type="text" id="fecha_fin2" name="fecha_fin2" value="<%= bootcampToEdit.getFecha_fin() %>">
<label for="activo2">Activo:</label>
<input type="checkbox" id="activo2" name="activo2">
<label for="imagen2">Imagen:</label>
<input type="text" name="imagen2" id="imagen2" value=<%= bootcampToEdit.getImagen() %>>
<input type="hidden" value=<%= bootcampToEdit.getId() %> name="id" id="id" />
<label for="id_lenguaje2">Lenguajes:</label>
<select name="id_lenguaje2" id="id_lenguaje2">
<% while(iter2.hasNext()){
len2 = iter2.next();
%>
<option value=<%= len2.getId() %> >
<%= len2.getNombre_lenguaje() %>
</option>
<% } %>
</select>
<label for="id_profesor2">Profesores:</label>
<select id="id_profesor2" name="id_profesor2">
<% while(iterProfe2.hasNext()){
profe2 = iterProfe2.next();
%>
<option value=<%= profe2.getId() %> >
<%= profe2.getNombre() + " " + profe2.getApellido() %>
</option>
<% } %>
</select>
<button type="submit">
Editar Bootcamp
</button>
</form>
<% } %>
</body>
</html> </html>
\ No newline at end of file
...@@ -6,12 +6,13 @@ ...@@ -6,12 +6,13 @@
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="css/bootstrap.css" rel="stylesheet" type="text/css" /> <link href="css/bootstrap.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="postulante.css">
<title>JSP Page</title> <title>JSP Page</title>
</head> </head>
<body> <body>
<div> <div>
<h1>Crear Lenguaje</h1> <h1> CREAR LENGUAJE </h1>
<%@ page import="com.roshka.proyectofinal.entity.Lenguaje, com.roshka.proyectofinal.lenguaje.LenguajeDao, java.util.List,java.util.Iterator" %> <%@ page import="com.roshka.proyectofinal.entity.Lenguaje, com.roshka.proyectofinal.lenguaje.LenguajeDao, java.util.List,java.util.Iterator" %>
...@@ -37,6 +38,7 @@ ...@@ -37,6 +38,7 @@
Crear Lenguaje Crear Lenguaje
</button> </button>
</form> </form>
<br>
<table> <table>
<thead> <thead>
...@@ -53,14 +55,14 @@ ...@@ -53,14 +55,14 @@
%> %>
<th> <%= lenguaje.getNombre_lenguaje() %> </th> <th> <%= lenguaje.getNombre_lenguaje() %> </th>
<th> <form action="EditServlet" method="get"> <th> <form action="EditServletLenguaje" method="get">
<input type="hidden" name="id" value=<%= lenguaje.getId() %>> <input type="hidden" name="id" value=<%= lenguaje.getId() %>>
<input type="submit" value="Editar" > </input> <input type="submit" value="Editar" > </input>
</form> </form>
</th> </th>
<th> <th>
<form action="DeleteServletLenguaje" method="get"> <form action="DeleteServletLenguaje" method="get">
<input type="hidden" name="id" value= <%= lenguaje.getId() %> > <input type="hidden" name="id" value= <%= lenguaje.getId() %> name="id" id="id" >
<input type="submit" value="Borrar" > </input> <input type="submit" value="Borrar" > </input>
</form> </form>
</th> </th>
...@@ -70,6 +72,19 @@ ...@@ -70,6 +72,19 @@
</table> </table>
</form> </form>
</div> </div>
<%
Lenguaje lenguajeToEdit = (Lenguaje)request.getAttribute("Lenguaje");
if(lenguajeToEdit != null){
%>
<form method="post" action="EditServletLenguaje">
<input type="hidden" value="<%= lenguajeToEdit.getId() %>" name="id" id="id" />
<label for="nombre_lenguaje">Lenguaje:</label>
<input type="text" name="nombre_lenguaje" value="<%= lenguajeToEdit.getNombre_lenguaje() %>">
<button type="submit">Editar Lenguaje </button>
</form>
<% } %>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -6,12 +6,14 @@ ...@@ -6,12 +6,14 @@
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="css/bootstrap.css" rel="stylesheet" type="text/css" /> <link href="css/bootstrap.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="postulante.css">
<title>JSP Page</title> <title>JSP Page</title>
</head> </head>
<body> <body>
<div> <div>
<h1>Crear Profesor</h1> <h1> CREAR PROFESOR Y FILTRAR </h1>
<%@ page import="com.roshka.proyectofinal.entity.Profesor, com.roshka.proyectofinal.profesor.ProfesorDao, java.util.List,java.util.Iterator" %> <%@ page import="com.roshka.proyectofinal.entity.Profesor, com.roshka.proyectofinal.profesor.ProfesorDao, java.util.List,java.util.Iterator" %>
...@@ -20,7 +22,7 @@ ...@@ -20,7 +22,7 @@
<div> <div>
<% <%
ProfesorDao profeDao = new ProfesorDao(); ProfesorDao profeDao = new ProfesorDao();
List<Profesor> listProfe = profeDao.listar(); List<Profesor> listProfe = profeDao.listarProfesor();
Iterator<Profesor> iterProfe = listProfe.iterator(); Iterator<Profesor> iterProfe = listProfe.iterator();
Profesor profesor = null; Profesor profesor = null;
%> %>
...@@ -50,6 +52,15 @@ ...@@ -50,6 +52,15 @@
Crear Profesor Crear Profesor
</button> </button>
</form> </form>
<br>
<form action="filtros-profesor">
<input name="nombreBuscar">
<input name="apellidoBuscar">
<button type="submit">
Filtrar
</button>
</form>
<br>
<table> <table>
<thead> <thead>
...@@ -72,9 +83,9 @@ ...@@ -72,9 +83,9 @@
<th> <%= profesor.getNro_cedula() %> </th> <th> <%= profesor.getNro_cedula() %> </th>
<th> <%= profesor.getCorreo() %> </th> <th> <%= profesor.getCorreo() %> </th>
<th> <form action="EditServlet" method="get"> <th> <form action="EditServletProfesor" method="get">
<input type="hidden" name="id" value=<%= profesor.getId() %>> <input type="hidden" name="id" value=<%= profesor.getId() %>>
<input type="submit" value="Editar" > </input> <input type="submit" value="Editar"> </input>
</form> </form>
</th> </th>
<th> <th>
...@@ -89,6 +100,25 @@ ...@@ -89,6 +100,25 @@
</table> </table>
</form> </form>
</div> </div>
<%
Profesor profesorToEdit = (Profesor)request.getAttribute("Profesor");
if(profesorToEdit != null){
%>
<form method="post" action="EditServletProfesor">
<input type="hidden" value="<%= profesorToEdit.getId() %>" name="id" id="id" />
<label for="nombre">Nombre:</label>
<input type="text" name="nombre" value="<%= profesorToEdit.getNombre() %>" />
<label for="apellido">Apellido:</label>
<input type="text" name="apellido" value="<%= profesorToEdit.getApellido() %>"></input>
<label for="correo">Correo:</label>
<input type="text" name="correo" value="<%= profesorToEdit.getCorreo() %>"></input>
<label for="nro_cedula">Numero de Cedula:</label>
<input type="number" name="nro_cedula" value="<%= profesorToEdit.getNro_cedula() %>"></input>
<button type="submit">Editar Profesor </button>
</form>
<% } %>
</body> </body>
</html> </html>
\ No newline at end of file
img.logoi{ img.logoi {
width: 200px; width: 200px;
}
} img {
img{
width: 400px; width: 400px;
padding: 10px; padding: 10px;
display: block; display: block;
padding:10px ; padding: 10px;
} }
.header {
.header {
margin-bottom: 0; margin-bottom: 0;
width: 700px; width: 700px;
} }
a{
a {
float: right 100px; float: right 100px;
color: #fff; color: #fff;
font-size: larger; font-size: larger;
text-decoration: none; text-decoration: none;
padding: 10px; padding: 10px;
}
} body {
body {
background: linear-gradient(100deg, rgba(20, 99, 155, 0.25), rgba(30, 148, 227, 0.25)); background: linear-gradient(100deg, rgba(20, 99, 155, 0.25), rgba(30, 148, 227, 0.25));
background-image: url(webapp/imagenes/descarga.svg); background-image: url(imagenes/descarga.svg);
background-size: contain; background-size: contain;
background-attachment: fixed; background-attachment: fixed;
background-blend-mode: multiply; background-blend-mode: multiply;
...@@ -34,8 +33,8 @@ body { ...@@ -34,8 +33,8 @@ body {
position: relative; position: relative;
width: 100px; width: 100px;
height: 100px; height: 100px;
} }
/* ul{ /* ul{
list-style: none; list-style: none;
} }
.menu >ul{ .menu >ul{
...@@ -54,10 +53,10 @@ body { ...@@ -54,10 +53,10 @@ body {
marging-left marging-left
position:relative; position:relative;
} */ } */
.menu {
.menu {
width: 400%; width: 400%;
float: left; float: left;
} }
.menu ul li { .menu ul li {
...@@ -65,20 +64,14 @@ body { ...@@ -65,20 +64,14 @@ body {
list-style-type: none; list-style-type: none;
text-align: right; text-align: right;
} }
div.menu{
float: right;
} div.menu {
html, body { float: right;
margin:0;
padding:0;
height:100%;
} }
.menu ul li a { .menu ul li a {
padding-left: 5px; padding-left: 5px;
text-decoration: none;
font-size: clamp(145px); font-size: clamp(145px);
text-transform: uppercase; text-transform: uppercase;
display: block; display: block;
...@@ -87,60 +80,46 @@ body { ...@@ -87,60 +80,46 @@ body {
padding-bottom: 50px; padding-bottom: 50px;
white-space: nowrap; white-space: nowrap;
} }
.grafico,svg {
.grafico,
svg {
max-width: 50px; max-width: 50px;
display: block; display: block;
height: auto; height: auto;
} }
.seccion.hero {
.seccion.hero {
margin-top: 10px; margin-top: 10px;
padding-bottom: 10px; padding-bottom: 10px;
width: 900px; width: 900px;
} }
.hero {
.hero {
perspective: 100px; perspective: 100px;
} }
.hero {
.hero {
display: grid; display: grid;
grid-template-columns: auto repeat(5, 0.5fr) auto; grid-template-columns: auto repeat(5, 0.5fr) auto;
} }
.hero {
.hero {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
padding-left: 200px; padding-left: 200px;
/* padding-right: 200px; /* padding-right: 200px;
*/ */
} }
/* */ /* */
.postulacion{
border-radius: 30px; .postulacion {
} border-radius: 30px;
.cta-main{ }
.cta-main {
width: 200px; width: 200px;
font-family: monospace; font-family: monospace;
background-color: yellow; background-color: yellow;
border: none; border: none;
} }
/* Contenido pie de pagina */
/* usamos media quiere para el responsive */
/* @media (min-width: 768px)
.footer {
display: grid;
grid-template-rows: auto auto;
align-items: flex-start;
gap: 0;
padding: 80px 20px
} */
.footer{
margin-top: 10px;
padding-bottom: 10px;
height:100px;
width: 100px;
display: grid;
}
.menu-footer a{
text-decoration: none;
float: right;
}
\ No newline at end of file
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<!-- para concectar con css --> <!-- para concectar con css -->
<link rel="stylesheet" href="estilos/home.css"> <link rel="stylesheet" href="home.css">
<!-- el icono para la pagina --> <!-- el icono para la pagina -->
<link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" /> <link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" />
...@@ -26,15 +26,9 @@ ...@@ -26,15 +26,9 @@
<ul> <ul>
<li class="link-menu"><a href="">Home</a></li> <li class="link-menu"><a href="">Home</a></li>
<li class="link-menu"><a href="formulario.jsp">Postulate</a></li> <li class="link-menu"><a href="bootcamp.jsp">Postulate</a></li>
<li class="link-menu"><a href="formulario_bootcamp.jsp">Crear bootcamp</a>
<li class="link-menu"><a href="login.jsp">Login</a>
<li class="link-menu"><a href="protected">Recurso Protegido</a></li>
</li>
<li class="link-menu"><a href="formulario_lenguaje.jsp">Crear lenguaje</a>
</li>
<li class="link-menu"><a href="formulario_profesor.jsp">Crear profesor</a>
</li> </li>
</ul> </ul>
</div> </div>
...@@ -63,7 +57,7 @@ ...@@ -63,7 +57,7 @@
<p data-block-key="cwggy">Es un campo de entrenamiento intensivo y gratuito para principiantes que ya programan y quieren ser parte de la empresa</p> <p data-block-key="cwggy">Es un campo de entrenamiento intensivo y gratuito para principiantes que ya programan y quieren ser parte de la empresa</p>
</div> </div>
<div class="postulacion"> <div class="postulacion">
<a href="formulario.jsp"><button type="submit" class="cta-main">POSTULACION</button></a> <a href="bootcamp.jsp"><button type="submit" class="cta-main">POSTULACION</button></a>
<!-- <a href="/postulacion" class="cta-main">POSTULACION</a> --> <!-- <a href="/postulacion" class="cta-main">POSTULACION</a> -->
</div> </div>
</div> </div>
...@@ -87,130 +81,3 @@ ...@@ -87,130 +81,3 @@
</body> </body>
</html> </html>
<style>
img.logoi {
width: 200px;
}
img {
width: 400px;
padding: 10px;
display: block;
padding: 10px;
}
.header {
margin-bottom: 0;
width: 700px;
}
a {
float: right 100px;
color: #fff;
font-size: larger;
text-decoration: none;
padding: 10px;
}
body {
background: linear-gradient(100deg, rgba(20, 99, 155, 0.25), rgba(30, 148, 227, 0.25));
background-image: url(imagenes/descarga.svg);
background-size: contain;
background-attachment: fixed;
background-blend-mode: multiply;
font-family: Georgia, 'Times New Roman', Times, serif;
color: white;
position: relative;
width: 100px;
height: 100px;
}
/* ul{
list-style: none;
}
.menu >ul{
float: right;
}
.menu li a {
color:#fff;
text-decoration:none;
padding:10px 12px;
display:block;
}
.menu li ul li {
marging-left
position:relative;
} */
.menu {
width: 400%;
float: left;
}
.menu ul li {
float: right;
list-style-type: none;
text-align: right;
}
div.menu {
float: right;
}
.menu ul li a {
padding-left: 5px;
text-decoration: none;
font-size: clamp(145px);
text-transform: uppercase;
display: block;
position: relative;
overflow: hidden;
padding-bottom: 50px;
white-space: nowrap;
}
.grafico,
svg {
max-width: 50px;
display: block;
height: auto;
}
.seccion.hero {
margin-top: 10px;
padding-bottom: 10px;
width: 900px;
}
.hero {
perspective: 100px;
}
.hero {
display: grid;
grid-template-columns: auto repeat(5, 0.5fr) auto;
}
.hero {
display: flex;
flex-direction: column;
align-items: center;
padding-left: 200px;
/* padding-right: 200px;
*/
}
/* */
.postulacion {
border-radius: 30px;
}
.cta-main {
width: 200px;
font-family: monospace;
background-color: yellow;
border: none;
}
</style>
\ No newline at end of file
<<<<<<< HEAD
=======
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
...@@ -23,4 +21,3 @@ ...@@ -23,4 +21,3 @@
</body> </body>
</html> </html>
\ No newline at end of file
>>>>>>> origin/develop
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" />
</head>
<style> <style>
<link href="https://fonts.googleapis.com/css2?family=Concert+One&family=Francois+One&family=Satisfy&family=Staatliches&display=swap" rel="stylesheet"> <link href="https://fonts.googleapis.com/css2?family=Concert+One&family=Francois+One&family=Satisfy&family=Staatliches&display=swap" rel="stylesheet">
...@@ -8,7 +10,9 @@ ...@@ -8,7 +10,9 @@
* { * {
box-sizing: border-box; box-sizing: border-box;
} }
a{
text-decoration:none;
}
body { body {
font-family: 'Concert One', cursive; font-family: 'Concert One', cursive;
font-family: 'Francois One', sans-serif; font-family: 'Francois One', sans-serif;
......
<!DOCTYPE html>
<html>
<head>
<link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" />
</head>
<style>
<link href="https://fonts.googleapis.com/css2?family=Concert+One&family=Francois+One&family=Satisfy&family=Staatliches&display=swap" rel="stylesheet">* {
box-sizing: border-box;
}
body {
font-family: 'Concert One', cursive;
font-family: 'Francois One', sans-serif;
font-family: 'Satisfy', cursive;
font-family: 'Staatliches', cursive;
font-size: 13px
}
.header,
.footer {
background-color: rgb(18, 18, 98);
color: white;
padding: 60px;
}
.column {
float: left;
padding: 30px;
}
.clearfix::after {
content: "";
clear: both;
display: table;
}
a {
color: white;
}
.menu {
width: 50%;
}
.content {
width: 50%;
}
.menu ul {
list-style-type: none;
margin: 0;
padding: 0;
}
.menu li {
padding: 8px;
margin-bottom: 8px;
background-color: rgb(18, 18, 98);
color: #ffffff;
}
.menu li:hover {
background-color: rgb(18, 18, 98);
}
</style>
</head>
<body>
<div class="header">
<h1> MENU TH</h1>
<h2> EN LOS SIGUIENTES LINKS PUEDE MODIFICAR, AGREGAR O ELIMINAR DATOS DE LA BASE DE DATOS DEL BOOTCAMP </h2>
</div>
<div class="column content">
<h1>PUEDE ACCEDER A LOS SIGUIENTES LINKS:</h1>
</div>
<div class="clearfix">
<div class="column menu">
<ul>
<li><a href="formulario_bootcamp.jsp"> MANAGE BOOTCAMP </a></li>
<li><a href="filtros-postulante"> MANAGE POSTULANTE </a></li>
<li><a href="formulario_lenguaje.jsp"> MANAGE LENGUAJES </a></li>
<li><a href="formulario_profesor.jsp"> MANAGE PROFESORES </a></li>
</ul>
</div>
</div>
</body>
</html>
\ No newline at end of file
...@@ -5,17 +5,49 @@ ...@@ -5,17 +5,49 @@
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Postulantes Manage</title>
<!-- el icono para la pagina -->
<link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" />
<!-- coneccion con el de css -->
<link rel="stylesheet" href="postulante.css">
<title> POSTULANTE MANAGE </title>
</head> </head>
<body> <body>
<div> <div class="logo">
<a href="./index.html"> <img class="logoi" src="imagenes/logo-roshka.svg" alt="" /> </a>
<!-- logo con link -->
</div>
<div class="container">
<h1>Lista Postulantes</h1> <h1>Lista Postulantes</h1>
<div class="filtros">
<form action="filtros-postulante" > <form action="filtros-postulante" >
<input type="search" name="nombreBuscar" <input type="search" name="nombreBuscar"
placeholder="Buscar por nombre"> placeholder="Buscar por nombre">
<button type="submit">Buscar</button> <button type="submit">Buscar</button>
</form> </form>
<form action="filtros-postulante" method="post">
<input type="search" name="nombre" placeholder="Buscar por Bootcamp" required>
<button type="submit">Bootcamp</button>
</form>
<form action="filtros-postulante" method="post">
<input type="hidden" name="nombre" value="notebook">
<button type="submit">Notebooks</button>
</form>
<form action="filtros-postulante" method="post">
<input type="hidden" name="nombre" value="aceptado">
<button class="aceptado" type="submit">Aceptado</button>
</form>
</div>
<div>
<table> <table>
<tr> <tr>
<th>#</th> <th>#</th>
...@@ -28,26 +60,17 @@ ...@@ -28,26 +60,17 @@
<th>Experiencia laboral</th> <th>Experiencia laboral</th>
<th>Estudio universitario</th> <th>Estudio universitario</th>
<th> <th>
<form action="filtros-postulante" method="post"> Notebooks
<input type="hidden" name="nombre" value="notebook">
<button type="submit">Notebooks</button>
</form>
</th> </th>
<th> <th>
<form action="filtros-postulante" method="post"> Bootcamps
<input type="search" name="nombre" placeholder="Buscar por Bootcamp" required>
<button type="submit">Bootcamp</button>
</form>
</th> </th>
<th> <th>
<form action="filtros-postulante" method="post"> Aceptado
<input type="hidden" name="nombre" value="aceptado">
<button type="submit">Aceptado</button>
</form>
</th> </th>
<th></th>
</tr> </tr>
<tbody> <tbody class="tcuerpo">
<c:forEach var="postulante" items="${postulantes}" varStatus="myIndex"> <c:forEach var="postulante" items="${postulantes}" varStatus="myIndex">
<tr> <tr>
<td> ${myIndex.index + 1}-</td> <td> ${myIndex.index + 1}-</td>
...@@ -91,14 +114,22 @@ ...@@ -91,14 +114,22 @@
</c:if> </c:if>
</td> </td>
<td> <td>
<c:if test="${postulante.aceptado == true}"> <c:choose>
<input type="hidden" name="valor" value="false"> <c:when test="${postulante.aceptado == true}">
<button><a href="filtros-postulante?id=${postulante.id}">Rechazar</a></button> <form action="filtros-postulante" method="get">
</c:if> <input type="hidden" name="valor" value="0">
<c:if test="${postulante.aceptado != true}"> <input type="hidden" name="id" value="${postulante.id}">
<input type="hidden" name="valor" value="true"> <button type="submit">Rechazar</button>
<button><a href="filtros-postulante?id=${postulante.id}">Aceptar</a></button> </form>
</c:if> </c:when>
<c:otherwise>
<form action="filtros-postulante" method="get">
<input type="hidden" name="valor" value="1">
<input type="hidden" name="id" value="${postulante.id}">
<button type="submit">Aceptado</button>
</form>
</c:otherwise>
</c:choose>
</td> </td>
</tr> </tr>
</c:forEach> </c:forEach>
......
body{
background-image: url(imagenes/descarga.svg);
font-family:Calibri, Candara, Segoe, Segoe UI, Optima, Arial, sans-serif;
font-weight: bold;
font-size: medium;
}
img{
width: 165px;
padding: 5px;
}
.container{
width: 300%;
max-width: 785px;
min-width: 320px;
border-radius: 15px;
padding: 1rem;
}
table{
/* background-color: wheat; */
text-align: left;
border-collapse: collapse;
width: 150%;
/* border: solid 3px black; */
}
a{
text-decoration: none;
color: antiquewhite;
}
h1{
font-family:Calibri, Candara, Segoe, Segoe UI, Optima, Arial, sans-serif;
text-align: right;
color:wheat;
font-weight:bold;
}
button{
margin:5px;
background-image: url(imagenes/descarga.svg);
color: aliceblue;
}
th,td{
margin: 2px;
}
table tr:nth-child(odd) { /* background-color: aliceblue; */
/* background-color: rgba(11, 49, 110, 0.75) */
background-color: transparent;
}
table tr:nth-child(even) { background-image: url(imagenes/descarga.svg);
}
td{
padding: 3px;
border-color: red;
text-align: center;
/* border: solid 1px coral; */
}
th{
padding: 5px;
text-align: center;
/* border: solid 4px black; */
}
th:hover{
background-color: brown;
}
tbody{
margin: 15px;
padding: 15px
}
tr:hover td { background: aqua; }
th { border: 1px solid black; height: 30px;
background-image: url(imagenes/descarga.svg);
}
button:hover{
color: yellow;}
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<!-- el icono para la pagina -->
<link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" />
<!-- coneccion con el de css -->
<link rel="stylesheet" href="postulante.css">
<title> Profesor MANAGE </title>
</head>
<body>
<div>
<h1>LISTA PROFESORES</h1>
<form action="filtros-profesor" >
<input type="search" name="nombreBuscar"
placeholder="Buscar por nombre">
<input type="search" name="apellidoBuscar"
placeholder="Buscar por apellido">
<button type="submit">Buscar</button>
</form>
<table>
<tr>
<th>#</th>
<th>Nombre</th>
<th>Apellido</th>
<th>Numero de Cedula</th>
<th>Correo</th>
<th>Editar</th>
<th>Eliminar</th>
</tr>
<tbody>
<c:forEach var="profesor" items="${profesores}" varStatus="myIndex">
<tr>
<td> ${myIndex.index + 1}-</td>
<td> ${profesor.nombre}</td>
<td> ${profesor.apellido}</td>
<td> ${profesor.nro_cedula}</td>
<td> ${profesor.correo}</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</body>
</html>
\ No newline at end of file
...@@ -60,7 +60,7 @@ Icons ...@@ -60,7 +60,7 @@ Icons
margin: 13px 0px 0px 15px; margin: 13px 0px 0px 15px;
position: relative; position: relative;
float: left; float: left;
background-image:url(imagenes/roshkaicon.ico) background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAAADhCAMAAAAJbSJIAAAA3lBMVEUddbz///8ddb3///0ddrv//v////z7///8/v38/vz+/fwKbrb2//8ddroAa7IAbLOUvNPx//9Oh7MVcrwAZ6wAbLcAZ6kAbLIAbbkAZKjn+fkAZaUAZa0AaazR5+wAbrXC3uo9gLPf8vgjcq5kmb6mx9tzo8kqdq2w0eJ5pcbL4u7O5usveLR7qcNwnb681+hVjLdUjsCIs8iLttNLisBmm8dbk7qLs9XU7vmlyuAwdqiWuNISaqOYxN85gbmsydhLha1dk7a709ukxdLM7fWt1+gjb6Ld9vWDqcSvydsrtU6zAAAfvklEQVR4nO09iX/TOLOR5MjyESeuc7ROnMPO3dC0hJYW2JaF772F//8feho5l23JcdIWlu91fixsIbE1mtHcMyqV3uAN3uAN3uAN3uAN3uAN/v+B9rsX8AqAxa8NaP+NKALgwx/500CrxMTCAL95LS8NgFnMi1bPajQ6nXrHsSyL/4z/m1jU6gVBNH5fW97P5/P7Ze39OAoc67+EmBhbncnVtK8jDoQQtAb/2+rmwvIEz/6pqFb4f9irflrN3Rg5QiiJ8Swjxv9kYe2xZf3BApVj2Kj8mHPiEbYl3T5wjO3+sM7JiMV2/FnAGa/nDJ5c3dANWk6htvmZGQYn5KxtxV/4k0jJxSSuXy91REwiJd+aiAiZJkLdYcf73Ss+EioabpwtdWqyHb3UYFJ9+cn63Ws+EnB7ZFNqmAexIzGvUveq86cIVCEXW0OfL7x8mHwxjmUTmWgUyYydf+PR1Epee8QlyHHAqX0ZyR72b4Te4B4Z7FgMTdO+TokbLfXnvwWsa58wejQNDVSrJlDRtAqoEM4S2PMsj1uyQp9ov9kAwrg6tilDORpCDgbtttJL97ye1bz48uF2DHD72G4HYOT9ZtsAEFyL0KOwpPZdqbK/dlyyKoOPo3vftdcS13b95ehu8vsMdmGFcgSJaR5JQW4TEDRqJURp72L4M+T2HmWUMrBoEaXCdnDnq4XjxR/Fv5Zj4RBZ1y45VsZwMMskbO+vFvdWofrjrD8Mfs9pxN7Ep+ywls9iaKJhQo56A9swyyo+Nwjitqz3G3DUmnOO4PEYEhNNnQSPNkZC3xApjiZj/ByE7+q/2lbnpmgN0aPR41BmfpQkSNtVf3htKBF9Pmj9Yl71ru2jTRlYMifULLa7NxSxPud9YU1XYui15i+Vq7jdJQoWJWt+013f9109wX4gmfpB8kmRf3BfiGlwpXR/1vg1KIq9771Tr8fkPn73YXgTNNvt6GbWt5GxJbdh2p8SYkazvuvkoNEOqsOk7rt6YhGvCXjhp8XChp0QY/5o0urFsVLN81rBLERG7Doyit5bidXhgV7A7YIHc12JpsGv0ori7CjEu/s5quIKd4vBKqhAeNhqvndj5980ukFihTjoE6OYzcCISblLgn+FSMVYLv4Mxn2/fpQSCJC6sD5dctryj+iDxD+UuEQ+Avg2hYOe9tpxdG4Nn6+4gZVdgMkNgFWwsbH2A6MV/GWOwL4bJYSFxiVycaNPfJL6Z4LNX4+Q4skRt2YkKzOofVXXtghufudOEGfWoM8/ESb9Xjzxj3YtAcVXP4reEMkx1K8cnIlpC5SxVvoSUnTl7eLB3PeL5uRoo4gh/4P32n6js1S8/XOOwqp4d3rf2f933OwjahYK7ySAhI+vG47UtC+ufOfndfXp8LDm/PUoEFs/Bn/pE5McZRfFu8FIGOFXFajeUCYdmKF/yGEdUBtWzLExi+E21xMnOF8cT8Ltolfl0mAqM7kZmTrFNxb3BqHK7CsCtVc14IKubGWGPjj40q2Yx51bn9DTMST6de/1EMQLXXZ46GWz0LZy3aFZkwduTbOM20sMk9stiOm2LhxGRgiVZQrKjIWxC/YKx5HbhQMkOT6E1A4mI+LlaF5zpnAnTEr08Gn29Wxw9nU2CiEVAq/KmsDMoGA7vJK4saQGDdG/5pNQi+03r9XihjgF/iwnqCP+3x6dXTQ8UeFgnXcGIx8ZSIaiCCm/Dnoc8J0uw9AdaLlMI8zTVuux5nMWYOkHEMGx/UFjHZABwwB71cnIJhALyqDILYXLQP2y54HW+qFL1EUoSUTsf0vDTjT+q4uEtM+AqTPTnXWSNjVXK87XeySXR4Y+fD1xWu9L3th18l+I6zUXUWrGUgqQTEgQRu8fe2l7jxPSa0+lCHIp1K2/LIobBoRAe+RnA6XdjppFNW6COD+4qGRGWSIbCfzqR+n1VrhLwp/pfBZeSfprhOp3L2q8JZZvXSHDSB2OcJEn2bB1q/CTID7BXf9pU7Lc2Eyv15gsu2yipfNSnmJ26Z1Lmj4d7kC9o7iCP7lUnQLnsj+IU03S19eljFo27S8vxqZ8L3sbXw9cfK10ZqdfmKct4vi4PEnF/XYTPQR51MAXlyirg7mM/fhi9QDYCW6DhGct2dbxufr7wVyZnAKlPsqVGRr2zmxTZgv3my+Dntc5G7lomDAEvbPM60bKDcXOVJ19M00yqqu+uX3ASKYzqP8yjmLrum8TSu+TGaB6mip0riIEdlZI5QaC6l4ecIXgXydumob87RSlU+VHwDpMgEuNx2lchYeuEvkf7yq1q8xtyxeqccmrEqOMsyj4egcNzOpI9n328OyD2Au4ml4nebsJKwlXwqQ4pamc2Ra8AdcTCjFqGtwlKbIQfK1nv81Iv/Ec7Lid1RvM40gKJG7ZbP8k4upTMlZt0FXaJok/GIVEHj2GvzYPGHubh5Q6EneEUfeZlUf1mbtHJxruExH3blkKw0tHEj3RLvpQqiHD0DBMGk6KnSSt95R9AKV66zn44c4DdyK27MVFwmw/UIkjO4Eho/YiWzqKnRqRBY/FN0RVTUEiWJLgOEXs5hk09KI+6KodhszkRNyigEvVpP3N0ZilaVgpWUOdu6sKDIn9d+FYhDeWPMFE704SpvG2RHOUimUStD2JkHKuPiRYj2P4rZGufsEL1yzLxQyYMqtqcRLcyDE8WZh60T3ZY9H1osK13BOk4voiBW4zScOKFsyJRAZuIN+USS1IhiFhJ2OIgYLpYi4uUFd7D/RuMudrmHiIpjk1lBNPmwZHxFl6Ei7l7P/+NAwrpU5faoVQP9pLOywyKbafSfXUO7PleQmue4SRVBy0lkzSGKeqfOw8SPeemazW0DbFSbidVlFcnyTyEkGojmlTf+IdEUAutSTaghjo4QSVz1/LBaDJMczqMIO67d0nMxiabN9OBEWhZFHiDo4J6eLShaxsip0maSqYO3NItjhIM3/fbhpupjE00Kha0jatQfjMpnH1RWZhzNSvzjfkxqV1AWKe2PHuMhKrDMs5AUNuBVeXOQWj4MprCgwZCQNNrBZ+q0PWl/MCdx/Wf/Df1j+hWjbHoaXWkYDGSGIXkZMw5PLhSprC3jx15GzWkKWhyaXpWiVq1kz5DBCj3g4Hq2fFPW5ZIm7pDN5TCsMynMPbUzR+EJJMwHYHpv0oRA3WMpIGcoFP1QqYbhD2GNfUAEUja5ppi/Ht7e1ksVhUHMexPG+NmVbZC2z0/tLtTByDy2P9lCybtcrZexA2UyAioPEoKcgQxn4cUupZahCtifH7KgsfHEWE9PCy/zAb37Tb1rmVKg/Gjx8+DIfDKw6r0Wi5nM/n3dB1bf+EkCmOMrVAKQzR9brS4lb278PdwSioDDg7mwYAFaWAth/+HI3PJkDPHd8KbHsW1IA3rAZANYomk8mxCHJd5/2QRUQgrYDKfAF6/9v0XazILJktjJaNIxNCWqlzDwKIHw0QRdAXJqqDu8sfV1G9KhrBRFNqpaSJjYUfOfC/9k7KddfviSSqZRpQShrWBkHgtGJFpjmyKCbxF0fzjXdtmwnhvfGYddudZiLhzwStdEdkRZVlvgT/XcD9w93xb3UlGHIn8mjpJt8rBLqG0n6xvGtxsKYk26AFmkx/+GJBJd6OLxYyx92k/SOy+THgUuSS7NngbFtmFH2LcEV7KSy1khdI5CP3g5k77qRsEOu9NO1l2pOjU7NatYaYQgczkk3ZPAdFuSetU/8sY+H2prKqSYOh1REWdWmdJ+A6ONvVUI6ZwghfspkvVe0Uv5RQ97qXCcFwh02y6wajYaYd5jBYY5WjzGUcdWeB2LWX6J8J0hY8RDrBgk/JZfgp8MtIGkS7PmHLgzlRt5+aaLqAIJjyOB7hhn3NbiVHoy9N7zZkEhCQXp2AIT7TM4bnFhil7irqJXb5xApMb8USyjB+pT3IfpIbZp7UpkHonxMkg4al+7UmIfR1EL8WrfuD4tJV+H3DtsVf2PiW6qHgLMq4NyHfrLqfdSIZN/etkzb3k690aeK2fmQv76KOFTfxlYSRI/5HmVmVAG6GmdQuF/+Djbmf/HDJGmUrCw3jsnM8egDW6kCtqcl03V++H7RaToMbqNxE7VWrLW68HnMM23q23JOrcNln4amDbGENtc9OitFq2Lu4z27vljUEitTk1jmy59+mH29v727Hf02/hatDucck3CAzvWR1KASXgu7emkS22iRPsghaskpGseXeUD9QycdPDEPJln+ij7YJ8gKn0ZtlipUIySk55IyV/DhD7kQt0w+BtEznEBhsWSh7JQBz5zdjWRBX7WTihZ3AkOP7XsmjcdXlRhimnwn/6g3U8fH9w7NPRO5yoXlR4Y1LralEg8uVYbysTj+RGjTX5cmyTntwPT2rcd4QYYpKKSsfKlr1e16IXAqi4XQZFOMbXKpfSp7xXa2/tVLSjDVUaWAgXmPxdfXz6Wk0O4saktISMFm8Ceifo/umy+ipaDCjLvP4cspGtVTfGVXS22teL309lol6OBo4krQhhKLfKcr08tCD3vd3TrEGzCyGJBfDUqn617YanTBip8ui4ndWtNbNZTy2hkHElCK2HKQz4jAfhfsYXYMycbiOAmIXLIrOYAgMU6sqP6+BcNiEBBih3PiRmf+4vkpVUBnUn0kZy7vTCWX7BeDFeJaGikKQFDgyLv2ekyrXcKe/MfPKZrr7tRQXBuOA24JJ4weCPjVJqBNrjVGYqScrgKfBHqR2Sfr5QRbDMpc0am0BanqjLxj6KOUULZiinfgQUp+LkzKFwL7k5FRbj4PV9zlMHoBid67hgbUPIIgMk3E+PUxGCYaI3OfbmUG4fr0ZXsjOuijYkvVIQeFD9vOgKnGvEVw8Xq36XRiwQOM430EIcxp2tk+XyVJm5yYytW2IXJemELD1d5pF1xtiUmW95lp5VoPJdW36j41ogcNICrmlgUQfQr9ZHobQa84M6KyUCmwcdQ1pFsTkKPY78skeWlzIDqFLz2k/3j2I8W8MbUWsLBxA/QLVpq1MTxq3ptmByqpWjRPJoLYkEoxFyF4Jhn4j37w11nHwEmPLaTVval1RJU63C0sDi4mYj6UsKcOZaSL1DzerwQsXUpU1i2uK7Ge4S6TGkEyLCEBRWd7zOo9XSztnyIFJw8PBY+5bZPbGMPk6cKmkquHVcAuCnaG0Axlj7kKKx8hKagxIARTyXkUiCnuN9qzPYAKKrJGGu45jK3+eH9ffH/SMf8jBPsszGDA33SjE8iV95CCHcsWgnE0lm7nuurXqZ33doEZmw8RfHK5UxG1XFioh97kRUHz+EXVFIXqWiq1+/nyXw71SAInHdq5DOa9y8RMd4gjMFySR7AxNm5vXSOsrg/8oanVxcKkqaovhe1X6RFVsSUhr78tUJ/KNO1w/ZH2WNTCbhvEA/TrqDVoo7B7M/bEcDAl0TKS/I1zHlvxlceAbN1dIPv9uflByeWeyjiYCDR/BDonMopSdBAcxVCwp+J/c5K7m1KSJHCIs41xOxVsbLEFDkxmkeyZ8uuNiMAcwROgpKxvATfw7NZkg/REv6MtCj8bhynYsq1NdmxD608RRWVnK58kP9mbnKJEFELhfHdKMq5l8bimSjSqg6LO652MN3kS1nDK3UKfXHcuSm1kK6NVyxn2S7TCe5LPOa9DTlCv5tZ6sYoTSp4MYxrMdMksRv0M0NqxdN2WUVB7EoSwFt6EhQrIqb/y/Nncm9HyGw01JnRuj8wLx4VtdEUKAcv2yiLKM/zewLA3HKYMkpH8GDYsUDizhh1smM1tTGNRC+rmLhcinkfbKGHUPtzbgep/mDVolFEpOuj+vHjutBpT15JpdWqk6IkiVGTSknVme6KwwTFthlm8W+snOOlWmXSCYga+lvei7h5gGpZQw2/9Wu1kEDlQvYWWovlIaqAd5mVlTmbsSTdHtTw06beXKfWeeTQuxQ/16gh7BkphlGaPGO8bKULVP1vK121+Nowvn3FKcRK3UGBGZci6bwslPMalWwdZMnBJus+j5oezGQ7bQzVT5Y0k0B65ZfOAIZ1rbX47GXx87siGOnCYXXanCYIxMW1n9DJpi3YXEarni1HuH0g2NBlGY8imwVuyIuCw39DnTIt3l5KxIrdaBK2V7Ks0VV3e17ySs5FmKcdlIghQGYQUw1DQczPk2FqQitC4zPS5FE3k4jJNeFHfRv7o05ZQxRmmYPDLxD97ARhvTmLLc+An+kEnGcR1zU8zhzDb7FQC+Lr+SLaXBMIg3pBszsiy0jmGg+SS7udw1mu7oTdUdjSoMmX5TBD+oEoZo5fGzY8go2wNTgUEf0YO+Hz5ihrtShbx3q+bbkDctBd9kFLdRLtr7fOrUR25NSt0MXHHOpnGIV+hG9/tCogg5fwX3e4vmAjuvm8IbZqSFSYroQwANX0xJTnO5Chjt16WZCw6taLach7YbzqdXQVCRcTPuvdP3Yr/89WFOFRSXpWmbxqSqPlYJioG6vCUPQ5hVoXgH9hrVaDKpCBtBunIvctNDeYZqIjayfbPMDOvF/DutVBHpFM7oZDO4cq+yTkHbMjINEl4ohVkc5cWizh3LkrbBCO3ngMEKVsWWNO4FzzOxdHbAI0l8v1S6GHH9wl24+C4OMy7EzkFwDatD71ANsBZN9+kl28oqBDxxjbS9S2QetXIZMKrDtv3508+fT09Pfd/Wkaw8Ok1G4k4Uox8OvrLep+laaBP9kIkksR9XKFN+Q44assC5yVq0L5zG+fl5w3Ka7Q+zhy74FqI/WYlj0Th2BrTeUJLCITDZXBKmxCXwgTJ26QGnMv3K0u6yJo3/n+dVg8Gqq1NuoOhKXclM+0wdmcqDTNk4EU+TdrhpeF2Zkhqk5R4xY0H2WL5zvc7gyZWny2LgvlU/d4qHChoriZ9sMlqzZEJJc6YynzMs3qsnr4gRSDYmIxecJzkZTe5dXVVPKItayCYVMibxIUXq/E7qHIxOKovMPj0YiImOqhgT9eMM/XHvihQDeiQenwbRuGToei3fxy+A3roA+p2rqCMsE2RApu3oZyt6LhC0NGaWUV+m3OoYQ/25vRmbZXNjmrsLygIJw3BFxPq4in3vWv408k/awsNevZatoQR43pSMxHI4ku2+6moSjnj/hHEV0BQo67jqtkp7u8XNXi94kOUeDEZm0sEcpyKJm0v51VwAx+mlGKyaNKCTScA1JpfS0gWDuZOXuV9gbXNVcF45aDc4GkX8qEvP9v7IMox70WebmOlRCACMLE+zNQBkZTKciu1LG2Kh3LbgNmuCY01ZuP4Agrh5n7WVysiP1pWplmU1WoOav664TAEIuLtTKIh3YZdMVKiiNSfDj/1L4dqSRGctM/woScQC7S6eNCN+H4e+vcerq8/9UCeKWTdcSXWP75jVSj2HQ6slKuMBMHg9eFvoy19sOa3F48fvc39XLSymy6PRfjlcsfrWR1ciutbztTQY4EANZshvwQCYHX0KKyVrdXnZ708fPs5ms/H49sOHdrvZ5tAUFImv3RSDOC2nvhhePfTn4IIIpiFssHEU11E0FWxNvEpnnl401wmf17q1UYOEgsq7MUwS1o81Fvn6G11I/3KnScgupusugO/fa5lcKdY83GpUgy9fbsarzwC3G6YW0bYzJVyXNgrPy1QXcZzGMbdrpSjM6aHnUjg39KjCscUfajCzXObIsTIz+S6K251qrTWCezXdouRG9EL2wOE6t3o74xSfueCNiLGl619gc8Yn9z87Qz1KV7Izqg82HSONeCSanEdNMj+hb12DdvS1zotjZKJXjRBXGtsWjTobn2u/mAKsSJUNa1D9evewVj9dsUb1T9tmik4oeFQaYgCf7QSjG8u6A/gLpqqaWmkxZQk3ZQXyawzRdFONocUjNZODz4wthjIm3oNihTmZ9X6VP+1OFTGUAq4/qHZeDLzZ54fIT7me+xji1r0SwdMm7mLJbEQOpruQBwMzELcIOvJ+YRQ3+cwSAwqcJTH2d4NLgT37z7rLhmaQyCXbBWeipUGKYdk8Zr+0knXLqOISEpgouE1lC3HDGTEx240wMt5be6crjS4Y9p2VNUgKgJyGBuk7R1TVeGeuaWTCfutHmeEkGV3FUSonxEhtr7rCu83mp8uI6LMjRobtg4YHso2ny1YB1bpWJt4EZlsruJTAxNDkzjvz9F7szwyFgGPyARDJR6uTLG6xQqksJQ+FJ/lxNX2fd/tjtoPA+5FWePd7U/BK3E3eXR21zrrrq6ONmR2WAzerYMuKjkspgs2+fNRN/NR55kBzFZzutnCjPfsJt/r7DwErXJ850hRBoQVqlTB7ATWjlwWtB1wKnpSBR04BdyH5UidMx5uhBWCnE/dLC2EKijusPucGKLBL00tjNFSYNBkMHUk74xaEAMx+x8o06CV1eWdJ1u4vE9NWHk+/BALsrsYymwg2DDTRDrIFHB1rJpu/v4X30j437wal5hDuu30YCrXX936bJtUfjg8lJMF6D/GdVEWHQQpNFMDW3zrNjDXfANlZaylYpAqxDZSYBqA5U4rEvfQGCoed1LVSR4M3lt56dNmR1nTHiMWvq8AVnopkHIGBZpdf5AJQCy6TGJL0jOmBbRo632e9Fr1AaO0CavdTs2oI0m9UJVDxIuOyf1chZOBxRjjxFKe5l85fcNN1GwSBXW1M4X46ezo5YcBIBrBzKRX2/YNNqd4glN55td4lZUOkBnyT2BlmwBRWvP9oHbmjMzFT7Pk4ViUFsPwEsJzBEKKQCw98ogqoGAbTr3rKS7fwJFPqF9YTqFQ/jtuW90JXIeObtKABNqVG3o1SmqYBBVX0g6BILSc5lb2Wj6BxsmKu18Ob9pVnZ5rkvc9cQvYvFCwCcQ1v4MubBcRyTf1bJ48AiZqaGKACLhUWejZmm/VaK+4uyY7i93qmqlBkxisYi6yNAhgXEvN2bu1Z42f6SyaCKsX9CXwveK8c/sLVk4TjDPbU2aSf9yIyotHrzlW3YnMp7x8Y8nCewZCY9gBXXubcZRDUrJF01LFB9WkQ66lkowmuz/S0qbd3lAnyz7z8yukshtxDun/pwXRb4D5iah5eDFAlfD9ICADhZHvtJ65Cs+a6aYhqp3D5bnBIPJxnx+ny54mZoq+CJW6MFLUllNi1yCrtolIa9py7MK5hTpAQjp9Bkf/XgJP9oA7LXK5IhHi6SjvLLwUajhSXHZYZJeGqHYhSdoy9UuPibMlt7QwBofKH6pdXTS7ktUq2Zi/1wgs/WTcUj1CiffXgg2dCxfqBZHwqIgjcgvs2u4ku6s3m412ti0japhTENjhHX3c8dUX/PkA1l2Q/Ty1EKgBaqR2XyMma2kTJrx4C2EzmzgsjlLo/ins51kwmu5FISL4Cm8biceAipqoYZpAepRQMnSx/rrdhPjiikKeeLTmEh4Ch+EoHkUNvBnkLRVkCYeJOZrhTOmvCEnADRkHCcj4gac6YtHnBL1oaexo0p6qBKvnDDspwddiP/aJWzToQAukoigMKh79OAi5P5wpD89A4B2IPE62SvXG+V9cbKkZFrc5fjUUFeNE//HQcO/6HMy5cgaxt3H7RtTUWlpCiS8r7IpvET8rU/fSqTArwyYfphUchSJihz/aZS8NB14xnuu9juB3szT2nS6kghQr5V5QzMVgwpOrY2UbpO23hfk8abu4eSFGF68p2P3u5JSrznWLjEyrljgTsTUJq5rS8ZtErQ/HXfiQQ7s/jKuUyVYiyLmbhb7iE64NkQz3CnLsVXwgqcMU9TKM/ouXL9CcJJbEuoiLsftLLBNo0XBc2rTyTusoNfb0ExLUz0Zzk5VlSYKI7q7J/4qwrPe4sJO6snurk8xqDJ50q5iaSYrdevQSewVQ31RU7SWBo2tmMGAWo4C9xChs6HNDlXXDuieEz8Nyec/bkIrOcZlH4gZBi04NeCMWLjzblyyzSLgTzDRK8KNL5aKtCw8/XnbpjNZxO/brWVUb/uZgpMnfm5VBsnIWs2NSm9MYn2tJEV4Nuh8vv3/uhrTP14FIue/Sh92ITywuAF8mu6ZNg6Lf3v6bhi9CgO9oT0zBj0UxhCF+O/DJIv/4LEcQVzXOuuzANluWZbMzYI6FodGrUsqNRN3+odZABw9K/vLau3wcQjZoX/HDRAfWfqpPRoKfp+I5N6N7QxTjNX4ijUI2NqKYuZBcI0mSLFW5ekpxsqbKgiFszNefXoieWC8nB6EeoU24BJIaxmSY/XjD4C/2zl/TThLl2zFTSLb4mXOFZeaUgWz5oJevi+iEEatF9W9mAwerh9DYp3/Gjqj0jF0yoxPgNyG2XjVuVQW3pu3seHXP9fu0mavUSdWGZvrvCUHhC8CugFx9+bDn1x+Hfq9Fyupx+/jEcPl44Vtwmure0EybLAgEZuo+emaZ/GcCe14hB1DRnD403cXMUggIghbOMvF8vZdKA9/5IBEP3Ev2t5Qmd71zhPknGZvwu0Cp5+a5KH1F5n5ICuIgm1L06bpz8K0P+Tje/w4VlRRmVgERm80H60pB/MWjYmbnKtL4MmD+rH3dZze8FuGVuADXqOffVbehHIW2njyKrdCiD828DXL8KuXWg6OfbgQ6VMoPWn8OgO/C8YOVLy7ST4D8MnnUR9e8BGLeugS07gxIGU/zaEZOInFx8SC9n0euHDV8NNK3S69xNfe7QMxa7l0K8Gkw3IG7g3r+fwKip32iIPhtghnV1cTWFKwR2RgB0E+r+dDbovECr+b8AYDTDRTT+vOx2fWgTC7uX0x/jL0249uJPpt4ORPQQe1ar3losHheLSqfeWg+12/zzHwxaab+SBu4qwR7W8LYI9g9HbwMbkzxuz9RKksbP/xJM3+AN3uAN3uAN3uAN3uANtvB/OF0IauDbVYcAAAAASUVORK5CYII=);
background-size: 18px 18px; background-size: 18px 18px;
background-repeat: no-repeat; background-repeat: no-repeat;
background-position: center; background-position: center;
......
...@@ -10,6 +10,7 @@ Pinterest: https://pinterest.com/mycnlz/ ...@@ -10,6 +10,7 @@ Pinterest: https://pinterest.com/mycnlz/
<div class='box-form'> <div class='box-form'>
<div class='box-login-tab'></div> <div class='box-login-tab'></div>
<div class='box-login-title'> <div class='box-login-title'>
<link rel="shortcut icon" href="imagenes/roshkaicon.ico" sizes="any" />
<div class='i i-login'></div><h2> USUARIO </h2> <div class='i i-login'></div><h2> USUARIO </h2>
<link rel="stylesheet" href="usrebe.css"> <link rel="stylesheet" href="usrebe.css">
<link rel="stylesheet" href="usrebe.js"> <link rel="stylesheet" href="usrebe.js">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment