示例#1
0
 public function prepareRequestData(Request $requestObject, $endpoint)
 {
     $apiRequest = new ApiRequestObject();
     $apiRequest->setAttributesByArray($requestObject);
     $requestValidation = $this->validateRequest($apiRequest, $endpoint);
     if ($requestValidation === true) {
         return $apiRequest;
     } elseif ($requestValidation == false) {
         return ['status' => Strings::API_STATUS_FATAL, 'reason' => Strings::API_REASON_INVALID_SESSION, 'msg' => Strings::API_MSG_INVALID_SESSION];
     } elseif ($requestValidation == 'status') {
         return ['status' => Strings::API_STATUS_SUCCESS, 'reason' => Strings::API_REASON_SUCCESS, 'msg' => Strings::API_MSG_STATUS_ONLINE];
     } elseif ($requestValidation == 'invalid') {
         return ['status' => Strings::API_STATUS_FATAL, 'reason' => Strings::API_REASON_MISSING_PARAMS, 'msg' => Strings::API_MSG_MISSING_PARAMS];
     }
 }
示例#2
0
 /**
  * Reset API keyset
  * @author zbrown
  *
  * @param Request $request
  * @return JsonResponse
  */
 public function resetKeysAction(Request $request)
 {
     $postData = $this->get('request')->request->all();
     $apiRequest = new ApiRequestObject();
     $apiRequest->setAttributesByArray($postData);
     if ($this->dataHelper->getSessionType($apiRequest) == 1) {
         //This is just a status check
         return ResponseHelper::prepareResponse(Strings::API_STATUS_SUCCESS, Strings::API_REASON_SUCCESS, Strings::API_MSG_STATUS_ONLINE);
     }
     if (!$this->dataHelper->verifyAppSession($apiRequest)) {
         return ResponseHelper::prepareResponse(Strings::API_STATUS_FATAL, Strings::API_REASON_INVALID_SESSION, Strings::API_MSG_INVALID_SESSION);
     }
     $appSession = $this->dataHelper->fetchAppSession($apiRequest);
     if (!$appSession) {
         return ResponseHelper::prepareResponse(Strings::API_STATUS_FATAL, Strings::API_REASON_INVALID_SESSION, Strings::API_MSG_ERROR_LOCATING_SESSION);
     }
     $publicKey = md5(time() . $appSession->getPublic() . time());
     $privateKey = md5(time() . time() . $appSession->getSecret() . time());
     $appId = $appSession->getAppid();
     if ($this->dataHelper->resetKeys($apiRequest, $appId) === false) {
         return ResponseHelper::prepareResponse(Strings::API_STATUS_FATAL, Strings::API_REASON_DB_ERROR, Strings::API_MSG_KEY_RESET_FAILED_DB);
     }
     $app = $this->dataHelper->fetchAppById($appId);
     $contactEmail = $app->getEmail();
     $appTitle = $app->getApptitle();
     $contactFirstName = $app->getFirstname();
     $message = $this->dataHelper->prepareMessage($contactEmail, $contactFirstName, $appTitle, $publicKey, $privateKey);
     $this->sendEmailWithMailgun($message);
     return ResponseHelper::prepareResponse(Strings::API_STATUS_SUCCESS, Strings::API_REASON_SUCCESS, Strings::API_MSG_KEY_RESET_SUCCESS);
 }