<?php
/******************************************************
 * Conexión a la base de datos y manejo del webhook
 ******************************************************/

// Credenciales para la conexión a la base de datos
$servername = "localhost";
$username = "u748235332_trauma2025";
$password = "*8tJIM12RG!";
$dbname = "u748235332_trauma2025";
$dbtable = "ttrabajo"; // Tabla donde se guardarán los datos

// Crear la conexión con la base de datos
$mysqli = new mysqli($servername, $username, $password, $dbname);

// Verificar si hubo algún error en la conexión
if ($mysqli->connect_error) {
    die("Conexión fallida: " . $mysqli->connect_error);
}

/******************************************************
 * Recepción y decodificación de los datos JSON
 ******************************************************/

$fieldvalues = $_REQUEST["rawRequest"]; // Datos en formato JSON
$obj = json_decode($fieldvalues, true); // Decodificar JSON a un arreglo asociativo

if ($obj === null) {
    die("Error: JSON inválido.");
}

/******************************************************
 * Extracción y escape de los datos del JSON recibido
 ******************************************************/

$sid = $mysqli->real_escape_string($_REQUEST["submissionID"]);
$titulo = $mysqli->real_escape_string($obj['q3_titulo3']);
$archivo = $mysqli->real_escape_string($obj['file']);
$consecutivo = $mysqli->real_escape_string($obj['q16_codigoConsecutivo']);
$cod_tipo_competicion_propuesto = $mysqli->real_escape_string($obj['q89_codigoTipo89']);
$cod_tipo_presentacion_propuesto = $mysqli->real_escape_string($obj['q88_codigoTipo']);
$codigoIdiomaarea = $mysqli->real_escape_string($obj['q109_codigoIdiomaarea109']);
$codigoAreaTematica = $mysqli->real_escape_string($obj['q102_codigoIdiomaarea']);
$nombrecontacto = $mysqli->real_escape_string($obj['q99_personaDe99']['first']);
$apellidocontacto = $mysqli->real_escape_string($obj['q99_personaDe99']['last']);
$email = $mysqli->real_escape_string($obj['q100_correoElectronico100']);
$introduccion = $mysqli->real_escape_string($obj['q33_introduccion33']);
$metodos = $mysqli->real_escape_string($obj['q34_metodos']);
$resultados = $mysqli->real_escape_string($obj['q35_resultados']);
$conclusiones = $mysqli->real_escape_string($obj['q36_conclusiones']);
$nroautores = $mysqli->real_escape_string($obj['q12_numeroDe12']);
$pais = $mysqli->real_escape_string($obj['q14_pais']);
$ciudad = $mysqli->real_escape_string($obj['q15_estadociudad']);

// Autores e instituciones (10 campos)
$titulo_autor1 = $mysqli->real_escape_string($obj['q9_autor1ponente9']['prefix']);
$autor1 = $mysqli->real_escape_string($obj['q9_autor1ponente9']['first']);
$apellido_autor1 = $mysqli->real_escape_string($obj['q9_autor1ponente9']['last']);
$email_autor1 = $mysqli->real_escape_string($obj['q38_emailAutor38']);
$institucion1 = $mysqli->real_escape_string($obj['q37_institucion']);

$titulo_autor2 = $mysqli->real_escape_string($obj['q10_autor2']['prefix']);
$autor2 = $mysqli->real_escape_string($obj['q10_autor2']['first']);
$apellido_autor2 = $mysqli->real_escape_string($obj['q10_autor2']['last']);
$email_autor2 = $mysqli->real_escape_string($obj['q39_emailAutor39']);
$institucion2 = $mysqli->real_escape_string($obj['q38_institucion']);

$titulo_autor3 = $mysqli->real_escape_string($obj['q11_autor311']['prefix']);
$autor3 = $mysqli->real_escape_string($obj['q11_autor311']['first']);
$apellido_autor3 = $mysqli->real_escape_string($obj['q11_autor311']['last']);
$email_autor3 = $mysqli->real_escape_string($obj['q40_emailAutor40']);
$institucion3 = $mysqli->real_escape_string($obj['q39_institucion']);

$titulo_autor4 = $mysqli->real_escape_string($obj['q26_autor4']['prefix']);
$autor4 = $mysqli->real_escape_string($obj['q26_autor4']['first']);
$apellido_autor4 = $mysqli->real_escape_string($obj['q26_autor4']['last']);
$email_autor4 = $mysqli->real_escape_string($obj['q41_emailAutor']);
$institucion4 = $mysqli->real_escape_string($obj['q40_institucion']);

$titulo_autor5 = $mysqli->real_escape_string($obj['q27_autor5']['prefix']);
$autor5 = $mysqli->real_escape_string($obj['q27_autor5']['first']);
$apellido_autor5 = $mysqli->real_escape_string($obj['q27_autor5']['last']);
$email_autor5 = $mysqli->real_escape_string($obj['q42_emailAutor42']);
$institucion5 = $mysqli->real_escape_string($obj['q41_institucion']);

$titulo_autor6 = $mysqli->real_escape_string($obj['q28_autor6']['prefix']);
$autor6 = $mysqli->real_escape_string($obj['q28_autor6']['first']);
$apellido_autor6 = $mysqli->real_escape_string($obj['q28_autor6']['last']);
$email_autor6 = $mysqli->real_escape_string($obj['q43_emailAutor43']);
$institucion6 = $mysqli->real_escape_string($obj['q42_institucion']);

$titulo_autor7 = $mysqli->real_escape_string($obj['q29_autor7']['prefix']);
$autor7 = $mysqli->real_escape_string($obj['q29_autor7']['first']);
$apellido_autor7 = $mysqli->real_escape_string($obj['q29_autor7']['last']);
$email_autor7 = $mysqli->real_escape_string($obj['q44_emailAutor44']);
$institucion7 = $mysqli->real_escape_string($obj['q43_institucion']);

$titulo_autor8 = $mysqli->real_escape_string($obj['q30_autor8']['prefix']);
$autor8 = $mysqli->real_escape_string($obj['q30_autor8']['first']);
$apellido_autor8 = $mysqli->real_escape_string($obj['q30_autor8']['last']);
$email_autor8 = $mysqli->real_escape_string($obj['q45_emailAutor45']);
$institucion8 = $mysqli->real_escape_string($obj['q44_institucion']);

$titulo_autor9 = $mysqli->real_escape_string($obj['q31_autor931']['prefix']);
$autor9 = $mysqli->real_escape_string($obj['q31_autor931']['first']);
$apellido_autor9 = $mysqli->real_escape_string($obj['q31_autor931']['last']);
$email_autor9 = $mysqli->real_escape_string($obj['q46_emailAutor46']);
$institucion9 = $mysqli->real_escape_string($obj['q45_institucion']);

$titulo_autor10 = $mysqli->real_escape_string($obj['q32_autor10']['prefix']);
$autor10 = $mysqli->real_escape_string($obj['q32_autor10']['first']);
$apellido_autor10 = $mysqli->real_escape_string($obj['q32_autor10']['last']);
$email_autor10 = $mysqli->real_escape_string($obj['q47_emailAutor47']);
$institucion10 = $mysqli->real_escape_string($obj['q46_institucion']);

/**Para generar el consecutivo completo**/
$codigo = $codigoIdiomaarea.'-'.$consecutivo;

/******************************************************
 * Verificación y actualización/inserción de datos
 ******************************************************/

$result = $mysqli->query("SELECT * FROM $dbtable WHERE submission_id = '$sid'");

if ($result->num_rows > 0) {
    // Actualizar los datos si ya existe
    $query = "UPDATE $dbtable SET 
        titulo = '$titulo',
        archivo = '$archivo',
        consecutivo = '$consecutivo',
        cod_tipo_competicion_propuesto = '$cod_tipo_competicion_propuesto',
        cod_tipo_presentacion_propuesto = '$cod_tipo_presentacion_propuesto',
        codigo = '$codigo',
        area_tematica = '$codigoAreaTematica',
        nombre_corresponsal = '$nombrecontacto',
        apellido_corresponsal = '$apellidocontacto',
        email = '$email',
        introduccion = '$introduccion',
        metodos = '$metodos',
        resultados = '$resultados',
        conclusiones = '$conclusiones',
        nro_autores = '$nroautores',
        pais = '$pais',
        ciudad = '$ciudad',
        autor1 = '$autor1', apellido_autor1 = '$apellido_autor1', inst_autor1 = '$institucion1', titulo_autor1 = '$titulo_autor1', email_autor1 = '$email_autor1',
        autor2 = '$autor2', apellido_autor2 = '$apellido_autor2', inst_autor2 = '$institucion2', titulo_autor2 = '$titulo_autor2', email_autor2 = '$email_autor2',
        autor3 = '$autor3', apellido_autor3 = '$apellido_autor3', inst_autor3 = '$institucion3', titulo_autor3 = '$titulo_autor3', email_autor3 = '$email_autor3',
        autor4 = '$autor4', apellido_autor4 = '$apellido_autor4', inst_autor4 = '$institucion4', titulo_autor4 = '$titulo_autor4', email_autor4 = '$email_autor4',
        autor5 = '$autor5', apellido_autor5 = '$apellido_autor5', inst_autor5 = '$institucion5', titulo_autor5 = '$titulo_autor5', email_autor5 = '$email_autor5',
        autor6 = '$autor6', apellido_autor6 = '$apellido_autor6', inst_autor6 = '$institucion6', titulo_autor6 = '$titulo_autor6', email_autor6 = '$email_autor6',
        autor7 = '$autor7', apellido_autor7 = '$apellido_autor7', inst_autor7 = '$institucion7', titulo_autor7 = '$titulo_autor7', email_autor7 = '$email_autor7',
        autor8 = '$autor8', apellido_autor8 = '$apellido_autor8', inst_autor8 = '$institucion8', titulo_autor8 = '$titulo_autor8', email_autor8 = '$email_autor8',
        autor9 = '$autor9', apellido_autor9 = '$apellido_autor9', inst_autor9 = '$institucion9', titulo_autor9 = '$titulo_autor9', email_autor9 = '$email_autor9',
        autor10 = '$autor10', apellido_autor10 = '$apellido_autor10', inst_autor10 = '$institucion10', titulo_autor10 = '$titulo_autor10' email_autor10 = '$email_autor10'
    WHERE submission_id = '$sid'";
} else {
    // Insertar nuevos datos si no existe
    $query = "INSERT INTO $dbtable (
        submission_id, titulo, archivo, consecutivo, cod_tipo_competicion_propuesto, 
        cod_tipo_presentacion_propuesto, codigo, area_tematica, 
        nombre_corresponsal, apellido_corresponsal, email, introduccion, 
        materiales, resultados, conclusiones, nro_autores, 
        autor1, apellido_autor1, inst_autor1, titulo_autor1, email_autor1,
        autor2, apellido_autor2, inst_autor2, titulo_autor2, email_autor2,
        autor3, apellido_autor3, inst_autor3, titulo_autor3, email_autor3,
        autor4, apellido_autor4, inst_autor4, titulo_autor4, email_autor4,
        autor5, apellido_autor5, inst_autor5, titulo_autor5, email_autor5,
        autor6, apellido_autor6, inst_autor6, titulo_autor6, email_autor6,
        autor7, apellido_autor7, inst_autor7, titulo_autor7, email_autor7,
        autor8, apellido_autor8, inst_autor8, titulo_autor8, email_autor8,
        autor9, apellido_autor9, inst_autor9, titulo_autor9, email_autor9,
        autor10, apellido_autor10, inst_autor10, titulo_autor10, email_autor10,
        pais, ciudad
    ) VALUES (
        '$sid', '$titulo', '$archivo', '$consecutivo', '$cod_tipo_competicion_propuesto', 
        '$cod_tipo_presentacion_propuesto', '$codigo', '$codigoAreaTematica', 
        '$nombrecontacto', '$apellidocontacto', '$email', '$introduccion', 
        '$metodos', '$resultados', '$conclusiones', '$nroautores', 
        '$autor1', '$apellido_autor1', '$institucion1', '$titulo_autor1', '$email_autor1',
        '$autor2', '$apellido_autor2', '$institucion2', '$titulo_autor2', '$email_autor2',
        '$autor3', '$apellido_autor3', '$institucion3', '$titulo_autor3', '$email_autor3',
        '$autor4', '$apellido_autor4', '$institucion4', '$titulo_autor4', '$email_autor4',
        '$autor5', '$apellido_autor5', '$institucion5', '$titulo_autor5', '$email_autor5',
        '$autor6', '$apellido_autor6', '$institucion6', '$titulo_autor6', '$email_autor6',
        '$autor7', '$apellido_autor7', '$institucion7', '$titulo_autor7', '$email_autor7',
        '$autor8', '$apellido_autor8', '$institucion8', '$titulo_autor8', '$email_autor8',
        '$autor9', '$apellido_autor9', '$institucion9', '$titulo_autor9', '$email_autor9',
        '$autor10', '$apellido_autor10', '$institucion10', '$titulo_autor10', '$email_autor10',
        '$pais', '$ciudad'
    )";
}

if ($mysqli->query($query)) {
    echo "Operación exitosa.";
} else {
    echo "Error: " . $mysqli->error;
}

// Cerrar conexión
$mysqli->close();
?>
