include "shop.phtml";
/* shop-form.phtml: Display a list of the products in a specific category. */
$strSQL = "SELECT CategoryName, ParentID FROM tblCategory WHERE CatID = $g_intCatID";
$sclResultID = $g_objDB->GetSingleRow($strSQL, &$ascCatResult, SQL_GET_ROW_COUNT, "Get Category Parent reference");
if($g_objDB->HasError())
{
$g_objDB->DisplayError(__FILE__, __LINE__);
include "bottom.phtml";
exit;
}
elseif(!$g_objDB->GetRowCount($sclResultID))
{
$g_objDB->DisplayError("", 0, "Category Data Not Found.");
include "bottom.phtml";
exit;
}
$g_objDB->FreeResults($sclResultID);
$ascGridInit = array
(
"title" => "Product List",
//"titlecolor" => $bgcolor,
"titleTextColor" => $title_color,
"titleTextSize" => "+1",
"subTitle" => "",
"itemsPerPage" => 5, // $g_intListItemsPerPage,
"width" => "100%",
"textcolor" => $title_color
);
$ascFont = array
(
"face" => "Tahoma",
"color" => $title_color,
"size" => 1
);
//include $g_strCLASS_SUB_PATH."../class/SQLGrid.html";
include "class/SQLGrid.html";
$grid = new SQLGrid;
$grid->init($ascGridInit);
//$strSQL = "SELECT * FROM tblProduct WHERE CatID = $g_intCatID";
$strSQL = "SELECT Pr.ProductID,Pr.picture_url,Cat.CatID,Cat.fldHasAttributes,Pr.ProductName,Pr.Price,Pr.weight,Cat.CategoryName,Cat.ParentID FROM tblProduct Pr, tblCategory Cat WHERE Pr.CatID = $g_intCatID AND Cat.CatID = Pr.CatID ORDER BY Pr.ProductID";
$grid->setSQL($strSQL);
$exPageNO = $grid->getCurrentPageNO();
$intStartItem = ($exPageNO - 1) * $grid->GetPageSize();
$intNumRows = $grid->draw($g_objDB);
$sclProdResultID = 0;
$g_objDB->GetAllRows($strSQL, &$ascProductResult, &$blnMoreRows, SQL_GET_ROW_COUNT, &$sclProdResultID, "Select shop-form product data");
if($g_objDB->HasError())
{
$g_objDB->DisplayError(__FILE__, __LINE__);
include "bottom.phtml";
exit;
}
$intNum2Rows = $g_objDB->GetRowCount($sclProdResultID);
$intMaxRows = $g_objDB->GetMaxRowsRetrieved();
if($intNumRows == 0)
{
?>
There are no products in the print $ascCatResult['CategoryName']; ?> category.
}
elseif($intNum2Rows == 0)
{
?>
Error retrieving data!
}
else
{
$strSQL = "SELECT MAX(Pr.weight) AS MaxWeight FROM tblProduct Pr, tblCategory Cat WHERE Pr.CatID = $g_intCatID AND Cat.CatID = Pr.CatID ORDER BY Pr.ProductID";
$sclWeightResultID = $g_objDB->GetFirstRowOfSet($strSQL, &$ascWeightResult, SQL_GET_ROW_COUNT, "Get MAX Product Weight");
if((!$g_objDB->HasError()) && ($g_objDB->GetRowCount($sclWeightResultID) > 0))
{
if($ascWeightResult['MaxWeight'] > 0.0)
$strWeightCol = "Weight";
else
$strWeightCol = " ";
}
else
$strWeightCol = "Weight";
$intNumRows = $intNum2Rows;
$intX = 0;
$intCurX = 0;?>
| Product ID |
/*
Category |
*/
?>
Name |
Price |
|
Quantity |
|
while(($intX < $intNumRows) && ($ascProductResult[$intCurX]))
{
if(($intX >= $intStartItem) && ($intX < ($intStartItem + $grid->GetPageSize())))
{
$strProdID = $ascProductResult[$intCurX]['ProductID'];
$intCatID = $ascProductResult[$intCurX]['CatID'];
$strHasAttributes = $ascProductResult[$intCurX]['fldHasAttributes'];
$strName = $ascProductResult[$intCurX]['ProductName'];
$dblPrice = $ascProductResult[$intCurX]['Price'];
$dblWeight = $ascProductResult[$intCurX]['weight'];
$dblWeight = 0.0; // Force not to display
$strCategoryName = $ascProductResult[$intCurX]['CategoryName'];
$intParentID = $ascProductResult[$intCurX]['ParentID'];
$strPictureURL = $ascProductResult[$intCurX]['picture_url'];
if($strHasAttributes == "Y")
{
$strSQL = "SELECT attr.*, opt.* FROM tblAttributes attr, tblAttribOptions opt WHERE (attr.CatID=$CatID OR attr.ProductID='$strProdID') AND opt.fldAttributeID=attr.fldAttributeID ORDER BY attr.fldAttributeID";
$g_objDB->GetAllRows($strSQL, &$ascAttrResult, &$blnMoreRows, SQL_GET_ROW_COUNT, &$sclAttrResultID, "Get attributes");
if($g_objDB->HasError())
{
$g_objDB->DisplayError(__FILE__, __LINE__, "Get attributes failed!");
$g_intAttrRowCount = 0;
}
else
$g_intAttrRowCount = $g_objDB->GetRowCount($sclAttrResultID);
if($g_intAttrRowCount == 0)
$strHasAttributes = "N";
}
AddForm($strProdID, $intCatID, $strName, $dblPrice, $dblWeight, $intNumRows, $strHasAttributes,$strPictureURL, $strCategoryName, $intParentID);
}
$intX++;
$intCurX++;
if($intX >= ($intStartItem + $grid->GetPageSize()))
break;
if(($intCurX >= $intMaxRows) && $blnMoreRows)
{
$g_objDB->GetAllRows($strSQL, &$ascProductResult, &$blnMoreRows, SQL_GET_ROW_COUNT, &$sclProdResultID, "Get more of all products data");
if($g_objDB->HasError())
{
$g_objDB->DisplayError(__FILE__, __LINE__);
include "bottom.phtml";
exit;
}
$intCurX = 0;
}
}
$g_objDB->FreeResults($sclProdResultID);
?>
$grid->ShowLinks();
}
?>