195 lines
9.0 KiB
PHP
Executable File
195 lines
9.0 KiB
PHP
Executable File
<style>
|
|
#menuIndep-container, #menuD-container, #header-container {z-index: 3;}
|
|
</style>
|
|
|
|
<?php
|
|
$nomFicAppelant = basename(__FILE__);
|
|
// ---------------------------------------------------
|
|
// codeOpe==1 ==> insert article
|
|
// codeOpe==11 ==> modif de la quantité par ajout nouvelle qte + ancienne : exemple : ajout de 1 sur article existant depuis gondole
|
|
// codeOpe==2 ==> modif de la quantité par écrasement : exemple : liste déroulante du panier
|
|
// codeOpe==3 ==> delete article
|
|
|
|
if (isset($debug[1]) && $debug[1] == '1') { $debugMsg .= monDebug(1, [ 'codeOpe' => $codeOpe ?? null, 'idPrd' => $idPrd ?? null, 'qte' => $qte ?? 0, 'connected' => $_SESSION['connected'] ], 'panier.php'); }
|
|
|
|
// ---------------------------------------------------
|
|
// RECUP PANIER LE CAS ECHÉANT
|
|
// ---------------------------------------------------
|
|
// si connecté => regarde si un panier anterieur existe avec mail=ip
|
|
// si panier existe avec mail=ip
|
|
// fusion
|
|
// sinon pas fusion
|
|
$trouvePanier=false;
|
|
|
|
// ---------------------------------------------------
|
|
// savoir si un panier existait avant connect et fusion
|
|
// ---------------------------------------------------
|
|
if (isset($_SESSION['connected']) && $_SESSION['connected']=='O') {
|
|
$mailTmp=$_SESSION['ip'];
|
|
include ("_reqPanier/panier.reqSelectCdeExiste.php");
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['trouvePanier sur IP' => $trouvePanier ], ''); }
|
|
if ($trouvePanier==true) {
|
|
|
|
// Savoir si un panier en attente existe avec mail normal : cad qu'on a effectivement 2 paniers en cours
|
|
// Ne devrait jamais arriver, car des que mail on fait un migrate - mais on blinde
|
|
$trouvePanier=false;
|
|
include ("_reqPanier/panier.reqSelectCde.php");
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['trouvePanier sur idMail' => $trouvePanier ], ''); }
|
|
if ($trouvePanier==true) {
|
|
// si panier existe : ajout par upddate des lignes // delete de l'ancienne commande
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['fusion paniers : IP et idMail' => '' ], ''); }
|
|
include ("_reqPanier/panier.reqFusion.php");
|
|
include ("panier.calculCde.php");
|
|
include ("_reqPanier/panier.reqUpdateCde.php");
|
|
}
|
|
else {
|
|
// si panier existe pas : bascule de l'ip vers idMail de la commande
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (2, ['migrate panier IP vers idMail' => '' ], ''); }
|
|
include ("_reqPanier/panier.reqMigrate.php");
|
|
}
|
|
}
|
|
else {
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['Pas de panier avec ip' => '' ], ''); }
|
|
}
|
|
}
|
|
|
|
// ---------------------------------------------------
|
|
// Pas connecté ==> Affecter l'ip au mail pour creation de commande tmp
|
|
// ---------------------------------------------------
|
|
else {
|
|
// init du mail tmp
|
|
$_SESSION['idMail']=$_SESSION['ip'];
|
|
}
|
|
|
|
if (isset ($_SESSION['idMail']) && $_SESSION['connected'] != 'O') {
|
|
$idMail=$_SESSION['idMail'];
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['SESSION[idMail]' => $_SESSION['idMail'] ], ''); }
|
|
}
|
|
|
|
// ---------------------------------------------------
|
|
// Savoir si un panier existe avec ce mail (connecté ou pas, donc Ip ou mail)
|
|
// ---------------------------------------------------
|
|
$trouvePanier=false;
|
|
include ("_reqPanier/panier.reqSelectCde.php");
|
|
$step=1;
|
|
if (isset($debug[1]) && $debug[1] == '1') { $debugMsg .= monDebug (1, ['trouvePanier' => $trouvePanier ], ''); }
|
|
|
|
// ---------------------------------------------------
|
|
// Le panier existe
|
|
// ---------------------------------------------------
|
|
if ($trouvePanier==true) {
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['PANIER EXIST' => 'Oui'], ''); }
|
|
$idPrdTab=null;
|
|
|
|
// ---------------------------------------------------
|
|
// On récupère toutes les lignes de la commande existante, si existe
|
|
// ---------------------------------------------------
|
|
include ("_reqPanier/panier.reqSelectLignes.php");
|
|
|
|
// ---------------------------------------------------
|
|
// On cherche l'article parmi les articles deja existants
|
|
// Si trouvé = UPDATE PANIER LE CAS ECHÉANT : on ajoute aussi la quantité
|
|
// ---------------------------------------------------
|
|
if (isset($idLgCdeTab) && !empty($idLgCdeTab) && ($idLgCdeTab!='') && isset($idPrdTab) && count($idPrdTab)>0 && $codeOpe!=3) {
|
|
$trouve=false;
|
|
$qte2=0;
|
|
for($i=0; $i< count($idPrdTab); $i++) {
|
|
if ( isset($idPrd) && $idPrdTab[$i]==$idPrd) {
|
|
// + si article existe ajout des qtes
|
|
if ($codeOpe==1 ) {$codeOpe=11;}
|
|
$idLgCde=$idLgCdeTab[$i];
|
|
$qte2=$qteTab[$i];
|
|
// $poidsLigne = $poidsTab[$i];
|
|
$trouve=true;
|
|
if (isset($debug[1]) && $debug[1] == '1') { $debugMsg .= monDebug (1, ['Article N° ajouté au panier existant ' => $idPrd, 'ligne N° '.$i => $idLgCde, 'idPrd N°' => $idPrd, 'qte2 ' => $qte2, 'poids ' => $poids, 'codeOpe ' => $codeOpe], ''); }
|
|
}
|
|
else {
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (2, ['Pas d\'article correspondant dans le panier existant' => '', 'count(idPrdTab)' => count($idPrdTab), 'idPrdTab' => $idPrdTab[$i] ], ''); }
|
|
}
|
|
}
|
|
if (isset($debug[1]) && $debug[1] == '1' && $trouve==false) { $debugMsg .= monDebug (1, ['Pas d\'article connu dans le panier existant' => ''], ''); }
|
|
}
|
|
else{
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['Pas d\'article connu dans le panier existant' => ''], $codeOpe); }
|
|
}
|
|
|
|
// ---------------------------------------------------
|
|
// Insert ligne / update panier
|
|
// ---------------------------------------------------
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['CodeOpe' => $codeOpe],'' ); }
|
|
if ($codeOpe==1) {
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['Creation ligne' => ''], ''); }
|
|
|
|
// + si existe pas creation d'une ligne
|
|
include ("panier.calculLigne.php");
|
|
include ("_reqPanier/panier.reqInsertLignes.php");
|
|
include ("panier.calculCde.php");
|
|
include ("_reqPanier/panier.reqUpdateCde.php");
|
|
}
|
|
|
|
// ---------------------------------------------------
|
|
// Update ligne / update panier
|
|
// ---------------------------------------------------
|
|
if ($codeOpe==2 || $codeOpe==11) {
|
|
// modif de la quantité par ajout nouvelle qte : codeOpe=11
|
|
// ou modif de la quantité par ecrasement nouvelle qte : codeOpe=2
|
|
// geré dans calcul ligne
|
|
include ("panier.calculLigne.php");
|
|
include ("_reqPanier/panier.reqUpdateLignes.php");
|
|
include ("panier.calculCde.php");
|
|
include ("_reqPanier/panier.reqUpdateCde.php");
|
|
}
|
|
|
|
// ---------------------------------------------------
|
|
// Delete ligne / update panier
|
|
// ---------------------------------------------------
|
|
if ($codeOpe==3) {
|
|
// supression de ligne
|
|
include ("_reqPanier/panier.reqDeleteLigne.php");
|
|
include ("panier.calculCde.php");
|
|
include ("_reqPanier/panier.reqUpdateCde.php");
|
|
}
|
|
}
|
|
else {
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['PAS DE PANIER EXISTANT => CREATION' => ''], ''); }
|
|
if ($codeOpe==1) {
|
|
// ---------------------------------------------------
|
|
// insert du panier + ligne : on vient de gondole / recherche
|
|
// ---------------------------------------------------
|
|
include ("_reqPanier/panier.reqInsertCde.php");
|
|
include ("panier.calculCde.php");
|
|
}
|
|
else {
|
|
// cas de la lecture seule
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['LECTURE SEULE - 2' => ''], ''); }
|
|
}
|
|
}
|
|
|
|
// ---------------------------------------------------
|
|
// Affichage du mesage commercial
|
|
// ---------------------------------------------------
|
|
include ("cde.reqSelect.messCom.php");
|
|
if ($afficherMsgCom==1) {
|
|
if ( $affMContext === true ) {echo '<div id="messCom" '; echo 'style="'; if (isset ($styleMsgCom) && $styleMsgCom!='-') echo $styleMsgCom; echo ' cursor:context-menu" '; echo 'data-tooltip="' .$titleTab. '" ' .$mouseOverMenuContext. ' onContextMenu="return mContextuel( this, \'messCom\', \'titre\', 0, event );" >';}
|
|
else { echo '<div id="messCom" ';if (isset ($styleMsgCom) && $styleMsgCom!='-') echo 'style="' .$styleMsgCom. '" ' ; echo 'data-tooltip="' .$titleTab. '" >'; }
|
|
echo '<i class="' .$icoTab. '"></i> <span>' .$messTab. '</span>';
|
|
// a faire <a href="tel:+330493589400">04 93 58 94 00</a>
|
|
echo '</div>';
|
|
}
|
|
|
|
// ---------------------------------------------------
|
|
// Y a t-il des options ?
|
|
// ---------------------------------------------------
|
|
include ("option.testCA.php");
|
|
if ($test==true) {
|
|
// si il y a des options au niveau produit, on affiche le formulaire option, au retour du formulaire option on fera un insert des options et recalcul
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['option = oui , test =' => $test], ''); }
|
|
include ("options.form.php");
|
|
include ("panier.calculCde.php");
|
|
include ("_reqPanier/panier.reqUpdateCde.php");
|
|
}
|
|
else {
|
|
if (isset($debug[1]) && $debug[1] == '1' ) { $debugMsg .= monDebug (1, ['pas d\'option, test = vide' => $test], ''); }
|
|
}
|
|
include ("panier.form.php");
|
|
?>
|