achat par lot, global ou par produits

Messagepar oscim » Sam 20 Fév 2010, 04:37

Voila, suite au post http://forums.oscss.org/viewtopic.php?pid=8523

je suis resté un peu sur ma faim au niveau de cette contrib.
Donc, petite révision histoire de mieux caler a mes besoin.

Il est possible de définir un nombre d'articles min global ou par produits
Ajouter une fonction dans general, ou dans une lib de function specifique a votre theme
et ajouter
Code: Tout sélectionner
/**
  @package oscss-Codev <www http://www.oscss.org>
  @version Rc
  @author oscim - <mail aurelien@oscim.fr> <www http://www.oscim.fr>
  Function de traitement de pannier par lots
  Les produist doivent être placé en lot mini de x produits
  @param
    @a int lot nbr d'element du lot
    @a bool true(lot par produit)/false (lot total)
*/
function tep_ctr_lot_product($l=6,$by_product=false){
  global $products;
  $nombre_articles = 0;
  $_SESSION['lot'] = true;
  for($i=0, $n=sizeof($products); $i<$n; $i++){
    if(!$by_product) $nombre_articles += $products[$i]['quantity'];
    else {
       if(!is_int($products[$i]['quantity']/$l))  $_SESSION['lot'] = false;
    }
  }
  if((!$by_product)  && !is_int($nombre_articles/$l))  $_SESSION['lot'] = false;
}

Ensuite dans le content/shopping_cart.php
Trouver
Code: Tout sélectionner
$products = $cart->get_products();

par
Code: Tout sélectionner
// Contribution Lot de Quatre Article
    tep_ctr_lot_product(6,true);

trouver la section des alertes liée au quantité et ajouter ensuite
Code: Tout sélectionner
<?php
    if ($any_out_of_stock == 1) {
      if (_cst_bool('STOCK_ALLOW_CHECKOUT')) {
?>

    <div class="warning"><?php echo OUT_OF_STOCK_CAN_CHECKOUT; ?></div>

<?php
      } else {
?>

      <div class="warning"><?php echo OUT_OF_STOCK_CANT_CHECKOUT; ?></div>

<?php
      }
    }

Ajouter apres
Code: Tout sélectionner
    if(tep_session_is_registered('lot') && $lot==false) {
?>
    <div class="warning"><?php echo PANIER_INCOMPLET; ?></div>
<?php } ?>

Remplacer ensuite la ligne du bouton
Code: Tout sélectionner
<?php // echo '<a class="navBt" href="' . tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL') . '">' . IMAGE_BUTTON_CHECKOUT . '</a>'; ?>

par
Code: Tout sélectionner
<?php if(tep_session_is_registered('lot') && $lot==true) echo '<a class="navBt" href="' . tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL') . '">' . IMAGE_BUTTON_CHECKOUT . '</a>';
  elseif(!tep_session_is_registered('lot') || $lot==false)echo '<a class="navBt" href="' . tep_href_link(FILENAME_SHOPPING_CART, '', 'SSL') . '">' . IMAGE_BUTTON_CHECKOUT . '</a>';  ?>

Pour finir placer dans les fichiers checkout_
juste avant le
Code: Tout sélectionner
// if there is nothing in the customers cart, redirect them to the shopping cart page
  if ($cart->count_contents() < 1)  tep_redirect(tep_href_link(FILENAME_SHOPPING_CART));

ces lignes
Code: Tout sélectionner
   $products = $cart->get_products();
// Contribution Lot de  Article
  tep_ctr_lot_product(6,true);
  if (!tep_session_is_registered('lot') || $lot==false)  tep_redirect(tep_href_link(FILENAME_SHOPPING_CART));
Pour un web au normes du W3C, pour un web plus propre !

- Download osCSS Toutes versions
- stable osCSS 2.1.0 (help|info|new dev) Official help|wiki|Tuto for osCSS 2 | doc doxygen
- Utiliser le tracker pour suivre les évolutions et développements
- Inscrivez vos sites sur oscss pour présenter vos réalisations
Avatar de l’utilisateur
oscim
Site Admin
 
Messages: 1643
Inscription: Mar 25 Sep 2007, 11:33

Messagepar cynic- » Lun 22 Fév 2010, 14:33

Malheureusement je n'aurai pas le temps de tester, merci en tout cas pour ta contribution Image

ça valait bien un joli smiley
cynic-
Site Admin
 
Messages: 694
Inscription: Mar 04 Déc 2007, 13:04

Messagepar oscim » Lun 22 Fév 2010, 19:55

Pas grave,

le précédent billet daté du 22-01-2007, et je n'en avais jamais eu besoin....
Pour un web au normes du W3C, pour un web plus propre !

- Download osCSS Toutes versions
- stable osCSS 2.1.0 (help|info|new dev) Official help|wiki|Tuto for osCSS 2 | doc doxygen
- Utiliser le tracker pour suivre les évolutions et développements
- Inscrivez vos sites sur oscss pour présenter vos réalisations
Avatar de l’utilisateur
oscim
Site Admin
 
Messages: 1643
Inscription: Mar 25 Sep 2007, 11:33

Messagepar cynic- » Mar 23 Fév 2010, 14:56

Excellent ton avatar metalleux Image
cynic-
Site Admin
 
Messages: 694
Inscription: Mar 04 Déc 2007, 13:04


Retourner vers Plugin

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron