<?PHP
/**
 * Bite Hunter 
 * Shubham 8/19/11
 * Version 1.0
 *
 * @Array   All parameter should be passed in an array
 * Array[KEY]=>[VALUE]
 */

############ USAGE DealsBitehunter FUNCTION #########
# 	
#	$data = array("keywords"=>$keywords,"cusion"=>$cusion,"type"=>$type,"city" => $city,"state" => $state);

#	$Deals = DealsBitehunter($data);
#
##############################

############ USAGE DealsBitehunterLatLon FUNCTION #########
# 	
#	$data = array("keywords"=>$keywords,"cusion"=>$cusion,"type"=>$type,"lat" => $lat,"lon" => $lon);

#	$Deals = DealsBitehunterLatLon($data);
#
##############################


// New Deals BiteHunter
function DealsBitehunter($data)   
{
	$city = urlencode($data['city']);
	$state = urlencode($data['state']);
	$lat = urlencode($data['lat']);
	$lon = urlencode($data['lon']);
	$apikey =  '4e25a79890'; // API KEY --
	$keywords = $data['keywords'];
	$type =  $data['type'];
	$limit = $data['limit'];
	$cusion = $data['cusion'];
	
	if(!empty($limit))
	{
	 $limit = $data['limit'];
	}
	else
	{
	 $limit = 20;
	}
	
	if(!empty($data['cusion']))
	{
	 $keywords = $data['cusion'];
	}
	
	$place = "";
	if ($city && $state) {
		$place = "city.xml?city=$city&state=$state";
	} else if ($lat && $lon) {
		$place = "nearby.xml?lat=$lat&lon=$lon";
	}
	if(!empty($type))
	{
	$URL = "http://api.bitehunter.com/v2.0/offers/{$place}&apikey=4e25a79890&limit=$limit&q=$keywords&type=$type";	
	}
	else
	{
	$URL = "http://api.bitehunter.com/v2.0/offers/{$place}&apikey=4e25a79890&limit=$limit&q=$keywords";	
	}
	
	$CONTENT = getApiContent($URL);
	
	
	$Feed = new DomDocument();	
	$Feed->loadXML($CONTENT);
	$Results = array();	
	for($i = 0; $Feed->getElementsByTagName("offer")->item($i); $i++)
	{
		
		$Results[$i]['Name'] =     $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("name")->item(0)->nodeValue;
		// api returns empty address1, address2, city, state
		$Results[$i]['Address1'] = $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("address")->item(0)->nodeValue;
		//$Results[$i]['Address1'] = $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("address1")->item(0)->nodeValue;
		$Results[$i]['Address2'] = $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("address2")->item(0)->nodeValue;
		$Results[$i]['City'] =     $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("city")->item(0)->nodeValue;
		$Results[$i]['State'] =    $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("state")->item(0)->nodeValue;
		$Results[$i]['ZipCode'] =  $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("zipcode")->item(0)->nodeValue;
		$Results[$i]['Phone'] =    $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("phone")->item(0)->nodeValue;
		$Results[$i]['ReviewAvgScore']= $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("reviews-avg-score")->item(0)->nodeValue;
		$Results[$i]['OfferDay'] = $Feed->getElementsByTagName("timing-description")->item($i)->nodeValue;
		$Results[$i]['ShareUrl']=  $Feed->getElementsByTagName("share-url")->item($i)->nodeValue;
		if(count($Feed->getElementsByTagName("offer-type")->item($i)) > 0)
		$Results[$i]['OfferType']= $Feed->getElementsByTagName("offer-type")->item($i)->getElementsByTagName("name")->item(0)->nodeValue;
		
		$Results[$i]['Id']= $Feed->getElementsByTagName("id")->item($i)->nodeValue;
		$Results[$i]['ApiUrl']= $Feed->getElementsByTagName("url")->item($i)->nodeValue;
		$Results[$i]['StartDate']= $Feed->getElementsByTagName("start-date")->item($i)->nodeValue;
		$Results[$i]['EndDate']= $Feed->getElementsByTagName("end-date")->item($i)->nodeValue;
		$Results[$i]['OfferText']= $Feed->getElementsByTagName("text")->item($i)->nodeValue;
		$Results[$i]['Cuisines'] = $Feed->getElementsByTagName("cuisines")->item($i)->getElementsByTagName("name")->item(0)->nodeValue;
	}
   return $Results;
}

// New Deals BiteHunterLatLon
function DealsBitehunterLatLon($data)   
{
	$apikey =  '4e25a79890'; // API KEY --

	$city = urlencode($data['city']);
	$state = urlencode($data['state']);
	
	$keywords = $data['keywords'];
	$lon = $data['lon'];
	$lat = $data['lat'];
	$cusion = $data['cusion'];
	
	$type = $data['type'];
	
	$limit = $data['limit'];
	
	if(!empty($limit))
	{
	 $limit = $data['limit'];
	}
	else
	{
	 $limit = 20;
	}
	

	
	if(!empty($data['cusion']))
	{
	 $keywords = $data['cusion'];
	}
	
	if(!empty($type))
	{
	$URL = "http://api.bitehunter.com/v2.0/offers/nearby.xml?lat=$lat&lon=$lon&apikey=4e25a79890&limit=$limit&q=$keywords&type=$type";	
	}
	else
	{
	$URL = "http://api.bitehunter.com/v2.0/offers/nearby.xml?lat=$lat&lon=$lon&apikey=4e25a79890&limit=$limit&q=$keywords";	
	}
	
	
	$CONTENT = getApiContent($URL);	
	$Feed = new DomDocument();	
	$Feed->loadXML($CONTENT);			
	$Results = array();	
	for($i = 0; $Feed->getElementsByTagName("offer")->item($i); $i++)
	{
		$Results[$i]['Name'] =     $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("name")->item(0)->nodeValue;
		// api returns empty address1, address2, city, state
		$Results[$i]['Address1'] = $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("address")->item(0)->nodeValue;
		//$Results[$i]['Address1'] = $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("address1")->item(0)->nodeValue;
		$Results[$i]['Address2'] = $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("address2")->item(0)->nodeValue;
		$Results[$i]['City'] =     $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("city")->item(0)->nodeValue;
		$Results[$i]['State'] =    $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("state")->item(0)->nodeValue;
		$Results[$i]['ZipCode'] =  $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("zipcode")->item(0)->nodeValue;
		$Results[$i]['Phone'] =    $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("phone")->item(0)->nodeValue;
		$Results[$i]['ThumbsUrl']= $Feed->getElementsByTagName("images")->item($i)->getElementsByTagName("thumbnail-url")->item(0)->nodeValue;
		$Results[$i]['ImageUrl']= $Feed->getElementsByTagName("images")->item($i)->getElementsByTagName("image-url")->item(0)->nodeValue;
		$Results[$i]['ReviewAvgScore']= $Feed->getElementsByTagName("restaurant")->item($i)->getElementsByTagName("reviews-avg-score")->item(0)->nodeValue;
		$Results[$i]['OfferDay'] = $Feed->getElementsByTagName("timing-description")->item($i)->nodeValue;
    	if(count($Feed->getElementsByTagName("offer-type")->item($i)) > 0)
		$Results[$i]['OfferType']= $Feed->getElementsByTagName("offer-type")->item($i)->getElementsByTagName("name")->item(0)->nodeValue;
		
		$Results[$i]['ShareUrl']=  $Feed->getElementsByTagName("share-url")->item($i)->nodeValue;
		$Results[$i]['Id']= $Feed->getElementsByTagName("id")->item($i)->nodeValue;
		$Results[$i]['ApiUrl']= $Feed->getElementsByTagName("url")->item($i)->nodeValue;
		$Results[$i]['StartDate']= $Feed->getElementsByTagName("start-date")->item($i)->nodeValue;
		$Results[$i]['EndDate']= $Feed->getElementsByTagName("end-date")->item($i)->nodeValue;
		$Results[$i]['OfferText']= $Feed->getElementsByTagName("text")->item($i)->nodeValue;
		$Results[$i]['Cuisines'] = $Feed->getElementsByTagName("cuisines")->item($i)->getElementsByTagName("name")->item(0)->nodeValue;

		 
	}
   return $Results;
}
?>