cambios de directorios y nombres

This commit is contained in:
victor.monge 2025-05-03 10:37:44 -06:00
parent fceb0f44ee
commit ede8584ffc
11 changed files with 62 additions and 185 deletions

View File

@ -13,12 +13,22 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (UsuarioController::iniciarSesion($usuario, $contrasena)) { if (UsuarioController::iniciarSesion($usuario, $contrasena)) {
session_start(); // Iniciar la sesión session_start(); // Iniciar la sesión
$_SESSION['autenticado'] = true; // Marcar la sesión como autenticada $_SESSION['autenticado'] = true; // Marcar la sesión como autenticada
echo json_encode(['loginExitoso' => true, 'message' => 'Inicio de sesión exitoso']); echo json_encode([
'estado' => 'exitoso',
'mensaje' => 'Inicio de sesión exitoso'
]);
} else { } else {
echo json_encode(['loginExitoso' => false, 'message' => 'Usuario o contraseña incorrectos']); echo json_encode([
'estado' => 'error',
'mensaje' => 'Usuario o contraseña incorrectos'
]);
} }
} catch (Exception $e) { } catch (Exception $e) {
echo json_encode(['loginExitoso' => false, 'message' => $e->getMessage()]); echo json_encode([
'estado' => 'error',
'mensaje' => 'Error al iniciar sesión, intentelo más tarde.',
'res' => $e->getMessage()
]);
} }
} }

View File

@ -1,140 +0,0 @@
document.addEventListener("DOMContentLoaded", function () {
const buscarBtn = document.getElementById("buscarBtn");
const paisSelect = document.getElementById("id_pais");
const inputCodigoPostal = document.getElementById("codigo_postal");
const inputButtonBuscarCodigoPostal = document.getElementById("buscarBtn");
const estadoSelect = document.getElementById("id_estado");
const municipioSelect = document.getElementById("id_municipio");
const coloniaSelect = document.getElementById("id_colonia");
const giroSelect = document.getElementById("id_giro");
llenarSelectGiro();
// Añadir un evento de cambio al select de país
paisSelect.addEventListener("change", function() {
// Si el país es México, habilitar el campo de código postal
if (paisSelect.value === "1") {
inputCodigoPostal.removeAttribute("disabled");
inputButtonBuscarCodigoPostal.removeAttribute("disabled");
} else {
// Si el país no es México, deshabilitar el campo de código postal
inputCodigoPostal.setAttribute("disabled", "disabled");
inputButtonBuscarCodigoPostal.setAttribute("disabled", "disabled");
}
});
//Añadir un evento al boton de buscar
buscarBtn.addEventListener("click", function () {
let inputCodigoPostal = document.getElementById("codigo_postal").value;
//verificar si el codigo postal esta vacio
if (inputCodigoPostal) {
// Limpia los selects antes de llenarlos
estadoSelect.innerHTML = "<option value='NULL'>Seleccione su estado</option>";
municipioSelect.innerHTML = "<option value='NULL'>Seleccione su municipio</option>";
coloniaSelect.innerHTML = "<option value='NULL'>Seleccione su colonia</option>";
// Construye la URL para la solicitud
let url = "./controllers/CatalogosController.php?codigo_postal=" + encodeURIComponent(inputCodigoPostal);
// Realiza una solicitud HTTP GET a la URL especificada
fetch(url)
.then(response => {
//console.log("Estado de la respuesta:", response.status);
//console.log("Contenido de la respuesta:", response.json());
// Verifica si la respuesta del servidor es exitosa
if (!response.ok) {
throw new Error("Error en la respuesta del servidor");
}
// Convertir la respuesta a JSON
return response.json();
})
.then(data => {
// Verifica si se recibieron datos
if (data.length > 0) {
// Quitar disable a los selects
estadoSelect.removeAttribute("disabled");
estadoSelect.setAttribute("required", "required");
municipioSelect.removeAttribute("disabled");
municipioSelect.setAttribute("required", "required");
coloniaSelect.removeAttribute("disabled");
coloniaSelect.setAttribute("required", "required");
//Crea conjuntos para almacenar estados, ciudades y colonias
let estados = new Map();
let municipios = new Map();
let colonias = new Map();
// Itera sobre cada fila de datos recibidos
data.forEach(row => {
console.log(row);
estados.set(row['id_estado'], row['estado']);
municipios.set(row['id_municipio'], row['municipio']);
colonias.set(row['id_colonia'], row['colonia']);
});
// Añade las opciones de estados al elemento select
for (let [id_estado, estado] of estados) {
estadoSelect.innerHTML += "<option value='" + id_estado + "'>" + estado + "</option>";
}
// Añade las opciones de ciudades al elemento select
for (let [id_municipio, municipio] of municipios) {
municipioSelect.innerHTML += "<option value='" + id_municipio + "'>" + municipio + "</option>";
}
// Añade las opciones de colonias al elemento select
for (let [id_colonia, colonia] of colonias) {
coloniaSelect.innerHTML += "<option value='" + id_colonia + "'>" + colonia + "</option>";
}
} else {
alert("No se encontraron datos para el código postal ingresado.");
}
})
.catch(error => {
console.error("Error en la solicitud:", error);
});
} else {
alert("Por favor, ingrese un código postal.");
}
});
function llenarSelectGiro() {
// URL para la solicitud
let url = "./controllers/CatalogosController.php?obtener=giros";
// Realiza una solicitud HTTP GET a la URL especificada
fetch(url)
.then(response => {
// Verifica si la respuesta del servidor es exitosa
if (!response.ok) {
throw new Error("Error en la respuesta del servidor");
}
// Convertir la respuesta a JSON
return response.json();
})
.then(data => {
// Verifica si se recibieron datos
if (data.length > 0) {
// Añade las opciones de giros al elemento select
data.forEach(row => {
giroSelect.innerHTML += "<option value='" + row.id_giro + "'>" + row.descripcion + "</option>";
});
} else {
alert("No se encontraron datos para los giros.");
}
})
.catch(error => {
console.error("Error en la solicitud:", error);
});
}
});

View File

@ -6,7 +6,7 @@ obtenerTiposIdentificacion();
obtenerRangosEdad(); obtenerRangosEdad();
function obtenerNombresExamenes(){ function obtenerNombresExamenes(){
let url = "./controllers/CatalogosController.php?obtener=examenes"; let url = "../controllers/CatalogosController.php?obtener=examenes";
fetch(url) fetch(url)
.then(response => response.json()) .then(response => response.json())
.then(data => { .then(data => {
@ -28,7 +28,7 @@ function obtenerNombresExamenes(){
} }
function obtenerTiposIdentificacion(){ function obtenerTiposIdentificacion(){
let url = "./controllers/CatalogosController.php?obtener=identificacion"; let url = "../controllers/CatalogosController.php?obtener=identificacion";
fetch(url) fetch(url)
.then(response => response.json()) .then(response => response.json())
.then(data => { .then(data => {
@ -50,7 +50,7 @@ function obtenerTiposIdentificacion(){
} }
function obtenerRangosEdad(){ function obtenerRangosEdad(){
let url = "./controllers/CatalogosController.php?obtener=rangosedad"; let url = "../controllers/CatalogosController.php?obtener=rangosedad";
fetch(url) fetch(url)
.then(response => response.json()) .then(response => response.json())
.then(data => { .then(data => {
@ -208,7 +208,7 @@ formulario.addEventListener("submit", async(event) => {
// Enviar petición POST para registrar candidato // Enviar petición POST para registrar candidato
try { try {
const respuesta = await fetch('controllers/registrarCandidato.php', { const respuesta = await fetch('../controllers/RegistrarCandidatoController.php', {
method: "POST", method: "POST",
body: formData, body: formData,
}); });

View File

@ -20,7 +20,7 @@ document.addEventListener("DOMContentLoaded", function () {
// FUNCIONES - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // FUNCIONES - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
function llenarSelectGiro() { function llenarSelectGiro() {
// URL para la solicitud // URL para la solicitud
let url = "./controllers/CatalogosController.php?obtener=giros"; let url = "../controllers/CatalogosController.php?obtener=giros";
// Realiza una solicitud HTTP GET a la URL especificada // Realiza una solicitud HTTP GET a la URL especificada
fetch(url) fetch(url)
@ -51,7 +51,7 @@ document.addEventListener("DOMContentLoaded", function () {
} }
function llenarSelectNivelesEstudio(){ function llenarSelectNivelesEstudio(){
let url = "./controllers/CatalogosController.php?obtener=nivelesestudio"; let url = "../controllers/CatalogosController.php?obtener=nivelesestudio";
// Petición fetch y llenado de select // Petición fetch y llenado de select
fetch(url) fetch(url)
.then(response => { .then(response => {
@ -75,7 +75,7 @@ document.addEventListener("DOMContentLoaded", function () {
} }
function llenarDataListEmpresasInstituciones(){ function llenarDataListEmpresasInstituciones(){
let url = "./controllers/CatalogosController.php?obtener=empresasinstituciones"; let url = "../controllers/CatalogosController.php?obtener=empresasinstituciones";
fetch(url) fetch(url)
.then(response => response.json()) .then(response => response.json())
.then(data => { .then(data => {
@ -170,7 +170,7 @@ document.addEventListener("DOMContentLoaded", function () {
coloniaSelect.innerHTML = "<option value='NULL'>Seleccione su colonia</option>"; coloniaSelect.innerHTML = "<option value='NULL'>Seleccione su colonia</option>";
// Construye la URL para la solicitud // Construye la URL para la solicitud
let url = "./controllers/CatalogosController.php?codigo_postal=" + encodeURIComponent(inputCodigoPostal); let url = "../controllers/CatalogosController.php?codigo_postal=" + encodeURIComponent(inputCodigoPostal);
// Realiza una solicitud HTTP GET a la URL especificada // Realiza una solicitud HTTP GET a la URL especificada
fetch(url) fetch(url)
@ -327,7 +327,7 @@ document.addEventListener("DOMContentLoaded", function () {
// } // }
try { try {
const respuesta = await fetch('controllers/registrarInfoCandidato.php', { const respuesta = await fetch('../controllers/RegistrarInfoCandidato.php', {
method: "POST", method: "POST",
body: formData, body: formData,
}); });

View File

@ -13,21 +13,24 @@ formulario.addEventListener("submit", async (event) => {
data.append("contrasena", contrasena); data.append("contrasena", contrasena);
try { try {
const respuestaPeticion = await fetch("controllers/login.php", { const respuestaPeticion = await fetch("../controllers/LoginController.php", {
method: "POST", method: "POST",
body: data, body: data,
}); });
const verificarCredenciales = await respuestaPeticion.json(); const respuesta = await respuestaPeticion.json();
if (verificarCredenciales.loginExitoso) { if (respuesta.estado === 'exitoso') {
window.location.href = 'inicio.html'; window.location.href = 'views/inicio.html';
} else { } else if(respuesta.estado === 'error') {
notificacion.textContent = "Usuario y/o contraseña incorrectos"; notificacion.textContent = respuesta.mensaje;
if(respuesta.res){
console.error(respuesta.res)
}
notificacion.style.display = "block"; notificacion.style.display = "block";
} }
} catch (error) { } catch (error) {
notificacion.textContent = notificacion.textContent = "Lo sentimos, el servicio no está disponible por el momento";
"Lo sentimos, el servicio no está disponible por el momento"; console.error(error)
} }
}); });

View File

@ -42,12 +42,16 @@ class CandidatoModel {
$fecha_salida $fecha_salida
) { ) {
try { try {
$id_pais = (int)$id_pais;
// Si el país no es México (ID 1), se asignan valores nulos a los campos de ubicación // Si el país no es México (ID 1), se asignan valores nulos a los campos de ubicación
if ($id_pais !== 1) { if ($id_pais !== 1) {
$id_estado = null; $id_estado = null;
$id_municipio = null; $id_municipio = null;
$id_colonia = null; $id_colonia = null;
} else {
$id_estado = (int)$id_estado;
$id_municipio = (int)$id_municipio;
$id_colonia = (int)$id_colonia;
} }
$sql = "INSERT INTO info_candidatos ( $sql = "INSERT INTO info_candidatos (

View File

@ -4,7 +4,7 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href='https://unpkg.com/boxicons@2.0.9/css/boxicons.min.css' rel='stylesheet'> <link href='https://unpkg.com/boxicons@2.0.9/css/boxicons.min.css' rel='stylesheet'>
<link rel="stylesheet" href="css/form.css"> <link rel="stylesheet" href="../css/form.css">
<title>AdminSite</title> <title>AdminSite</title>
</head> </head>
<body> <body>
@ -16,7 +16,7 @@
<img src="img/lania_logo.png" alt="Logo" style="height: 40px;"> <img src="img/lania_logo.png" alt="Logo" style="height: 40px;">
</a> --> </a> -->
<ul class="side-menu"> <ul class="side-menu">
<li><a href="#" class="active"><i class='bx bxs-dashboard icon' ></i> Dashboard</a></li> <li><a href="#"><i class='bx bxs-dashboard icon' ></i> Dashboard</a></li>
<li class="divider" data-text="main">Main</li> <li class="divider" data-text="main">Main</li>
<li> <li>
<a href="#"><i class='bx bxs-inbox icon' ></i> Elements <i class='bx bx-chevron-right icon-right' ></i></a> <a href="#"><i class='bx bxs-inbox icon' ></i> Elements <i class='bx bx-chevron-right icon-right' ></i></a>
@ -29,13 +29,13 @@
</li> </li>
<li><a href="#"><i class='bx bxs-chart icon' ></i> Charts</a></li> <li><a href="#"><i class='bx bxs-chart icon' ></i> Charts</a></li>
<li><a href="#"><i class='bx bxs-widget icon' ></i> Widgets</a></li> <li><a href="#"><i class='bx bxs-widget icon' ></i> Widgets</a></li>
<li class="divider" data-text="table and forms">Table and forms</li> <li class="divider" data-text="tablas y formularios">Tablas y formularios</li>
<li><a href="#"><i class='bx bx-table icon' ></i> Tables</a></li> <li><a href="#"><i class='bx bx-table icon' ></i> Tablas</a></li>
<li> <li>
<a href="#"><i class='bx bxs-notepad icon' ></i> Formularios <i class='bx bx-chevron-right icon-right' ></i></a> <a class="active" href="#"><i class='bx bxs-notepad icon' ></i> Formularios <i class='bx bx-chevron-right icon-right' ></i></a>
<ul class="side-dropdown"> <ul class="side-dropdown">
<li><a href="form_datos_basicos.html">Datos Básicos</a></li> <li><a href="../views/formulario-candidato.html">Registro de candidato</a></li>
<li><a href="form_datos_extendidos.php">Datos Extendidos</a></li> <li><a href="../views/formulario-datos-candidato.php">Datos de candidato</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
@ -162,8 +162,8 @@
</section> </section>
<!-- NAVBAR --> <!-- NAVBAR -->
<script src="js/form.js"></script> <script src="../js/form.js"></script>
<script src="js/form_datos_basicos.js"></script> <script src="../js/formulario-candidato.js"></script>
<script src="https://website-widgets.pages.dev/dist/sienna.min.js" defer></script> <script src="https://website-widgets.pages.dev/dist/sienna.min.js" defer></script>
</body> </body>
</html> </html>

View File

@ -16,7 +16,7 @@ if($_SERVER['REQUEST_METHOD'] === 'GET' && isset($_GET['id_candidato'])){
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href='https://unpkg.com/boxicons@2.0.9/css/boxicons.min.css' rel='stylesheet'> <link href='https://unpkg.com/boxicons@2.0.9/css/boxicons.min.css' rel='stylesheet'>
<link rel="stylesheet" href="css/form.css"> <link rel="stylesheet" href="../css/form.css">
<title>AdminSite</title> <title>AdminSite</title>
</head> </head>
<body> <body>
@ -28,7 +28,7 @@ if($_SERVER['REQUEST_METHOD'] === 'GET' && isset($_GET['id_candidato'])){
<img src="img/lania_logo.png" alt="Logo" style="height: 40px;"> <img src="img/lania_logo.png" alt="Logo" style="height: 40px;">
</a> --> </a> -->
<ul class="side-menu"> <ul class="side-menu">
<li><a href="#" class="active"><i class='bx bxs-dashboard icon' ></i> Dashboard</a></li> <li><a href="#"><i class='bx bxs-dashboard icon' ></i> Dashboard</a></li>
<li class="divider" data-text="main">Main</li> <li class="divider" data-text="main">Main</li>
<li> <li>
<a href="#"><i class='bx bxs-inbox icon' ></i> Elements <i class='bx bx-chevron-right icon-right' ></i></a> <a href="#"><i class='bx bxs-inbox icon' ></i> Elements <i class='bx bx-chevron-right icon-right' ></i></a>
@ -41,13 +41,13 @@ if($_SERVER['REQUEST_METHOD'] === 'GET' && isset($_GET['id_candidato'])){
</li> </li>
<li><a href="#"><i class='bx bxs-chart icon' ></i> Charts</a></li> <li><a href="#"><i class='bx bxs-chart icon' ></i> Charts</a></li>
<li><a href="#"><i class='bx bxs-widget icon' ></i> Widgets</a></li> <li><a href="#"><i class='bx bxs-widget icon' ></i> Widgets</a></li>
<li class="divider" data-text="table and forms">Table and forms</li> <li class="divider" data-text="tablas y formularios">Tablas y formularios</li>
<li><a href="#"><i class='bx bx-table icon' ></i> Tables</a></li> <li><a href="#"><i class='bx bx-table icon' ></i> Tablas</a></li>
<li> <li>
<a href="#"><i class='bx bxs-notepad icon' ></i> Formularios <i class='bx bx-chevron-right icon-right' ></i></a> <a href="#" class="active"><i class='bx bxs-notepad icon' ></i> Formularios <i class='bx bx-chevron-right icon-right' ></i></a>
<ul class="side-dropdown"> <ul class="side-dropdown">
<li><a href="form_datos_basicos.html">Datos Básicos</a></li> <li><a href="../views/formulario-candidato.html">Registro de candidato</a></li>
<li><a href="form_datos_extendidos.php">Datos Extendidos</a></li> <li><a href="../views/formulario-datos-candidato.php">Datos de candidato</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
@ -244,8 +244,8 @@ if($_SERVER['REQUEST_METHOD'] === 'GET' && isset($_GET['id_candidato'])){
<!-- NAVBAR --> <!-- NAVBAR -->
<script src="js/form.js"></script> <script src="../js/form.js"></script>
<script src="js/form_datos_extendidos.js"></script> <script src="../js/formulario-datos-candidato.js"></script>
<!-- <script src="js/buscarCodigo.js"></script> --> <!-- <script src="js/buscarCodigo.js"></script> -->
<script src="https://website-widgets.pages.dev/dist/sienna.min.js" defer></script> <script src="https://website-widgets.pages.dev/dist/sienna.min.js" defer></script>
</body> </body>

View File

@ -4,7 +4,7 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href='https://unpkg.com/boxicons@2.0.9/css/boxicons.min.css' rel='stylesheet'> <link href='https://unpkg.com/boxicons@2.0.9/css/boxicons.min.css' rel='stylesheet'>
<link rel="stylesheet" href="css/inicio.css"> <link rel="stylesheet" href="../css/inicio.css">
<title>AdminSite</title> <title>AdminSite</title>
</head> </head>
<body> <body>
@ -27,13 +27,13 @@
</li> </li>
<li><a href="#"><i class='bx bxs-chart icon' ></i> Charts</a></li> <li><a href="#"><i class='bx bxs-chart icon' ></i> Charts</a></li>
<li><a href="#"><i class='bx bxs-widget icon' ></i> Widgets</a></li> <li><a href="#"><i class='bx bxs-widget icon' ></i> Widgets</a></li>
<li class="divider" data-text="table and forms">Table and forms</li> <li class="divider" data-text="tablas y formularios">Tablas y formularios</li>
<li><a href="#"><i class='bx bx-table icon' ></i> Tables</a></li> <li><a href="#"><i class='bx bx-table icon' ></i> Tablas</a></li>
<li> <li>
<a href="#"><i class='bx bxs-notepad icon' ></i> Formularios <i class='bx bx-chevron-right icon-right' ></i></a> <a href="#"><i class='bx bxs-notepad icon' ></i> Formularios <i class='bx bx-chevron-right icon-right' ></i></a>
<ul class="side-dropdown"> <ul class="side-dropdown">
<li><a href="form_datos_basicos.html">Datos Básicos</a></li> <li><a href="formulario-candidato.html">Registro de candidato</a></li>
<li><a href="form_datos_extendidos.php">Datos Extendidos</a></li> <li><a href="formulario-datos-candidato.php">Datos de candidato</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
@ -259,7 +259,7 @@
<!-- NAVBAR --> <!-- NAVBAR -->
<script src="https://cdn.jsdelivr.net/npm/apexcharts"></script> <script src="https://cdn.jsdelivr.net/npm/apexcharts"></script>
<script src="js/inicio.js"></script> <script src="../js/inicio.js"></script>
<script src="https://website-widgets.pages.dev/dist/sienna.min.js" defer></script> <script src="https://website-widgets.pages.dev/dist/sienna.min.js" defer></script>
</body> </body>
</html> </html>