CodeThatXPBar - XPBar Generation from the Database Example

CodeThatXPBar - XPBar Generation from the Database Example

 

<php
$StrQuery1 = "select distinct bgimg " .
	" from script_styles, script_items where " .
	" script_styles.style_id = script_items.style_id " .
	" and script_items.item_parent_id=0 and script_id=4";
$result1 = db_query($StrQuery1);
$res_num1 = db_numrows($result1);
$Error = mysql_error($db);
if ($Error != "")
{
	echo "$Error";
	exit();
}
if ($res_num1 != 0)
{
	$style_item = '"style":{"bgimg":' . db_result($result1, 0, 'bgimg') . '} ';
}
$StrQuery1 = "select distinct bgimg, size, bgcolor, shadow, border, itemoffset " .
	" from script_styles where script_styles.style_id = 8";
$result1 = db_query($StrQuery1);
$res_num1 = db_numrows($result1);
$Error = mysql_error($db);
if ($Error != "")
{
	echo "$Error";
	exit();
}
if ($res_num1 != 0)
{
	$menu_style = '"style":{"bgimg":' . db_result($result1, 0, 'bgimg') .
		',"size":' . db_result($result1, 0, "size") . ', ' .
		'"bgcolor":"' . db_result($result1, 0, "bgcolor") . '", ' .
		'"shadow":' . db_result($result1, 0, "shadow") . ', ' .
		'"border":' . db_result($result1, 0, "border") . ', ' .
		'"itemoffset":' . db_result($result1, 0, "itemoffset") . '}';
}
$StrQuery1 = "select distinct bgimg, imgendon, imgendoff " .
	" from script_styles where script_styles.style_id = 9";
$result1 = db_query($StrQuery1);
$res_num1 = db_numrows($result1);
$Error = mysql_error($db);
if ($Error != "")
{
	echo "$Error";
	exit();
}
if ($res_num1 != 0)
{
	$menu_style = $menu_style . ', "itemover":{"bgimg":' .
		db_result($result1, 0, 'bgimg') .
		',"imgendon":' . db_result($result1, 0, "imgendon") . ', ' .
		'"imgendoff":' . db_result($result1, 0, "imgendoff") . '}';
}

function create_level($parent_id)
{
	global $style_item, $menu_style;
	$items = '';
	$StrQuery = "select item_id, item_name from script_items " .
		" where script_id=4 and item_parent_id=" . $parent_id;
	$result = mysql_query($StrQuery);
	$Error = @mysql_error($db);
	if ($Error != "")
	{
		echo "$Error";
		exit();
	}
	$first = 1;
	while (list($item_id, $item_name) = mysql_fetch_row($result))
	{
		if ($first == 1)
		$first = 0;
		else
		$items .= ",";
		$next_level = create_level($item_id);
		if ($next_level == "")
		{
			$items .= '{"text":"' . $item_name . '"';
			$items .= $next_level;
			$items .= "} ";
		}
		else
		{
			$items .= '{"text":"' . $item_name . '", ' . $style_item . ', ' .
			'"menu":{ ' . $menu_style . ', '.
			'"items":[';
			$items .= $next_level;
			$items .= "]}}";
		}
	}
	return ($items);
}

function create_definition()
{
	global $db;
	$definition = "";
	$StrQuery = "select distinct css, size, bgcolor, color, bgimg, " .
		" shadow, border, imgitem, imgdir, " .
		" imgendon, imgendoff, fixheight " .
		" from script_styles, script_items where " .
		" script_styles.style_id = script_items.style_id " .
		" and script_items.item_parent_id=0 and script_items.script_id=4";
	$result = db_query($StrQuery);
	$res_num = db_numrows($result);
	$Error = mysql_error($db);
	if ($Error != "")
	{
		echo "$Error";
		exit();
	}
	if ($res_num != 0)
	{
		$definition = $definition . 'var BarDef = {"style"	: {"css" : "' .
			db_result($result, 0, "css") . '", ' .
			'"size":' . db_result($result, 0, "size") . ', ' .
			'"bgcolor":"' . db_result($result, 0, "bgcolor") . '", ' .
			'"shadow":' . db_result($result, 0, "shadow") . ', ' .
			'"border":' . db_result($result, 0, "border") . ', ' .
			'"fixheight":' . db_result($result, 0, "fixheight") . ', ' .
			'"imgendon":' . db_result($result, 0, "imgendon") . ', ' .
			'"itemoffset":{ "x":5, "y":10 }, ' .
			'"imgendoff":' . db_result($result, 0, "imgendoff") . '}';
	}
	$StrQuery = "select distinct css, bgcolor, color, bgimg, shadow, border, " .
		" imgitem, imgdir, imgendon, imgendoff, bgimg " .
		" from script_styles, script_items where " .
		" script_styles.style_id = script_items.style_over_id " .
		" and script_items.item_parent_id=0 and script_id=4";
	$result = db_query($StrQuery);
	$res_num = db_numrows($result);
	$Error = mysql_error($db);
	if ($Error != "")
	{
		echo "$Error";
		exit();
	}
	if ($res_num != 0)
	{
		$definition = $definition . ', "itemover": { "css" : "' .
			db_result($result, 0, 'css') . '", ' .
			'"bgcolor":"' . db_result($result, 0, 'bgcolor') . '", ' .
			'"bgimg":' . db_result($result, 0, 'bgimg') . ', ' .
			'"imgendon":' . db_result($result, 0, "imgendon") . ', ' .
			'"imgendoff":' . db_result($result, 0, "imgendoff") . ', ' .
			'"itemoffset":{ "x":5, "y":10 }' . '} ';
	}
	$StrQuery = "select distinct bgcolor, color " .
		" from script_styles, script_items where " .
		" script_styles.style_id = script_items.style_on_id " .
		" and script_items.item_parent_id=0 and script_id=4";
	$result = db_query($StrQuery);
	$res_num = db_numrows($result);
	$Error = mysql_error($db);
	if ($Error != "")
	{
		echo "$Error";
		exit();
	}
	if ($res_num != 0)
	{
		$definition = $definition . ', "itemon": { "' .
			'bgcolor":"' . db_result($result, 0, 'bgcolor') . '", ' .
			'"color":"' . db_result($result, 0, 'color') . '"} ';
	}
	$definition = $definition . ', "position": { "absolute": false, "pos":[30,20] } ';
	$items = ', "items" : [ ';
	$items = $items . create_level(0);
	$items = $items . ' ] ';
	$definition = $definition . $items . " };";
	return $definition;
}
?>

<php
echo '<HEAD><link href="/common_codethat.css" rel="stylesheet" type="text/css"> ' .
	'<script language="javascript1.2" src="' .
	site_url . 'codethatsdk.js"></script> ' .
	'<script language="javascript1.2" src="' .
	site_url . 'xpbar/codethatxpbarpro.js"></script> ' .
	'<script language="javascript1.2"> ' .
	. create_definition() . '</script> </head>'; 
?>

<body bgcolor="#ffffff">

<script language="javascript1.2">
<!--

var barTest1 = new CXPBar(BarDef, 'barTest1');
barTest1.create();
barTest1.run(); 

//-->
</script>
</body>
</html>