コード例 #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
 static function addBook($data)
 {
     if (BookReviewUtil::containsBook($data['isbn'])) {
         return true;
     }
     $conn = BookReviewUtil::getConnection();
     $stmt = $conn->prepare(BookReviewUtil::QUERY_INSERT_BOOK);
     // first we need to fix the data. This rest api tends to leave things out of they are empty..
     if (!array_key_exists('edition_id', $data)) {
         $data['edition_id'] = 0;
     }
     if (!array_key_exists('productsize', $data)) {
         $data['productsize'] = "";
     }
     if (!array_key_exists('productform', $data)) {
         $data['productform'] = "";
     }
     if (!array_key_exists('link', $data)) {
         $data['link'] = "";
     }
     if (!array_key_exists('averagerating', $data)) {
         $data['averagerating'] = "0/0";
     }
     if (!array_key_exists('image', $data)) {
         $data['image'] = "";
     }
     if (!array_key_exists('yearofpublication', $data)) {
         $data['yearofpublication'] = "19700101";
     }
     if (!array_key_exists('publisher', $data)) {
         $data['publisher'] = "";
     }
     if (!array_key_exists('author', $data)) {
         $data['author'] = "";
     }
     if (!array_key_exists('title', $data)) {
         $data['title'] = "";
     }
     if (!array_key_exists('flaptext', $data)) {
         $data['flaptext'] = "";
     }
     if (!array_key_exists('translator', $data)) {
         $data['translator'] = "";
     }
     if (!array_key_exists('isbn', $data)) {
         throw new Exception("ISBN is a mandatory field");
     }
     if (!array_key_exists('editionnumber', $data)) {
         $data['editionnumber'] = "";
     }
     if (!array_key_exists('nur', $data)) {
         $data['nur']['code'] = 0;
     }
     $stmt->bindParam(":edition_id", intval($data['edition_id']));
     $stmt->bindParam(":productsize", $data['productsize']);
     $stmt->bindParam(":productform", $data['productform']);
     $stmt->bindParam(":link", $data['link']);
     $avgRating = $data['averagerating'];
     $avgRating = substr($avgRating, 0, strrpos($avgRating, "/"));
     $stmt->bindParam(":averagerating", doubleval($avgRating));
     $stmt->bindParam(":image", $data['image']);
     $dateTime = DateTime::createFromFormat("Ymd", $data['yearofpublication']);
     $stmt->bindParam(":yearofpublication", $data['yearofpublication']);
     $stmt->bindParam(":publisher", $data['publisher']);
     $stmt->bindParam(":author", $data['author']);
     $stmt->bindParam(":title", $data['title']);
     $stmt->bindParam(":flaptext", $data['flaptext']);
     $stmt->bindParam(":translator", $data['translator']);
     $stmt->bindParam(":isbn", $data['isbn']);
     $stmt->bindParam(":editionnumber", $data['editionnumber']);
     $stmt->bindParam(":nurcode", $data['nur']['code']);
     $stmt->execute();
 }