<?php
// app/api/users/insert

    header("Content-Type:application/json");
    include("../dbconn.php");
    include("../utils.php");
    require '../../hooks/PHPMailer5/PHPMailerAutoload.php';
    date_default_timezone_set('Etc/UTC');
    
    // parametros obligatorios
    $parmsob = array("usr",'lang');
    if (!parametrosValidos($_GET, $parmsob)){
        badEnd("400", array("msg"=>"Parametros obligatorios " . implode(", ", $parmsob)));
    }
    
    //Definicion de variables y almacenamiento de valores enviados por GET
    $out= new stdClass;
    $usr = $_GET["usr"];
    $lang = $_GET['lang'];
    //$pwd = $_GET["pwd"];
    
    $validator = (int)getValidator();
    
    $sql = "SELECT usr, status, activatenro, id FROM users WHERE UPPER(usr)=UPPER('".$usr."')";
    if (!$rs =$db->query($sql)){
        badEnd("500", array("sql"=>$sql,"msg"=>$db->error));
    }
    
    $row = $rs->fetch_assoc();
    
    if($row["status"] != 0 && $row["activatenro"] == null){
        badEnd("409", array("msg"=>determinateMsgFail(array(
            "esp"=>"Registro Duplicado",
            "eng"=>"Duplicate Registration"), $lang, "Registro Duplicado")));
    }
    
    if($row["usr"] != null){
        $sql = "UPDATE users".
        "       SET activatenro='".$validator."', ".
        "       lang = '".$lang."', ".
        "       validthru = DATE_ADD(NOW(), INTERVAL 10 MINUTE) ".
        "       ".(isset($_GET["pwd"]) && $_GET["pwd"] != "" ? ",pwd = '".$_GET["pwd"]."'" : "").
        "       WHERE UPPER(usr)=UPPER('".$usr."')";
        if (!$db->query($sql))
            badEnd("500", array("msg"=>$db->error));
            
        // Retornamos el id que fue actualizado
        $idmsg = (int) $row["id"]; 
    }else if(isset($_GET["pwd"]) && $_GET["pwd"] != ""){
        $pwd = $_GET["pwd"];
        $sql = "INSERT INTO users(usr, pwd, status, datecreated, activatenro, lang, validthru)".
        "       VALUES ('".strtolower($usr)."', ".
        "       '".$pwd."', ".
        "       0, NOW(), ".$validator.", ".
        "       '".$lang."', ".
        "       DATE_ADD(NOW(), INTERVAL 10 MINUTE)".
        ")";
        if (!$db->query($sql))
            badEnd("500", array("msg"=>$db->error));
            
        // Retornamos el id que fue insertado
        $idmsg =(int) $db->insert_id;
    }else{
        badEnd("404", array("msg"=>determinateMsgFail(array(
            "esp"=>"Registro no existe y requiere clave",
            "eng"=>"Registry does not exist and requires password"), $lang, "Registro no existe y requiere clave")));
    }
        
    $subject = "Código de Verificación de AFX";
    $subject = '=?UTF-8?B?'.base64_encode($subject).'?=';
    $body = "<html>".
            "   <head>".
            "       <meta http-equiv='Content-Type' content='text/html; charset=utf-8'>".
            "       <title></title>".
            "       <link href='https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap' rel='stylesheet'>".
            "       <link href='https://fonts.googleapis.com/css2?family=Roboto&display=swap' rel='stylesheet'>".
            "       <style>".
            "           .goodText {".
            "               font-family: 'Open Sans', sans-serif;".
            "           }".
            "           .code {".
            "               font-family: Helvetica, sans-serif".
            "           }".
            "           .copy {".
            "               font-family: 'Roboto', sans-serif;".
            "               font-weight: 400;".
            "               font-size: 12px;".
            "           }".
            "       </style>".
            "   </head>".
            "   <body>".
            "       <div style='background-color: #F8F8FA;padding: 20px;'>".
            "           <img style='margin: auto; display: block;margin-bottom:10px;' width='110' height='110' src='".$homeurl."/img/afx-logo-email.png'/>".
            "           <div style='margin: auto; display: block;background-color: #FFF;border-radius: 22px;width: 60%;padding:30px;'>".
            "               <img style='margin: auto; display: block;margin-bottom:20px;' width='160' height='130' src='".$homeurl."/img/img_password.png'/>".
            "               <h1 class='goodText' style='color:#474C58;text-align:center;font-size: 20px;font-weight: bold;'>".determinateMsgFail(array("esp"=>"Hola","eng"=>"Hello"), $lang, "Hola")." ".strtolower($usr)."</h1>".
            "               <p class='goodText' style='font-size: 18px;color: #474C58;text-align:center;margin-bottom:30px;margin-left:20px;margin-right:20px;'>".determinateMsgFail(array("esp"=>"Para verificar su cuenta ingrese el siguiente c&oacute;digo para as&iacute; completar el registro:","eng"=>"To verify your account enter the following code to complete the registration:"), $lang, "Para verificar su cuenta ingrese el siguiente c&oacute;digo para as&iacute; completar el registro:")."</p>".
            "               <div style='margin: auto; display: block;background-color: #4287CE;border-radius: 8px;width: 200px; height: 57px;text-align:center;'>".
            "                   <p style='margin: auto; display: block;color: #FFF;font-size: 18px;text-align:center;line-height: 58px;font-weight:bold;letter-spacing: 10px;'>".$validator."</p>".
            "               </div>".
            "               <p class='goodText' style='text-align:center;font-size:12px;color: #474C58;'>".determinateMsgFail(array("esp"=>"Este c&oacute;digo expirar&aacute; en 10 minutos.","eng"=>"This code will expire in 10 minutes"), $lang, "Este c&oacute;digo expirar&aacute; en 10 minutos.")."</p>".
            "           </div>".
            "           <p class='copy' style='margin-top:40px; color: #767E93;text-align:center;'>&copy; 2020 - AFX Trade</p>".
            "       </div>".
            "   </body>".
            "</html>";
    /*$body = "Hola ".strtolower($usr)."<br><br>&iexcl;Ahora est&aacute; conectado con AFX!<br><br>".
            "Para verificar su cuenta ingrese el siguiente c&oacute;digo para as&iacute; completar el registro:<br><br>"
            ."<b>".$validator."</b><br><br>".
            "<b></b><br><br>".
            "Gracias de antemano<br><br><b>AFX</b><br>";*/
    
            
    enviarCorreo2($fromeMail, strtolower($usr), $subject, $body);
    
    $out->ID = $idmsg;
    header("HTTP/1.1 200");
    echo (json_encode($out));
    die();
?>