示例#1
0
 public function getDetails($isbn = null)
 {
     if ($isbn != null && apiUtils::isValidISBN($isbn)) {
         $url = MessageFormatter::formatMessage("nl_NL", BookloveApi::baseUrl . BookloveApi::editionInfoEndpoint, array($this->apikey, $isbn));
         if (BookReviewUtil::containsBook($isbn)) {
             return BookReviewUtil::getBookInfo($isbn);
         }
         $ch = curl_init();
         curl_setopt($ch, CURLOPT_URL, $url);
         curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
         $response = curl_exec($ch);
         curl_close($ch);
         if ($response !== false) {
             return $response;
         }
         return null;
     }
 }
示例#2
0
    $pageSize = 10;
    $page = 1;
    $paramPage = $app->request->get('page');
    $paramPageSize = $app->request->get('pageSize');
    if ($paramPageSize != null) {
        $pageSize = $paramPageSize;
    }
    if ($paramPage != null && $paramPage >= 1) {
        $page = $paramPage;
    }
    $reviews = BookReviewUtil::listReviews($page, $pageSize);
    $app->response->setBody(json_encode($reviews));
});
$app->get('/v1/reviews/authors', function () use($app) {
    $authors = BookReviewUtil::getAuthors();
    $app->response->setBody(json_encode($authors));
});
$app->get('/v1/reviews/genres', function () use($app) {
    $authors = BookReviewUtil::getGenres();
    $app->response->setBody(json_encode($authors));
});
$app->post('/v1/review/', function () use($app, $bookLoveApi) {
    $data = json_decode($app->request->getBody(), TRUE);
    BookReviewUtil::addBook($data);
    BookReviewUtil::addReview($data);
});
$app->delete('/v1/review/:id', function ($id) use($app) {
    echo $id;
    BookReviewUtil::removeReview($id);
});
$app->run();
 static function listReviews($page = 1, $pageSize = 10)
 {
     if ($page > 1) {
         $offset = $page * $pageSize;
     } else {
         $offset = 0;
     }
     $conn = BookReviewUtil::getConnection();
     $stmt = $conn->prepare(BookReviewUtil::QUERY_LIST_REVIEWS);
     $stmt->bindParam(":offset", $offset, PDO::PARAM_INT);
     $stmt->bindParam(":pagesize", $pageSize, PDO::PARAM_INT);
     if ($stmt->execute()) {
         return $stmt->fetchAll(PDO::FETCH_ASSOC);
     }
     // TODO Add error handling.
 }