function toggledisplay(id,action,override)
{
var output=document.getElementById("output");
var div=document.getElementById(id);
var sign=document.getElementById(id+"sign");
if (typeof override == 'undefined')
override = true;
if (div)
if (sign)
{
if (!(sign.innerHTML.indexOf('*')==-1))
{
// output.innerHTML = output.innerHTML + "FOUND OPEN for " + id + "
";
if (override == false)
{ // Expandinging the list
// output.innerHTML = output.innerHTML + "FOUND override == falsefor " + id + "
";
sign.innerHTML = "(+)";
}
}
else
if (typeof action != 'undefined')
if (action.length>0)
sign.innerHTML = action;
if (sign.innerHTML.indexOf('+')==-1)
{ // Collapsing the list
sign.innerHTML = "(+)";
sign.alt = "Expand";
div.style.display = "none";
// toggleChildren(id,'-');
}
else
{ // Expandinging the list
sign.innerHTML = "(-)";
sign.alt = "Colapse";
div.style.display = "";
}
}
}
function toggledisplayicons(id,action,icon1,icon2)
{
var div=document.getElementById(id);
var sign=document.getElementById(id+"sign");
if (div)
if (sign)
{
if (action.length<1) //Passed in action is blank so read the signs to determine how to toggle
{
if (sign.src.indexOf(icon2)==-1) // Then it contains Icon1
action = '-';
else
action = '+';
}
if (action.indexOf('+')==-1)
{ // Collapsing the list
sign.src = "/Templates/SUNY/graphics/icons/"+icon2;
sign.alt = "Expand";
div.style.display = "none";
}
else
{ // Expandinging the list
sign.src = "/Templates/SUNY/graphics/icons/"+icon1;
sign.alt = "Colapse";
div.style.display = "";
}
}
}
function toggleChildren(id,action,override)
{
//var output=document.getElementById("OUTPUT");
var div=document.getElementById(id);
var nodetype = 1;
var tagname = 'DIV';
var localaction = "";
if (typeof action != 'undefined')
localaction = action;
if (typeof override == 'undefined')
override = true;
if (div)
if (div.childNodes.length > 0)
for (var i = 0; i < div.childNodes.length; i++)
if (div.childNodes[i].nodeType==nodetype)
if (div.childNodes[i].nodeName==tagname)
{
toggledisplay(div.childNodes[i].id,localaction,override)
toggleChildren(div.childNodes[i].id,localaction,override)
}
}
function toggleChildrenicons(id,action,icon1,icon2)
{
var div=document.getElementById(id);
var nodetype = 1;
var tagname = 'DIV';
if (div)
if (div.childNodes.length > 0)
for (var i = 0; i < div.childNodes.length; i++)
if (div.childNodes[i].nodeType==nodetype)
if (div.childNodes[i].nodeName==tagname)
{
toggledisplayicons(div.childNodes[i].id,action,icon1,icon2)
toggleChildrenicons(div.childNodes[i].id,action,icon1,icon2)
}
}
// This function appends and entry to a list using the "," delimiter
function addToList(list,value)
{
if (value.length > 0)
if (list.length > 0)
return list+','+value;
else
return value;
else
return list;
}
function readCookies(id)
{
// var output=document.getElementById("OUTPUT");
var idx = document.URL.indexOf('?');
var ca = document.cookie.split('; ');
if (!document.cookie)
if (idx != -1)
ca = document.URL.substring(idx+1,document.URL.length).split('&');
var foundcookie = false;
date = new Date();
date.setTime(date.getTime()+(7*24*60*60*1000));
for (var i = 0; i < ca.length;i++)
{
var c = ca[i];
if (c.indexOf(id) == 0)
{
foundcookie = true;
toggleChildren(id,'-',true);
var idsToExpand = c.substring(c.indexOf('=')+1).split(',');
for (var j = 0; j < idsToExpand.length;j++)
toggledisplay(idsToExpand[j],'+');
}
}
return foundcookie;
}
function readCookiesicons(id,icon1,icon2)
{
// var output=document.getElementById("OUTPUT");
var ca = document.cookie.split('; ');
date = new Date();
date.setTime(date.getTime()+(7*24*60*60*1000));
for (var i = 0; i < ca.length;i++)
{
var c = ca[i];
if (c.indexOf(id) == 0)
{
var idsToExpand = c.substring(c.indexOf('=')+1).split(',');
for (var j = 0; j < idsToExpand.length;j++)
toggledisplayicons(idsToExpand[j],'+',icon1,icon2);
}
}
}
function returnExpandedIds(id)
{
var sign=document.getElementById(id+"sign");
var div=document.getElementById(id);
var nodetype = 1;
var tagname = 'DIV';
var expandedIds = '';
if (div.childNodes.length > 0)
for (var i = 0; i < div.childNodes.length; i++)
if (div.childNodes[i].nodeType==nodetype)
if (div.childNodes[i].nodeName==tagname)
expandedIds = addToList(expandedIds,returnExpandedIds(div.childNodes[i].id));
if (div.style.display.indexOf('none')==-1)
expandedIds = addToList(expandedIds,id);
return expandedIds;
}
function appendlink(id,menuid)
{
var link=document.getElementById(id+"link");
var idx = link.href.indexOf('?');
if (idx != -1)
{
var ca = link.href.substring(idx+1,link.href.length).split('&');
link.href = link.href.substring(0,idx); //Remove existing query section from href
nextseperator = "?";
for (var i = 0; i < ca.length;i++)
{
var c = ca[i];
if (c.indexOf(menuid) == -1)
{
link.href = link.href + nextseperator + c;
nextseperator = "&";
}
}
link.href = link.href + nextseperator + menuid + "=" + returnExpandedIds(menuid);
}
else
link.href = link.href + "?" + menuid + "=" + returnExpandedIds(menuid);
}
function savestatewithlink(id,days,hours,minutes,linkid)
{
savestate(id,days,hours,minutes);
if ( !document.cookie )
appendlink(linkid,id);
}
function savestate(id,days,hours,minutes)
{
//var output=document.getElementById("OUTPUT");
var div=document.getElementById(id);
var expiration=(days*24*60*60*1000)+(hours*60*60*1000) + (minutes*60*1000);
var nodetype = 1;
var tagname = 'DIV';
var cookievalue = '';
var expire = '';
if (div)
if (div.childNodes.length > 0)
for (var i = 0; i < div.childNodes.length; i++)
if (div.childNodes[i].nodeType==nodetype)
if (div.childNodes[i].nodeName==tagname)
cookievalue = addToList(cookievalue,returnExpandedIds(div.childNodes[i].id));
date = new Date();
date.setTime(date.getTime()+expiration);
//output.innerHTML = expiration+"TEST";
if (expiration>0)
expire = '; expires=' + date.toGMTString();
document.cookie=id+'='+cookievalue+ expire +'; path=/';
}