/** * @param \SlevomatZboziApi\Response\ZboziApiResponse $response * @return \DateTime */ public function getExpectedDeliveryDate(ZboziApiResponse $response) { $body = $response->getBody(); if (!isset($body['expectedDeliveryDate'])) { throw new \SlevomatZboziApi\Response\ResponseErrorException('Slevomat API response doesn\'t contain expectedDeliveryDate.'); } $date = \DateTime::createFromFormat('Y-m-d', $body['expectedDeliveryDate']); if ($date === false) { throw new \SlevomatZboziApi\Response\ResponseErrorException(sprintf('Slevomat API invalid response: invalid expectedDeliveryDate %s.', $body['expectedDeliveryDate'])); } return $date; }
public function log(\SlevomatZboziApi\Request\ZboziApiRequest $request, \SlevomatZboziApi\Response\ZboziApiResponse $response = null) { $responseData = $response === null ? '-' : sprintf('%s %s', $response->getStatusCode(), $response->getBody() === null ? '' : json_encode($response->getBody())); echo sprintf('<br><b>HTTP request</b>: %s %s | (%s:%s) | %s<br><br><b>HTTP response</b>: %s<br>', $request->getMethod(), $request->getUrl(), $request->getHeader(\SlevomatZboziApi\Request\RequestMaker::HEADER_PARTNER_TOKEN), $request->getHeader(\SlevomatZboziApi\Request\RequestMaker::HEADER_API_SECRET), $request->getBody() === null ? '-' : json_encode($request->getBody()), $responseData); }