|
@@ -1,19 +1,38 @@
|
|
<?php
|
|
<?php
|
|
-require_once("../../../mdb/vendor/autoload.php");
|
|
|
|
|
|
+require_once("../vendor/autoload.php");
|
|
|
|
+
|
|
use MongoDB\BSON\ObjectId;
|
|
use MongoDB\BSON\ObjectId;
|
|
use MongoDB\Client;
|
|
use MongoDB\Client;
|
|
|
|
+use Firebase\JWT\JWT;
|
|
|
|
+use Firebase\JWT\Key;
|
|
|
|
|
|
-// Requires the MongoDB PHP Driver
|
|
|
|
-// https://www.mongodb.com/docs/drivers/php/
|
|
|
|
-
|
|
|
|
-$client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
|
|
|
|
-$collection = $client->selectCollection('kpmaster', 'kpu');
|
|
|
|
-//$cursor = $collection->aggregate([['$geoNear' => ['near' => ['type' => 'Point', 'coordinates' => [76.93, 8.52]], 'spherical' => true, 'query' => ['srvs' => ['$all' => ['Painting']]], 'distanceField' => 'Dis', 'maxDistance' => 2000, 'includeLocs' => 'loc']], ['$project' => ['ID'=>'$oid', 'Name' => '$fn', 'Distance' => '$Dis', 'Location' => '$loc']]]);
|
|
|
|
-$updateResult = $collection->updateOne(
|
|
|
|
- [ '_id' => new ObjectId('64b0f61b8b3742ad72109e80') ],
|
|
|
|
- [ '$push' => [ 'srvs' => 'Running' ]]
|
|
|
|
-);
|
|
|
|
|
|
+$userInput = file_get_contents('php://input');
|
|
|
|
+$userInputData = json_decode($userInput, true);
|
|
|
|
+if ($userInputData !== null) {
|
|
|
|
+ $headers = explode(" ", trim($_SERVER["HTTP_AUTHORIZATION"]));
|
|
|
|
+ $key = '97eda3db6f898bfb1f821178d1c27064';
|
|
|
|
+ $jwt = $headers[1];
|
|
|
|
+ $decoded = JWT::decode($jwt, new Key($key, 'HS256'));
|
|
|
|
+ //print_r($decoded);
|
|
|
|
+ $client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
|
|
|
|
+ $collection = $client->selectCollection('kpmaster', 'kpu');
|
|
|
|
+ //$cursor = $collection->aggregate([['$geoNear' => ['near' => ['type' => 'Point', 'coordinates' => [76.93, 8.52]], 'spherical' => true, 'query' => ['srvs' => ['$all' => ['Painting']]], 'distanceField' => 'Dis', 'maxDistance' => 2000, 'includeLocs' => 'loc']], ['$project' => ['ID'=>'$oid', 'Name' => '$fn', 'Distance' => '$Dis', 'Location' => '$loc']]]);
|
|
|
|
+ $updateResult = $collection->updateOne(
|
|
|
|
+ ['_id' => new ObjectId($decoded->kpid)],
|
|
|
|
+ ['$addToSet' => ['srvs' => $userInputData["service"]]]
|
|
|
|
+ );
|
|
|
|
|
|
-printf("Matched %d document(s)\n", $updateResult->getMatchedCount());
|
|
|
|
-printf("Modified %d document(s)\n", $updateResult->getModifiedCount());
|
|
|
|
-?>
|
|
|
|
|
|
+ if ($updateResult->getModifiedCount() == 1) {
|
|
|
|
+ $message['status'] = true;
|
|
|
|
+ $message['statusMessage'] = "Service Added Successfully";
|
|
|
|
+ } else {
|
|
|
|
+ $message['status'] = false;
|
|
|
|
+ $message['statusCode'] = 'KP005';
|
|
|
|
+ $message['statusMessage'] = "Service Addition Failed";
|
|
|
|
+ }
|
|
|
|
+} else {
|
|
|
|
+ $message['status'] = false;
|
|
|
|
+ $message['statusCode'] = "KP001";
|
|
|
|
+ $message['statusMessage'] = "Data Not Received";
|
|
|
|
+}
|
|
|
|
+echo json_encode($message);
|