connect($db) ) exit("Πρόβλημα σύνδεσης στη Βάση Δεδομένων!"); # paths & directories $paths= new TPaths(); $rootURL= $paths->getUrl(); $imagesURL= $paths->getImagesUrl(); $secureURL= $paths->getSecureUrl(); $filesURL= $paths->getFilesUrl(); # categories $Cats= new TCategories(); # items $Items= new TItems(); # user $User= new TUserHandle(); # order $Order= new TOrderHandle(); # files $Files= new TFiles(); # συνδεδεμένος ή όχι χρήστης $userLogin= false; # default τιμές για καθεστώς ΦΠΑ, πολιτκή τιμών και τιμή $vatStatus= 1; # κανονικό ΦΠΑ $pricePolicy= 1; # πολιτκή τιμών $fpa= FPA; if ( $User->isUserLoggedin() ) { $userLogin= true; # ανάκτηση δεδομένων συνδεδεμένου χρήστη $userData= $User->getUserRow( $_SESSION['user'] ); $displayName= $userData['lname'].' '.$userData['fname']; $pricePolicy= $userData['pricePolicy']; # τιμολογιακή πολιτική του πελάτη $vatStatus= $userData['vatStatus']; # καθεστώς ΦΠΑ του πελάτη if ($vatStatus==0) $fpa= NO_FPA; elseif ($vatStatus==1) $fpa= FPA; elseif ($vatStatus==2) $fpa= REDUCED_FPA; } $accessThisPage= true; # default if ( $accessThisPage= isset($_GET['id']) ) { # αν έχει οριστεί GET['id'] $currentCatID= intval($_GET['id']); # στοιχεία τρέχουσας κατηγορίας $q= "SELECT * FROM categories WHERE catID = $currentCatID AND active = 1 LIMIT 1"; $dbClass->BuildQuery( 'se', $q, $db, $qError, $rs, $n, $timeParsed ); if ( $n == 0 ) { # δεν υπάρχει το id της που δόθηκε $accessThisPage= false; } else { # επιλέχθηκε σωστή κατηγορία $r= $rs->fetch_assoc(); $currentParentID= $r['parentID']; $currentCatName= $r['per']; $currentCatDescr= $r['descr']; $productsOrderID= $r['productsOrderID']; $displayProductsAs= $r['displayProductsAs']; # επιλογή των φωτογραφιών της κατηγορίας $options= array('ID'=>$currentCatID, 'object'=>'category'); $imagesArr= $Files->getImages($options); # επιλογή των αρχείων της κατηγορίας $options= array('ID'=>$currentCatID, 'object'=>'category'); $filesArr= $Files->getFiles($options); # το δέντρο κατηγοριών έως την τρέχουσας κατηγορίας $parentID= $currentParentID; $categoryTree= array(); # π.χ. array(3,5,8) $categoryTree[]= $currentCatID; $categoryTreeDescr= array(); # πίνακας με όλες τις αναλ. περιγραφές του δέντρου των κατηγοριών $categoryTreeDescr[]= nl2br($currentCatDescr); $i=0; # control while ($parentID <> 0) { $q= "SELECT * FROM categories WHERE catID = $parentID LIMIT 1"; $dbClass->BuildQuery( 'se', $q, $db, $qError, $rs, $n, $timeParsed ); $r= $rs->fetch_assoc(); $catID= $r['catID']; $descr= nl2br($r['descr']); $parentID= $r['parentID']; $categoryTree[]= $catID; $categoryTreeDescr[]= $descr; $i++; } $categoryTree= array_reverse($categoryTree); $categoryTreeDescr= array_reverse($categoryTreeDescr); //echo $productsOrderID; # απόφαση για το τι θα εμφανίσει και σε ποια μορφή $options= array('catID'=>$currentCatID, 'order'=>$productsOrderID); $rsItems= $Items->getItemsList($options); $nItems= $rsItems->num_rows; if ($nItems>0) { # υπάρχουν προϊόντα στην κατηγορία if ($displayProductsAs==1) { $contentsToView= 'inc.items.php'; # μεμονωμένα $what_to_show= 'p'; # products } else { $contentsToView= 'inc.itemsAsGroup.php'; # ομάδα $what_to_show= 'g'; # group } } else { # δεν υπάρχουν προϊόντα στην κατηγορία # εμφανίζει υποκατηγορίες $contentsToView= 'inc.subCategories.php'; } } } if ( !$accessThisPage ) { # access denied # ανακατεύθυνση στην αρχική header( "Location: ".$rootURL ); exit; } /* if (!empty($_POST)) { # έχει προστεθεί προϊόν στο καλάθι foreach ($_POST as $itemID=>$quantity) { if ($quantity>0) $Order->AddToOrder($itemID, $quantity); //echo $itemID.' => '.$quantity.BR; } $_SESSION['notifierTxt']= 'Η παραγγελία σας ενημερώθηκε '; } */ if (!empty($_POST)) { # έχει προστεθεί προϊόν στο καλάθι $_SESSION['notifyDelay']= 3000; foreach ($_POST as $itemID=>$quantity) { if ($quantity>0) { # ανάκτηση των στοιχείων του προϊόντος (currentStock, currentMM) $options= array('itemID'=>$itemID); $rs= $Items->getOneItemDetails($options); if (!$rItem= $rs->fetch_assoc()) { $accessThisPage= false; } $currentStock= $rItem['stock']; $currentMM= $rItem['mm']; if ($quantity > $currentStock) { # η πσότητα που ζήτησε είναι μεγαλύτερη από τα διαθέσιμα $_SESSION['notifierTxt']= 'Η ποσότητα που επιλέξατε υπερβαίνει την άμεσα διαθέσιμη ποσότητα που είναι '.$currentStock.' '.$currentMM.'.
Ενημερώνουμε την παραγγελία σας με '.$currentStock.' '.$currentMM.'
Αν επιθυμείτε μεγαλύτερη ποσότητα, επικοινωνήστε μαζί μας για τον χρόνο παράδοσης των υπολοίπων.'; $_SESSION['notifyDelay']= 20000; if (!isset($_SESSION['ebasket']['items'][$itemID])) { $Order->AddToOrder($itemID, $currentStock); } else $_SESSION['ebasket']['items'][$itemID]= $currentStock; } else { # η ποσότητα (quantity) επαρκεί if (isset($_SESSION['ebasket']['items'][$itemID])) { $quantToBasket= $_SESSION['ebasket']['items'][$itemID]; $totalAskQuant= $quantToBasket + $quantity; if ($totalAskQuant <= $currentStock) $Order->AddToOrder($itemID, $quantity); } else { $Order->AddToOrder($itemID, $quantity); } $_SESSION['notifierTxt']= 'Η παραγγελία σας ενημερώθηκε '; } } } } //print_r($_SESSION['ebasket']); //exit; $displayCarousel= false; $displayFooter= true; $extraLines= ''; # ο τίτλος και η περιγραφή της σελίδας $pageTitle= $currentCatName.' | pitsikoglou-trade.com'; $pageDescription= $currentCatDescr.'| pitsikoglou-trade.com'; $pageKeywords= ''; ob_start(); ?> **/ include(RELPATH . "header.php"); /* * φόρτωση του template **/ include(TEMPLATE . "page.php"); ?>