Ejemplo n.º 1
0
 /**
  * Builds a Book class from the data retrieved from the API
  *
  * @param $volumeInfo
  *
  * @return Book
  */
 public function buildBookWithApiInfo($volumeInfo)
 {
     $numIsbn13 = 0;
     $numIsbn10 = 1;
     if (strlen($volumeInfo[Constants::GOOGLE_BOOKS_LABEL_INDUSTRY][0][Constants::GOOGLE_BOOKS_LABEL_IDENTIFIER]) != 13) {
         $numIsbn10 = 0;
         $numIsbn13 = 1;
     }
     if (isset($volumeInfo[Constants::GOOGLE_BOOKS_LABEL_INDUSTRY][$numIsbn13])) {
         $isbn13 = $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_INDUSTRY][$numIsbn13][Constants::GOOGLE_BOOKS_LABEL_IDENTIFIER];
     } else {
         $isbn13 = "N/A";
     }
     if (isset($volumeInfo[Constants::GOOGLE_BOOKS_LABEL_INDUSTRY][$numIsbn10])) {
         $isbn10 = $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_INDUSTRY][$numIsbn10][Constants::GOOGLE_BOOKS_LABEL_IDENTIFIER];
     } else {
         $isbn10 = "N/A";
     }
     $author = is_array($volumeInfo[Constants::GOOGLE_BOOKS_LABEL_AUTHORS]) ? implode(', ', $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_AUTHORS]) : $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_AUTHORS];
     $imageLink = !empty($volumeInfo[Constants::GOOGLE_BOOKS_LABEL_IMAGELINKS][Constants::GOOGLE_BOOKS_LABEL_THUMBNAIL]) ? $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_IMAGELINKS][Constants::GOOGLE_BOOKS_LABEL_THUMBNAIL] : '';
     $book = Book::buildComplete($isbn10, $isbn13, $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_TITLE], $author, $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_PUBLISHER], $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_DESCRIPTION], $volumeInfo[Constants::GOOGLE_BOOKS_LABEL_PAGECOUNT], $imageLink);
     return $book;
 }
Ejemplo n.º 2
0
 /**
  * Gets books array associated with a file
  *
  * @param $filename
  *
  * @return array
  */
 public function findBooksFromFilename($filename)
 {
     if (!is_null($filename)) {
         $booksDBArray = $this->app[Constants::DATABASE_SERVICE][Constants::DATABASE_MYSQL]->fetchAll(Constants::QUERY_SELECTBOOKINFOBYDOCNAME, array($filename));
         $booksArray = [];
         foreach ($booksDBArray as $bookDB) {
             $book = Book::buildComplete($bookDB[Constants::BOOK_ISBN10], $bookDB[Constants::BOOK_ISBN13], $bookDB[Constants::BOOK_TITLE], $bookDB[Constants::AUTHOR_NAME], $bookDB[Constants::BOOK_PUBLISHER], $bookDB[Constants::BOOK_DESCRIPTION], $bookDB[Constants::BOOK_NUMPAGES], $bookDB[Constants::BOOK_IMAGELINK]);
             $booksArray[] = $book;
         }
         return $booksArray;
     }
     return null;
 }