<?php
$codigo_contact = proximoCodigoContacto($bd_conn);
//==============================================================
$_req = "INSERT INTO CONTACTOS ";
$_set = " ( ALTA, ACTIVO";
$_values = " VALUES ( now(), 1 ";
//CODIGO CONTACTO
$_set .= ", CODIGO";
$_values .= ", " . $codigo_contact;
//USUARIO
$_set .= ", USUARIO";
$_values .= ", '" . $_SERVER["HTTP_CLIENT_ID"] . "'";
//CONTACTO TIPO
if (isset($_POST["contact_type"])) {
    $contact_type = $bd_conn->real_escape_string($_POST["contact_type"]);
    if ($contact_type == "CONTACTO") {
        $_set .= ", CONTACTO";
        $_values .= ", 1";
    }elseif ($contact_type == "ORGANIZACION") {
        $_set .= ", ORGANIZACION";
        $_values .= ", 1";
    }else {
        $_set .= ", CONTACTO";
        $_values .= ", 1";
    }
}else {
    $_set .= ", CONTACTO";
    $_values .= ", 1";
}
foreach ($_POST as $key => $value) {
    $value = $bd_conn->real_escape_string($value);
    switch ($key) {
        case 'contact_name':
            $_set .= ", NOMBRE"; 
            $_values .= ", '" . $value . "'"; 
            $mostrar_nombre = $value;
            break;
        case 'contact_lastname':
            $_set .= ", APELLIDO1"; 
            $_values .= ", '" . $value . "'"; 
            $mostrar_apellido1 = $value;
            break;
        case 'contact_lastname2':
            $_set .= ", APELLIDO2"; 
            $_values .= ", '" . $value . "'"; 
            $mostrar_apellido2 = $value;
            break;
        case 'contact_nif':
            $_set .= ", NIF"; 
            $_values .= ", '" . $value . "'"; 
            break;
        case 'contact_direction':
            $_set .= ", DIRECCION_PER"; 
            $_values .= ", '" . $value . "'"; 
            break;
        case 'contact_phone':
            $_set .= ", TLFNO1"; 
            $_values .= ", '" . $value . "'"; 
            break;
        case 'contact_email':
            $_set .= ", EMAIL1"; 
            $_values .= ", '" . $value . "'"; 
            break;
        case 'contact_direction_org':
            $_set .= ", DIRECCION_TRA"; 
            $_values .= ", '" . $value . "'"; 
            break;       
    }
}

//MOSTRAR================================================
$mostrar = "";
if (isset($mostrar_nombre)) {
    $mostrar .= $mostrar_nombre . " ";
}
if (isset($mostrar_apellido1)) {
    $mostrar .= $mostrar_apellido1 . " ";
}
if (isset($mostrar_apellido2)) {
    $mostrar .= $mostrar_apellido2 . " ";
}
//=========================================================
$_set .= ", MOSTRAR";
$_values .= ", '" . $mostrar . "'";
//=========================================================
$_set .= " )";
$_values .= " )";
$status = queryInsert($bd_conn, $_req, $_set, $_values);
if ($status === 1) {
    if (isset($_POST["contact_group"])) {
        $contact_group = $bd_conn->real_escape_string($_POST["contact_group"]);
    }else {
        $contact_group = 0;
    }    
    $_req = "INSERT INTO CONTACTOS_RELACIONES ";
    $_set = " ( CONTACTO, GRUPO ) ";
    $_values = " VALUES ( " . $codigo_contact . ", " . $contact_group . " ) ";
    $status = queryInsert($bd_conn, $_req, $_set, $_values);
    if ($status === 1) {
        $data[] = array ( 
            "status" => "OK!",
            "message" => "success : new contact created"
        );
    }else {
        $data[] = array ( 
            "status" => "error",
            "message" => "error : error group relation"
        );
    }
}else{
    $data[] = array ( 
        "status" => "NOT OK!",
        "message" => "error : new contact not created " . $_values
    );
}
//FUNCIONES======================================================
function proximoCodigoContacto($bd)
{
    $sql =  "   SELECT MAX(C.CODIGO + 1) AS PROX_CODE
                FROM CONTACTOS C";
    $base = $bd->prepare($sql);
    $base->execute();
    $result = mysqli_fetch_array($base->get_result());
    $base->close();
    return $result["PROX_CODE"];
}
function queryInsert($bd, $_req, $_set, $_values)
{
    $query = $_req . $_set . $_values;
    mysqli_query($bd, $query);
    return mysqli_affected_rows($bd);
}
?>