git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@6485 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
		
			
				
	
	
		
			141 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			141 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/**
 | 
						|
 * Global variables
 | 
						|
 */
 | 
						|
var monitorTabs; // Monitor tabs
 | 
						|
 | 
						|
/**
 | 
						|
 * Set the monitor tab
 | 
						|
 * 
 | 
						|
 * @param o
 | 
						|
 *            Tab object
 | 
						|
 * @return Nothing
 | 
						|
 */
 | 
						|
function setMonitorTab(o) {
 | 
						|
	monitorTabs = o;
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 * Get the monitor tab
 | 
						|
 * 
 | 
						|
 * @param Nothing
 | 
						|
 * @return Tab object
 | 
						|
 */
 | 
						|
function getMonitorTab() {
 | 
						|
	return monitorTabs;
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 * Load the monitor page
 | 
						|
 * 
 | 
						|
 * @return Nothing
 | 
						|
 */
 | 
						|
function loadMonitorPage() {
 | 
						|
	// If the page is already loaded
 | 
						|
	if ($('#monitor_page').children().length) {
 | 
						|
		// Do not reload the monitor page
 | 
						|
		return;
 | 
						|
	}
 | 
						|
 | 
						|
	// Create monitor tab
 | 
						|
	var tab = new Tab();
 | 
						|
	setConfigTab(tab);
 | 
						|
	tab.init();
 | 
						|
	$('#monitor_page').append(tab.object());
 | 
						|
 | 
						|
	// Create provision tab
 | 
						|
	var tab = new Tab();
 | 
						|
	setMonitorTab(tab);
 | 
						|
	tab.init();
 | 
						|
	$('#monitor_page').append(tab.object());
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Monitor nodes
 | 
						|
	 */
 | 
						|
	var monitorForm = $('<div class="monitor"></div>');
 | 
						|
 | 
						|
	// Create info bar
 | 
						|
	var monitorInfoBar = createInfoBar('Under construction');
 | 
						|
	monitorForm.append(monitorInfoBar);
 | 
						|
 | 
						|
	// Create drop-down menu
 | 
						|
	// Hardware available to provision - ipmi, blade, hmc, ivm, fsp, and zvm
 | 
						|
	var div = $('<div></div>');
 | 
						|
	monitorForm.append(div);
 | 
						|
	tab.add('monitorTab', 'Monitor', monitorForm);
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Resources
 | 
						|
	 */
 | 
						|
	var resrcForm = $('<div class="monitor"></div>');
 | 
						|
 | 
						|
	// Create info bar
 | 
						|
	var resrcInfoBar = createInfoBar('Select a hardware to view its resources');
 | 
						|
	resrcForm.append(resrcInfoBar);
 | 
						|
	
 | 
						|
	// Create drop-down menu
 | 
						|
	// Hardware available to provision - ipmi, blade, hmc, ivm, fsp, and zvm
 | 
						|
	var div = $('<div></div>');
 | 
						|
	var label = $('<span>Select the hardware:</span>');
 | 
						|
	var hw = $('<select></select>');
 | 
						|
	var ipmi = $('<option value="ipmi">ipmi</option>');
 | 
						|
	var blade = $('<option value="blade">blade</option>');
 | 
						|
	var hmc = $('<option value="hmc">hmc</option>');
 | 
						|
	var ivm = $('<option value="ivm">ivm</option>');
 | 
						|
	var fsp = $('<option value="fsp">fsp</option>');
 | 
						|
	var zvm = $('<option value="zvm">zvm</option>');
 | 
						|
	hw.append(ipmi);
 | 
						|
	hw.append(blade);
 | 
						|
	hw.append(hmc);
 | 
						|
	hw.append(ivm);
 | 
						|
	hw.append(fsp);
 | 
						|
	hw.append(zvm);
 | 
						|
	div.append(label);
 | 
						|
	div.append(hw);
 | 
						|
	resrcForm.append(div);
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Ok
 | 
						|
	 */
 | 
						|
	var okBtn = createButton('Ok');
 | 
						|
	okBtn.bind('click', function(event) {
 | 
						|
		// Get hardware that was selected
 | 
						|
		var hw = $(this).parent().find('select').val();
 | 
						|
 | 
						|
		// Generate new tab ID
 | 
						|
		var newTabId = hw + 'ResourceTab';
 | 
						|
		if (!$('#' + newTabId).length) {
 | 
						|
			var loader = createLoader('zvmResourceLoader');
 | 
						|
			loader = $('<center></center>').append(loader);
 | 
						|
			tab.add(newTabId, hw, loader);
 | 
						|
 | 
						|
			if (hw == 'zvm') {
 | 
						|
				// Reset resource table
 | 
						|
				setDiskDataTable('');
 | 
						|
				setNetworkDataTable('');
 | 
						|
 | 
						|
				// Get hardware control points
 | 
						|
				$.ajax( {
 | 
						|
					url : 'lib/cmd.php',
 | 
						|
					dataType : 'json',
 | 
						|
					data : {
 | 
						|
						cmd : 'nodels',
 | 
						|
						tgt : 'mgt==zvm',
 | 
						|
						args : 'zvm.hcp',
 | 
						|
						msg : ''
 | 
						|
					},
 | 
						|
					success : getZResources
 | 
						|
				});
 | 
						|
			}
 | 
						|
			// TODO: Add other platforms to this section
 | 
						|
			else {
 | 
						|
				$('#' + newTabId).append();
 | 
						|
			}
 | 
						|
		}
 | 
						|
 | 
						|
		// Select tab
 | 
						|
		tab.select(newTabId);
 | 
						|
	});
 | 
						|
	resrcForm.append(okBtn);
 | 
						|
 | 
						|
	tab.add('resourceTab', 'Resources', resrcForm);
 | 
						|
} |