/
getAllPincodes.php
67 lines (47 loc) · 1.8 KB
/
getAllPincodes.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
require_once("config.php");
use citibytes\CityPincodes;
use citibytes\utils\MysqlUtils;
use citibytes\PendingPincodeRequests;
use citibytes\ApprovedPincodeRequests;
use citibytes\exceptions\QueryFailedException;
use citibytes\exceptions\DatabaseConnectionException;
$city = $_REQUEST["city"];
$email = $_REQUEST["email"];
if(empty($city) === TRUE || empty($email) === TRUE)
{
$error_json = array("status"=>"error","error"=>"Empty Input Parameters");
echo json_decode($error_json);
return;
}
try{
$connection = MysqlUtils::getConnection();
$approved_pincode_requests = new ApprovedPincodeRequests();
$approved_pincodes = $approved_pincode_requests->getApprovedPincodes(
$connection,$email,$city);
$pending_pincode_requests = new PendingPincodeRequests();
$unapproved_pincodes = $pending_pincode_requests->getUnApprovedPincodes(
$connection,$email,$city);
$city_pincodes = new CityPincodes($city);
$all_pincodes = $city_pincodes->getAllPincodes($connection);
foreach($approved_pincodes as $approved_pincode)
unset($all_pincodes[$approved_pincode]);
foreach($unapproved_pincodes as $unapproved_pincode)
unset($all_pincodes[$unapproved_pincode]);
$count = count($all_pincodes);
echo json_encode(array("status" => "success",
"count" => $count,
"pincodes" => $all_pincodes));
}catch(DatabaseConnectionException $e){
$failure_json = array("status" => "error" ,
"error" => "Database Unavailable");
echo json_encode($failure_json);
return;
}catch(QueryFailedException $e){
$failure_json = array("status" => "error" ,
"error" => "Unable to get pending pincode requests");
echo json_encode($failure_json);
return;
}
mysqli_close($connection);
?>