/home/desid573/public_html
Edit: /home/desid573/public_html/update.php (24185B)
connect_error);
$qcon=mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
$query = "SELECT * FROM drivers WHERE id = '".$driver_id."'";
$result = mysqli_query($conn, $query);
if(!$result) {
error_log("driver lookup error ".$conn->error);
}
$row = mysqli_fetch_assoc($result);
$driver = $row['driver'];
error_log("Driver details ".$driver_id." ".$driver);
$postAddresses = "";
if(!empty($type))
{
if($type == "DD") {
require("checkDDPrice.php");
$dbhost = "localhost";
$dbuser = "desid573_inquiri";
$dbpass = "@G&{)0*&Ts^V";
$dbname = "desid573_inquiries";
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname) or die($conn->connect_error);
$qcon=mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
$query = "SELECT * FROM jobs WHERE reference = ".$ref;
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
$name = $row['job_name'];
//$date = $row['job_date'];
//$time = $row['job_time'];
$spatula_ref = $row['spat_ref'];
$pickupOld = $row['job_pickup'];
$dropoffOld = $row['job_dropoff'];
$change = false;
$km = $row["quote_km"];
$quote_time = $row["quote_time"];
error_log($pickupOld. " - ". $pickup);
if($pickupOld != $pickup) {
$change = true;
}
if($dropoffOld != $dropoff) {
$change = true;
}
date_default_timezone_set("Australia/Perth");
$d = date_create_from_format("jS M, Y", $date);
$date24 = date_format($d, "Y-m-d");
$time24 = date("G:i", strtotime($time));
$timeUTC = date("c", strtotime("$date24 $time24"));
$timestamp = strtotime("$date24 $time24") * 1000;
$paymentlink = shortenLink($ref, $type, "payment");
$pickup = mysqli_real_escape_string($qcon, $pickup);
$dropoff = mysqli_real_escape_string($qcon, $dropoff);
if($spatula_ref != "") {
$pickCoords = checkLocalCoords($pickup);
if(!$pickCoords) {
$pickplace = getplaceid($pickup);
if($pickplace) {
$pickCoords = getCoords($pickplace, $pickup);
}
}
$dropCoords = checkLocalCoords($dropoff);
if(!$dropCoords) {
$dropplace = getplaceid($dropoff);
if($dropplace) {
$dropCoords = getCoords($dropplace, $dropoff);
}
}
if($change) {
$matrix = checkTimeAndDistance($pickCoords["lat"], $pickCoords["lon"], $dropCoords["lat"], $dropCoords["lon"]);
error_log(json_encode($matrix, true));
$km = $matrix["dist"];
$quote_time = $matrix["time"];
$quote = checkPrice($km, $quote_time, "SI");
$quote = ceil($quote);
error_log($quote);
}
$postAddresses = ',"tasks": [{"timeframe":{"by": '.$timestamp.'}, "zone": {"name": "' . $pickup . '","address": "' . $pickup . '","coords": {"lat": ' . $pickCoords["lat"] . ',"lon": ' . $pickCoords["lon"] . '},"radius": 100}},{"zone": {"name": "' . $dropoff . '","address": "' . $dropoff . '","coords": {"lat": ' . $dropCoords["lat"] . ',"lon": ' . $dropCoords["lon"] . '},"radius": 100}}]';
$post = '{"name": "DD ' . $name . '","contact": {"name": "' . $name . '","phone": "' . $phone . '"}'.$postAddresses.',"attr": [{"key": "Payment Link", "value": "'.$paymentlink.'"}]}';
error_log($post);
updateSpatula($spatula_ref, $post);
}
$query = "UPDATE jobs SET `job_pickup` = '".$pickup."', `job_dropoff` = '".$dropoff."', `job_quote` = '".$quote."' , job_date = '".$date."', job_time = '".$time."', job_phone = '".$phone."', quote_km = '".$km."', quote_time = '".$quote_time."' WHERE `reference` = '".$ref."'";
$result = mysqli_query($conn, $query);
if(!$result){
$status = "no";
error_log($conn->error);
} else {
$status = "OK";
}
}
if($type == "FC" OR $type == "SF" or $type == "MF" or $type == "BF" or $type == "GC" or $type == "SC") {
$dbhost = "localhost";
$dbuser = "desid573_famcab";
$dbpass = "C]+6wQySxov(";
$dbname = "desid573_familycab";
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname) or die($conn->connect_error);
$qcon=mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
$query = "SELECT * FROM jobs WHERE reference = ".$_POST['ref'];
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
$spatula_ref = $row['spat_ref'];
$name = $row['job_name'];
$luggage = str_replace(array("\r", "\n"), '', $row['job_luggage']);
$change = false;
$pickupOld = $row['job_pickup'];
if($pickupOld != $pickup) {
$change = true;
}
$dropoffOld = $row['job_dropoff'];
if($dropoffOld != $dropoff) {
$change = true;
}
//$date = $row['job_date'];
//$time = $row['job_time'];
$suffix = $_POST['passenger_count']." pax ".$_POST['rf_count']." RF ".$_POST['ff_count']." FF ".$_POST['booster_count']." B";
$pickup = mysqli_real_escape_string($qcon, $pickup);
$dropoff = mysqli_real_escape_string($qcon, $dropoff);
if($spatula_ref != "") {
$pickCoords = checkLocalCoords($pickup);
if(!$pickCoords) {
$pickplace = getplaceid($pickup);
if($pickplace) {
$pickCoords = getCoords($pickplace, $pickup);
}
}
$dropCoords = checkLocalCoords($dropoff);
if(!$dropCoords) {
$dropplace = getplaceid($dropoff);
if($dropplace) {
$dropCoords = getCoords($dropplace, $dropoff);
}
}
$postAddresses = '';
if($type == "SF") {
date_default_timezone_set("Australia/Sydney");
} else if($type == "MF") {
date_default_timezone_set("Australia/Melbourne");
} else if($type == "BF" OR $type == "GC" OR $type == "SC") {
date_default_timezone_set("Australia/Brisbane");
} else {
date_default_timezone_set("Australia/Perth");
}
$d = date_create_from_format("jS M, Y", $date);
$date24 = date_format($d, "Y-m-d");
$time24 = date("G:i", strtotime($time));
$timeUTC = date("c", strtotime("$date24 $time24"));
$timestamp = strtotime("$date24 $time24") * 1000;
$paymentlink = shortenLink($ref, $type, "payment");
$post = '{"name": "' .$type.' '. $name . '","contact": {"name": "' . $name . '","phone": "' . $phone . '"}, "tasks": [{"timeframe":{"by": '.$timestamp.'}, "zone": {"name": "' . $pickup . '","address": "' . $pickup . '","coords": {"lat": ' . $pickCoords["lat"] . ',"lon": ' . $pickCoords["lon"] . '},"radius": 100}},{"zone": {"name": "' . $dropoff . '","address": "' . $dropoff . '","coords": {"lat": ' . $dropCoords["lat"] . ',"lon": ' . $dropCoords["lon"] . '},"radius": 100}}],"attr": [{"key": "Flight", "value": "'.$flight.' + '.$mins.' mins"},{ "key": "Seats", "value": "' . $suffix . '" },{"key": "Luggage", "value": "'.$luggage.'"}, {"key": "Payment Link", "value": "'.$paymentlink.'"}]}';
error_log($post);
updateSpatula($spatula_ref, $post);
}
$query = "UPDATE jobs SET `job_pickup` = '".$pickup."', `job_dropoff` = '".$dropoff."', `job_quote` = '".$quote."', job_date = '".$date."', job_time = '".$time."', flight_num = '".$flight."', mins_post = '".$mins."', job_phone = '".$phone."', job_pax = '".$_POST["passenger_count"]."', job_rf = '".$_POST["rf_count"]."', job_ff = '".$_POST["ff_count"]."', job_boost = '".$_POST["booster_count"]."' WHERE `reference` = '".$ref."'";
$result = mysqli_query($conn, $query);
if(!$result) {
$status = "no";
error_log($conn->error);
} else {
$status = "OK";
}
}
if($type == "HK" OR $type == "SI") {
require("test_api/checkPrice.php");
$dbhost = "localhost";
$dbuser = "desid573_inquiri";
$dbpass = "@G&{)0*&Ts^V";
$dbname = "desid573_new_pro_api";
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname) or die($conn->connect_error);
$qcon=mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
$query = "SELECT * FROM booking WHERE reference = ".$_POST['ref'];
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
$spatula_ref = $row['spatula_id'];
$change = false;
$km = $row["quote_km"];
$quote_time = $row["quote_time"];
$pickupOld = $row['pickup_addr'];
error_log($pickupOld. " - ". $pickup);
if($pickupOld != $pickup) {
$change = true;
}
$dropoffOld = $row['pickoff_addr'];
if($dropoffOld != $dropoff) {
$change = true;
}
$pickup = mysqli_real_escape_string($qcon, $pickup);
$dropoff = mysqli_real_escape_string($qcon, $dropoff);
date_default_timezone_set("Australia/Perth");
$timestamp = strtotime($date." ".$time) * 1000;
$cid = $row['cid'];
$query = "SELECT * FROM customers WHERE id = ".$cid;
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
$pickCoords = checkLocalCoords($pickup);
if($pickCoords == false) {
$pickplace = getplaceid($pickup);
if($pickplace) {
$pickCoords = getCoords($pickplace, $pickup);
}
}
$dropCoords = checkLocalCoords($dropoff);
if($dropCoords == false) {
$dropplace = getplaceid($dropoff);
if($dropplace) {
$dropCoords = getCoords($dropplace, $dropoff);
}
}
$paymentlink = shortenLink($ref, $type, "payment");
$name = $row['name'];
if($change) {
$matrix = checkTimeAndDistance($pickCoords["lat"], $pickCoords["lon"], $dropCoords["lat"], $dropCoords["lon"]);
error_log(json_encode($matrix, true));
$km = $matrix["dist"];
$quote_time = $matrix["time"];
$quote = checkPrice($km, $quote_time, "SI");
$quote = ceil($quote);
error_log($quote);
}
$query = "UPDATE booking SET `pickup_addr` = '".$pickup."', `pickoff_addr` = '".$dropoff."', `quote` = ".$quote.", booking_date = '".$date."', booking_time = '".$time."', quote_km = '".$km."', quote_time = '".$time."' WHERE `reference` = '".$ref."'";
$result = mysqli_query($conn, $query);
if(!$result) {
$status = "no";
error_log($conn->error);
} else {
$status = "OK";
}
error_log(json_encode($pickCoords, true));
$post = '{"name": "' .$type.' '. $name . '","contact": {"name": "' . $name . '","phone": "' . $phone . '"}, "tasks": [{"timeframe":{"by": '.$timestamp.'}, "zone": {"name": "' . $pickup . '","address": "' . $pickup . '","coords": {"lat": ' . $pickCoords["lat"] . ',"lon": ' . $pickCoords["lon"] . '},"radius": 100}},{"zone": {"name": "' . $dropoff . '","address": "' . $dropoff . '","coords": {"lat": ' . $dropCoords["lat"] . ',"lon": ' . $dropCoords["lon"] . '},"radius": 100}}],"attr": [{"key": "Payment Link", "value": "'.$paymentlink.'"}]}';
updateSpatula($spatula_ref, $post);
}
if($type == "FA" OR $type == "NW" OR $type == "SA" or $type == "MA" or $type == "BA" or $type == "GA" or $type == "YA") {
$dbhost = "localhost";
$dbuser = "desid573_fam_app";
$dbpass = "TW#7CCqKReDn";
$dbname = "desid573_famcab_api";
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname) or die($conn->connect_error);
$qcon=mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
$query = "SELECT * FROM booking WHERE reference = ".$_POST['ref'];
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
$spatula_ref = $row['spatula_id'];
if($type == "SA") {
date_default_timezone_set("Australia/Sydney");
} else if($type == "MA") {
date_default_timezone_set("Australia/Melbourne");
} else if($type == "BA" OR $type == "GA" OR $type == "YA") {
date_default_timezone_set("Australia/Brisbane");
} else {
date_default_timezone_set("Australia/Perth");
}
$timestamp = strtotime($date." ".$time) * 1000;
$cid = $row['cid'];
$pickup = mysqli_real_escape_string($qcon, $pickup);
$dropoff = mysqli_real_escape_string($qcon, $dropoff);
$pickCoords = checkLocalCoords($pickup);
if(!$pickCoords) {
$pickplace = getplaceid($pickup);
if($pickplace) {
$pickCoords = getCoords($pickplace, $pickup);
}
}
$dropCoords = checkLocalCoords($dropoff);
if(!$dropCoords) {
$dropplace = getplaceid($dropoff);
if($dropplace) {
$dropCoords = getCoords($dropplace, $dropoff);
}
}
//$flight = $row["flight_num"];
//$mins = $row["mins_to"];
$suffix = $row['book_pax']." pax ".$row['book_rf']." RF ".$row['book_ff']." FF ".$row['book_b']." B";
$paymentlink = shortenLink($ref, $type, "payment");
$price = (double) $quote;
$query = "SELECT * FROM customers WHERE id = ".$cid;
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
$name = $row['name'];
$post = '{"name": "' .$type.' '. $name . '","contact": {"name": "' . $name . '","phone": "' . $phone . '"}, "tasks": [{"timeframe":{"by": '.$timestamp.'}, "zone": {"name": "' . $pickup . '","address": "' . $pickup . '","coords": {"lat": ' . $pickCoords["lat"] . ',"lon": ' . $pickCoords["lon"] . '},"radius": 100}},{"zone": {"name": "' . $dropoff . '","address": "' . $dropoff . '","coords": {"lat": ' . $dropCoords["lat"] . ',"lon": ' . $dropCoords["lon"] . '},"radius": 100}}],"attr": [{"key": "Flight", "value": "'.$flight.' + '.$mins.' mins"},{ "key": "Seats", "value": "' . $suffix . '" },{"key": "Luggage", "value": "'.$luggage.'"}, {"key": "Payment Link", "value": "'.$paymentlink.'"}]}';
updateSpatula($spatula_ref, $post);
$query = "UPDATE booking SET `pickup_addr` = '".$pickup."', `pickoff_addr` = '".$dropoff."', `quote` = ".$price.", booking_date = '".$date."', booking_time = '".$time."', flight_num = '".$flight."', mins_to = '".$mins."', book_pax = '".$_POST["passenger_count"]."', book_rf = '".$_POST["rf_count"]."', book_ff = '".$_POST["ff_count"]."', book_b = '".$_POST["booster_count"]."' WHERE `reference` = '".$ref."'";
error_log($query);
$result = mysqli_query($conn, $query);
if(!$result) {
$status = "no";
error_log($conn->error);
} else {
$status = "OK";
}
}
if($status == "OK") {
$url = shortenLink($ref, $type, "options");
require 'google/google-api-php-client-2.2.1/calendarRemoveJSON.php';
$response = removeFromCalendar($type, $ref, $client);
$response = json_decode($response, true);
$test = false;
if($response["status"] == "OK" OR $response["message"] == "not found" OR $test == true) {
$response = addToCalendar($type, $ref, $url, $calendarId, $array, $client);
if($response == "OK") {
error_log("calendar updated");
echo "OK";
} else {
error_log("Update OK Calendar deleted but could not add new calendar");
}
} else {
error_log("Update OK could not delete calendar");
}
} else {
echo $status;
}
}
function updateSpatula($spat_ref, $postfields) {
require("vromo.php");
$url = "https://api.vromo.io/v2/graph/role/jobs/$spat_ref?access_token=".$vromo;
error_log($url);
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $url);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
curl_setopt($curlObj, CURLOPT_POST, 1);
curl_setopt($curlObj, CURLOPT_POSTFIELDS, $postfields);
error_log($postfields);
$response = curl_exec($curlObj);
error_log($response);
curl_close($curlObj);
error_log($response);
}
function getCoords($placeid, $name) {
error_log("getCoords called");
$url = "https://maps.googleapis.com/maps/api/place/details/json?fields=name,geometry,place_id,formatted_address&key=AIzaSyCzDCB1H9ZvIgT4NHGqCXajVQlRXKwTVY4&placeid=".$placeid;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $url);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
error_log($response);
$json = json_decode($response, true);
curl_close($curlObj);
if($json["status"] == "OK") {
updatePlace($json["result"]["formatted_address"], $json["result"]["geometry"]["location"]["lat"], $json["result"]["geometry"]["location"]["lng"]);
if($name != $json["result"]["formatted_address"]) {
updatePlace($name, $json["result"]["geometry"]["location"]["lat"], $json["result"]["geometry"]["location"]["lng"]);
}
return array("address" => $json["result"]["formatted_address"], "lat" => $json["result"]["geometry"]["location"]["lat"], "lon" => $json["result"]["geometry"]["location"]["lng"]);
} else {
return false;
}
}
function getplaceid($place) {
$url = "https://maps.googleapis.com/maps/api/place/findplacefromtext/json?key=AIzaSyCzDCB1H9ZvIgT4NHGqCXajVQlRXKwTVY4&inputtype=textquery&input=".urlencode($place);
error_log("getplaceid Called");
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $url);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
error_log($response);
$json = json_decode($response, true);
curl_close($curlObj);
if($json["status"] == "OK") {
error_log($json["candidates"][0]["place_id"]);
return $json["candidates"][0]["place_id"];
} else {
return false;
}
}
function checkLocalCoords($place) {
error_log("checkLocalCoords called");
$dbhost = "localhost";
$dbuser = "desid573_famcab";
$dbpass = "C]+6wQySxov(";
$dbname = "desid573_eway_codes";
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname) or die($conn->connect_error);
$sql = "SELECT * FROM terminal_details WHERE name = '".$place."'";
$result = $conn->query($sql);
if($result->num_rows > 0) {
$row = $result->fetch_assoc();
return array("name"=> $row["name"], "lat" => $row["lat"], "lon" => $row["long"]);
}
$sql = "SELECT * FROM place_coords WHERE name = '".$place."'";
$result = $conn->query($sql);
if($result->num_rows > 0) {
$row = $result->fetch_assoc();
return array("name"=> $row["name"], "lat" => $row["lat"], "lon" => $row["lon"]);
} else {
return false;
}
}
function updatePlace($name, $lat, $lng) {
error_log("updatePlace called");
$dbhost = "localhost";
$dbuser = "desid573_fam_app";
$dbpass = "TW#7CCqKReDn";
$dbname = "desid573_eway_codes";
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname) or die($conn->connect_error);
$sql = "SELECT * FROM place_coords WHERE name = '".$name."'";
$result = $conn->query($sql);
if($result->num_rows > 0) {
$sql = "UPDATE `place_coords` SET `lat`=".$lat.",`lon`=".$lng.", date_added = NOW() WHERE `name`='".$name."'";
error_log($sql);
$result = $conn->query($sql);
if(!$result) {
error_log("Error updating coords ".$conn->error);
}
} else {
$sql = "INSERT INTO `place_coords`(`id`, `name`, `lat`, `lon`, `date_added`) VALUES (NULL,'".$name."',".$lat.",".$lng.",NOW())";
$result = $conn->query($sql);
if(!$result) {
error_log($sql);
error_log("Error inserting coords ".$conn->error);
}
}
}