<?php
/**
 * eventful API
 * @author Ningchong Chen
 * @version 1.0
 *
 * @Array   All parameter should be passed in an array
 * Array[KEY]=>[VALUE]
 */

/**
 * Get Venue Details
 *
 * @param array $data
 * @return array
 */

function getVenueDetailsFromEventful( $data )
{

	foreach ($data as $key => $value)
		$param .= $key.'='.$value.'&';

	$venueArray = array();

	return $venueArray; // DISABLED - sumeet

	$feedUrl = "http://api.evdb.com/rest/venues/get?".$param;
		
	###### CURL & PARSE XML #####
	$curlData = array(
		"url" => $feedUrl,
		"timeout" => '50',
		"ua" => $_SERVER['HTTP_USER_AGENT']
	);

	$varData = curl_get_contents($curlData);
	//echo '<pre>';print_r($varData);echo '</pre>';
	$xmlArray = new Createsitexml();
	$varArray = $xmlArray->xml2array($varData, $get_attributes = 1, $priority = '_attr');
	$varArray = $varArray['venue'];

	//echo '<pre>';print_r($varArray);echo '</pre>';
	if( isset($varArray) ) {

		$venueArray['name'] = $varArray['name']['value'];
		// without htmlspecialchars
		$venueArray['description'] = ($varArray['description']['value']);
		//$venueArray['phone'] = $varArray['phone']['value'];
		$venueArray['link'] = $varArray['url']['value'];
		$venueArray['address'] = $varArray['address']['value'];
		$venueArray['city'] = $varArray['city']['value'];
		$venueArray['zipcode'] = $varArray['postal_code']['value'];
		$venueArray['state'] = $varArray['region']['value'];
		$venueArray['country'] = $varArray['country']['value'];
		$venueArray['latitude'] = $varArray['latitude']['value'];
		$venueArray['longitude'] = $varArray['longitude']['value'];
	}

	return $venueArray;
}

/**
 * Search Events
 *
 * @param array $data
 */
function getEventsFromEventful($data)
{
	$events = array();

	return $events;  // Disabled - Sumeet

	$param = "";
	foreach ($data as $key => $value)
		$param .= $key.'='.$value.'&';

	$feedUrl = "http://api.evdb.com/rest/events/search?".$param;

	###### CURL & PARSE XML #####
	$curlData = array(	
		"url" => $feedUrl,
		"timeout" => '50',
		"ua" => $_SERVER['HTTP_USER_AGENT']
	);

	$varData = curl_get_contents($curlData);

	$xmlArray = new Createsitexml();
	$varArray = $xmlArray->xml2array($varData, $get_attributes = 1, $priority = '_attr');
	
	$varArray = $varArray['search'];

	$noOfEvents = $varArray['total_items']['value'];
	
	$looping = (int)($noOfEvents>10?10:$noOfEvents);

	$varEvent = $varArray['events']['event'];
	
	if( isset($varEvent) && $looping > 0 )
	{
		for( $i = 0; $i < $looping ; $i++ )
		{

			$events[$i]['id'] = $varEvent[$i]['attr']['id'];
			$events[$i]['name'] = $varEvent[$i]['title']['value'];
			$events[$i]['link'] = $varEvent[$i]['url']['value'];
			$events[$i]['starttime'] = $varEvent[$i]['start_time']['value'];
			$events[$i]['venue_id'] = $varEvent[$i]['venue_id']['value'];
			if( $varEvent[$i]['image']['url']['value'] != "" )
				$events[$i]['images']  = $varEvent[$i]['image']['url']['value'];
			else if ( $varEvent[$i]['image']['medium']['url']['value'] != "" )
				$events[$i]['images'] = $varEvent[$i]['image']['medium']['url']['value'];
			else if ( $varEvent[$i]['image']['thumb']['url']['value'] != "" )
				$events[$i]['images'] = $varEvent[$i]['image']['thumb']['url']['value'];

			$events[$i]['venue_detail'] = array();
			$events[$i]['venue_detail']['city'] = $varEvent[$i]['city_name']['value'];
			$events[$i]['venue_detail']['state'] = $varEvent[$i]['region_abbr']['value'];
			$events[$i]['venue_detail']['latitude'] = $varEvent[$i]['latitude']['value'];
			$events[$i]['venue_detail']['longitude'] = $varEvent[$i]['longitude']['value'];
			$events[$i]['venue_detail']['address'] = $varEvent[$i]['venue_address']['value'];

			if(!empty($events[$i]['name']) && !empty($events[$i]['link']) && !empty($events[$i]['starttime']))
			{
				//echo '<pre>';print_r($v);echo '</pre>';
				$events[$i]['venue_detail'] = getVenueDetailsFromEventful( array('app_key'=>$data['app_key'], 'id'=>$events[$i]['venue_id']) );
				
			}
			//$events[$i]['detail'] = getEventDetails(array('app_key'=>$data['app_key'], 'id'=>$events[$i]['id']));
		}
		$events = sort2d ($events, 'starttime', $order = 'asc', $natsort = FALSE, $case_sensitive = FALSE);
	}
	return $events;
}


/**
 * Get Event Details
 *
 * @param array $data
 * @return array
 */
function getEventDetailsFromEventful( $data )
{
	foreach ($data as $key => $value)
		$param .= $key.'='.$value.'&';

	$eventDataArray = array();

	return $eventDataArray ; //Disabled - Sumeet

	$feedUrl = "http://api.evdb.com/rest/events/get?".$param;
	###### CURL & PARSE XML #####
	$curlData = array(
		"url" => $feedUrl,
		"timeout" => '3',
		"ua" => $_SERVER['HTTP_USER_AGENT']
	);

	$varData = curl_get_contents($curlData);

	$xmlArray = new Createsitexml();
	$varArray = $xmlArray->xml2array($varData, $get_attributes = 1, $priority = '_attr');
	//echo '<pre>';print_r($varArray);echo '</pre>';
	$varArray = $varArray['event'];
	if (isset($varArray)) {
		$eventDataArray['eventID'] = $varArray['attr']['id'];
		$eventDataArray['eventName'] = $varArray['title']['value'];
		$eventDataArray['eventDescription'] = ($varArray['description']['value']);
		$eventDataArray['eventLink'] = $varArray['links']['link']['url']['value'];
		$eventDataArray['eventURL'] = $varArray['url']['value'];
		//$eventDataArray['eventPhone'] = $varArray['phone']['value'];
		$eventDataArray['eventStartDate'] = $varArray['start_time']['value'];
		$eventDataArray['eventEndDate'] = $varArray['stop_time']['value'];
		$eventDataArray['eventPrice'] = $varArray['price']['value'];
		//$venueDetails = $varArray['rsp']['event']['venue'];
		
		// venue
		$eventDataArray['venueName'] = $varArray['venue_name']['value'];
		$venueDetail = getVenueDetailsFromEventful( array('app_key'=>$data['app_key'], 'id'=> $varArray['venue_id']['value']) );
		//$eventDataArray['venuePhone'] = $varArray['venue_phone']['value'];
		$eventDataArray['venueLink'] = $venueDetail['link'];
		$eventDataArray['venueAddress'] = $venueDetail['address'];
		$eventDataArray['venueCity'] = $venueDetail['city'];
		$eventDataArray['venueZipCode'] = $venueDetail['zipcode'];
		$eventDataArray['venueState'] = $venueDetail['state'];
		$eventDataArray['venueCountry'] = $venueDetail['country'];
		$eventDataArray['longitude'] = $venueDetail['longitude'];
		$eventDataArray['latitude']  = $venueDetail['latitude'];

		if ( $varArray[$i]['image']['medium']['url']['value'] != "" )
			$eventDataArray['eventImage'] = $varArray[$i]['images']['medium']['url']['value'];
		else if( $varArray[$i]['images']['url']['value'] != "" )
			$eventDataArray['eventImage']  = $varArray[$i]['images']['url']['value'];
		else if ( $varArray[$i]['image']['thumb']['url']['value'] != "" )
			$eventDataArray['eventImage'] = $varArray[$i]['images']['thumb']['url']['value'];
		
		$eventDataArray['categoryDisplay'] = $varArray['categories']['category']['name']['value'];
	
	}

	return $eventDataArray;
}

?>