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 '