[add-on] panier en fenêtre flottante |
Bienvenue invité ( Connexion | Inscription )
[add-on] panier en fenêtre flottante |
28 Nov 2010, 18:25
Message
#1
|
|
Ceinture jaune OSC Groupe : Membres Messages : 57 Inscrit : 22-October 10 Lieu : paris Membre no 28162 |
Bonjour Foxp2,
peux tu stp m'aider à faire le popup qui sort quand tu clic sur le panier? c'est dans le site demo qui tu as mis en ligne? merci Ce message a été modifié par FoxP2 - 30 Nov 2010, 14:41.
Raison de l'édition : séparation du sujet pour plus de clarté et suppression de citations inutiles
-------------------- L'histoire dans sa façade n'est que juste des simple informations. Dans sa profondeur c'est de la recherche et de l'investigation "Ibnou Khaldoun"
التاريخ في ظاهره لا يزيد عن الاخبار وفي باطنه نظر وتحقيق Traduite par kalaiano Test en ligne et en local de oscommerce 2.3.1 osCommerce-Online-Merchant-v2.2-FR-RC2a-W3C-valid |
|
29 Nov 2010, 17:08
Message
#2
|
|
Ceinture marron OSC Groupe : Membres Messages : 1665 Inscrit : 3-June 09 Membre no 25501 |
voici la démarche :
ajouter en fin de fichier dans catalog/includes/header.php : Code <script type="text/javascript"> $( "#tdb1" ).click(function() {$( "#modal_shopping_cart" ).dialog( "open" );return false;}); </script> <div id="modal_shopping_cart" title="<?php echo TEXT_MODAL_TITLE; ?>"><?php include(DIR_WS_MODULES . FILENAME_MODAL_SHOPPING_CART); ?></div> ajouter dans catalog/includes/filenames.php : Code define('FILENAME_MODAL_SHOPPING_CART', 'modal_shopping_cart.php'); ajouter dans catalog/includes/languages/english.php : Code define('TEXT_MODAL_SEE_ALL', 'See all items'); define('TEXT_MODAL_CLOSE', 'Close'); define('TEXT_MODAL_TITLE', 'your shopping cart :'); define('TEXT_MODAL_CART_EMPTY', 'Your Shopping Cart is empty!'); ajouter dans catalog/includes/languages/french.php : Code define('TEXT_MODAL_SEE_ALL', 'voir le panier'); define('TEXT_MODAL_CLOSE', 'Fermer'); define('TEXT_MODAL_TITLE', 'Votre panier en cours :'); define('TEXT_MODAL_CART_EMPTY', 'Votre panier est vide !'); créer le fichier catalog/includes/modules/modal_shopping_cart.php avec le contenu suivant : Code <script type="text/javascript"> $(function(){ var targetUrl = "<?php echo tep_href_link(FILENAME_SHOPPING_CART); ?>"; var seeall = "<?php echo TEXT_MODAL_SEE_ALL; ?>"; var cancel = "<?php echo TEXT_MODAL_CLOSE; ?>"; var item_number = "<?php echo $cart->count_contents(); ?>"; var buttonOptions = {}; if(item_number > 0){ buttonOptions[seeall] = function () { $( this ).dialog({ hide:null }); $( this ).dialog("close"); window.location.href = targetUrl; }; } buttonOptions[cancel] = function () { $( this ).dialog({ hide:"explode" }); $( this ).dialog( "close" ); }; $( "#modal_shopping_cart" ).dialog({ autoOpen: false, width:500, show: "blind", modal: true, buttons: buttonOptions }); }); </script> <?php if ($cart->count_contents() > 0) { ?> <div class="contentText"> <?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_SHOPPING_CART, 'action=update_product')); require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_MODAL_SHOPPING_CART); $any_out_of_stock = 0; $products = $cart->get_products(); for ($i=0, $n=sizeof($products); $i<$n; $i++) { // Push all attributes information in an array if (isset($products[$i]['attributes']) && is_array($products[$i]['attributes'])) { while (list($option, $value) = each($products[$i]['attributes'])) { echo tep_draw_hidden_field('id[' . $products[$i]['id'] . '][' . $option . ']', $value); $attributes = tep_db_query("select popt.products_options_name, poval.products_options_values_name, pa.options_values_price, pa.price_prefix from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_OPTIONS_VALUES . " poval, " . TABLE_PRODUCTS_ATTRIBUTES . " pa where pa.products_id = '" . (int)$products[$i]['id'] . "' and pa.options_id = '" . (int)$option . "' and pa.options_id = popt.products_options_id and pa.options_values_id = '" . (int)$value . "' and pa.options_values_id = poval.products_options_values_id and popt.language_id = '" . (int)$languages_id . "' and poval.language_id = '" . (int)$languages_id . "'"); $attributes_values = tep_db_fetch_array($attributes); $products[$i][$option]['products_options_name'] = $attributes_values['products_options_name']; $products[$i][$option]['options_values_id'] = $value; $products[$i][$option]['products_options_values_name'] = $attributes_values['products_options_values_name']; $products[$i][$option]['options_values_price'] = $attributes_values['options_values_price']; $products[$i][$option]['price_prefix'] = $attributes_values['price_prefix']; } } } ?> <table border="0" width="100%" cellspacing="0" cellpadding="0"> <?php for ($i=0, $n=sizeof($products); $i<$n; $i++) { echo ' <tr>'; $products_name_modal = '<table border="0" cellspacing="2" cellpadding="2">' . ' <tr>' . ' <td align="center"><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $products[$i]['id']) . '">' . tep_image(DIR_WS_IMAGES . $products[$i]['image'], $products[$i]['name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a></td>' . ' <td valign="top"><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $products[$i]['id']) . '"><b>' . $products[$i]['name'] . '</b></a>'; if (STOCK_CHECK == 'true') { $stock_check = tep_check_stock($products[$i]['id'], $products[$i]['quantity']); if (tep_not_null($stock_check)) { $any_out_of_stock = 1; $products_name_modal .= $stock_check; } } if (isset($products[$i]['attributes']) && is_array($products[$i]['attributes'])) { reset($products[$i]['attributes']); while (list($option, $value) = each($products[$i]['attributes'])) { $products_name_modal .= '<br /><small><i> - ' . $products[$i][$option]['products_options_name'] . ' ' . $products[$i][$option]['products_options_values_name'] . '</i></small>'; } } $products_name_modal .= '<br /><br />' . tep_draw_input_field('cart_quantity[]', $products[$i]['quantity'], 'size="4"') . tep_draw_hidden_field('products_id[]', $products[$i]['id']) .' '. tep_draw_button(IMAGE_BUTTON_UPDATE, 'refresh') . ' '. tep_draw_button(IMAGE_BUTTON_DELETE, 'trash',tep_href_link(FILENAME_SHOPPING_CART, 'products_id=' . $products[$i]['id'] . '&action=remove_product')); $products_name_modal .= ' </td>' . ' </tr>' . '</table>'; echo ' <td valign="top">' . $products_name_modal . '</td>' . ' <td align="right" valign="top"><b>' . $currencies->display_price($products[$i]['final_price'], tep_get_tax_rate($products[$i]['tax_class_id']), $products[$i]['quantity']) . '</b></td>' . ' </tr>'; } ?> </table> <br /> <p align="right"><b><?php echo MODAL_SUB_TITLE_SUB_TOTAL; ?> <?php echo $currencies->format($cart->show_total()); ?></b></p> <?php if ($any_out_of_stock == 1) { if (STOCK_ALLOW_CHECKOUT == 'true') { ?> <p class="stockWarning" align="center"><?php echo MODAL_OUT_OF_STOCK_CAN_CHECKOUT; ?></p> <?php } else { ?> <p class="stockWarning" align="center"><?php echo MODAL_OUT_OF_STOCK_CANT_CHECKOUT; ?></p> <?php } } ?> </form> </div> <?php } else { ?> <div class="contentContainer"> <div class="contentText"> <?php echo TEXT_MODAL_CART_EMPTY; ?> </div> </div> <?php } ?> créer le fichier catalog/includes/languages/english/modal_shopping_cart.php avec le contenu suivant : Code <?php /* $Id$ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2007 osCommerce Released under the GNU General Public License */ define('MODAL_SUB_TITLE_SUB_TOTAL', 'Sub-Total:'); define('MODAL_OUT_OF_STOCK_CANT_CHECKOUT', 'Products marked with ' . STOCK_MARK_PRODUCT_OUT_OF_STOCK . ' dont exist in desired quantity in our stock.<br>Please alter the quantity of products marked with (' . STOCK_MARK_PRODUCT_OUT_OF_STOCK . '), Thank you'); define('MODAL_OUT_OF_STOCK_CAN_CHECKOUT', 'Products marked with ' . STOCK_MARK_PRODUCT_OUT_OF_STOCK . ' dont exist in desired quantity in our stock.<br>You can buy them anyway and check the quantity we have in stock for immediate deliver in the checkout process.'); ?> créer le fichier catalog/includes/languages/french/modal_shopping_cart.php avec le contenu suivant : Code <?php /* $Id$ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2007 osCommerce Released under the GNU General Public License */ define('MODAL_SUB_TITLE_SUB_TOTAL', 'Sous-Total :'); define('MODAL_OUT_OF_STOCK_CANT_CHECKOUT', 'Les produits marqués ' . STOCK_MARK_PRODUCT_OUT_OF_STOCK . ' ne sont pas en stock dans la quantité désirée.<br />Merci de corriger la quantité des articles marqués (' . STOCK_MARK_PRODUCT_OUT_OF_STOCK . ')'); define('MODAL_OUT_OF_STOCK_CAN_CHECKOUT', 'Les produits marqués avec ' . STOCK_MARK_PRODUCT_OUT_OF_STOCK . ' ne sont pas en stock dans la quantité désirée.<br />Vous pouvez néanmoins les acheter ils vous seront délivrés dès disponibilité.'); ?> terminé. |
|
29 Nov 2010, 19:15
Message
#3
|
|
Ceinture jaune OSC Groupe : Membres Messages : 57 Inscrit : 22-October 10 Lieu : paris Membre no 28162 |
Merci beaucoup FoxP2.
j'ai du rajouter ceci dans le header.php Code <?php require (DIR_WS_LANGUAGES . $language . '/'.FILENAME_MODAL_SHOPPING_CART)?> parce que ca s'affiche en lettre CAPITALE. sinon quand je suis dans l'index.php il'y a le panier qui s'affiche systématiquement. sauf erreur de ma part. merci encore joli travail. je pensais que c’était juste un truc tout simple à faire -------------------- L'histoire dans sa façade n'est que juste des simple informations. Dans sa profondeur c'est de la recherche et de l'investigation "Ibnou Khaldoun"
التاريخ في ظاهره لا يزيد عن الاخبار وفي باطنه نظر وتحقيق Traduite par kalaiano Test en ligne et en local de oscommerce 2.3.1 osCommerce-Online-Merchant-v2.2-FR-RC2a-W3C-valid |
|
29 Nov 2010, 19:44
Message
#4
|
|
Ceinture jaune OSC Groupe : Membres Messages : 57 Inscrit : 22-October 10 Lieu : paris Membre no 28162 |
non je me suis trompé au fait le message qui s'affiche est celui là
Code MODAL_OUT_OF_STOCK_CAN_CHECKOUT_MODAL : qui n'est pas definie c'est tout. je crois bien que celui qui est define est celui là Code MODAL_OUT_OF_STOCK_CAN_CHECKOUT à mois que je me trompe autrement effectivement quand je suis au niveau de l'index il y a toujours le continue du panier qui s'affiche. là ou j'ai rajouté le code dans le header. par exemple le panier est vide -------------------- L'histoire dans sa façade n'est que juste des simple informations. Dans sa profondeur c'est de la recherche et de l'investigation "Ibnou Khaldoun"
التاريخ في ظاهره لا يزيد عن الاخبار وفي باطنه نظر وتحقيق Traduite par kalaiano Test en ligne et en local de oscommerce 2.3.1 osCommerce-Online-Merchant-v2.2-FR-RC2a-W3C-valid |
|
29 Nov 2010, 20:01
Message
#5
|
|
Ceinture marron OSC Groupe : Membres Messages : 1665 Inscrit : 3-June 09 Membre no 25501 |
il est inutile d'appeler le fichier langue, il est déjà inclus dans le module.
si le panier s'affiche en index, tu as sans doute une erreur dans ton DOM. une adresse sur ton site distant me donnera plus d'infos. pour tes erreurs de constante, j'ai rectifié le code au dessus.(je faisais des corrections en même temps sur les constantes de shopping_cart) |
|
29 Nov 2010, 20:15
Message
#6
|
|
Ceinture jaune OSC Groupe : Membres Messages : 57 Inscrit : 22-October 10 Lieu : paris Membre no 28162 |
-------------------- L'histoire dans sa façade n'est que juste des simple informations. Dans sa profondeur c'est de la recherche et de l'investigation "Ibnou Khaldoun"
التاريخ في ظاهره لا يزيد عن الاخبار وفي باطنه نظر وتحقيق Traduite par kalaiano Test en ligne et en local de oscommerce 2.3.1 osCommerce-Online-Merchant-v2.2-FR-RC2a-W3C-valid |
|
29 Nov 2010, 20:28
Message
#7
|
|
Ceinture marron OSC Groupe : Membres Messages : 1665 Inscrit : 3-June 09 Membre no 25501 |
ok, c'est un peu codé en dépit du bon sens.
cet appel de script : <script type="text/javascript" src="includes/jquery-1.2.6.min.js"></script> doit être enlevé. car il y a une erreur javascript dans la console : Code Erreur : $("#modal_shopping_cart").dialog is not a function Fichier Source : http://www.5omsa.tk/index.php Ligne : 81 normal, oscommerce intègre déjà jquery-1.4.2.min. effet de bord garanti ! |
|
29 Nov 2010, 20:38
Message
#8
|
|
Ceinture jaune OSC Groupe : Membres Messages : 57 Inscrit : 22-October 10 Lieu : paris Membre no 28162 |
merciiiiiiiiiiiiiiiiiiiiiii. tu es un bon vraiment!
je suis sûr je passe une semaine à chercher et je ne la trouve pas! -------------------- L'histoire dans sa façade n'est que juste des simple informations. Dans sa profondeur c'est de la recherche et de l'investigation "Ibnou Khaldoun"
التاريخ في ظاهره لا يزيد عن الاخبار وفي باطنه نظر وتحقيق Traduite par kalaiano Test en ligne et en local de oscommerce 2.3.1 osCommerce-Online-Merchant-v2.2-FR-RC2a-W3C-valid |
|
29 Nov 2010, 22:16
Message
#9
|
|
5eme dan OSC Groupe : Administrateur Messages : 9221 Inscrit : 4-March 03 Lieu : Pau Membre no 927 |
Chapeau la grenouille bel exemple à suivre.
-------------------- Tout d'abord : - Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)
Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues : Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums. Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin. ----------------------------- Quelques sites de référence --------------------------- PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloper Le gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien) |
|
30 Nov 2010, 14:37
Message
#10
|
|
Ceinture marron OSC Groupe : Membres Messages : 1665 Inscrit : 3-June 09 Membre no 25501 |
je déplace le sujet dans la section contribution puisque le pack est disponible sur oscommerce.com
|
|
22 Dec 2011, 13:54
Message
#11
|
|
Ceinture blanche OSC Groupe : Membres Messages : 5 Inscrit : 28-May 09 Membre no 25444 |
bravo et merci pour la contribution,
savez-vous comment faire pour afficher le panier en fenêtre flottante au lieu du panier classique après ajout d'un produit? |
|
Version bas débit | Nous sommes le : 28th March 2024 - 11:20 |
Ce site est déclaré auprès de la commision Nationale de l'Informatique et des Libertés (déclaration n°: 1043896) |