/**
  * get Single data of UpperHouse geo location by mongo id
  * @param  string $id
  * @return Hexcores\Api\Facades\Response
  */
 public function getById($id)
 {
     $geo = $this->model->find($id);
     if (!$geo) {
         return response_missing();
     }
     return response_ok($this->transform($geo, new GeoTransformer()));
 }
示例#2
0
 /**
  * Get Faq By Question
  * @param  Illuminate\Http\Request $request
  * @return Hexcores\Api\Facades\Response
  */
 public function getFaqByQuestion(Request $request)
 {
     $question = $request->input('q');
     if (!$question) {
         return response_missing('U need Question Parameters');
     }
     $faq = $this->model->like('question', $question)->paginate();
     return response_ok($this->transform($faq, new FaqTransformer(), true));
 }
 /**
  * Get single candidate
  * @param $id
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function show($id)
 {
     $data = (new Candidate())->find($id);
     if (!$data) {
         return response_missing();
     }
     $item = $this->transform($data, new CandidateTransformer(), false);
     return response_ok($item);
 }
示例#4
0
 /**
  * Render an exception into an HTTP response.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Exception  $e
  * @return \Illuminate\Http\Response
  */
 public function render($request, Exception $e)
 {
     //Credit to Nyan Lynn Htut :D
     //$status = $e->getStatusCode();
     $message = $e->getMessage() ?: null;
     if ($e instanceof NotFoundHttpException) {
         return response_missing();
     }
     if ($e instanceof MethodNotAllowedHttpException) {
         return response_error('Invalid Method call.');
     }
     return response_error(!is_null($message) ? $message : 'Error occured!');
 }
 private function getAnalyticData($url, $query = [])
 {
     $client = new Client(['base_uri' => $this->base_url]);
     try {
         $response = $client->get($url, ['headers' => ['X-API-KEY' => $this->api_key, 'X-API-SECRET' => $this->api_secret], 'query' => $query]);
     } catch (\Exception $e) {
         return response_error("Internal Server Error.");
     }
     switch ($response->getStatusCode()) {
         case 500:
             return response_error("Internal Server Error.");
             break;
         case 401:
             response_unauthorized();
             break;
         case 404:
             return response_missing();
             break;
         case 200:
             return response_ok(json_decode($response->getBody()->getContents()));
             break;
     }
     return response_error("Internal Server Error.");
 }
示例#6
0
 /**
  * Generate User Token
  *
  * @param  \Illuminate\Http\Request $request
  * @return \Illuminate\Http\Response
  **/
 public function generateToken(Request $request)
 {
     if ($request->has('api_key')) {
         $apiKey = $request->input('api_key');
         $authUrl = config('app.auth');
         $client = new Client(['base_url' => $authUrl['base_url']]);
         $headers = ['X-API-KEY' => env('AUTH_APP_KEY'), 'X-API-SECRET' => env('AUTH_APP_SECRET')];
         try {
             $tokenResponse = $client->get($authUrl['token_uri'] . '/' . $apiKey, ['headers' => $headers]);
         } catch (ClientException $e) {
             $tokenResponse = $e->getResponse();
         }
         switch ($tokenResponse->getStatusCode()) {
             case 200:
                 $responseData = $tokenResponse->json();
                 return response_ok(['_meta' => ['status' => 'ok', 'count' => 1, 'api_version' => 1], 'data' => ['token' => $responseData['token']]]);
                 break;
             case 500:
                 return response_error("Something wrong with token generate process");
                 break;
             default:
                 return response()->json($tokenResponse->json(), $tokenResponse->getStatusCode());
                 break;
         }
     }
     return response_missing("You must pass your 'api_key' to generate user token.");
 }