183 lines
9.5 KiB
PHP
Executable File
183 lines
9.5 KiB
PHP
Executable File
<?php
|
|
$nomFicAppelant = basename(__FILE__);
|
|
|
|
/* ---------------------------------------------------
|
|
Cartouche : eric Juin 2022
|
|
Parcours des 23 tables caractéristiques
|
|
Pour chaque table les champs sont mis dans des tableaux génériques (tabType...)
|
|
Parcours de toutes les fiches du tableau générique : renumerotation absolue par $u
|
|
Si le typeCherche = 0 : ne pas afficher
|
|
Si le typeCherche = 1 : le code1 donne le type de fiche
|
|
- si menu : chercher les listes includées meme si leur typeCherche=0
|
|
- si indep : afficher
|
|
Si on doit afficher la fiche : on récupère les options depuis la BD et si pas trouvé alors on applique la quantité par defaut
|
|
On affiche les valeurs selon le type de formulaire ET ou OU
|
|
- code 1 pour 'defaut' ou 'aucun'
|
|
- code 2 pour quantité incluse ou 'pas de quantité' pour forcer a 1
|
|
- code 3 quantite max
|
|
On mets a nouveau les données postées en session (lineItem...), puis DB - form-recordset
|
|
--------------------------------------------------- */
|
|
|
|
// ---------------------------------------------------
|
|
// Init bis
|
|
// ---------------------------------------------------
|
|
require_once($includePath. "/_fonctions/fonctionItemMessage.php");
|
|
|
|
//le type de liste
|
|
include ("./admin/adminInclude/ressources/libellesTypesDeListes.CA.php");
|
|
|
|
if (isset($_SESSION['nLigne'])) $nLigne=$_SESSION['nLigne']; else $nLigne=0;
|
|
if (isset($_POST['itemNumberPost'])) $itemNumberPost=$_POST['itemNumberPost'];
|
|
// if (isset($_GET['prdQte'])) {
|
|
// $prdQte=$_GET['prdQte']; //quantité récupérée directement du panier
|
|
// $prdQte=1; //toujours 1 pour les options
|
|
// }
|
|
|
|
// ---------------------------------------------------
|
|
// Variables
|
|
// ---------------------------------------------------
|
|
if (isset($prdQte)) {$_SESSION['prdQte']=$prdQte;} else $prdQte=1;
|
|
if (isset($_SESSION['order'])) $order=$_SESSION['order'];
|
|
|
|
// ---------------------------------------------------
|
|
// Debug
|
|
// ---------------------------------------------------
|
|
if (isset($debug[15]) && $debug[15] == '1' ) $debugMsg .= monDebug(1,['itemNumberPost' => $itemNumberPost, 'prdQte' => $prdQte ], '01-formOptionsPrincipal.php');
|
|
|
|
// ---------------------------------------------------
|
|
// Req Select Produit libelle
|
|
// ---------------------------------------------------
|
|
include ("./pages/panier/_formOptions/reqOpt/reqSelectLibPrd.php");
|
|
|
|
// ---------------------------------------------------
|
|
// Req Select libelles de liste
|
|
// ---------------------------------------------------
|
|
include ("./pages/panier/_formOptions/reqOpt/reqSelectLibCA.php");
|
|
|
|
// ---------------------------------------------------
|
|
// Form principal
|
|
// ---------------------------------------------------
|
|
echo '<div id="modaleSite" >';
|
|
echo '<div id="popupSite" style="opacity:1;" >';
|
|
echo '<div id="zonePageModales" style="resize:both; overflow:auto; opacity:1; z-index:10; left:0; top:0px; height:99%; color:black;" >';
|
|
|
|
// ---------------------------------------------------
|
|
// Faire une pre requete pour connaitre l'ordre des formulaires : est ici pour affichage debug dans la modale car sinon s'affiche dans le site.
|
|
// ---------------------------------------------------
|
|
include ("./pages/panier/_formOptions/reqOpt/formOptionsReqSelectOrder.php");
|
|
|
|
// ---------------------------------------------------
|
|
// Zone Titre
|
|
// ---------------------------------------------------
|
|
echo '<div class="flexToColum" style="position:sticky; display:flex; flex-direction:column; opacity:1; z-index:10;" > ';
|
|
|
|
// ---------------------------------------------------
|
|
// Bouton fermer
|
|
// ---------------------------------------------------
|
|
echo '<div id="optionTitre" class="flexToColum" > ';
|
|
echo '<h1><a href="panier-assist-' .$montantTotal. '-' .$idPrd. '" >';
|
|
echo '<span style="cursor:pointer; " alt="Fermer" class="fad fa-times-circle " id="btnCloseSiteModale"></span>';
|
|
echo '</a></h1>';
|
|
echo '</div>';
|
|
|
|
// ---------------------------------------------------
|
|
// Zone aide
|
|
// ---------------------------------------------------
|
|
echo '<div class="descMenu" style="text-align:left; white-space:break-spaces;" >';
|
|
dynamiqItemMessage(0, 0, '-', 'text-align:left; white-space:break-spaces;', 'div', 'libellesForm', '-action-', 'cde', 103, '-' );
|
|
echo '<div style="text-align:center;vertical-align:middle; display:flex; flex-direction:rows; flex-wrap:wrap;" class="flexToColum" >';
|
|
echo ' <div style=" width:50%; font-style:weight; font-size:1.8rem;" >';
|
|
if (isset($_SESSION['prdQte'])) echo $_SESSION['prdQte']. ' ';
|
|
echo '<span style="z-index:3; margin:1px; white-space:break-spaces;">' .$nomProduit. '</span>';
|
|
echo '</div> ';
|
|
if (!empty($imageProduit) && $imageProduit !='-') echo '<div style="margin:10px;"><span style="z-index:10"><img style="width:150px; height:150px; border-radius:100%;" src=' .$imageProduit. ' /></span></div>';
|
|
echo '</div>';
|
|
|
|
echo '</div>';
|
|
echo '</div>'; //sticky
|
|
|
|
// ---------------------------------------------------
|
|
// Form
|
|
// ---------------------------------------------------
|
|
echo '<form name="formOpt" id="formOpt" method="POST" style="display:contents" >';
|
|
echo '<div id="optionForm" style="padding-top:5px; white-space: normal;" >';
|
|
|
|
// ---------------------------------------------------
|
|
// Champs cachés
|
|
// ---------------------------------------------------
|
|
echo '<input type="hidden" value="' .$quantitePost. '" name="quantitePost" id="quantitePost" >';
|
|
echo '<input type="hidden" value="' .$itemNumberPost. '" name="itemNumberPost" id="itemNumberPost" >';
|
|
echo '<input type="hidden" value="' .$itemToDesactiv. '" name="itemToDesactiv" id="itemToDesactiv" >';
|
|
echo '<input type="hidden" value="' .$kantToDesactiv. '" name="kantToDesactiv" id="kantToDesactiv" >';
|
|
echo '<input type="hidden" value="' .$activBtn. '" name="activBtn" id="activBtn" >';
|
|
echo '<input type="hidden" value="' .$sOpt. '" name="sOpt" id="sOpt" >';
|
|
|
|
echo '<input type="hidden" id="codeOpeForm" name="codeOpeForm" value="' .$codeOpeForm. '" >';
|
|
echo '<input type="hidden" value="' .$u. '" name="u" id="u" >';
|
|
echo '<input type="hidden" value="' .$isAucun. '" name="isAucun" id="isAucun" >';
|
|
// deshiniber le codeOpe du form panier
|
|
echo '<input type="hidden" value="0" name="codeOpe" id="codeOpe" >';
|
|
echo '<input type="hidden" value="' .$idLgCde. '" name="idLgCde" id="idLgCde" >';
|
|
|
|
// ---------------------------------------------------
|
|
// Boucle sur chaque CaDyn, affichage de chaque form
|
|
// ---------------------------------------------------
|
|
$min='';
|
|
include ("./pages/panier/_formOptions/02-formChapeau.php");
|
|
|
|
// toujours set Non, meme si vide
|
|
if (isset ($_SESSION['totMontantParListe'])) {
|
|
|
|
// etre sur de la remettre a zero
|
|
$_SESSION['montantTotOpt']=0;
|
|
for ($i=0; $i<23; $i++) {
|
|
if(!isset($_SESSION['totMontantParListe'][$i])) $_SESSION['totMontantParListe'][$i]=0;
|
|
$_SESSION['montantTotOpt'] = (int)$_SESSION['montantTotOpt'] + (int)$_SESSION['totMontantParListe'][$i];
|
|
|
|
if (isset($debug[15]) && $debug[15] == '1' ) $debugMsg .= monDebug(1,['<br>SESSION[montantTotOpt]' => $_SESSION['montantTotOpt'], 'SESSION[totMontantParListe][' .$i. ']' => $_SESSION['totMontantParListe'][$i] ],'');
|
|
}
|
|
}
|
|
// else
|
|
// if (isset($debug[15]) && $debug[15] == '1' ) $debugMsg .= monDebug(1,['pas de session montant' => ''],'');
|
|
|
|
if ($trouveOrdre==0 && $idTypeCherche == 1) if (isset($debug[15]) && $debug[15] == '1' ) $debugMsg .= monDebug(1,['PAS DE TROUVE ORDRE = FIN ? order ['.$n.']' => $order[$n] ],'');
|
|
|
|
// ---------------------------------------------------
|
|
// Update ou insert prdOptions : Si le form a été posté par suivant le codeOpe était egal à - pour gérer les quantités par defaut
|
|
// Hors on a besoin du codeOpe = majOptions pour le recordset
|
|
// ---------------------------------------------------
|
|
|
|
include ("form-recordset.php");
|
|
echo '</div>'; // formOption
|
|
|
|
echo '<div id="zoneValidateModales" style="margin-top:1px; display:flex; padding:4px;grid-row:1;" class="flexToColum" >';
|
|
include ("./pages/panier/_formOptions/sousFormBoutons.php");
|
|
echo '</div>';
|
|
|
|
// ---------------------------------------------------
|
|
// Debug affichage ici sinon on ne le voit pas
|
|
// ---------------------------------------------------
|
|
if (isset($debug[15]) && $debug[15] == '1' ) include ("./pages/panier/_formOptions/debug.option.php");
|
|
if (isset($debug[15]) && $debug[15] == '1' ) {
|
|
echo '<div id="debug" style=" white-space: pre-wrap; word-wrap:break-word; word-break: break-all; color:black; margin:15px; display:block; border:1px solid blue; flex-wrap:wrap; text-align:left; " >';
|
|
echo '<span style="color:black;">Debugage : ' .$debugMsg. '</span>';
|
|
echo '</div>';
|
|
}
|
|
echo '</form>';
|
|
echo '</div>'; //page
|
|
echo '</div>'; //popup
|
|
echo '</div>'; //modale
|
|
|
|
$itemToDesactiv='';
|
|
$_SESSION['nLigne']=$nLigne;
|
|
$_SESSION['tabQuantite']=$tabQuantite;
|
|
$_SESSION['tabItemNumber']=$tabItemNumber;
|
|
$_SESSION['lineItemLibelle']=$lineItemLibelle;
|
|
$_SESSION['lineItemPrixHT']=$lineItemPrixHT;
|
|
$_SESSION['lineItemPrixTTC']=$lineItemPrixTTC;
|
|
$_SESSION['lineItemPrixHtTOT']=$lineItemPrixHtTOT;
|
|
$_SESSION['lineItemPrixTtcTOT']=$lineItemPrixTtcTOT;
|
|
$_SESSION['lineItemQuantite']=$lineItemQuantite;
|
|
$_SESSION['lineItemTvaTaux']=$lineItemTvaTaux;
|
|
$_SESSION['lineItemNumber']=$lineItemNumber;
|
|
?>
|