//**************************************************************************
//MENU EVENTS
var toggleMenu = {
    init : function(sContainerClass, sHiddenClass) {
        if (!document.getElementById || !document.createTextNode) {return;} // Check for DOM support
        var arrMenus = this.getElementsByClassName(document, 'ul', sContainerClass);
        var arrSubMenus, oSubMenu, oLink;
//if setMenu at 99 - show all menu expanded
	    if (setMenu != 99)
	    	{
			for (var i = 0; i < arrMenus.length; i++) {
				arrSubMenus = arrMenus[i].getElementsByTagName('ul');
				for (var j = 0; j < arrSubMenus.length; j++) {
					oSubMenu = arrSubMenus[j];
					oLink = oSubMenu.parentNode.getElementsByTagName('a')[0];
					oLink.onclick = function(){toggleMenu.toggle(this.parentNode.getElementsByTagName('ul')[0], sHiddenClass); return false;}
					this.toggle(oSubMenu, sHiddenClass);
				}
	//sets the initial submenu
	//any submenus that don't have links are not counted
			if (setMenu >=1 && setMenu <= arrSubMenus.length)
				{
				var activeSub = document.getElementsByTagName('ul')[setMenu]; 
				this.toggle(activeSub, sHiddenClass);
				}
			}
		}
    },


    toggle : function(el, sHiddenClass) {
        var oRegExp = new RegExp("(^|\\s)" + sHiddenClass + "(\\s|$)");
        el.className = (oRegExp.test(el.className)) ? el.className.replace(oRegExp, '') : el.className + ' ' + sHiddenClass; // Add or remove the class name that hides the element
    },
    addEvent : function(obj, type, fn) {
        if (obj.addEventListener)
            obj.addEventListener(type, fn, false);
        else if (obj.attachEvent) {
            obj["e"+type+fn] = fn;
            obj[type+fn] = function() {obj["e"+type+fn](window.event);}
            obj.attachEvent("on"+type, obj[type+fn]);
        }
    },
    getElementsByClassName : function(oElm, strTagName, strClassName){
        var arrElements = (strTagName == "*" && document.all)? document.all : oElm.getElementsByTagName(strTagName);
        var arrReturnElements = new Array();
        strClassName = strClassName.replace(/\-/g, "\\-");
        var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
        var oElement;
        for(var i=0; i<arrElements.length; i++){
            oElement = arrElements[i];      
            if(oRegExp.test(oElement.className)){
                arrReturnElements.push(oElement);
            }   
        }
        return (arrReturnElements)
    }
};
toggleMenu.addEvent(window, 'load', function(){toggleMenu.init('menu','hidden');});

//END OF MENU

//**************************************************************************
//CALENDAR
function calendar()
{
    calendar = new Date();
    day = calendar.getDay();
    month = calendar.getMonth();
    date = calendar.getDate();
    year = calendar.getYear();
    if (year < 1000)
    year+=1900
    cent = parseInt(year/100);
    g = year % 19;
    k = parseInt((cent - 17)/25);
    i = (cent - parseInt(cent/4) - parseInt((cent - k)/3) + 19*g + 15) % 30;
    i = i - parseInt(i/28)*(1 - parseInt(i/28)*parseInt(29/(i+1))*parseInt((21-g)/11));
    j = (year + parseInt(year/4) + i + 2 - cent + parseInt(cent/4)) % 7;
    l = i - j;
    emonth = 3 + parseInt((l + 40)/44);
    edate = l + 28 - 31*parseInt((emonth/4));
    emonth--;
    var dayname = new Array ("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
    var monthname =
    new Array ("January","February","March","April","May","June","July","August","September","October","November","December" );
    document.write("");
    document.write(dayname[day] + ", ");
    document.write(monthname[month] + " ");
    if (date< 10) document.write("0" + date + ", ");
         else document.write(date + ", ");
    document.write( year + "");
}

//END OF CALENDAR

//**************************************************************************
//COOKIES
function setCookie(name,value,days,path,domain,secure) {
  var expires, date;
  if (typeof days == "number") {
    date = new Date();
    date.setTime( date.getTime() + (days*24*60*60*1000) );
        expires = date.toGMTString();
  }
  document.cookie = name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}

function getCookie(name) {
  var nameq = name + "=";
  var c_ar = document.cookie.split(';');
  for (var i=0; i<c_ar.length; i++) {
    var c = c_ar[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameq) == 0) return unescape( c.substring(nameq.length, c.length) );
  }
  return null;
}

function deleteCookie(name,path,domain) {
  if (getCookie(name)) {
    document.cookie = name + "=" +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}
//END OF COOKIES


//**************************************************************************
//FONT SIZE
function setActiveStyleSheet(title) {
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) 
      	{
      	a.disabled = false;
	setCookie( "fontSize", a.getAttribute("title"), 180, "/" );
	}
    }
  }
}

function getActiveStyleSheet() {
	size = getCookie("fontSize");
	if (size != null)
		{
		setActiveStyleSheet(size);
		}
	return null;
}

function getNonIE() {
	size = getCookie("fontSize");
	if (size != null)
		{
		setActiveStyleSheet(size);
		}
	else
		{
		setActiveStyleSheet('medium');
		}
}

//END OF FONT SIZE