mirror of
				https://github.com/xcat2/xcat-core.git
				synced 2025-10-31 11:22:27 +00:00 
			
		
		
		
	the web page for "RMC event ", and the web page for /home/control" are modified.
git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@4735 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
		| @@ -32,8 +32,8 @@ | ||||
|  | ||||
| .dataTables_wrapper { | ||||
| 	position: relative; | ||||
| 	min-height: 302px; | ||||
| 	_height: 302px; | ||||
| 	min-height: 231px; /*mxi1: changed from 302 to 131*/ | ||||
| 	_height: 231px;    /*mxi1: changed from 302 to 131*/ | ||||
| 	clear: both; | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -117,8 +117,9 @@ a.button:active span { | ||||
| } | ||||
|  | ||||
| #rangedisplay { | ||||
| 	float: left; | ||||
| 	float: right; | ||||
| 	text-align: left; | ||||
|         width: 650px; | ||||
| 	width: auto; | ||||
| } | ||||
| #nrtree { | ||||
| @@ -279,9 +280,9 @@ padding:10px 2px; | ||||
| 	color: #ddd; | ||||
| } | ||||
| .mContent { | ||||
| 	padding: 10px; | ||||
| 	padding: 5px; | ||||
| 	padding-top: 0px; | ||||
| 	margin: 10px; | ||||
| 	margin: 5px; | ||||
| 	margin-top: 0px; | ||||
| 	text-align: left; | ||||
| 	color: #555; | ||||
| @@ -302,8 +303,9 @@ padding:10px 2px; | ||||
|  	color:#6ea1fa;   | ||||
| } | ||||
| .nrcmd { | ||||
| 	float: right; | ||||
| 	text-align: left; | ||||
| 	float: left; | ||||
| 	text-align: right; | ||||
|         width: 916px; | ||||
| } | ||||
| .mapper span { | ||||
| 	float: left; | ||||
| @@ -386,30 +388,7 @@ padding:10px 2px; | ||||
| } | ||||
|  | ||||
|  | ||||
| #monsetting_tips { | ||||
|     width: 920px; | ||||
|     margin: 5px; | ||||
|     padding: 5px; | ||||
|     float: left; | ||||
| } | ||||
|  | ||||
| #rmcSrcList { | ||||
|     width: 420px; | ||||
|     margin: 5px; | ||||
|     padding: 5px; | ||||
|     float: left; | ||||
|     background-color:silver; | ||||
|     height: 480px; | ||||
|     overflow-y: scroll; | ||||
| } | ||||
|  | ||||
| #rmcScrAttr { | ||||
|     width: 420px; | ||||
|     margin: 5px; | ||||
|     padding: 5px; | ||||
|     float: left; | ||||
|     background-color:silver; | ||||
| } | ||||
|  | ||||
| #options { | ||||
|     width: 880px; | ||||
|   | ||||
| @@ -127,7 +127,7 @@ fieldset { | ||||
| } | ||||
|  | ||||
| #condresp { | ||||
|     width: 71%; | ||||
|     width: 97%; | ||||
|     margin: 5px; | ||||
|     padding: 5px; | ||||
|     float: left; | ||||
| @@ -135,40 +135,54 @@ fieldset { | ||||
|     border: 1px solid orange; | ||||
| } | ||||
|  | ||||
| #assocaition { | ||||
| #association { | ||||
|     margin: 5px; | ||||
|     padding: 5px; | ||||
|     float:left; | ||||
|     display: block; | ||||
|     width: 94%; | ||||
|     border: 1px solid lime; | ||||
| } | ||||
|  | ||||
| #avail_cond { | ||||
|     width: 33%; | ||||
|     margin: 5px; | ||||
|     padding: 5px; | ||||
|     width: 40%; | ||||
|     margin: 3px; | ||||
|     padding: 3px; | ||||
|     float: left; | ||||
|     background-color: #ffee33; | ||||
|     border: 1px solid lime; | ||||
| } | ||||
|  | ||||
| #avail_cond tbody { | ||||
|     overflow-y: scroll; | ||||
|     overflow-x: hide; | ||||
| } | ||||
|  | ||||
| #condition .ui-selecting {background: #FECA40;} | ||||
| #condition .ui-selected { background: #F39814; color: white; } | ||||
| #condition {list-style-type: none; margin: 0; padding: 0;} | ||||
|  | ||||
| #avail_resp { | ||||
|     width: 60%; | ||||
|     margin: 5px; | ||||
|     padding: 5px; | ||||
|     width: 50%; | ||||
|     margin: 3px; | ||||
|     padding: 3px; | ||||
|     float: left; | ||||
|     background-color: #eeffee; | ||||
|     border: 1px solid lime; | ||||
| } | ||||
|  | ||||
| #avail_resp tbody { | ||||
| /*For the RMC resources and their attributes*/ | ||||
| #monsetting_tips { | ||||
|     width: 97%; | ||||
|     margin: 3px; | ||||
|     padding: 1px; | ||||
|     float: left; | ||||
| } | ||||
|  | ||||
| #rmcSrcList { | ||||
|     width: 48%; | ||||
|     margin: 3px; | ||||
|     padding: 1px; | ||||
|     float: left; | ||||
|     background-color:silver; | ||||
|     height: 480px; | ||||
|     overflow-y: scroll; | ||||
|     overflow-x: hide; | ||||
| } | ||||
| } | ||||
|  | ||||
| #rmcSrcAttr { | ||||
|     width: 48%; | ||||
|     margin: 3px; | ||||
|     padding: 1px; | ||||
|     float: left; | ||||
|     background-color:silver; | ||||
| } | ||||
| /**/ | ||||
|   | ||||
| @@ -25,7 +25,7 @@ jQuery.fn.customInput = function(){//from http://www.filamentgroup.com/examples/ | ||||
| 						$(this).addClass('checkedHover'); | ||||
| 					} | ||||
| 				}, | ||||
| 				function(){ $(this).removeClass('hover checkedHover'); } | ||||
| 				function(){$(this).removeClass('hover checkedHover');} | ||||
| 			); | ||||
|  | ||||
| 			//bind custom event, trigger it, bind click,focus,blur events | ||||
| @@ -38,7 +38,7 @@ jQuery.fn.customInput = function(){//from http://www.filamentgroup.com/examples/ | ||||
| 					}; | ||||
| 					label.addClass('checked'); | ||||
| 				} | ||||
| 				else { label.removeClass('checked checkedHover checkedFocus'); } | ||||
| 				else {label.removeClass('checked checkedHover checkedFocus');} | ||||
|  | ||||
| 			}) | ||||
| 			.trigger('updateState') | ||||
| @@ -51,7 +51,7 @@ jQuery.fn.customInput = function(){//from http://www.filamentgroup.com/examples/ | ||||
| 					$(this).addClass('checkedFocus'); | ||||
| 				} | ||||
| 			}) | ||||
| 			.blur(function(){ label.removeClass('focus checkedFocus'); }); | ||||
| 			.blur(function(){label.removeClass('focus checkedFocus');}); | ||||
| 		} | ||||
| 	}); | ||||
| }; | ||||
| @@ -159,23 +159,31 @@ function appmonSetStat() | ||||
| function mkCondResp() | ||||
| { | ||||
|     //get the name of the selected condition | ||||
|     //then, get the selected noderange | ||||
|     //then, get the response in "checked" status | ||||
|     //then, run the command "mkcondresp" | ||||
|     var cond_val = $(':input[name=conditions][checked]').val(); | ||||
|     if(cond_val) { | ||||
|         //get the response in "checked" status | ||||
|         var resps_obj = $(':input[name=responses][checked]'); | ||||
|         if(resps_obj) { | ||||
|             $.each(resps_obj,function(i,n) { | ||||
|                 //i is the index | ||||
|                 //n is the content | ||||
|                 //TODO:add one new php file to handle "mkcondresp" command | ||||
|                 $.get("monitor/makecondresp.php", {cond: cond_val, resp: n.value}, function(data) { | ||||
|                     $("#devstatus").html(data); | ||||
|                 }); | ||||
|     var value="";//the noderange selected from the osi tree | ||||
|     var i=0; | ||||
|     var node_selected = nrtree.selected_arr; | ||||
|     for(; i< node_selected.length; i++) { | ||||
|         value += node_selected[i].attr('id'); | ||||
|     } | ||||
|     //remove the "," at the front | ||||
|     value = value.substr(1); | ||||
|     var resps_obj = $(':input[name=responses][checked]'); | ||||
|     if(cond_val && resps_obj && value) { | ||||
|         $.each(resps_obj,function(i,n) { | ||||
|             //i is the index | ||||
|             //n is the content | ||||
|             //TODO:add one new php file to handle "mkcondresp" command | ||||
|             $.get("monitor/makecondresp.php", {cond: cond_val, resp: n.value, nr: value}, function(data) { | ||||
|                     //nothing to do right now. | ||||
|             }); | ||||
|         $("#association").load("monitor/updateCondRespTable.php"); | ||||
|         } | ||||
|         }); | ||||
|         $("#notify_me").html("<p>The associations are created!</p>"); | ||||
|         $("#notify_me").addClass("ui-state-highlight"); | ||||
|         $("#association table tbody").load("monitor/updateCondRespTable.php"); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @@ -201,5 +209,17 @@ function control_RMCAssoc(cond, node, resp, action) | ||||
|     ); | ||||
| } | ||||
|  | ||||
| /*when one RMC Resource is selected, this function is called to display its attributes*/ | ||||
| function showRMCAttrib() | ||||
| { | ||||
|     var class_val = $('input[name=classGrp]:checked').val(); | ||||
|     if(class_val) { | ||||
|         $.get("monitor/rmc_resource_attr.php", {name: class_val}, function(data) { | ||||
|             $("#rmcSrcAttr").html(data); | ||||
|         }); | ||||
|     } | ||||
| } | ||||
|  | ||||
|  | ||||
| // for the progress bar | ||||
| myBar.loaded('monitor.js'); | ||||
| @@ -400,16 +400,6 @@ function goto_next() | ||||
|     } | ||||
| } | ||||
|  | ||||
| function showRMCAttrib() | ||||
| { | ||||
|     var class_val = $('input[@name=classGrp][@checked]').val(); | ||||
|     if(class_val) { | ||||
|         $.get("monitor/rmc_resource_attr.php", {name: class_val}, function(data) { | ||||
|             $("#rmcScrAttr").html(data); | ||||
|         }); | ||||
|     } | ||||
| } | ||||
|  | ||||
| function show_monshow_data(type,range) | ||||
| { | ||||
|     //type = "text" or "graph" | ||||
|   | ||||
| @@ -76,7 +76,7 @@ function openDialog(){ | ||||
|             } else { | ||||
|                 $("#password").focus(); | ||||
|             } | ||||
|         }, | ||||
|         } | ||||
|     }); | ||||
|  | ||||
|     $("#username").keydown(function(event) { //When 'enter' is hit while in username, advance to password | ||||
| @@ -86,7 +86,13 @@ function openDialog(){ | ||||
|     }); | ||||
|     $("#password").keydown(function(event) { //Submit authentication if enter is pressed in password field | ||||
|         if (event.keyCode==13) { | ||||
|             authenticate(); | ||||
|             //TODO: it doesn't work on Chrome and Safari | ||||
|             $(".ui-dialog-buttonpane button").each(function() { | ||||
|                 if($(this).html() == "Log In") { | ||||
|                     $(this).click(); | ||||
|                 } | ||||
|             }); | ||||
|             //authenticate(); | ||||
|         } | ||||
|     }); | ||||
| 	   | ||||
|   | ||||
| @@ -360,8 +360,8 @@ displayMapper(array('home'=>'main.php', 'control' =>'')); | ||||
|  | ||||
| function displayNrTree(){ | ||||
| echo <<<EOS | ||||
| <div id=nrtree></div> | ||||
| <div id='rangedisplay' class='mContent'><h1>Please select a node or noderange on the left.</h1> | ||||
| <div id=nrtree style='width:27%'></div> | ||||
| <div id='rangedisplay' class='mContent' style='width:70%'><h1>Please select a node or noderange on the left.</h1> | ||||
| <p>You can use ctrl-click to select more than one node grouping, </p> | ||||
| <p>or expand the noderanges to select individual nodes.</p></div> | ||||
| <script type="text/javascript" type"utf-8"> | ||||
| @@ -384,6 +384,7 @@ EOSS; | ||||
| } | ||||
|  | ||||
| function displayRangeList($nr, $cmd){ | ||||
|     echo "<div style='width:95%'>"; | ||||
| 	if($cmd == ""){ | ||||
| 		displayCommands($nr); | ||||
| 		return; | ||||
| @@ -403,6 +404,7 @@ function displayRangeList($nr, $cmd){ | ||||
| 	}else{ | ||||
| 		echo "I don't recognize the command: $cmd"; | ||||
| 	} | ||||
|     echo "</div>"; | ||||
| } | ||||
|  | ||||
| function displayCommands($nr){ | ||||
| @@ -455,49 +457,52 @@ EOF; | ||||
| } | ||||
|  | ||||
| function controlRunCmd($nr, $cmd, $subcmd){ | ||||
| 	$rvals = docmd($cmd, $nr, array($subcmd)); | ||||
| 	#print_r($rvals); | ||||
| 	$headers = attributesOfNodes($rvals,$cmd); | ||||
| 	#echo "<br><br>Headers:<br>"; | ||||
| //echo <<<JS00 | ||||
| //<script type="text/javascript" type"utf-8"> | ||||
| //$(document).ready(function() { | ||||
| //    $("#tableForCtrl").dataTable({ | ||||
| //        "bLengthChange": true, | ||||
| //        "bFilter": true, | ||||
| //        "bSort": true | ||||
| //    }); | ||||
| //}); | ||||
| //</script> | ||||
| //JS00; | ||||
|     echo "<div id=tableForCtrl>"; | ||||
|     $rvals = docmd($cmd, $nr, array($subcmd)); | ||||
|     #print_r($rvals); | ||||
|     $headers = attributesOfNodes($rvals,$cmd); | ||||
|     #echo "<br><br>Headers:<br>"; | ||||
| 	#print_r($headers); | ||||
| 	$nh = mkNodeHash($rvals,$cmd); | ||||
| 	#echo "<br><br><br>"; | ||||
| 	#print_r($nh); | ||||
| 	echo "<table class='tablesorter' cellspacing='1'>"; | ||||
| 	echo "<thead>\n"; | ||||
| 	echo "<tr>"; | ||||
| 	echo "<th>Node</th>"; | ||||
| 	foreach ($headers as $head){ | ||||
| 		echo "<th>$head</th>";	 | ||||
| 	} | ||||
| 	echo "</tr>"; | ||||
| 	echo "</thead><tbody>"; | ||||
| 	$ooe = 0; | ||||
| 	foreach($nh as $n => $vals){ | ||||
| 		$cl = "ListLine$ooe"; | ||||
| 		echo "<tr>\n"; | ||||
| 		#echo "<td class='$cl'>$n</td>"; | ||||
| 		echo "<td>$n</td>"; | ||||
| 		foreach($headers as $h){ | ||||
| 			if($vals[$h] == ''){ | ||||
| 				echo " "; | ||||
| 			}else{ | ||||
| 				#echo "<td class='$cl'>" . $vals[$h] . "</td>"; | ||||
| 				echo "<td>" . $vals[$h] . "</td>"; | ||||
| 			} | ||||
| 		}	 | ||||
| 		echo "</tr>\n"; | ||||
| 		$ooe = 1 - $ooe; | ||||
| 	} | ||||
| 	echo "</tbody>"; | ||||
| 	echo "</table>\n"; | ||||
| 	echo <<<JS | ||||
| <script type="text/javascript" type"utf-8"> | ||||
|  $("table").tablesorter({ | ||||
|                         sortList: [[0,0]] | ||||
|                 }); | ||||
| </script> | ||||
| JS; | ||||
|     $nh = mkNodeHash($rvals,$cmd); | ||||
|     #echo "<br><br><br>"; | ||||
|     echo "<table style='width:100%'>"; | ||||
|     echo "<thead>"; | ||||
|     echo "<tr>"; | ||||
|     echo "<th>Node</th>"; | ||||
|     foreach ($headers as $head){ | ||||
|             echo "<th>$head</th>"; | ||||
|     } | ||||
|     echo "</tr>"; | ||||
|     echo "</thead><tbody>"; | ||||
|     foreach($nh as $n => $vals){ | ||||
|             echo "<tr>\n"; | ||||
|             #echo "<td class='$cl'>$n</td>"; | ||||
|             echo "<td>$n</td>"; | ||||
|             foreach($headers as $h){ | ||||
|                     if($vals[$h] == ''){ | ||||
|                             echo " "; | ||||
|                     }else{ | ||||
|                             #echo "<td class='$cl'>" . $vals[$h] . "</td>"; | ||||
|                             echo "<td>" . $vals[$h] . "</td>"; | ||||
|                     } | ||||
|             } | ||||
|             echo "</tr>"; | ||||
|     } | ||||
|     echo "</tbody>"; | ||||
|     echo "</table>"; | ||||
|     echo "</div>"; | ||||
|  | ||||
| } | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -258,23 +258,36 @@ function mkNodeHash ($ht,$cmd){ | ||||
| 	$name = ""; | ||||
| 	$desc = ""; | ||||
| 	$cont = ""; | ||||
| 	foreach($ht->children() as $response){ | ||||
| 		foreach($response as $node){ | ||||
| 			#print_r($response); | ||||
| 			$name = (string) $node->name; | ||||
| 			$desc = (string) $node->data->desc; | ||||
| 			if($cmd == 'rpower'){  | ||||
| 				$desc = 'Power Status'; | ||||
| 			}elseif($cmd == 'rbeacon'){ | ||||
| 				$desc = 'Beacon Status'; | ||||
| 			} | ||||
| 			$cont = (string) $node->data->contents; | ||||
| 			if($cont == ''){ | ||||
| 				$cont = (string) $node->error; | ||||
| 			} | ||||
| 			$arr[$name][$desc] = $cont; | ||||
| 		} | ||||
| 	foreach($ht->children() as $response) foreach($response->children() as $node) { | ||||
|             if($node->name) { | ||||
|                 $name = (string) $node->name; | ||||
|                 $desc = (string) $node->data->desc; | ||||
|                 if($cmd == 'rpower'){ | ||||
|                     $desc = 'Power Status'; | ||||
|                 }elseif($cmd == 'rbeacon'){ | ||||
|                     $desc = 'Beacon Status'; | ||||
|                 } | ||||
|                 $cont = (string) $node->data->contents; | ||||
|                 if($cont == ''){ | ||||
|                     $cont = (string) $node->error; | ||||
|                 } | ||||
|                 $arr[$name][$desc] = $cont; | ||||
|             } | ||||
| //                #print_r($response); | ||||
| //                $name = (string) $node->name; | ||||
| //                $desc = (string) $node->data->desc; | ||||
| //                if($cmd == 'rpower'){ | ||||
| //                        $desc = 'Power Status'; | ||||
| //                }elseif($cmd == 'rbeacon'){ | ||||
| //                        $desc = 'Beacon Status'; | ||||
| //                } | ||||
| //                $cont = (string) $node->data->contents; | ||||
| //                if($cont == ''){ | ||||
| //                        $cont = (string) $node->error; | ||||
| //                } | ||||
| //                $arr[$name][$desc] = $cont; | ||||
| 	} | ||||
| 	 | ||||
| 	// add the more fields so we can click in place. | ||||
| 	if($cmd == 'rpower'){ | ||||
| 		foreach($arr as $n => $val){ | ||||
|   | ||||
| @@ -67,7 +67,7 @@ function displayOSITree() | ||||
| { | ||||
|     //display the node range tree, but only with the nodes with OSI type | ||||
|     //this follows the function showNrTreeInput(); | ||||
|         echo "<div id=nrtree-input class='ui-state-default ui-corner-all'>"; | ||||
|         echo "<div id=nrtree-input class='ui-corner-all'>"; | ||||
| echo <<<TOS3 | ||||
| <script type="text/javascript"> | ||||
|     $(function() { | ||||
| @@ -130,7 +130,13 @@ echo <<<TOS6 | ||||
|             <td>$record[7]</td> | ||||
| TOS6; | ||||
|         //TODO: insert the button here | ||||
|         echo "<td>Button</td>"; | ||||
|         echo "<td>"; | ||||
|         if($record[7] == "Active") { | ||||
|             echo "<button class='fg-button ui-corner-all'>Disable</button>"; | ||||
|         }else { | ||||
|             echo "<button class='fg-button ui-corner-all'>Enable</button>"; | ||||
|         } | ||||
|         echo "</td>"; | ||||
|         echo "</tr>"; | ||||
| //        $association = explode("=", $data); | ||||
| // | ||||
| @@ -170,8 +176,7 @@ function displayCond() | ||||
| { | ||||
|     //display all the avaiable conditions to a <table> element | ||||
| echo <<<COND | ||||
| <div id="avail_cond"> | ||||
| <b>Available Conditions</b> | ||||
| <div id="avail_cond" style="display:none"> | ||||
| <table> | ||||
|     <thead> | ||||
|         <tr class="colHeaders"> | ||||
| @@ -200,17 +205,7 @@ echo <<<TOS99 | ||||
|         </tr> | ||||
| TOS99; | ||||
|     } | ||||
| //    $ooe = 0; | ||||
| //    $line = 0; | ||||
| //    foreach($conditions as $elem) { | ||||
| //        $ooe = $ooe%2; | ||||
| //        echo "<tr class='ListLine$ooe' id='row$line'>"; | ||||
| //        echo "<td><input type=\"radio\" name=\"conditions\" value=\"$elem\" /></td>"; | ||||
| //        echo "<td>$elem</td>"; | ||||
| //        echo "</tr>"; | ||||
| //        $ooe++; | ||||
| //        $line++; | ||||
| //    } | ||||
|  | ||||
|     echo "</tbody></table></div>"; | ||||
|     return 0; | ||||
|  | ||||
| @@ -219,13 +214,12 @@ TOS99; | ||||
| function displayResp() | ||||
| { | ||||
| echo <<<RESP | ||||
| <div id="avail_resp"> | ||||
| <b>Available Response</b> | ||||
| <table id="tabTable" class="tabTable" cellspacing="1"> | ||||
| <div id="avail_resp" style="display:none"> | ||||
| <table> | ||||
|     <thead> | ||||
|         <tr class="colHeaders"> | ||||
|             <td></td> | ||||
|             <td>Response</td> | ||||
|             <th></td> | ||||
|             <th>Response</td> | ||||
|         </tr> | ||||
|     </thead> | ||||
|     <tbody> | ||||
| @@ -242,15 +236,6 @@ echo <<<TOS7 | ||||
| TOS7; | ||||
|       echo "</tr>"; | ||||
|   } | ||||
| //  foreach($responses as $elem) { | ||||
| //      $ooe = $ooe%2; | ||||
| //      echo "<tr class='ListLine$ooe' id='row$line'>"; | ||||
| //      echo "<td><input type='checkbox' name='responses' value='$elem' /></td>"; | ||||
| //      echo "<td>$elem</td>"; | ||||
| //      echo "</tr>"; | ||||
| //      $ooe++; | ||||
| //      $line++; | ||||
| //  } | ||||
|     echo '</tbody></table></div>'; | ||||
|     return 0; | ||||
| } | ||||
| @@ -258,11 +243,53 @@ TOS7; | ||||
| function displayCondResp() | ||||
| { | ||||
|     echo '<div id="condresp">'; | ||||
| echo <<<JS00 | ||||
|     <script type="text/javascript"> | ||||
|     $(function() { | ||||
|         $("#nrtree-input").hide(); | ||||
|         $("#showOpt4association").click(function() { | ||||
|             if($("#avail_cond").css("display") == "none") { | ||||
|                 $("#nrtree-input").show(); | ||||
|                 $("#assobuttonsets").show(); | ||||
|                 $("#avail_cond").show(); | ||||
|                 $("#avail_resp").show(); | ||||
|             } | ||||
|         }); | ||||
|         $("#addAssociation").click(function() { | ||||
|             mkCondResp(); | ||||
|         }); | ||||
|  | ||||
|         $("#cancelAssociation").click(function() { | ||||
|             clearEventDisplay(); | ||||
|         }); | ||||
|     }); | ||||
|     </script> | ||||
| JS00; | ||||
|     echo "<div style='display:block'>"; | ||||
|     displayAssociation(); | ||||
|     echo "</div>"; | ||||
|     echo "<div id='showOpt4association' style='display:block; border:1px solid lime;' class='ui-state-active'>"; | ||||
| echo <<<TOS00 | ||||
| <span class="ui-icon ui-icon-triangle-1-e" style="position:absolute"></span> | ||||
| <p>Click here if you want to create new associations...</p> | ||||
| TOS00; | ||||
|     echo "</div>"; | ||||
|     echo "<div id=notify_me></div>"; | ||||
|     echo "<div style='display:block'>"; | ||||
|     displayOSITree(); | ||||
|     echo "<div style='border: 1px dotted orange; float:right; width:73%'>"; | ||||
| echo <<<BTN00 | ||||
|     <div id="assobuttonsets" style="display:none"> | ||||
|         <button id="addAssociation" class="fg-button ui-corner-all">Apply</button> | ||||
|         <button id="cancelAssociation" class="fg-button ui-corner-all">Cancel</button> | ||||
|     </div> | ||||
| BTN00; | ||||
|     echo "<div>"; | ||||
|     displayCond(); | ||||
|     displayResp(); | ||||
|     insertButtons(array('label'=>'Add', id=>'addAssociation', 'onclick'=>'mkCondResp()')); | ||||
|     insertButtons(array('label'=>'Cancel', id=>'cancel_op', 'onclick'=>'clearEventDisplay()')); | ||||
|     echo "</div>"; | ||||
|     echo "</div>"; | ||||
|     echo "</div>"; | ||||
|     echo '</div>'; | ||||
| } | ||||
|  | ||||
| @@ -329,9 +356,18 @@ function RMCEventLogToTable() | ||||
| //displayRMCEventLog() to display the RMC event logs in one table with "tablesorter" class | ||||
| function displayRMCEvnetLog() | ||||
| { | ||||
| echo '<div class="mContent">'; | ||||
| echo '<div id=lseventLog>'; | ||||
| echo <<<TOS8 | ||||
| <script type="text/javascript" type"utf-8"> | ||||
| $("#lseventLog").dataTable({ | ||||
|     "bLengthChange": false, | ||||
|     "bFilter": true, | ||||
|     "bSort": true | ||||
| }); | ||||
| </script> | ||||
| TOS8; | ||||
| echo <<<TOS9 | ||||
| <table id="lsevent_tab" class="tablesorter" cellspacing="1"> | ||||
| <table> | ||||
| <thead> | ||||
|     <tr> | ||||
|         <th>Time</th> | ||||
| @@ -343,11 +379,6 @@ TOS9; | ||||
|     RMCEventLogToTable(); | ||||
|     echo "</tbody></table>"; | ||||
|     //TODO: the following javascript doesn't work well. | ||||
| echo <<<TOS8 | ||||
| <script type="text/javascript" type"utf-8"> | ||||
|  $("#lsevent_tab").tablesorter({ sortList:  [[0,1],[1,1]] }); | ||||
| </script> | ||||
| TOS8; | ||||
|     echo "</div>"; | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -12,7 +12,9 @@ require_once "$TOPDIR/lib/monitor_display.php"; | ||||
|  | ||||
| $cond = '"' . $_REQUEST["cond"] . '"'; | ||||
| $resp = '"' . $_REQUEST["resp"] . '"'; | ||||
| $nr = '"' . $_REQUEST["nr"] . '"'; | ||||
|  | ||||
| //Fixit: The parameter $nr can't work right now. | ||||
| $xml=docmd("webrun", '', array("mkcondresp $cond $resp")); | ||||
| if(getXmlErrors($xml, $errors)) { | ||||
|     echo "<p class=Error>",implode(' ', $errors), "</p>"; | ||||
|   | ||||
| @@ -109,9 +109,15 @@ TOS11; | ||||
|         echo <<<TOS15 | ||||
|         <div> | ||||
|             <p class='ui-state-highlight'>For your convenience, all the available RMC Resources and their attributes will list here</p> | ||||
|              | ||||
|         </div> | ||||
|         <div id=monsetting_tips> | ||||
|         <div id=rmcSrcList> | ||||
| TOS15; | ||||
|         displayRMCRsrc(); | ||||
|         echo "</div><div id=rmcSrcAttr>"; | ||||
|         displayRMCAttr(); | ||||
|         echo "</div> | ||||
|         </div> | ||||
|         </div>"; | ||||
|     } | ||||
|     echo "</div>"; | ||||
| } | ||||
| @@ -122,13 +128,34 @@ TOS15; | ||||
| function showRMCAssocTab() | ||||
| { | ||||
|     echo "<div>"; | ||||
|  | ||||
|     displayAssociation(); | ||||
|     echo "</div>"; | ||||
| } | ||||
|  | ||||
| function showPluginView($name) | ||||
| { | ||||
|     //TODO | ||||
|     // | ||||
|     echo "<div id=rmcViewAccord>"; | ||||
|     echo <<<JS11 | ||||
|     <script type="text/javascript"> | ||||
|     $(function() { | ||||
|         $("#rmcViewAccord").accordion({autoHeight: false}); | ||||
|     }); | ||||
|     </script> | ||||
| JS11; | ||||
|     echo <<<ACD01 | ||||
|     <h3><a href="#">RMC Event Log</a></h3> | ||||
|     <div> | ||||
|     <p>TODO</p> | ||||
|     </div> | ||||
| ACD01; | ||||
|     echo <<<ACD02 | ||||
|     <h3><a href="#">RMC Performance Monitoring</a></h3> | ||||
|     <div> | ||||
|     <p>TODO</p> | ||||
|     </div> | ||||
| ACD02; | ||||
|     echo "</div>"; | ||||
| } | ||||
|  | ||||
| function updatePluginStat($name) | ||||
|   | ||||
| @@ -14,14 +14,13 @@ require_once "$TOPDIR/lib/monitor_display.php"; | ||||
|  | ||||
| displayMapper(array('home'=>'main.php', 'monitor' =>'monitor/monlist.php', 'RMC Event Setup' => '')); | ||||
|  | ||||
| displayTips(array( | ||||
|         "All the conditions and the responses are here;", | ||||
|         "Use \"mkcondition\" and \"mkresponse\" to create new conditions and new responses", | ||||
|         "Select the condition, and response to create condition/response association" | ||||
|     )); | ||||
| //displayTips(array( | ||||
| //        "All the conditions and the responses are here;", | ||||
| //        "Use \"mkcondition\" and \"mkresponse\" to create new conditions and new responses", | ||||
| //        "Select the condition, and response to create condition/response association" | ||||
| //    )); | ||||
| echo "<div>"; | ||||
|     //TODO:one "text input" widget should be put here, to allow the user to input noderange | ||||
| displayOSITree(); | ||||
| displayCondResp(); | ||||
| echo "</div>"; | ||||
| ?> | ||||
|   | ||||
| @@ -1,8 +1,5 @@ | ||||
| <?php | ||||
| /*  | ||||
|  * To change this template, choose Tools | Templates | ||||
|  * and open the template in the editor. | ||||
|  */ | ||||
|  | ||||
|  | ||||
| if(!isset($TOPDIR)) { $TOPDIR="..";} | ||||
|  | ||||
|   | ||||
| @@ -10,19 +10,19 @@ require_once "$TOPDIR/lib/security.php"; | ||||
| require_once "$TOPDIR/lib/display.php"; | ||||
| require_once "$TOPDIR/js/jsonwrapper.php"; | ||||
|  | ||||
| echo <<<TOS5 | ||||
| <b>Available Condition/Response Associations</b> | ||||
| <table id="tabTable" class="tabTable" cellspacing="1"> | ||||
|     <thead> | ||||
|         <tr class="colHeaders"> | ||||
|             <td>Condition</td> | ||||
|             <td>Response</td> | ||||
|             <td>Node</td> | ||||
|             <td>State</td> | ||||
|         </tr> | ||||
|     </thead> | ||||
|     <tbody> | ||||
| TOS5; | ||||
| //echo <<<TOS5 | ||||
| //<table> | ||||
| //    <thead> | ||||
| //        <tr> | ||||
| //            <th>Condition</td> | ||||
| //            <th>Response</td> | ||||
| //            <th>Node</td> | ||||
| //            <th>State</td> | ||||
| //            <th>Action</td> | ||||
| //        </tr> | ||||
| //    </thead> | ||||
| //    <tbody> | ||||
| //TOS5; | ||||
|     $xml = docmd("webrun", "", array("lscondresp")); | ||||
|     if(getXmlErrors($xml,$errors)) { | ||||
|         echo "<p class=Error>",implode(' ', $errors), "</p>"; | ||||
| @@ -31,29 +31,52 @@ TOS5; | ||||
|     //get all the condition&response associations for RMC | ||||
|     foreach ($xml->children() as $response) foreach($response->children() as $data) { | ||||
|         //get the data from xcatd | ||||
|         $association = explode("=", $data); | ||||
|  | ||||
|         $ooe = 0; | ||||
|         $line = 0; | ||||
|         foreach($association as $elem) { | ||||
|             $ooe = $ooe%2; | ||||
|             //the format should be | ||||
|             //"NodeReachability"\t"EmailRootOffShift"\t"hv8plus01.ppd.pok.ibm.com"\t"Active" | ||||
|             $record = explode("\"", $elem); | ||||
|             $cond = $record[1]; | ||||
|             $resp = $record[3]; | ||||
|             $node = $record[5]; | ||||
|             $state = $record[7]; | ||||
|             echo "<tr class='ListLine$ooe' id='row$line'>"; | ||||
|             echo "<td>$cond</td>"; | ||||
|             echo "<td>$resp</td>"; | ||||
|             echo "<td>$node</td>"; | ||||
|             echo "<td>$state</td>"; | ||||
|             echo "</tr>"; | ||||
|             $ooe++; | ||||
|             $line++; | ||||
|         $record = split('"',$data); | ||||
|         echo "<tr>"; | ||||
| echo <<<TOS6 | ||||
|             <td>$record[1]</td> | ||||
|             <td>$record[3]</td> | ||||
|             <td>$record[5]</td> | ||||
|             <td>$record[7]</td> | ||||
| TOS6; | ||||
|         //TODO: insert the button here | ||||
|         echo "<td>"; | ||||
|         if($record[7] == "Active") { | ||||
|             echo "<button class='fg-button ui-corner-all'>Disable</button>"; | ||||
|         }else { | ||||
|             echo "<button class='fg-button ui-corner-all'>Enable</button>"; | ||||
|         } | ||||
|         echo "</td>"; | ||||
|         echo "</tr>"; | ||||
| //        $association = explode("=", $data); | ||||
| // | ||||
| //        $ooe = 0; | ||||
| //        $line = 0; | ||||
| //        foreach($association as $elem) { | ||||
| //            $ooe = $ooe%2; | ||||
| //            //the format should be | ||||
| //            //"NodeReachability"\t"EmailRootOffShift"\t"hv8plus01.ppd.pok.ibm.com"\t"Active" | ||||
| //            $record = explode("\"", $elem); | ||||
| //            $cond = $record[1]; | ||||
| //            $resp = $record[3]; | ||||
| //            $node = $record[5]; | ||||
| //            $state = $record[7]; | ||||
| //            echo "<tr class='ListLine$ooe' id='row$line'>"; | ||||
| //            echo "<td>$cond</td>"; | ||||
| //            echo "<td>$resp</td>"; | ||||
| //            echo "<td>$node</td>"; | ||||
| //            echo "<td>$state</td>"; | ||||
| //            echo "<td>"; | ||||
| //            if($state == "Active") { | ||||
| //                insertButtons(array('label'=>'DeActivate', 'id'=>'deactivate', 'onclick'=>"control_RMCAssoc(\"$cond\", \"$node\", \"$resp\", \"stop\")")); | ||||
| //            }else if($state == "Not active"){ | ||||
| //                insertButtons(array('label'=>'Activate', 'id'=>'activate', 'onclick'=>"control_RMCAssoc(\"$cond\", \"$node\", \"$resp\", \"start\")")); | ||||
| //            } | ||||
| //            echo "</td>"; | ||||
| //            echo "</tr>"; | ||||
| //            $ooe++; | ||||
| //            $line++; | ||||
| //        } | ||||
|     } | ||||
|     echo "</tbody></table>"; | ||||
|  | ||||
| //    echo "</tbody></table>"; | ||||
| ?> | ||||
|   | ||||
| @@ -6,58 +6,47 @@ | ||||
|         require_once "lib/functions.php"; | ||||
|         require_once "lib/display.php"; | ||||
| ?> | ||||
| <!-- <script type="text/javascript" src="js/jquery.tablesorter.js"></script> | ||||
| <script type="text/javascript" type"utf-8"> | ||||
|         $(document).ready(function() { | ||||
|                 $("table").tablesorter({ | ||||
| 			sortList: [[0,0]] | ||||
| 		}); | ||||
|         }); | ||||
| </script> | ||||
|   The above script didn't work here, so I placed it in the controlRunCmd  | ||||
|   function in the lib/display.php file. | ||||
| --> | ||||
| <?php | ||||
| 	if(isset($_REQUEST['t'])){ | ||||
| 		$t = $_REQUEST['t'];	 | ||||
| 	}else{ | ||||
| 		echo "please enter a t='type' of page to load with this noderange"; | ||||
| 		exit; | ||||
| 	} | ||||
| 	 | ||||
| 	if($t == 'control'){ | ||||
| 		$cmd = ''; | ||||
| 		if(isset($_REQUEST['nr'])){ | ||||
| 			$nr = $_REQUEST['nr']; | ||||
| 			if(isset($_REQUEST['cmd'])){ | ||||
| 				$cmd = $_REQUEST['cmd']; | ||||
| 			} | ||||
| 			displayRangeList($nr,$cmd); | ||||
| 		}else{ | ||||
| 			echo "Please select machines"; | ||||
| 		} | ||||
| 	}elseif($t == 'provision'){ | ||||
| 		$method = ''; | ||||
| 		$os = ''; | ||||
| 		$arch = ''; | ||||
| 		$profile = ''; | ||||
| 		if(isset($_REQUEST['nr'])){ | ||||
| 			$nr = $_REQUEST['nr']; | ||||
| 			if(isset($_REQUEST['m']) &&  | ||||
| 				isset($_REQUEST['o']) && | ||||
| 				isset($_REQUEST['a']) && | ||||
| 				isset($_REQUEST['p']) | ||||
| 			){ | ||||
| if(isset($_REQUEST['t'])){ | ||||
|         $t = $_REQUEST['t']; | ||||
| }else{ | ||||
|         echo "please enter a t='type' of page to load with this noderange"; | ||||
|         exit; | ||||
| } | ||||
|  | ||||
| 				$method = $_REQUEST['m']; | ||||
| 				$os = $_REQUEST['o']; | ||||
| 				$arch = $_REQUEST['a']; | ||||
| 				$profile = $_REQUEST['p']; | ||||
| 			} | ||||
| 			displayInstallList($nr,$method,$os,$arch,$profile); | ||||
| 		}else{ | ||||
| 	 | ||||
| 			echo "Please select machines"; | ||||
| 		} | ||||
| 	} | ||||
| if($t == 'control'){ | ||||
|         $cmd = ''; | ||||
|         if(isset($_REQUEST['nr'])){ | ||||
|                 $nr = $_REQUEST['nr']; | ||||
|                 if(isset($_REQUEST['cmd'])){ | ||||
|                         $cmd = $_REQUEST['cmd']; | ||||
|                 } | ||||
|                 displayRangeList($nr,$cmd); | ||||
|         }else{ | ||||
|                 echo "Please select machines"; | ||||
|         } | ||||
| }elseif($t == 'provision'){ | ||||
|         $method = ''; | ||||
|         $os = ''; | ||||
|         $arch = ''; | ||||
|         $profile = ''; | ||||
|         if(isset($_REQUEST['nr'])){ | ||||
|                 $nr = $_REQUEST['nr']; | ||||
|                 if(isset($_REQUEST['m']) && | ||||
|                         isset($_REQUEST['o']) && | ||||
|                         isset($_REQUEST['a']) && | ||||
|                         isset($_REQUEST['p']) | ||||
|                 ){ | ||||
|  | ||||
|                         $method = $_REQUEST['m']; | ||||
|                         $os = $_REQUEST['o']; | ||||
|                         $arch = $_REQUEST['a']; | ||||
|                         $profile = $_REQUEST['p']; | ||||
|                 } | ||||
|                 displayInstallList($nr,$method,$os,$arch,$profile); | ||||
|         }else{ | ||||
|  | ||||
|                 echo "Please select machines"; | ||||
|         } | ||||
| } | ||||
| ?> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user