index.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. require_once("../vendor/autoload.php");
  3. use MongoDB\BSON\ObjectId;
  4. use MongoDB\Client;
  5. use Firebase\JWT\JWT;
  6. use Firebase\JWT\Key;
  7. $userInput = file_get_contents('php://input');
  8. $userInputData = json_decode($userInput, true);
  9. if ($userInputData !== null) {
  10. $headers = explode(" ", trim($_SERVER["HTTP_AUTHORIZATION"]));
  11. $key = '97eda3db6f898bfb1f821178d1c27064';
  12. $jwt = $headers[1];
  13. try {
  14. $decoded = JWT::decode($jwt, new Key($key, 'HS256'));
  15. //print_r($decoded);
  16. $client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
  17. $collection = $client->selectCollection('kpmaster', 'kpu');
  18. $return = $collection->updateOne(['_id' => new ObjectId($decoded->kpid)], ['$set' => ['location' => ['coordinates' => [$userInputData["long"], $userInputData["lat"]], 'type' => "Point"]]]);
  19. if ($return->getModifiedCount() == 1) {
  20. $message['status'] = true;
  21. $message['statusMessage'] = "Location updated successfully";
  22. } else {
  23. $message['status'] = false;
  24. $message['statusCode'] = 'KP005';
  25. $message['statusMessage'] = "Location updation Failed";
  26. }
  27. } catch (\Firebase\JWT\ExpiredException $exception) {
  28. $message['status'] = false;
  29. $message['statusCode'] = "KP010";
  30. $message['statusMessage'] = "Login Token Expired! Kindly Re Login.";
  31. }
  32. } else {
  33. $message['status'] = false;
  34. $message['statusCode'] = "KP001";
  35. $message['statusMessage'] = "Data Not Received";
  36. }
  37. echo json_encode($message);