mirror of
				https://github.com/xcat2/xcat-core.git
				synced 2025-10-31 11:22:27 +00:00 
			
		
		
		
	Cleaned up code.
git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@8489 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
		| @@ -43,7 +43,7 @@ zvmPlugin.prototype.loadClonePage = function(node) { | ||||
|  | ||||
| 		// Get hardware control point | ||||
| 		var nodeRow = $('#' + node).parent().parent(); | ||||
| 		var dTable = $('#nodesDataTable').dataTable(); | ||||
| 		var dTable = $('#nodesDatatable').dataTable(); | ||||
| 		var rowPos = dTable.fnGetPosition(nodeRow.get(0)); | ||||
| 		var aData = dTable.fnGetData(rowPos); | ||||
| 		var hcp = aData[hcpCol]; | ||||
|   | ||||
| @@ -318,7 +318,7 @@ function loadNodes4Ganglia(data) { | ||||
| 		'<a>ganglia</a><img src="images/loader.gif"></img>'); | ||||
|  | ||||
| 	// Create a datatable | ||||
| 	var dTable = new DataTable('nodesDataTable'); | ||||
| 	var dTable = new DataTable('nodesDatatable'); | ||||
| 	dTable.init(sorted); | ||||
|  | ||||
| 	// Go through each node | ||||
| @@ -374,7 +374,7 @@ function loadNodes4Ganglia(data) { | ||||
| 	// Power on | ||||
| 	var powerOnLnk = $('<a>Power on</a>'); | ||||
| 	powerOnLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			powerNode(tgtNodes, 'on'); | ||||
| 		} | ||||
| @@ -383,7 +383,7 @@ function loadNodes4Ganglia(data) { | ||||
| 	// Power off | ||||
| 	var powerOffLnk = $('<a>Power off</a>'); | ||||
| 	powerOffLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			powerNode(tgtNodes, 'off'); | ||||
| 		} | ||||
| @@ -398,7 +398,7 @@ function loadNodes4Ganglia(data) { | ||||
| 	 */ | ||||
| 	var monitorLnk = $('<a>Monitor</a>'); | ||||
| 	monitorLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
|  | ||||
| 		} | ||||
| @@ -407,7 +407,7 @@ function loadNodes4Ganglia(data) { | ||||
| 	// Turn monitoring on | ||||
| 	var monitorOnLnk = $('<a>Monitor on</a>'); | ||||
| 	monitorOnLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			monitorNode(tgtNodes, 'on'); | ||||
| 		} | ||||
| @@ -416,7 +416,7 @@ function loadNodes4Ganglia(data) { | ||||
| 	// Turn monitoring off | ||||
| 	var monitorOffLnk = $('<a>Monitor off</a>'); | ||||
| 	monitorOffLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			monitorNode(tgtNodes, 'off'); | ||||
| 		} | ||||
| @@ -441,21 +441,21 @@ function loadNodes4Ganglia(data) { | ||||
| 	$('#nodesTab').append(dTable.object()); | ||||
|  | ||||
| 	// Turn table into a datatable | ||||
| 	var myDataTable = $('#nodesDataTable').dataTable(); | ||||
| 	var myDataTable = $('#nodesDatatable').dataTable(); | ||||
|  | ||||
| 	// Do not sort ping and power column | ||||
| 	var pingCol = $('#nodesDataTable thead tr th').eq(2); | ||||
| 	var powerCol = $('#nodesDataTable thead tr th').eq(3); | ||||
| 	var gangliaCol = $('#nodesDataTable thead tr th').eq(4); | ||||
| 	var pingCol = $('#nodesDatatable thead tr th').eq(2); | ||||
| 	var powerCol = $('#nodesDatatable thead tr th').eq(3); | ||||
| 	var gangliaCol = $('#nodesDatatable thead tr th').eq(4); | ||||
| 	pingCol.unbind('click'); | ||||
| 	powerCol.unbind('click'); | ||||
| 	gangliaCol.unbind('click'); | ||||
|  | ||||
| 	// Create enough space for loader to be displayed | ||||
| 	var style = {'min-width': '60px', 'text-align': 'center'}; | ||||
| 	$('#nodesDataTable tbody tr td:nth-child(3)').css(style); | ||||
| 	$('#nodesDataTable tbody tr td:nth-child(4)').css(style); | ||||
| 	$('#nodesDataTable tbody tr td:nth-child(5)').css(style); | ||||
| 	$('#nodesDatatable tbody tr td:nth-child(3)').css(style); | ||||
| 	$('#nodesDatatable tbody tr td:nth-child(4)').css(style); | ||||
| 	$('#nodesDatatable tbody tr td:nth-child(5)').css(style); | ||||
|  | ||||
| 	// Instead refresh the ping status and power status | ||||
| 	pingCol.find('span a').bind('click', function(event) { | ||||
| @@ -515,7 +515,7 @@ function loadNodes4Ganglia(data) { | ||||
|     	}); | ||||
| 	} else { | ||||
| 		// Hide status loader | ||||
| 		var statCol = $('#nodesDataTable thead tr th').eq(2); | ||||
| 		var statCol = $('#nodesDatatable thead tr th').eq(2); | ||||
| 		statCol.find('img').hide(); | ||||
| 	} | ||||
|  | ||||
| @@ -543,7 +543,7 @@ function loadNodes4Ganglia(data) { | ||||
|  */ | ||||
| function loadGangliaStatus(data) { | ||||
| 	// Get datatable | ||||
| 	var dTable = $('#nodesDataTable').dataTable(); | ||||
| 	var dTable = $('#nodesDatatable').dataTable(); | ||||
| 	var ganglia = data.rsp; | ||||
| 	var rowNum, node, status, args; | ||||
|  | ||||
| @@ -553,14 +553,14 @@ function loadGangliaStatus(data) { | ||||
| 		status = jQuery.trim(ganglia[i][1]); | ||||
|  | ||||
| 		// Get the row containing the node | ||||
| 		rowNum = findRowIndexUsingCol(node, '#nodesDataTable', 1); | ||||
| 		rowNum = findRowIndexUsingCol(node, '#nodesDatatable', 1); | ||||
|  | ||||
| 		// Update the power status column | ||||
| 		dTable.fnUpdate(status, rowNum, 4); | ||||
| 	} | ||||
|  | ||||
| 	// Hide Ganglia loader | ||||
| 	var gangliaCol = $('#nodesDataTable thead tr th').eq(4); | ||||
| 	var gangliaCol = $('#nodesDatatable thead tr th').eq(4); | ||||
| 	gangliaCol.find('img').hide(); | ||||
| } | ||||
|  | ||||
| @@ -573,7 +573,7 @@ function loadGangliaStatus(data) { | ||||
|  */ | ||||
| function refreshGangliaStatus(group) { | ||||
| 	// Show ganglia loader | ||||
| 	var gangliaCol = $('#nodesDataTable thead tr th').eq(4); | ||||
| 	var gangliaCol = $('#nodesDatatable thead tr th').eq(4); | ||||
| 	gangliaCol.find('img').show(); | ||||
|  | ||||
| 	// Get the status of Ganglia | ||||
|   | ||||
| @@ -35,14 +35,14 @@ function loadNodesPage() { | ||||
| 	// If groups are not already loaded | ||||
| 	if (!$('#groups').length) { | ||||
| 		// Create a groups division | ||||
| 		groupDIV = $('<div id="groups"></div>'); | ||||
| 		nodesDIV = $('<div id="nodes"></div>'); | ||||
| 		$('#content').append(groupDIV); | ||||
| 		$('#content').append(nodesDIV); | ||||
| 		var groups = $('<div id="groups"></div>'); | ||||
| 		var nodes = $('<div id="nodes"></div>'); | ||||
| 		$('#content').append(groups); | ||||
| 		$('#content').append(nodes); | ||||
|  | ||||
| 		// Create loader | ||||
| 		var loader = createLoader(); | ||||
| 		groupDIV.append(loader); | ||||
| 		groups.append(loader); | ||||
| 		 | ||||
| 		// Create info bar | ||||
| 		var info = createInfoBar('Select a group to view its nodes.'); | ||||
| @@ -89,14 +89,15 @@ function loadGroups(data) { | ||||
| 	// Remove loader | ||||
| 	$('#groups').find('img').remove(); | ||||
| 	 | ||||
| 	// Save group in cookie | ||||
| 	var groups = data.rsp; | ||||
| 	setGroupsCookies(data); | ||||
|  | ||||
| 	// Create a list of groups | ||||
| 	var ul = $('<ul></ul>'); | ||||
| 	var item = $('<li id="root"><h3>Groups</h3></li>'); | ||||
| 	ul.append(item); | ||||
| 	var subUL = $('<ul></ul>'); | ||||
| 	ul.append(item); | ||||
| 	item.append(subUL); | ||||
|  | ||||
| 	// Create a link for each group | ||||
| @@ -193,7 +194,7 @@ function loadGroups(data) { | ||||
| 		var addNodeForm = $('<div class="form"></div>'); | ||||
| 		addNodeForm.append(info); | ||||
| 		addNodeForm.append('<div><label for="mgt">Hardware management:</label>' | ||||
|     			+ '<select id="mgt" name="mgt">' | ||||
|     		+ '<select id="mgt" name="mgt">' | ||||
|     			+ '<option>ipmi</option>'  | ||||
|     			+ '<option>blade</option>' | ||||
|     			+ '<option>hmc</option>'  | ||||
| @@ -337,8 +338,7 @@ function loadNodes(data) { | ||||
| 	// Variable to send command and request node status | ||||
| 	var getNodeStatus = true; | ||||
| 	 | ||||
| 	// Clear cookie containing list of nodes where | ||||
| 	// their attributes need to be updated | ||||
| 	// Clear cookie containing list of nodes where their attributes need to be updated | ||||
| 	$.cookie('nodes2update', ''); | ||||
| 	// Clear hash table containing node attributes | ||||
| 	origAttrs = ''; | ||||
| @@ -387,7 +387,6 @@ function loadNodes(data) { | ||||
| 	sorted.sort(); | ||||
|  | ||||
| 	// Add column for check box, node, ping, power, and comments | ||||
| 	// Power status for nodes will not be requested until user clicks on power link | ||||
| 	sorted.unshift('<input type="checkbox" onclick="selectAllCheckbox(event, $(this))">',  | ||||
| 		'node',  | ||||
| 		'<span><a>status</a></span><img src="images/loader.gif"></img>',  | ||||
| @@ -395,7 +394,7 @@ function loadNodes(data) { | ||||
| 		'comments'); | ||||
|  | ||||
| 	// Create a datatable | ||||
| 	var dTable = new DataTable('nodesDataTable'); | ||||
| 	var dTable = new DataTable('nodesDatatable'); | ||||
| 	dTable.init(sorted); | ||||
|  | ||||
| 	// Go through each node | ||||
| @@ -403,11 +402,9 @@ function loadNodes(data) { | ||||
| 		// Create a row | ||||
| 		var row = new Array(); | ||||
| 		 | ||||
| 		// Create a check box | ||||
| 		// Create a check box, node link, and get node status | ||||
| 		var checkBx = '<input type="checkbox" name="' + node + '"/>'; | ||||
| 		// Open node onclick | ||||
| 		var nodeLink = $('<a class="node" id="' + node + '">' + node + '</a>').bind('click', loadNode); | ||||
| 		// Get node status | ||||
| 		var status = attrs[node]['status'].replace('sshd', 'ping'); | ||||
| 		 | ||||
| 		// Push in checkbox, node link, status, and power | ||||
| @@ -433,7 +430,6 @@ function loadNodes(data) { | ||||
| 		 | ||||
| 		// Create tooltip | ||||
| 		var tip = createCommentsToolTip(comment); | ||||
| 		// Create container to put icon and comment in | ||||
| 		var col = $('<span></span>').append(icon); | ||||
| 		col.append(tip); | ||||
| 		row.push(col); | ||||
| @@ -461,7 +457,7 @@ function loadNodes(data) { | ||||
|     			} else { | ||||
|     				row.push(''); | ||||
|     			} | ||||
| 			} // End of if | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		// Add the row to the table | ||||
| @@ -488,7 +484,7 @@ function loadNodes(data) { | ||||
| 	// Power on | ||||
| 	var powerOnLnk = $('<a>Power on</a>'); | ||||
| 	powerOnLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			powerNode(tgtNodes, 'on'); | ||||
| 		} | ||||
| @@ -497,7 +493,7 @@ function loadNodes(data) { | ||||
| 	// Power off | ||||
| 	var powerOffLnk = $('<a>Power off</a>'); | ||||
| 	powerOffLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			powerNode(tgtNodes, 'off'); | ||||
| 		} | ||||
| @@ -506,7 +502,7 @@ function loadNodes(data) { | ||||
| 	// Clone | ||||
| 	var cloneLnk = $('<a>Clone</a>'); | ||||
| 	cloneLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable').split(','); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable').split(','); | ||||
| 		for (var i in tgtNodes) { | ||||
| 			var mgt = getNodeAttr(tgtNodes[i], 'mgt'); | ||||
| 			 | ||||
| @@ -540,7 +536,7 @@ function loadNodes(data) { | ||||
| 	// Delete | ||||
| 	var deleteLnk = $('<a>Delete</a>'); | ||||
| 	deleteLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			loadDeletePage(tgtNodes); | ||||
| 		} | ||||
| @@ -549,7 +545,7 @@ function loadNodes(data) { | ||||
| 	// Unlock | ||||
| 	var unlockLnk = $('<a>Unlock</a>'); | ||||
| 	unlockLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			loadUnlockPage(tgtNodes); | ||||
| 		} | ||||
| @@ -558,7 +554,7 @@ function loadNodes(data) { | ||||
| 	// Run script | ||||
| 	var scriptLnk = $('<a>Run script</a>'); | ||||
| 	scriptLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			loadScriptPage(tgtNodes); | ||||
| 		} | ||||
| @@ -567,7 +563,7 @@ function loadNodes(data) { | ||||
| 	// Update | ||||
| 	var updateLnk = $('<a>Update</a>'); | ||||
| 	updateLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			loadUpdatenodePage(tgtNodes); | ||||
| 		} | ||||
| @@ -576,7 +572,7 @@ function loadNodes(data) { | ||||
| 	// Set boot state | ||||
| 	var setBootStateLnk = $('<a>Set boot state</a>'); | ||||
| 	setBootStateLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			loadNodesetPage(tgtNodes); | ||||
| 		} | ||||
| @@ -586,7 +582,7 @@ function loadNodes(data) { | ||||
| 	// Boot to network | ||||
| 	var boot2NetworkLnk = $('<a>Boot to network</a>'); | ||||
| 	boot2NetworkLnk.bind('click', function(event) { | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			loadNetbootPage(tgtNodes); | ||||
| 		} | ||||
| @@ -595,7 +591,7 @@ function loadNodes(data) { | ||||
| 	// Remote console | ||||
| 	var rcons = $('<a>Open console</a>'); | ||||
| 	rcons.bind('click', function(event){ | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable'); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable'); | ||||
| 		if (tgtNodes) { | ||||
| 			loadRconsPage(tgtNodes); | ||||
| 		} | ||||
| @@ -604,19 +600,18 @@ function loadNodes(data) { | ||||
| 	// Edit properties | ||||
| 	var editProps = $('<a>Edit properties</a>'); | ||||
| 	editProps.bind('click', function(event){ | ||||
| 		var tgtNodes = getNodesChecked('nodesDataTable').split(','); | ||||
| 		var tgtNodes = getNodesChecked('nodesDatatable').split(','); | ||||
| 		for (var i in tgtNodes) { | ||||
| 			loadEditPropsPage(tgtNodes[i]); | ||||
| 		} | ||||
| 	}); | ||||
| 	 | ||||
| 	var advancedLnk = $('<a>Advanced</a>'); | ||||
|  | ||||
| 	// Power actions | ||||
| 	var powerActions = [ powerOnLnk, powerOffLnk ]; | ||||
| 	var powerActionMenu = createMenu(powerActions); | ||||
|  | ||||
| 	// Advanced actions | ||||
| 	var advancedLnk = $('<a>Advanced</a>'); | ||||
| 	var advancedActions; | ||||
| 	if ('compute' == group) { | ||||
| 		advancedActions = [ boot2NetworkLnk, scriptLnk, setBootStateLnk, updateLnk, rcons, editProps ]; | ||||
| @@ -634,11 +629,15 @@ function loadNodes(data) { | ||||
| 	actionMenu.superfish(); | ||||
| 	actionsDIV.append(actionMenu); | ||||
| 	actionBar.append(actionsDIV); | ||||
| 	$('#nodesTab').append(actionBar); | ||||
| 	 | ||||
| 	// Insert table | ||||
| 	// Insert action bar and nodes datatable | ||||
| 	$('#nodesTab').append(actionBar); | ||||
| 	$('#nodesTab').append(dTable.object()); | ||||
| 	 | ||||
| 	/** | ||||
| 	 * Create menu to save and undo table changes | ||||
| 	 */ | ||||
| 	 | ||||
| 	// Save changes | ||||
| 	var saveLnk = $('<a>Save</a>'); | ||||
| 	saveLnk.bind('click', function(event){ | ||||
| @@ -650,36 +649,37 @@ function loadNodes(data) { | ||||
| 	undoLnk.bind('click', function(event){ | ||||
| 		restoreNodeAttrs(); | ||||
| 	}); | ||||
|  | ||||
| 	/** | ||||
| 	 * Create menu to save and undo table changes | ||||
| 	 */ | ||||
| 	 | ||||
| 	// It will be hidden until a change is made | ||||
| 	var tableActionsMenu = createMenu([saveLnk, undoLnk]).hide(); | ||||
| 	tableActionsMenu.css('margin-left', '100px'); | ||||
| 	actionsDIV.append(tableActionsMenu); | ||||
|  | ||||
| 	// Turn table into a datatable | ||||
| 	var myDataTable = $('#nodesDataTable').dataTable({ | ||||
| 	var myDataTable = $('#nodesDatatable').dataTable({ | ||||
| 		'iDisplayLength': 50 | ||||
| 	}); | ||||
| 	 | ||||
| 	/** | ||||
| 	 * Change how datatable behaves  | ||||
| 	 */ | ||||
| 	 | ||||
| 	// Do not sort ping, power, and comment column | ||||
| 	var pingCol = $('#nodesDataTable thead tr th').eq(2); | ||||
| 	var powerCol = $('#nodesDataTable thead tr th').eq(3); | ||||
| 	var commentCol = $('#nodesDataTable thead tr th').eq(4); | ||||
| 	var pingCol = $('#nodesDatatable thead tr th').eq(2); | ||||
| 	var powerCol = $('#nodesDatatable thead tr th').eq(3); | ||||
| 	var commentCol = $('#nodesDatatable thead tr th').eq(4); | ||||
| 	pingCol.unbind('click'); | ||||
| 	powerCol.unbind('click'); | ||||
| 	commentCol.unbind('click'); | ||||
| 	 | ||||
| 	// Create enough space for loader to be displayed | ||||
| 	$('#nodesDataTable tbody tr td:nth-child(3)').css('min-width', '60px'); | ||||
| 	$('#nodesDataTable tbody tr td:nth-child(4)').css('min-width', '60px'); | ||||
| 	$('#nodesDatatable tbody tr td:nth-child(3)').css('min-width', '60px'); | ||||
| 	$('#nodesDatatable tbody tr td:nth-child(4)').css('min-width', '60px'); | ||||
| 	 | ||||
| 	// Center align power, ping, and comments | ||||
| 	$('#nodesDataTable tbody tr td:nth-child(3)').css('text-align', 'center'); | ||||
| 	$('#nodesDataTable tbody tr td:nth-child(4)').css('text-align', 'center'); | ||||
| 	$('#nodesDataTable tbody tr td:nth-child(5)').css('text-align', 'center'); | ||||
| 	$('#nodesDatatable tbody tr td:nth-child(3)').css('text-align', 'center'); | ||||
| 	$('#nodesDatatable tbody tr td:nth-child(4)').css('text-align', 'center'); | ||||
| 	$('#nodesDatatable tbody tr td:nth-child(5)').css('text-align', 'center'); | ||||
| 	 | ||||
| 	// Instead refresh the node status and power status | ||||
| 	pingCol.find('span a').bind('click', function(event) { | ||||
| @@ -716,8 +716,9 @@ function loadNodes(data) { | ||||
| 	/** | ||||
| 	 * Enable editable columns | ||||
| 	 */ | ||||
| 	 | ||||
| 	// Do not make 1st, 2nd, 3rd, 4th, or 5th column editable | ||||
| 	$('#nodesDataTable td:not(td:nth-child(1),td:nth-child(2),td:nth-child(3),td:nth-child(4),td:nth-child(5))').editable( | ||||
| 	$('#nodesDatatable td:not(td:nth-child(1),td:nth-child(2),td:nth-child(3),td:nth-child(4),td:nth-child(5))').editable( | ||||
| 		function(value, settings) {			 | ||||
| 			// Change text color to red | ||||
| 			$(this).css('color', 'red'); | ||||
| @@ -726,7 +727,7 @@ function loadNodes(data) { | ||||
| 			var colPos = this.cellIndex; | ||||
| 						 | ||||
| 			// Get row index | ||||
| 			var dTable = $('#nodesDataTable').dataTable(); | ||||
| 			var dTable = $('#nodesDatatable').dataTable(); | ||||
| 			var rowPos = dTable.fnGetPosition(this.parentNode); | ||||
| 			 | ||||
| 			// Update datatable | ||||
| @@ -743,8 +744,7 @@ function loadNodes(data) { | ||||
|  | ||||
| 			return (value); | ||||
| 		}, { | ||||
| 			onblur : 'submit', 	// Clicking outside editable area submits | ||||
| 								// changes | ||||
| 			onblur : 'submit', 	// Clicking outside editable area submits changes | ||||
| 			type : 'textarea', | ||||
| 			placeholder: ' ', | ||||
| 			height : '30px' 	// The height of the text area | ||||
| @@ -771,7 +771,7 @@ function loadNodes(data) { | ||||
|     	}); | ||||
| 	} else { | ||||
| 		// Hide status loader | ||||
| 		var statCol = $('#nodesDataTable thead tr th').eq(2); | ||||
| 		var statCol = $('#nodesDatatable thead tr th').eq(2); | ||||
| 		statCol.find('img').hide(); | ||||
| 	} | ||||
| 	 | ||||
| @@ -839,7 +839,7 @@ function loadNodes(data) { | ||||
|  */ | ||||
| function loadPowerStatus(data) { | ||||
| 	// Get datatable | ||||
| 	var dTable = $('#nodesDataTable').dataTable(); | ||||
| 	var dTable = $('#nodesDatatable').dataTable(); | ||||
| 	var power = data.rsp; | ||||
| 	var rowPos, node, status, args; | ||||
|  | ||||
| @@ -849,14 +849,14 @@ function loadPowerStatus(data) { | ||||
| 		node = jQuery.trim(args[0]); | ||||
| 		status = jQuery.trim(args[1]); | ||||
| 		// Get the row containing the node | ||||
| 		rowPos = findRowIndexUsingCol(node, '#nodesDataTable', 1); | ||||
| 		rowPos = findRowIndexUsingCol(node, '#nodesDatatable', 1); | ||||
|  | ||||
| 		// Update the power status column | ||||
| 		dTable.fnUpdate(status, rowPos, 3); | ||||
| 	} | ||||
| 	 | ||||
| 	// Hide power loader | ||||
| 	var powerCol = $('#nodesDataTable thead tr th').eq(3); | ||||
| 	var powerCol = $('#nodesDatatable thead tr th').eq(3); | ||||
| 	powerCol.find('img').hide(); | ||||
| } | ||||
|  | ||||
| @@ -869,7 +869,7 @@ function loadPowerStatus(data) { | ||||
|  */ | ||||
| function refreshPowerStatus(group) { | ||||
| 	// Show power loader | ||||
| 	var powerCol = $('#nodesDataTable thead tr th').eq(3); | ||||
| 	var powerCol = $('#nodesDatatable thead tr th').eq(3); | ||||
| 	powerCol.find('img').show(); | ||||
| 	 | ||||
| 	// Get the power status | ||||
| @@ -896,25 +896,26 @@ function refreshPowerStatus(group) { | ||||
|  */ | ||||
| function loadNodeStatus(data) { | ||||
| 	// Get data table | ||||
| 	var dTable = $('#nodesDataTable').dataTable(); | ||||
| 	var dTable = $('#nodesDatatable').dataTable(); | ||||
| 	var rsp = data.rsp; | ||||
| 	var args, rowPos, node, status; | ||||
|  | ||||
| 	// Get all nodes within the datatable | ||||
| 	for (var i in rsp) { | ||||
| 		args = rsp[i].split(':'); | ||||
| 		 | ||||
| 		// args[0] = node and args[1] = status | ||||
| 		node = jQuery.trim(args[0]); | ||||
| 		status = jQuery.trim(args[1]).replace('sshd', 'ping'); | ||||
| 		// Get the row containing the node | ||||
| 		rowPos = findRowIndexUsingCol(node, '#nodesDataTable', 1); | ||||
| 		rowPos = findRowIndexUsingCol(node, '#nodesDatatable', 1); | ||||
|  | ||||
| 		// Update the ping status column | ||||
| 		dTable.fnUpdate(status, rowPos, 2); | ||||
| 	} | ||||
| 	 | ||||
| 	// Hide status loader | ||||
| 	var statCol = $('#nodesDataTable thead tr th').eq(2); | ||||
| 	var statCol = $('#nodesDatatable thead tr th').eq(2); | ||||
| 	statCol.find('img').hide(); | ||||
| } | ||||
|  | ||||
| @@ -927,7 +928,7 @@ function loadNodeStatus(data) { | ||||
|  */ | ||||
| function refreshNodeStatus(group) { | ||||
| 	// Show ping loader | ||||
| 	var pingCol = $('#nodesDataTable thead tr th').eq(2); | ||||
| 	var pingCol = $('#nodesDatatable thead tr th').eq(2); | ||||
| 	pingCol.find('img').show(); | ||||
| 	 | ||||
| 	// Get the node status | ||||
| @@ -1317,6 +1318,7 @@ function loadDeletePage(tgtNodes) { | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	// Create delete form | ||||
| 	var deleteForm = $('<div class="form"></div>'); | ||||
| 	deleteForm.append(statBar); | ||||
| 	deleteForm.append(statBar); | ||||
| @@ -1351,6 +1353,9 @@ function loadDeletePage(tgtNodes) { | ||||
| 		$(this).attr('disabled', 'true'); | ||||
| 	}); | ||||
| 	 | ||||
| 	/** | ||||
| 	 * Cancel | ||||
| 	 */ | ||||
| 	var cancelBtn = createButton('Cancel'); | ||||
| 	cancelBtn.bind('click', function(){ | ||||
| 		myTab.remove($(this).parent().parent().attr('id')); | ||||
| @@ -1387,7 +1392,7 @@ function updateStatusBar(data) { | ||||
| 		$('#' + statBarId).append(prg);	 | ||||
| 	} else if (cmd == 'rmvm') { | ||||
| 		// Get data table | ||||
| 		var dTable = $('#nodesDataTable').dataTable(); | ||||
| 		var dTable = $('#nodesDatatable').dataTable(); | ||||
| 		var failed = false; | ||||
|  | ||||
| 		// Hide loader | ||||
| @@ -1407,7 +1412,7 @@ function updateStatusBar(data) { | ||||
| 		for (var i in tgts) { | ||||
| 			if (!failed) { | ||||
| 				// Get the row containing the node link and delete it | ||||
| 				rowPos = findRowIndexUsingCol(tgts[i], '#nodesDataTable', 1); | ||||
| 				rowPos = findRowIndexUsingCol(tgts[i], '#nodesDatatable', 1); | ||||
| 				dTable.fnDeleteRow(rowPos); | ||||
| 			} | ||||
| 		} | ||||
| @@ -1452,7 +1457,7 @@ function updateStatusBar(data) { | ||||
|  */ | ||||
| function updatePowerStatus(data) { | ||||
| 	// Get datatable | ||||
| 	var dTable = $('#nodesDataTable').dataTable(); | ||||
| 	var dTable = $('#nodesDatatable').dataTable(); | ||||
|  | ||||
| 	// Get xCAT response | ||||
| 	var rsp = data.rsp; | ||||
| @@ -1465,7 +1470,7 @@ function updatePowerStatus(data) { | ||||
| 		// If there is no error | ||||
| 		if (rsp[i].indexOf("Error") < 0 || rsp[i].indexOf("Failed") < 0) { | ||||
| 			// Get the row containing the node link | ||||
| 			rowPos = findRowIndexUsingCol(node, '#nodesDataTable', 1); | ||||
| 			rowPos = findRowIndexUsingCol(node, '#nodesDatatable', 1); | ||||
|  | ||||
| 			// If it was power on, then the data return would contain "Starting" | ||||
| 			strPos = rsp[i].indexOf("Starting"); | ||||
| @@ -1492,8 +1497,8 @@ function updatePowerStatus(data) { | ||||
|  * @return Nothing | ||||
|  */ | ||||
| function runScript(inst) { | ||||
| 	// Get tab ID | ||||
| 	var tabId = 'scriptTab' + inst; | ||||
| 	 | ||||
| 	// Get node name | ||||
| 	var tgts = $('#' + tabId + ' input[name=target]').val(); | ||||
| 	// Get script | ||||
| @@ -1559,7 +1564,6 @@ function getNodeAttr(node, attrName) { | ||||
|  | ||||
| 		// Get the attribute for the given node | ||||
| 		var attr = row.find('td:eq(' + attrIndex + ')'); | ||||
|  | ||||
| 		return attr.text(); | ||||
| 	} else { | ||||
| 		return ''; | ||||
| @@ -1574,6 +1578,7 @@ function getNodeAttr(node, attrName) { | ||||
|  * @return Nothing | ||||
|  */ | ||||
| function setOSImageCookies(data) { | ||||
| 	// Get response | ||||
| 	var rsp = data.rsp; | ||||
|  | ||||
| 	var imageNames = new Array; | ||||
| @@ -1581,6 +1586,7 @@ function setOSImageCookies(data) { | ||||
| 	var osVersHash = new Object(); | ||||
| 	var osArchsHash = new Object(); | ||||
|  | ||||
| 	// Go through each index | ||||
| 	for (var i = 1; i < rsp.length; i++) { | ||||
| 		// Get the image name | ||||
| 		var cols = rsp[i].split(','); | ||||
| @@ -1588,6 +1594,7 @@ function setOSImageCookies(data) { | ||||
| 		var profile = cols[1].replace(new RegExp('"', 'g'), ''); | ||||
| 		var osVer = cols[5].replace(new RegExp('"', 'g'), ''); | ||||
| 		var osArch = cols[7].replace(new RegExp('"', 'g'), ''); | ||||
| 		 | ||||
| 		imageNames.push(osImage); | ||||
| 		profilesHash[profile] = 1; | ||||
| 		osVersHash[osVer] = 1; | ||||
| @@ -1765,12 +1772,12 @@ function flagNode2Update(node) { | ||||
|  */ | ||||
| function updateNodeAttrs(group) { | ||||
| 	// Get the nodes datatable | ||||
| 	var dTable = $('#nodesDataTable').dataTable(); | ||||
| 	var dTable = $('#nodesDatatable').dataTable(); | ||||
| 	// Get all nodes within the datatable | ||||
| 	var rows = dTable.fnGetNodes(); | ||||
| 	 | ||||
| 	// Get table headers | ||||
| 	var headers = $('#nodesDataTable thead tr th'); | ||||
| 	var headers = $('#nodesDatatable thead tr th'); | ||||
| 							 | ||||
| 	// Get list of nodes to update | ||||
| 	var nodesList = $.cookie('nodes2update'); | ||||
| @@ -1786,7 +1793,7 @@ function updateNodeAttrs(group) { | ||||
| 			args = ''; | ||||
| 			 | ||||
|         	// Get the row containing the node link | ||||
|         	rowPos = findRowIndexUsingCol(nodes[i], '#nodesDataTable', 1); | ||||
|         	rowPos = findRowIndexUsingCol(nodes[i], '#nodesDatatable', 1); | ||||
|         	$(rows[rowPos]).find('td').each(function (){ | ||||
|         		if ($(this).css('color') == 'red') { | ||||
|         			// Change color back to normal | ||||
| @@ -1843,9 +1850,9 @@ function restoreNodeAttrs() { | ||||
| 	var nodes = nodesList.split(';'); | ||||
| 	 | ||||
| 	// Get the nodes datatable | ||||
| 	var dTable = $('#nodesDataTable').dataTable(); | ||||
| 	var dTable = $('#nodesDatatable').dataTable(); | ||||
| 	// Get table headers | ||||
| 	var headers = $('#nodesDataTable thead tr th'); | ||||
| 	var headers = $('#nodesDatatable thead tr th'); | ||||
| 	// Get all nodes within the datatable | ||||
| 	var rows = dTable.fnGetNodes(); | ||||
| 		 | ||||
| @@ -1855,7 +1862,7 @@ function restoreNodeAttrs() { | ||||
| 	for (var i in nodes) { | ||||
| 		if (nodes[i]) {			 | ||||
| 			// Get the row containing the node link | ||||
|         	rowPos = findRowIndexUsingCol(nodes[i], '#nodesDataTable', 1); | ||||
|         	rowPos = findRowIndexUsingCol(nodes[i], '#nodesDatatable', 1); | ||||
|         	$(rows[rowPos]).find('td').each(function (){ | ||||
|         		if ($(this).css('color') == 'red') { | ||||
|         			// Change color back to normal | ||||
| @@ -1875,8 +1882,7 @@ function restoreNodeAttrs() { | ||||
| 		} // End of if | ||||
| 	} // End of for | ||||
| 	 | ||||
| 	// Clear cookie containing list of nodes where | ||||
| 	// their attributes need to be updated | ||||
| 	// Clear cookie containing list of nodes where their attributes need to be updated | ||||
| 	$.cookie('nodes2update', ''); | ||||
| } | ||||
|  | ||||
| @@ -2447,8 +2453,12 @@ function openSetPropsDialog() { | ||||
|             		}, | ||||
|  | ||||
|             		/** | ||||
|             		 * Show results | ||||
|             		 */ | ||||
| 					 * Show results | ||||
| 					 *  | ||||
| 					 * @param data | ||||
| 					 *            Data returned from HTTP request | ||||
| 					 * @return Nothing | ||||
| 					 */ | ||||
|             		success: function(data) { | ||||
|             			// Get output | ||||
|             			var out = data.rsp; | ||||
|   | ||||
| @@ -235,7 +235,7 @@ function createGraphical(bpa, fsp, area){ | ||||
| 	 | ||||
| 	$('.tooltip a').bind('click', function(){ | ||||
| 		var lparName = $(this).html(); | ||||
| 		$('#nodesDataTable #' + lparName).trigger('click'); | ||||
| 		$('#nodesDatatable #' + lparName).trigger('click'); | ||||
| 	}); | ||||
| 	 | ||||
| 	$('.fspDiv2, .fspDiv4, .fspDiv42').bind('click', function(){ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user