// Javascript functions
function injs() {
jQuery('ul.sf-menu').superfish();
// got this next part from:
// http://nettuts.com/javascript-ajax/how-to-load-in-and-animate-content-with-jquery/
// Check for hash value in URL
var hash = window.location.hash.substr(1);
var fullLoc = hash;
//alert(hash);
// check to see if there is a query of it.
if(hash.indexOf("?") !=-1){
hash = hash.slice(0,hash.indexOf("?"));
// alert(hash);
}
var href = $('#sf-menu li a').each(function(){
var href = $(this).attr('href');
// alert(href + " = " + hash + "?");
if(hash==href){
var toLoad = fullLoc;
$('#main').load(toLoad)
// change the document title
var subM = href.slice(0,href.indexOf(".php"));
document.title = "xCAT: " + subM;
}
});
// if no page is specified load the default main page.
if(hash == false ){
$('#main').load('main.php');
document.title = "xCAT Control Center";
}
$('#sf-menu li a').click(function(){
var toLoad = $(this).attr('href');
$('#main').hide('fast',loadContent);
$('#load').remove();
$('#wrapper').append('LOADING...');
$('#load').fadeIn('normal');
// update the location
// window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5);
window.location.hash = $(this).attr('href');
// update the title
document.title = "xCAT: " + $(this).attr('href').slice(0,$(this).attr('href').indexOf(".php"));
function loadContent() {
$('#main').load(toLoad,'',showNewContent())
}
function showNewContent() {
$('#main').show('normal',hideLoader());
}
function hideLoader() {
$('#load').fadeOut('normal');
}
return false;
});
// code for processing form
var options = {
target: '#main',
url: 'command.php'
}
$('#cmdForm').hover(function(){
$(this).css("background", "url(img/cmd-active.png) no-repeat")
},function(){
$(this).css("background", "url(img/cmd.png) no-repeat")
});
$('#cmdForm').ajaxForm(options);
$('#cmd').focus(function() {
this.value = "";
});
}
function loadConfigTab(tab) {
// if they don't add a table definition, just go to the
// main page.
if(tab === undefined){
document.title = "xCAT: config";
$('#main').load('config.php');
window.location.hash = "config.php";
}else{
// update the title
document.title = "xCAT: config " + tab;
// update the URL
window.location.hash = "config.php?t=" + tab;
// load the page
$('#main').load('config.php?t=' + tab);
}
}
function controlCmd(cmd, nr){
//var nrt = $("#nrcmdnoderange").html();
// strip off Noderange:
//var nr = nrt.split(" ");
//nr = nr[1];
$("#nrcmdnodegrange").text("Noderange: " + nr);
$("#nrcmdcmd").text("Action: " + cmd);
// update window command
window.location.hash = "control.php?nr="+ nr + "&cmd=" + cmd;
$('#rangedisplay').empty().html('
');
$('#rangedisplay').load('rangeDisplay.php?t=control&nr='+nr+'&cmd='+cmd);
}
function loadMainPage(page){
// blank the page out
$('#main').empty().html('
');
// change the title to the new one.
var subM = page.slice(0,page.indexOf(".php"));
document.title = "xCAT: " + subM;
// load the page
$('#main').load(page);
// change the URL
window.location.hash = page;
}
// call this to update the table with unique log entries.
// we should probably be more robust cause we may miss some entries
// that happen at the same time.
function tableUpdater(count,oldEntry){
// The first time this is called, oldEntry is nothing.
if(oldEntry == ''){
// this is the base date.
oldEntry = "
');
$('#part2').load(uri,"",
function(responseText,textStatus,XMLHttpRequest) {
if(textStatus == 'error'){
$('#part2').empty();
$('#part1').html("Looks like you need to copy the media first. Please run copycds for " + os + '-' + arch + '
');
// change the args so that we don't ask for any spaces:
// we have to do this to encode it to the URL
// yes, this does suck and no, I don't think
// this function could be any more confusing.
args = args.replace(/ /g, '+');
$('#part2').load('command.php?nr='+nr+'&cmd=nodech&args='+args,'',
function(responseText,textStatus,XMLHttpRequest) {
if(textStatus != 'error'){
$('#part2').html('Success.');
$('#part3').html('running: nodeset '+nr+' '+meth+'');
$('#part4').html('
');
$('#part4').fadeIn('normal');
$('#part4').load('command.php?nr='+nr+'&cmd=nodeset&args='+meth,
function(responseText,textStatus,XMLHttpRequest) {
if(textStatus != 'error'){
$('#part4').html('Success.'+responseText);
$('#part5').html('running: rpower '+nr+' boot');
$('#part5').fadeIn('normal');
$('#part6').html('
');
$('#part6').fadeIn('normal');
$('#part6').load('command.php?nr='+nr+'&cmd=rpower&args=boot',
function(responseText,textStatus,XMLHttpRequest) {
if(textStatus != 'error'){
$('#part6').html('Nodes have rebooted and should be installing...'+responseText);
}
}
);
}
}
);
}else{
$('#part2').html('There was a problem...');
}
}
);
}
);
} // so yeah, all these }'s and )'s really suck. I hope you never have to
// debug this. If you do, please make this code easier to read.
}
// load progress bar
myBar.loaded('xcat.js');