xcat-core/xCAT-web/lib/functions.js

88 lines
2.6 KiB
JavaScript
Raw Normal View History

// Javascript functions that most pages need.
// Note: this is included by all pages, so only put functions in this file that most/all pages need.
function setCookie(name, value, path) {
value = escape(value); // this is needed if value contains spaces, semicolons, or commas
document.cookie = name + '=' + value
+ ';expires=' + (new Date("December 31, 2023")).toGMTString()
+ ';path=' + path;
}
// Return a hash of the cookie names and values
function getCookies() {
//alert('"'+document.cookie+'"');
var cookies = document.cookie.split(/; */);
//alert(cookies[0]);
var cookret = new Object(); // this is the return value
for (i in cookies) { var pair = cookies[i].split('='); cookret[pair[0]] = unescape(pair[1]); }
return cookret;
}
function selectAll(element, objectName)
{
var sel = element.checked;
var form = element.form;
var searchstr = '^' + objectName + '\\d';
for(var i = 0; i < form.length; i++)
{
var e = form.elements[i];
if (e.type == "checkbox" && e.name.search(searchstr) > -1) { e.checked = sel; }
}
}
function isSelected(form, objectName)
{
var searchstr = '^' + objectName + '\\d';
for(var i = 0; i < form.length; i++)
{
var e = form.elements[i];
if (e.type == "checkbox" && e.name.search(searchstr) > -1 && e.checked) { return true; }
}
return false;
}
function numSelected(form, objectName)
{
var searchstr = '^' + objectName + '\\d';
var j = 0;
for(var i = 0; i < form.length; i++)
{
var e = form.elements[i];
if (e.type == "checkbox" && e.name.search(searchstr) > -1 && e.checked)
{
if (++j == 2) { return j; }
}
}
return j;
}
function toggleSection(para, tableId)
{
var t; var i;
var imageId = tableId + '-im';
if (document.all) { t = document.all[tableId]; i = document.all[imageId]; } // IE 4+
else if (document.getElementById) { t = document.getElementById(tableId); i = document.getElementById(imageId); } // Netscape 6
else { alert('Cannot expand or collapse sections in this version of your browser.'); return false; }
if (!t) { alert('Error: section ' + tableId + ' not found.'); return false; }
if (!t.style.display || t.style.display == 'inline') // the inner table is currently visible
{
t.style.display = 'none';
para.title = 'Click to expand section';
//if (txt) { txt = txt.replace(/^-/i, '+'); }
i.src = 'images/plus-sign.gif';
//i.alt = '+';
}
else // the inner table is currently invisible
{
t.style.display = 'inline';
para.title = 'Click to collapse section';
//if (txt) { txt = txt.replace(/^\+/i, '-'); }
i.src = 'images/minus-sign.gif';
//i.alt = '-';
}
return true;
}