protected function buildOrderStack () {
		//delete parts that have a quantity of zero
		$sql = "DELETE FROM order_parts WHERE quantity = 0/* Order->buildOrderStack */";
		$this->dataconn->f_ExecuteSql($sql);
		
		//get the rest of the parts for this order from the database
		$sql = "
			SELECT 
					`order_parts`.`id`, `order_parts`.`part_id`, `order_parts`.`quantity`, 
					`order_parts`.`product_line`, `order_parts`.`description` 
			FROM order_parts
			WHERE order_id = {$this->order_id}/* Order->buildOrderStack */";//odd syntax with { and }
		$arrOrderParts = $this->dataconn->f_ReturnArrayAssoc_TF($sql);
		
		//echo "<pre>";
		//var_dump($arrOrderParts);
		//echo "</pre>";
		
		$count = count($arrOrderParts['order_parts.id']);
		$this->order_stack = new OrderStack();
		for ($x=0; $x <= $count-1; $x++) {
			$this->order_stack->addPart($arrOrderParts['order_parts.part_id'][$x],
										$arrOrderParts['order_parts.product_line'][$x],
										$arrOrderParts['order_parts.quantity'][$x],
										$arrOrderParts['order_parts.id'][$x],
										$arrOrderParts['order_parts.description'][$x] );
		}
	}
Ejemplo n.º 2
0
<?
require_once "clsDataConn.php";

$dataconn = new DataConn("");

	$sqlTemp = "SELECT `make` FROM `makes` WHERE 1";
	$arr_data = $dataconn->f_ReturnArrayAssoc_TF($sqlTemp);
	if (is_array($arr_data["makes.make"])) {
		var_dump($arr_data);	
	} else {
		echo "not an array";
	}
?>
function moveAssembly ($unit_id,$unit_component_id,$direction) {
	$dataconn = new DataConn("");
	//get the assemblies in the unit_components table in order
	$sql = "
		SELECT id,assembly_or_part_id,display_order 
		FROM unit_components 
		WHERE unit_id = '".mysql_real_escape_string($unit_id)."' 
			AND component_type = 1 
		ORDER BY display_order";
	$arr_data = $dataconn->f_ReturnArrayAssoc_TF($sql);
	if (!is_array($arr_data)) {
		return -1;
	}
	
	//find the ordinal of the assembly we are moving
	$int_num_assemblies = count($arr_data["unit_components.id"])-1;
	echo "int_num_assemblies: _".$int_num_assemblies."_<BR>\n";
	for ($x=0;$x<=$int_num_assemblies;$x++) {
		echo "x: _".$x."_<BR>\n";
		echo "x: _".$arr_data["unit_components.id"][$x]."_ and _".$unit_component_id."_<BR>\n";
		if ($arr_data["unit_components.id"][$x] == $unit_component_id) {
			$position_current = $x;
			break;//terminate the for loop
		}
	}
	
	//terminate if moving up and its already first or vice versa
	if ( ($position_current == 0 && $direction == "up") || ($position_current == $int_num_assemblies && $direction == "down") ) {
		return -1;
	}
	
	//swap the two items
	if ($direction == "up") {
		$sql = "
			UPDATE unit_components SET 
				display_order = '".mysql_real_escape_string($arr_data["unit_components.display_order"][$x-1])."' 
			WHERE id = '".mysql_real_escape_string($arr_data["unit_components.id"][$x])."'";
		$ignore_return = $dataconn->f_ExecuteSql($sql);
		$sql = "
			UPDATE unit_components SET 
				display_order = '".mysql_real_escape_string($arr_data["unit_components.display_order"][$x])."' 
			WHERE id = '".mysql_real_escape_string($arr_data["unit_components.id"][$x-1])."'";
		$ignore_return = $dataconn->f_ExecuteSql($sql);
	} elseif ($direction == "down") {
		$sql = "
			UPDATE unit_components SET 
				display_order = '".mysql_real_escape_string($arr_data["unit_components.display_order"][$x+1])."' 
			WHERE id = '".mysql_real_escape_string($arr_data["unit_components.id"][$x])."'";
		$ignore_return = $dataconn->f_ExecuteSql($sql);
		$sql = "
			UPDATE unit_components SET 
				display_order = '".mysql_real_escape_string($arr_data["unit_components.display_order"][$x])."' 
			WHERE id = '".mysql_real_escape_string($arr_data["unit_components.id"][$x+1])."'";
		$ignore_return = $dataconn->f_ExecuteSql($sql);
	} else {
		return -1;
	}
	//echo "position_current: _".$position_current."_<BR>\n";
	//exit;
}
function getFeaturedPart ($productLine = 3)
{
	$dataconn = new DataConn("");
	
	$sql = "
		SELECT part_id 
		FROM parts_featured 
		WHERE product_line_id = '".mysql_real_escape_string($productLine)."' 
		ORDER BY part_id";
	$arr_data = $dataconn->f_ReturnArrayAssoc_TF($sql);
	if (is_array($arr_data)) {
		$uBound = count($arr_data["parts_featured.part_id"]) - 1;
		$position_to_return = rand(0,$uBound);
		$Part = new Part($arr_data["parts_featured.part_id"][$position_to_return]);
		return $Part;
	} else {
		return NULL;
	}
}