0 && $_GET['day'] < 32) ? $_GET['day'] : 1;
//Check a month is set and is valid
$month = (isset($_GET['month']) && !empty($_GET['month']) && $_GET['month'] > 0 && $_GET['month'] < 13) ? $_GET['month'] : 1;
//Check a year is set and is valid
$year = (isset($_GET['year']) && !empty($_GET['year']) && $_GET['year'] > 2003 && $_GET['year'] <= gmdate('Y')) ? $_GET['year'] : gmdate('Y');
$authority = array( 'name' => 'Wiltshire',
'full_name' => 'Wiltshire County Council',
'url' => 'http://www.wiltshireplanningapplications.co.uk/planning_summary.aspx',
'detail_url' => 'http://www.wiltshireplanningapplications.co.uk/Planning_DETAIL.aspx?strCASENO=',
'comments' => 'planningcontrol@wiltshire.gov.uk');
// There is a comment url available on some of the info pages, but we would
// have to download the info page to get it (it has a case officer parameter).
// The page looks like it might work without the case officer parameter, but
// the email address is probably a better bet - Duncan
$date = $day.'/'.$month.'/'.$year;
$applications = array();
function fetch_page($url) {
if(!isset($ch)) {
$ch = curl_init();
}
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_REFERER, $url);
$data = curl_exec($ch);
return $data;
}
function parse_search($date) {
global $applications,$authority;
$url = $authority['url'].'?strRecTo='.$date.'&strRecFrom='.$date;
//echo 'Loading page '.$page_no.' of data for '.$date.' URL:'.$url.'
';
$data = fetch_page($url);
$data = explode('',$data);
$data = explode('',$data[2]);
foreach($data as $application) {
$application = explode('',$application);
$detail = explode('',$application[1]);
list($AppNo,$junk) = explode('
',$detail[0]);
$AppNo = trim(strip_tags($AppNo));
$applications[$AppNo]['AppNo'] = $AppNo;
$applications[$AppNo]['Info'] = trim(strip_tags($application[2]));
list($Loc,$junk) = explode('',$detail[2]);
$Loc = trim(strip_tags($Loc));
$applications[$AppNo]['Address'] = $Loc;
list($junk,$DateRec) = explode('',$detail[2]);
$applications[$AppNo]['DateRec'] = trim(strip_tags($DateRec));
preg_match("/([A-Z]{1,2}[0-9][0-9A-Z]?\s?[0-9][A-Z]{2})/",$Loc,$PostCode);
if(isset($PostCode[1])) {
$applications[$AppNo]['PostCode'] = $PostCode[1];
} else {
$applications[$AppNo]['PostCode'] = false;
}
if(empty($AppNo)) {
unset($applications[$AppNo]);
}
}
}
parse_search($date);
header("Content-Type: text/xml");
echo "\n";
echo "\n";
echo "\t".$authority['full_name']."\n";
echo "\t".$authority['name']."\n";
echo "\t\n";
foreach($applications as $application) {
echo "\t\t\n";
echo "\t\t\t".$application['AppNo']."\n";
echo "\t\t\t".$application['Address']."\n";
echo "\t\t\t".$application['PostCode']."\n";
echo "\t\t\t\n";
echo "\t\t\t".$authority['detail_url'].$application['AppNo']."\n";
echo "\t\t\t".$authority['comments']."\n";
echo "\t\t\t".$application['DateRec']."\n";
echo "\t\t\n";
}
echo "\t\n";
echo "";
?>