<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>http://vwiki.co.uk/index.php?action=history&amp;feed=atom&amp;title=VI-DB_vapps.php_v2</id>
	<title>VI-DB vapps.php v2 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://vwiki.co.uk/index.php?action=history&amp;feed=atom&amp;title=VI-DB_vapps.php_v2"/>
	<link rel="alternate" type="text/html" href="http://vwiki.co.uk/index.php?title=VI-DB_vapps.php_v2&amp;action=history"/>
	<updated>2026-04-19T05:23:20Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://vwiki.co.uk/index.php?title=VI-DB_vapps.php_v2&amp;diff=1408&amp;oldid=prev</id>
		<title>Sstrutt: Initial creation</title>
		<link rel="alternate" type="text/html" href="http://vwiki.co.uk/index.php?title=VI-DB_vapps.php_v2&amp;diff=1408&amp;oldid=prev"/>
		<updated>2011-08-31T14:03:41Z</updated>

		<summary type="html">&lt;p&gt;Initial creation&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;html xmlns=&amp;#039;http://www.w3.org/TR/REC-html40&amp;#039;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Version 1.0 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;vi-db (vApps)&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;#039;SHORTCUT ICON&amp;#039; href=&amp;#039;favicon.ico&amp;#039;&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;#039;stylesheet&amp;#039; type=&amp;#039;text/css&amp;#039; href=&amp;#039;alpha.css&amp;#039; /&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;#039;Author&amp;#039; content=&amp;#039;Simon Strutt&amp;#039;&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;#039;Description&amp;#039; content=&amp;#039;VI Info&amp;#039;&amp;gt;&lt;br /&gt;
&amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=iso-8859-1&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;image/jpeg&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;meta http-equiv=&amp;#039;Pragma&amp;#039; content=&amp;#039;no-cache&amp;#039;&amp;gt;&lt;br /&gt;
&amp;lt;meta http-equiv=&amp;#039;Expires&amp;#039; content=&amp;#039;900&amp;#039;&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
$time_start = microtime(true);&lt;br /&gt;
&lt;br /&gt;
//Local variables etc&lt;br /&gt;
require &amp;#039;config.php&amp;#039;;&lt;br /&gt;
$self = $_SERVER[&amp;#039;PHP_SELF&amp;#039;];&lt;br /&gt;
$debug = 0;&lt;br /&gt;
&lt;br /&gt;
// open connection and select database&lt;br /&gt;
$connection = mysql_connect($host, $user, $pass) or die (&amp;quot;Unable to connect to database!&amp;quot;);&lt;br /&gt;
mysql_select_db($db) or die (&amp;quot;Unable to select database!&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
//Set debug on if required&lt;br /&gt;
if (array_key_exists(&amp;#039;debug&amp;#039;, $_REQUEST) and ($_REQUEST[&amp;quot;debug&amp;quot;] == 1)) {&lt;br /&gt;
	$debug = 1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// show parameters and errors&lt;br /&gt;
if ($debug) {&lt;br /&gt;
	error_reporting(-1);&lt;br /&gt;
	print_r($_REQUEST);&lt;br /&gt;
	print &amp;quot;&amp;lt;br&amp;gt;&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
print &amp;quot;DISCLAIMER: Please use all information gained from here with caution - I haven&amp;#039;t performed exhaustive validation and testing of any of the information that may be presented.&amp;lt;br&amp;gt;\n&amp;quot;;&lt;br /&gt;
print &amp;quot;If you&amp;#039;re making changes or decisions, please double check with the reality of what is displayed by the vCentre servers.  You retain full responsibility for your actions...!\n &amp;quot;;&lt;br /&gt;
print &amp;quot;&amp;lt;h1&amp;gt;vApps&amp;lt;/h1&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
if (array_key_exists(&amp;#039;vappid&amp;#039;, $_REQUEST)) {&lt;br /&gt;
	$vapp_link = &amp;quot;&amp;amp;vappid=&amp;quot;.$_REQUEST[&amp;quot;vappid&amp;quot;];&lt;br /&gt;
	$vappid=$_REQUEST[&amp;quot;vappid&amp;quot;];&lt;br /&gt;
} else {&lt;br /&gt;
	$vapp_link = &amp;quot;&amp;quot;;&lt;br /&gt;
	$vappid=0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// Initial query&lt;br /&gt;
&lt;br /&gt;
$query = &amp;quot;SELECT vc.name AS vc, cluster.name AS cluster, vappid, vapp.name AS vapp, vc_path, status FROM vapp JOIN vc USING (vcid) JOIN cluster USING (clid) WHERE vapp.exist=1 ORDER BY vc, cluster, vapp;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$result = mysql_query($query);&lt;br /&gt;
//print $query;&lt;br /&gt;
if (mysql_num_rows($result) == 0) {&lt;br /&gt;
	die (&amp;quot;No vApps found....&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
$row = mysql_fetch_assoc($result);&lt;br /&gt;
&lt;br /&gt;
// ----------------- Layout table (top) ----------------------------&lt;br /&gt;
print &amp;quot;&amp;lt;table align=&amp;#039;center&amp;#039; cellspacing=10&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;#039;top&amp;#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// ------------------- Summary table ------------------------&lt;br /&gt;
&lt;br /&gt;
print &amp;quot;&amp;lt;table class=&amp;#039;BasicTable&amp;#039; align=&amp;#039;center&amp;#039;&amp;gt;\n&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;vCentre&amp;lt;th&amp;gt;Cluster&amp;lt;th&amp;gt;vApp&amp;lt;th&amp;gt;Status&amp;lt;th&amp;gt;vCenter&amp;lt;br&amp;gt;Path\n&amp;quot;;&lt;br /&gt;
while ($row = mysql_fetch_assoc($result)) {&lt;br /&gt;
	print &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;quot;.$row[&amp;#039;vc&amp;#039;].&amp;quot;&amp;lt;td&amp;gt;&amp;quot;.$row[&amp;#039;cluster&amp;#039;];&lt;br /&gt;
	if ($vappid == $row[&amp;#039;vappid&amp;#039;]) {&lt;br /&gt;
		print &amp;quot;&amp;lt;td&amp;gt;&amp;lt;b&amp;gt;&amp;quot;.$row[&amp;#039;vapp&amp;#039;].&amp;quot;&amp;lt;/b&amp;gt;&amp;quot;;&lt;br /&gt;
	} else {&lt;br /&gt;
		print &amp;quot;&amp;lt;td&amp;gt;&amp;lt;a href=&amp;#039;$self?vappid=&amp;quot;.$row[&amp;#039;vappid&amp;#039;].&amp;quot;&amp;#039;&amp;gt;&amp;quot;.$row[&amp;#039;vapp&amp;#039;].&amp;quot;&amp;lt;/a&amp;gt;&amp;quot;;&lt;br /&gt;
	}&lt;br /&gt;
	if ($row[&amp;#039;status&amp;#039;] == &amp;quot;Started&amp;quot;) {&lt;br /&gt;
		print &amp;quot;&amp;lt;td class=&amp;#039;good&amp;#039;&amp;gt;Started&amp;quot;;&lt;br /&gt;
	} else {&lt;br /&gt;
		print &amp;quot;&amp;lt;td class=&amp;#039;warn&amp;#039;&amp;gt;&amp;quot;.$row[&amp;#039;status&amp;#039;];&lt;br /&gt;
	}&lt;br /&gt;
	print &amp;quot;&amp;lt;td&amp;gt;&amp;quot;.$row[&amp;#039;vc_path&amp;#039;];&lt;br /&gt;
}&lt;br /&gt;
print &amp;quot;&amp;lt;/table&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// ------------------ Layout table cell (bottom)--------------------------&lt;br /&gt;
print &amp;quot;\n&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;#039;top&amp;#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// ----------------- Detail table ---------------------------------------&lt;br /&gt;
&lt;br /&gt;
if ($vappid) {&lt;br /&gt;
	$query = &amp;quot;SELECT name, prod_name, prod_ver, prod_fver, prod_vend FROM vapp WHERE vappid=$vappid;&amp;quot;;&lt;br /&gt;
	$result = mysql_query($query);&lt;br /&gt;
&lt;br /&gt;
	if (mysql_num_rows($result) == 0) {&lt;br /&gt;
		die (&amp;quot;Unexpected error...!&amp;quot;);&lt;br /&gt;
	}&lt;br /&gt;
	$row = mysql_fetch_assoc($result);&lt;br /&gt;
	&lt;br /&gt;
	print &amp;quot;&amp;lt;h1&amp;gt;&amp;quot;.$row[&amp;#039;name&amp;#039;].&amp;quot;&amp;lt;/h1&amp;gt;\n&amp;quot;;&lt;br /&gt;
	print &amp;quot;&amp;lt;table class=&amp;#039;BasicTable&amp;#039; align=&amp;#039;center&amp;#039;&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;th colspan=2&amp;gt;Product&amp;quot;;&lt;br /&gt;
	print &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Name&amp;lt;td width=150&amp;gt;&amp;quot;.$row[&amp;#039;prod_name&amp;#039;];&lt;br /&gt;
	print &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Version&amp;lt;td&amp;gt;&amp;quot;.$row[&amp;#039;prod_ver&amp;#039;];&lt;br /&gt;
	print &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Full Version&amp;lt;td&amp;gt;&amp;quot;.$row[&amp;#039;prod_fver&amp;#039;];&lt;br /&gt;
	print &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Vendor&amp;lt;td&amp;gt;&amp;quot;.$row[&amp;#039;prod_vend&amp;#039;].&amp;quot;&amp;lt;/table&amp;gt;&amp;lt;br&amp;gt;\n&amp;quot;;&lt;br /&gt;
	&lt;br /&gt;
	$query = &amp;quot;SELECT vmid, name, is_on, ord, start_dly, start_wait, stop_dly, stop_act FROM vapp_vm JOIN vm USING (vmid) WHERE vapp_vm.vappid=$vappid ORDER BY ord, name;&amp;quot;;&lt;br /&gt;
	$result = mysql_query($query);&lt;br /&gt;
&lt;br /&gt;
	if (mysql_num_rows($result) == 0) {&lt;br /&gt;
		die (&amp;quot;No VM&amp;#039;s found in vApp...!&amp;quot;);&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	print &amp;quot;&amp;lt;table class=&amp;#039;BasicTable&amp;#039; align=&amp;#039;center&amp;#039;&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;th rowspan=2&amp;gt;Start&amp;lt;br&amp;gt;Order&amp;lt;th rowspan=2&amp;gt;VM&amp;lt;th rowspan=2&amp;gt;Power&amp;lt;th colspan=2&amp;gt;Start&amp;lt;th colspan=2&amp;gt;Stop\n&amp;quot;;&lt;br /&gt;
	print &amp;quot;&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Delay&amp;lt;br&amp;gt;&amp;lt;small&amp;gt;sec&amp;lt;/small&amp;gt;&amp;lt;th&amp;gt;Proceed&amp;lt;br&amp;gt;After&amp;lt;th&amp;gt;Delay&amp;lt;br&amp;gt;&amp;lt;small&amp;gt;sec&amp;lt;/small&amp;gt;&amp;lt;th&amp;gt;Method\n&amp;quot;;&lt;br /&gt;
	&lt;br /&gt;
	$odd_row = false;&lt;br /&gt;
	$last_ord = false;&lt;br /&gt;
	while ($row = mysql_fetch_assoc($result)) {&lt;br /&gt;
		if ($last_ord &amp;lt;&amp;gt; $row[&amp;#039;ord&amp;#039;]) {&lt;br /&gt;
			$odd_row = !$odd_row;&lt;br /&gt;
			$last_ord = $row[&amp;#039;ord&amp;#039;];&lt;br /&gt;
		}&lt;br /&gt;
		if ($odd_row) {&lt;br /&gt;
			print &amp;quot;&amp;lt;tr class=&amp;#039;odd&amp;#039;&amp;gt;&amp;quot;;&lt;br /&gt;
		} else {&lt;br /&gt;
			print &amp;quot;&amp;lt;tr&amp;gt;&amp;quot;;&lt;br /&gt;
		}&lt;br /&gt;
		print &amp;quot;&amp;lt;td class=&amp;#039;num&amp;#039;&amp;gt;&amp;quot;.$row[&amp;#039;ord&amp;#039;].&amp;quot;&amp;lt;td&amp;gt;&amp;lt;a href=&amp;#039;vm-detail.php?vmid=&amp;quot;.$row[&amp;#039;vmid&amp;#039;].&amp;quot;&amp;#039;&amp;gt;&amp;quot;.$row[&amp;#039;name&amp;#039;].&amp;quot;&amp;lt;/a&amp;gt;&amp;quot;;&lt;br /&gt;
		if ($row[&amp;#039;is_on&amp;#039;]) {&lt;br /&gt;
			print &amp;quot;&amp;lt;td class=&amp;#039;good&amp;#039;&amp;gt;ON&amp;quot;;&lt;br /&gt;
		} else {&lt;br /&gt;
			print &amp;quot;&amp;lt;td class=&amp;#039;warn&amp;#039;&amp;gt;off&amp;quot;;&lt;br /&gt;
		}&lt;br /&gt;
		print &amp;quot;&amp;lt;td class=&amp;#039;num&amp;#039;&amp;gt;&amp;quot;.$row[&amp;#039;start_dly&amp;#039;];&lt;br /&gt;
		if ($row[&amp;#039;start_wait&amp;#039;]) {&lt;br /&gt;
			print &amp;quot;&amp;lt;td&amp;gt;Tools started&amp;quot;;&lt;br /&gt;
		} else {&lt;br /&gt;
			print &amp;quot;&amp;lt;td&amp;gt;Delay expired&amp;quot;;&lt;br /&gt;
		}&lt;br /&gt;
		print &amp;quot;&amp;lt;td class=&amp;#039;num&amp;#039;&amp;gt;&amp;quot;.$row[&amp;#039;stop_dly&amp;#039;];&lt;br /&gt;
		if ($row[&amp;#039;stop_act&amp;#039;] == &amp;quot;guestShutdown&amp;quot;) {&lt;br /&gt;
			print &amp;quot;&amp;lt;td&amp;gt;Shutdown Guest&amp;quot;;&lt;br /&gt;
		} elseif ($row[&amp;#039;stop_act&amp;#039;] == &amp;quot;powerOff&amp;quot;) {&lt;br /&gt;
			print &amp;quot;&amp;lt;td&amp;gt;Power Off VM&amp;quot;;&lt;br /&gt;
		} else {&lt;br /&gt;
			print &amp;quot;&amp;lt;td&amp;gt;&amp;quot;.$row[&amp;#039;stop_act&amp;#039;];&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
	print &amp;quot;&amp;lt;/table&amp;gt;&amp;quot;;&lt;br /&gt;
	&lt;br /&gt;
} else {&lt;br /&gt;
	print &amp;quot;Select a vApp...\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// ------------------- Layout table end ------------------------------&lt;br /&gt;
print &amp;quot;&amp;lt;/table&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
print &amp;quot;&amp;lt;br&amp;gt;&amp;lt;a href=&amp;#039;index.php&amp;#039;&amp;gt;Search page&amp;lt;/a&amp;gt; &amp;amp;nbsp &amp;lt;a href=&amp;#039;status.php&amp;#039;&amp;gt;Status page&amp;lt;/a&amp;gt;&amp;lt;br&amp;gt;\n&amp;quot;;&lt;br /&gt;
	&lt;br /&gt;
$time = round((microtime(true) - $time_start)*1000);&lt;br /&gt;
print &amp;quot;Page took $time msecs to execute on server&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// ------------------- End of HTML ---------------------------------&lt;br /&gt;
print &amp;quot;&amp;lt;/body&amp;gt;&amp;lt;html&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// ================ FUNCTIONS ============================&lt;br /&gt;
&lt;br /&gt;
function search_char ($text) {&lt;br /&gt;
	&lt;br /&gt;
	return (str_replace(array(&amp;quot;*&amp;quot;, &amp;quot;?&amp;quot;), array(&amp;quot;%&amp;quot;, &amp;quot;_&amp;quot;), trim($text)));&lt;br /&gt;
}&lt;br /&gt;
	&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Sstrutt</name></author>
	</entry>
</feed>