<?php
require_once ROOT . FOLDER_CORE . '/auth.php';
require_once ROOT . FOLDER_CORE . '/class.php'; 
require_once ROOT . FOLDER_CORE . '/MarketRadarEncryption.php'; //Algoritmo de cifrado
require_once ROOT . '/assets/conn/SQLConnex.php'; //La clase para conectar a sqlsrv


$auth = 1;//tmp testing
if($auth == 1) {
    $data['status'] = true;
    $data['message'] = 'Successful';


    if(isset($_POST['eurotax_code']) && !empty($_POST['eurotax_code'])) {

        $c = new SQLConnex();//Establecer la conexion a sqlserver
        $eurotax = Statics::SafeInput($bd_conn, $_POST['eurotax_code']);
        $sql = 'SELECT TYPVehType FROM TYPE WHERE TYPNatCode = ?';
        $stmt = sqlsrv_prepare($c->con, $sql, [$eurotax]);//Rescatar el tipo de vehiculo con el eurotax
        
        if(sqlsrv_execute($stmt)) {
            if(sqlsrv_has_rows($stmt)) {
                $row = sqlsrv_fetch_array($stmt);//$row['TYPVehType'];
                if(isset($_POST['price']) && !empty($_POST['price'])) {//Check price
                    if(isset($_POST['km'])) {//Check km
                        if(isset($_POST['zipcode']) && !empty($_POST['zipcode'])) {//Check zipcode
                            
                            $km = empty($_POST['km']) ? 0 : Statics::SafeInput($bd_conn, $_POST['km']);
                            $zipcode = Statics::SafeInput($bd_conn, $_POST['zipcode']);
                            $encry = New MarketRadarEncryption('Z8YnctYOIj');
                            $add = '';
                            $url = 'http://radar-es-pp.autovista.eu/RadarV2/reports?1&partnerID=3063';
                            $required = [
                                'isoLanguage'       =>      $encry->encryptString('es'),
                                'isoCountry'        =>      $encry->encryptString('ES'),
                                'askingPrice'       =>      $encry->encryptString(Statics::SafeInput($bd_conn, $_POST['price'])),
                                'mode'              =>      $encry->encryptString('dealer'),
                                'theme'             =>      $encry->encryptString('default'),
                                'typeCode'          =>      $encry->encryptString($eurotax),
                                'km'                =>      $encry->encryptString($km),
                                'vehicleType '      =>      $encry->encryptString($row['TYPVehType'])
                            ];
                            if(isset($_POST['enrollment_date']) && !empty($_POST['enrollment_date'])) {
                                $required['regDate'] = $encry->encryptString(strtotime(Statics::SafeInput($bd_conn, $_POST['enrollment_date'])));
                            }

                            foreach($required as $key => $value) {
                                $add .= '&' . $key . '=' . $value;
                            }
                            $data['required'] =  $required;
                           /*  $data['date'] =  strtotime(Statics::SafeInput($bd_conn, $_POST['enrollment_date'])); */
                            $data['date2'] =  date('d-m-Y', '1228089600');
                            $data['url'] =  $url.$add;

                        } else {
                            $data['status'] = false;
                            $data['message'] = 'Zipcode is required';  
                        }

                    } else {
                        $data['status'] = false;
                        $data['message'] = 'Km is required'; 
                    }
                } else {
                    $data['message'] = 'Invalid price'; 
                }
            } else {
                $data['status'] = false;
                $data['message'] = 'Invalid eurotax code';
            }
        }
        
    } else {
        $data['status'] = false;
        $data['message'] = 'Invalid eurotax code';
    }
} else {
    $data['code'] = 'unauthorized_client';
    $data['message'] = 'Invalid authorization token';  
}

header("Content-type: application/json; charset=utf-8");
echo json_encode($data);

?>