From 5c60aa959438b9b4975ac8c1013420e0cd11f524 Mon Sep 17 00:00:00 2001 From: "vincent@cubedesigners.com" Date: Fri, 17 Sep 2021 16:59:02 +0000 Subject: [PATCH] wip #4664 @2 --- inc/ws/Metier/class.ws.book.parametres.php | 1 + .../html5/master/class.ws.html5.compiler.php | 22 +++++++++++++++++++ .../html5/master/class.ws.html5.links.php | 11 +++++++++- 3 files changed, 33 insertions(+), 1 deletion(-) diff --git a/inc/ws/Metier/class.ws.book.parametres.php b/inc/ws/Metier/class.ws.book.parametres.php index c3cf36cdb..d3f98825e 100644 --- a/inc/ws/Metier/class.ws.book.parametres.php +++ b/inc/ws/Metier/class.ws.book.parametres.php @@ -694,6 +694,7 @@ class wsBookParametres extends wsParametres 'Zoom + lien produit (déprécié, utiliser la fonctionnalité "Zoom produits")' => 'ZoomProductLink', 'Wishlist Jouéclub' => 'JoueclubWishlist', 'GrandVision' => 'GrandVision', + 'Grand Pavois' => 'GrandPavois', ), 'grade' => 5); $this->fields['basketReferences'] = array('type' => 'freefile', 'default' => '', 'editable' => true, diff --git a/inc/ws/Util/html5/master/class.ws.html5.compiler.php b/inc/ws/Util/html5/master/class.ws.html5.compiler.php index f1ce9cb29..bcc49d813 100644 --- a/inc/ws/Util/html5/master/class.ws.html5.compiler.php +++ b/inc/ws/Util/html5/master/class.ws.html5.compiler.php @@ -618,6 +618,26 @@ class wsHTML5Compiler // } } + public function writeGrandPavoisCart() + { + $this->lessVariables['import-cart-styles'] = 'grandpavois'; + + $this->addJsLib('cookie', 'js/libs/jquery/jquery.cookie.js'); + $this->addJsLib('grandpavois', 'js/libs/fluidbook/cart/fluidbook.cart.grandpavois.js'); + $this->addJsLib('html2pdf', 'js/libs/html2pdf/html2pdf.min.js'); + + $cdir = $this->wdir . '/commerce/'; + $odir = $cdir . '/opt/'; + if (!file_exists($odir)) { + mkdir($odir, 0777, true); + } + + $file = $cdir . $this->book->parametres->basketReferences; + $this->config->basketReferences = wsUtil::excelToArrayKeyVars($file); + + wsLinks::getLinksAndRulersFromFile($this->book_id, $links, $rulers); + } + public function writePumaCart() { @@ -676,6 +696,8 @@ class wsHTML5Compiler return $this->writeMIFCart(); case 'GrandVision': return $this->writeGrandVisionCart(); + case 'GrandPavois': + return $this->writeGrandPavoisCart(); case 'Remarkable': $this->addJsLib('parsley', 'js/libs/parsley.min.js'); $this->addJsLib('cookie', 'js/libs/jquery/jquery.cookie.js'); diff --git a/inc/ws/Util/html5/master/class.ws.html5.links.php b/inc/ws/Util/html5/master/class.ws.html5.links.php index 1f12a57f6..1a11d3515 100644 --- a/inc/ws/Util/html5/master/class.ws.html5.links.php +++ b/inc/ws/Util/html5/master/class.ws.html5.links.php @@ -136,7 +136,6 @@ class wsHTML5Link case 11: return new actionLink($id, $init, $compiler); case 12: - if ($compiler->book->parametres->basketManager === 'Puma' || $compiler->book->parametres->basketManager === 'MIF' || $compiler->book->parametres->basketManager === 'Flexipan') { return new zoomProductLink($id, $init, $compiler); } @@ -146,6 +145,8 @@ class wsHTML5Link switch ($compiler->book->parametres->basketManager) { case 'GrandVision': return new grandVisionCartLink($id, $init, $compiler); + case 'GrandPavois': + return new grandPavoisCartLink($id, $init, $compiler); case 'JoueclubWishlist': return new JoueclubWishlistLink($id, $init, $compiler); case 'Remarkable': @@ -2120,6 +2121,14 @@ class grandVisionCartLink extends normalLink } } +class grandPavoisCartLink extends cartLink +{ + public function getDefaultTooltip() + { + return 'Ajouter à ma visite'; + } +} + class JoueclubWishlistLink extends normalLink { protected $role = 'link'; -- 2.39.5