From: vincent@cubedesigners.com Date: Wed, 21 Mar 2018 19:10:38 +0000 (+0000) Subject: fix #1657 @3 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=9ac93b283e1be157c22c1818020e8f9efa3e1775;p=cubeextranet.git fix #1657 @3 --- diff --git a/inc/ws/Controlleur/class.ws.services.php b/inc/ws/Controlleur/class.ws.services.php index 5ef1e79c6..b5d8d1a93 100644 --- a/inc/ws/Controlleur/class.ws.services.php +++ b/inc/ws/Controlleur/class.ws.services.php @@ -403,19 +403,25 @@ class wsServices extends cubeFlashGateway { public function getPDFComplexBaseDocument($book) { global $core; - $normal = WS_BOOKS . '/pdf/' . $book->book_id . '/original.pdf'; - if (!file_exists($normal)) { - $daoBook = new wsDAOBook($core->con); - $pages = $daoBook->getPagesOfBook($book->book_id); - $daoBook->compilePDF($book, $pages); - } - if ($book->parametres->pdfReplace == '' && file_exists($normal)) { - return $normal; - } - $res = WS_BOOKS . '/final/' . $book->book_id . '/data/' . $book->parametres->pdfName; - if (!file_exists($res)) { - return $normal; + + switch ($book->parametres->bookmarkUsePDF) { + case 'download': + return WS_BOOKS . '/working/' . $book->book_id . '/' . $book->parametres->pdfName; + break; + case 'thumbnails': + return WS_BOOKS . '/working/' . $book->book_id . '/' . $book->parametres->pdfThumbnails; + break; + case 'pages': + default: + $normal = WS_BOOKS . '/pdf/' . $book->book_id . '/original.pdf'; + if (!file_exists($normal)) { + $daoBook = new wsDAOBook($core->con); + $pages = $daoBook->getPagesOfBook($book->book_id); + $daoBook->compilePDF($book, $pages); + } + return $normal; + break; } return $res; } diff --git a/inc/ws/Metier/class.ws.book.parametres.php b/inc/ws/Metier/class.ws.book.parametres.php index dce92fbb4..3e61a9f8e 100644 --- a/inc/ws/Metier/class.ws.book.parametres.php +++ b/inc/ws/Metier/class.ws.book.parametres.php @@ -194,8 +194,12 @@ class wsBookParametres extends wsParametres { $this->fields['bookmarkCornerSize'] = array('type' => 'integer', 'default' => 8, 'editable' => true, 'label' => __("Taille des marques-pages"), 'hint' => __('Taille relative à la largeur de la page')); $this->fields['bookmarkOffset'] = array('type' => 'integer', 'default' => 0, 'editable' => true, 'label' => __("Décaler de x pixels vers l'intérieur")); $this->fields['bookmarkBlinkOnPageChange'] = array('type' => 'boolean', 'default' => 'false', 'editable' => true, 'label' => __('Faire clignoter le marque page à l\'apparition de la page')); + $this->fields['bookmarkUsePDF'] = array('type' => 'combo', 'default' => 'pages', 'editable' => true, 'label' => __('PDF à utiliser pour l\'envoi ou le téléchargement de pages marquées'), + 'datas' => [__('PDF des pages') => 'pages', + __('PDF de remplacement') => 'download', + __('PDF des miniatures') => 'thumbnails']); $this->forms['bookmark'] = array('label' => __('Marques-pages'), - 'fieldsnames' => array('bookmark', '|', 'bookmarkSendEnable', 'bookmark_email_title', 'bookmark_email_body', '|', 'bookmarkCornerSize', 'bookmarkOffset', 'bookmarkBlinkOnPageChange')); + 'fieldsnames' => array('bookmark', '|', 'bookmarkSendEnable', 'bookmark_email_title', 'bookmark_email_body', '|', 'bookmarkCornerSize', 'bookmarkOffset', 'bookmarkBlinkOnPageChange', 'bookmarkUsePDF')); $this->fields['help'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __("Activer l'aide")); $this->fields['helpBookmarks'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __("Améliorer l'aide des marques-pages"));