HEX
Server: Apache
System: Linux p3plzcpnl489526.prod.phx3.secureserver.net 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User: vmasmheia229 (9244908)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: /home/vmasmheia229/domains/taylornetcloud.com/html/admin/add.php
<?php
include('../api/include/webzone.php');

$jsOnReady = "$('#location2geocode').focus();";

$t1 = new Template_class_admin();
$t1->setPageName('Add a new store');
$t1->selectedMenu = 1;
$t1->addJsOnReady($jsOnReady);
$t1->setMetaTags(array('title'=>'', 'description'=>''));
$t1->displayHeader();

$c1 = new Store_locator_category();
$list = $c1->selectAll(array('order'=>'id DESC'));
for($i=0; $i<count($list); $i++) {
	$list_tab[$list[$i]['id']] = $list[$i]['name'];
}

echo '<div id="geocode_section">';
echo '<form>';
echo 'Please type your full address: <input type="text" id="location2geocode" style="width:360px;">
<br><br><input id="geocode_address_btn" type="submit" value="Geocode and continue">';
echo '</form>';

echo "<br>";

echo '<form method="post" enctype="multipart/form-data">';
echo '<input type="file" name="file" id="file"><br><br>';
echo '<select name="category_id">
<option value=""></option>
<option value="3">Organic Salad Trays</option>
<option value="2">Chopped Salad Kits</option>
</select><br><br>';
echo '<input type="submit" name="submit" value="Import">';
echo '</form>';

echo '</div>';
echo '<div id="address_thumbnail" style="margin-bottom:10px;"></div>';

echo '<div id="form_section" style="display:none;">';

//form
$criteria['fields'][] = array('name'=>'category_id', 'title'=>'Category:', 'type'=>'select', 'select_values'=>$list_tab);
$criteria['fields'][] = array('name'=>'name', 'title'=>'Name:');
$criteria['fields'][] = array('name'=>'address', 'title'=>'Address:');
$criteria['fields'][] = array('name'=>'logo', 'title'=>'Logo url:');
$criteria['fields'][] = array('name'=>'url', 'title'=>'Website url:');
if($GLOBALS['pro_version']==1) $criteria['fields'][] = array('name'=>'marker_icon', 'title'=>'Marker icon url:');
$criteria['fields'][] = array('name'=>'description', 'title'=>'Description:', 'type'=>'textarea', 'rows'=>'5');
$criteria['fields'][] = array('name'=>'tel', 'title'=>'Tel:');
$criteria['fields'][] = array('name'=>'email', 'title'=>'Email:');
$criteria['fields'][] = array('name'=>'city', 'title'=>'City:');
$criteria['fields'][] = array('name'=>'country', 'title'=>'Country:');
$criteria['fields'][] = array('name'=>'lat', 'type'=>'hidden');
$criteria['fields'][] = array('name'=>'lng', 'type'=>'hidden');
$criteria['submit'] = array('name'=>'add', 'value'=>'Add store');

echo '<div>';

if($_POST[$criteria['submit']['name']]) {
	
	$values = get_post_values($criteria['fields'], $_POST);
	
	$s1 = new Store_locator();
	$s1->setCategory_id($values['category_id']);
	$s1->setName($values['name']);
	$s1->setAddress($values['address']);
	$s1->setLogo($values['logo']);
	if($GLOBALS['pro_version']==1) $s1->setMarker_icon($values['marker_icon']);
	$s1->setUrl($values['url']);
	$s1->setDescription($values['description']);
	$s1->setTel($values['tel']);
	$s1->setEmail($values['email']);
	$s1->setCity($values['city']);
	$s1->setCountry($values['country']);
	$s1->setLat($values['lat']);
	$s1->setLng($values['lng']);
	$s1->setCreated(date('Y-m-d H:i:s'));
	$s1->insert();
	
	echo '<script>';
	echo 'window.location="./list.php";';
	echo '</script>';
} else if($_FILES["file"]["name"] && ($_POST["category_id"] == "2" || $_POST["category_id"] == "3")) {

function lookup($string){

	$string = str_replace (" ", "+", urlencode($string));
	$details_url = "http://maps.googleapis.com/maps/api/geocode/json?address=".$string."&sensor=false";

	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $details_url);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	$response = json_decode(curl_exec($ch), true);

	if ($response['status'] != 'OK') {
		return null;
	}

	$geometry = $response['results'][0]['geometry'];
    $infos = $response['results'][0];
	
	$longitude = $geometry['location']['lng'];
	$latitude = $geometry['location']['lat'];
    
	$country =  $response['results'][0]['address_components'][3]['long_name'];
	
	$array = array(
	'longitude' => $longitude,
	'latitude' => $latitude,
	'country' => $country
	);

	return $array;

} 

$row = 1;
if (($handle = fopen($_FILES["file"]["tmp_name"], "r")) !== FALSE) {
	while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
		if($row > 1) {
			$num = count($data);
			
			$storeName = $data[0];
			$addressOne = $data[1];
			$addressTwo = $data[2];
			$city = $data[3];
			$state = $data[4];
			$zipCode = $data[5];
			$fullAddress = $addressOne . " " . $addressTwo . " " . $city . " " . $state . " " . $zipCode;
			$geo = lookup($fullAddress);
			$cnt = $geo["country"];
			$lat = $geo["latitude"];
			$lng = $geo["longitude"];
			
			$s1 = new Store_locator();
			$s1->setCategory_id($_POST["category_id"]);
			$s1->setName($storeName);
			$s1->setAddress($addressOne . " " . $addressTwo);
			$s1->setLogo("");
			if($GLOBALS['pro_version']==1) $s1->setMarker_icon($values['marker_icon']);
			$s1->setUrl("");
			$s1->setDescription("");
			$s1->setTel("");
			$s1->setEmail("");
			$s1->setCity($city);
			$s1->setCountry($cnt);
			$s1->setLat($lat);
			$s1->setLng($lng);
			$s1->setCreated(date('Y-m-d H:i:s'));
			$s1->insert();
		}
		$row++;
	}
	fclose($handle);
	echo '<script>';
	echo 'window.location="./list.php";';
	echo '</script>';
} 
} else {
	echo '<div style="width:600px;">';
	display_forms($criteria);
	echo '</div>';
}

$t1->displayFooter();
?>