function copyData(from,to){to.value = from;}
function DeleteWarn(TheElement){
	confirm( "Deleting this item will also remove it from the database.  This cannot be "
	+ "undone.  OK to proceed with the delete?");
	document.getElementById(TheElement).setAttribute("url",'#');
}
function DeletePage(ScriptName,PageID,Key){
    if (confirm('Deleting cannot be undone. Ok to proceed?')){
        location.href = ScriptName+'?Action=Delete&PageID='+PageID+'&Key='+Key;
    } else {
        location.href = location.href
    }
}
function RTrim(VALUE){
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	if(v_length < 0){
		return"";
	}
	var iTemp = v_length -1;
	while(iTemp > -1){
		if(VALUE.charAt(iTemp) == w_space){
		}else{
			strTemp = VALUE.substring(0,iTemp +1);
			break;
		}
		iTemp = iTemp-1;
	}
	return strTemp;
}

function removeHTMLTags(strInputCode){
	strInputCode = strInputCode.replace(/&(lt|gt);/gi, function (strMatch, p1){
		return (p1 == "lt")? "<" : ">";
	});
	var strTagStrippedText = strInputCode.replace(/<\/?[^>]+(>|$)/gi, "");
	return strTagStrippedText		
}


function Homogenize(strTemp){
	var w_space = String.fromCharCode(32);
	strTemp = RTrim(strTemp)
	strTemp = strTemp.replace( new RegExp("&nbsp;","gi")," " );
	strTemp = strTemp.replace( new RegExp("&amp;","gi"),"&" );
	strTemp = strTemp.replace( new RegExp("&lt;","gi"),"<" );
	strTemp = strTemp.replace( new RegExp("&gt;","gi"),">" );
	strTemp = strTemp.replace( new RegExp(w_space,"gi")," " );
	strTemp = strTemp.replace( new RegExp(" ","gi")," " );
	strTemp = removeHTMLTags(strTemp)
	strTemp = escape(strTemp);
	strTemp = strTemp.replace( new RegExp("%u2019|%u201C|%u201D|%2C|%3C|%3E|%21|%23|%24|%25|%5E|%26|%28|%29|%7B|%7D|%5B|%5D|%3D|%3A|%3B|%3F|%27|%22|%0D|%0A|%A0|%20","gi"),"" );
	//strTemp = unescape(strTemp);
	//alert(strTemp)
	//strTemp = hex_md5(strTemp)
	return strTemp
}



function IsObject(Id, Tag)
{
  var o = document.getElementById(Id);
  if (o){
    if (Tag){
      if (o.tagName.toLowerCase() == Tag.toLowerCase()){
        return o;
      }
    }else{
      return o;
    }
  }
  return null;
}


function CheckContent(){
	if (IsObject('ContentDiv','div')){
		//alert(Homogenize(ContentDiv.innerHTML) + ' = ' + Homogenize(EditForm.PageContent.value))
		if (Homogenize(ContentDiv.innerHTML) != Homogenize(EditForm.PageContent.value)){
			return ('It appears that you have made changes to the content, but have not yet saved.');
		}
	}
}

var display_url=1
var ie5=document.all&&document.getElementById
var ns6=document.getElementById&&!document.all
function showmenuie5(e){
	var ClickedElement = (event.srcElement.id).toString();
    var ContextMenu;
	ContextMenu = "Pop" + ClickedElement
	var PopMenu = document.getElementById(ContextMenu)
    var rightedge=ie5? document.documentElement.clientWidth-event.clientX : window.innerWidth-e.clientX
    var bottomedge=ie5? document.documentElement.clientHeight-event.clientY : window.innerHeight-e.clientY
    if (rightedge<ContextMenu.offsetWidth)
	  PopMenu.style.left=ie5? document.documentElement.scrollLeft+event.clientX-PopMenu.offsetWidth : window.pageXOffset+e.clientX-PopMenu.offsetWidth
    else
        //original, switched to work with centered site //PopMenu.style.left=ie5? document.documentElement.scrollLeft+event.clientX : window.pageXOffset+e.clientX
        PopMenu.style.left=ie5? event.clientX/6 : window.pageXOffset+e.clientX
    if (bottomedge<ContextMenu.offsetHeight)
        PopMenu.style.top=ie5? document.documentElement.scrollTop+event.clientY-PopMenu.offsetHeight : window.pageYOffset+e.clientY-PopMenu.offsetHeight
    else
		PopMenu.style.top=ie5? document.documentElement.scrollTop+event.clientY-50 : window.pageYOffset+e.clientY
		PopMenu.style.visibility="visible"
}
function showmenuie52(e){
	var ClickedElement = (event.srcElement.id).toString();
    var ContextMenu;
	ContextMenu = "Pop" + ClickedElement
	var PopMenu = document.getElementById(ContextMenu)
	var rightedge=ie5? document.documentElement.clientWidth-event.clientX : window.innerWidth-e.clientX
    var bottomedge=ie5? document.documentElement.clientHeight-event.clientY : window.innerHeight-e.clientY
    if (rightedge<ContextMenu.offsetWidth)
	  PopMenu.style.left=ie5? document.documentElement.scrollLeft+event.clientX-PopMenu.offsetWidth : window.pageXOffset+e.clientX-PopMenu.offsetWidth
    else
        PopMenu.style.left=ie5? event.clientX/6 : window.pageXOffset+e.clientX
        //PopMenu.style.top=ie5? event.clientY + document.body.scrollTop + document.documentElement.scrollTop-230 : window.pageYOffset+e.clientY
 		PopMenu.style.visibility="visible"
}
function showmenu(ClickedElement){
	var ContextMenu;
	ContextMenu = "Pop" + ClickedElement
	var PopMenu = document.getElementById(ContextMenu)
	PopMenu.style.position="absolute";
	PopMenu.style.visibility="visible"
}


function hidemenuie5(e){
    tmp = document.getElementsByTagName("div");
    for (i=0;i<tmp.length;i++){
		if (tmp[i].id.indexOf("Pop") == "0"){
            TagID = (tmp[i].id).toString();
            document.getElementById(TagID).style.visibility = "hidden";
         }
    }
}
function highlightie5(e){
    var firingobj=ie5? event.srcElement : e.target
    if (firingobj.className=="menuitems"||ns6&&firingobj.parentNode.className=="menuitems"){
    if (ns6&&firingobj.parentNode.className=="menuitems") firingobj=firingobj.parentNode //up one node
        firingobj.style.backgroundColor="#ffeec2"
        firingobj.style.color="black"
    if (display_url==1)
        window.status=event.srcElement.url
    }
}
function lowlightie5(e){
    var firingobj=ie5? event.srcElement : e.target
    if (firingobj.className=="menuitems"||ns6&&firingobj.parentNode.className=="menuitems"){
    if (ns6&&firingobj.parentNode.className=="menuitems") firingobj=firingobj.parentNode //up one node
        firingobj.style.backgroundColor=""
        firingobj.style.color="black"
        window.status=''
    }
}
function jumptoie5(e){
    var firingobj=ie5? event.srcElement : e.target
    if (firingobj.className=="menuitems"||ns6&&firingobj.parentNode.className=="menuitems"){
    if (ns6&&firingobj.parentNode.className=="menuitems") firingobj=firingobj.parentNode
    if (firingobj.getAttribute("target"))
        window.open(firingobj.getAttribute("url"),firingobj.getAttribute("target"))
    else
        window.location=firingobj.getAttribute("url")
    }
}
if (ie5||ns6){
   document.onclick=hidemenuie5
}
document.onkeydown = HandleKeyPressEvent;
function HandleKeyPressEvent(Event){
    UnicodeKey = window.event.keyCode;
    ClearKey = String.fromCharCode(UnicodeKey);
    IsCtrlKey = window.event.ctrlKey;
    isShiftKey = window.event.shiftKey;
    if (IsCtrlKey && (ClearKey == 'S')){
        document.EditForm.HeaderText.value=document.getElementById('HeaderTextDiv').innerHTML;
        document.EditForm.PageContent.value=document.getElementById('ContentDiv').innerHTML;
		document.EditForm.SidebarContent.value=document.getElementById('SidebarContentDiv').innerHTML;
        document.EditForm.submit()
    }
}
function OpenTo(id1, id2){
    el1 = document.getElementById(id1);
    el2 = document.getElementById(id2);
    el1.style.display=''
    var el1_h = el1.offsetHeight;
    var el2_h = el2.offsetHeight;
    Increment=5
    if (el1_h < el2_h ){el1.style.height = el1_h + Increment +"px";setTimeout("OpenTo('" + id1 + "','" + id2 + "')", 0);}}
function CloseTo(id, size){
    el = document.getElementById(id);
    var h_size1 = el.offsetHeight;
    Increment=5
    if (h_size1 > size){
        el.style.height = h_size1 - Increment +"px";setTimeout("CloseTo('" + id + "','" + size + "')", 0);
    }else{
        el.style.display='none'
    }
}

function GetTimeStamp(FieldName){
	var d = new Date();
	var currYear = d.getFullYear();
	var currMonth = d.getMonth() + 1;
	var currDate = d.getDate();
	var currHour = d.getHours();
	if (currHour > 12){currHour = currHour-12;AMPM='PM'}else{AMPM='AM'}
	var currMin = d.getMinutes();
	var currSec = d.getSeconds();
		 
	time = (currMonth < 10 ? "0" : "") + currMonth + "/" +
	    (currDate < 10 ? "0" : "") + currDate + "/" +
	    currYear + " " +
	    currHour + ":" +
	    (currMin < 10 ? "0" : "") + currMin + ":" +
	    (currSec < 10 ? "0" : "") + currSec + " " + AMPM
		 
		 
	theInput = document.getElementById(FieldName);
	theInput.value = time;
}

function toggleAll(itemname,state,tag){
	tmp = document.getElementsByTagName(tag);
	for (i=0;i<tmp.length;i++){
	    if (tmp[i].className == itemname) tmp[i].style.display = state;
	}
}
function toggle(idname){
    document.getElementById(idname).style.display = (document.getElementById(idname).style.display == 'none') ? 'block' : 'none';
}
function toggleCloseOthers(idname,tag){
    origStatus = (document.getElementById(idname).style.display == 'block') ? 'block' : 'none';
    toggleAll('toggle','none',tag);
    if (origStatus=='none') toggle(idname);
}

function findPos(obj)
{
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}
					

/* AJAX*/

var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects=""
var rootdomain="http://"+window.location.hostname

function ajaxpage(url, containerid){
//alert(url);
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
} 
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
page_request.onreadystatechange=function(){
loadpage(page_request, containerid)
}
if (bustcachevar) //if bust caching of external page
var bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET', url+bustcacheparameter, true)
page_request.send(null)
}

function loadpage(page_request, containerid){

if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
//alert(page_request.responseText);
document.getElementById(containerid).innerHTML=page_request.responseText
initLightbox();
}

function loadobjs(){
if (!document.getElementById)
return
for (i=0; i<arguments.length; i++){
var file=arguments[i]
var fileref=""
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", file);
}
else if (file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", file);
}
}
if (fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref)
loadedobjects+=file+" " //Remember this object as being already added to page
}
}
}
function link(PageID,LinkID,Target){
	if (Target == '_blank') {
		window.open('/pages/links.asp?Action=Redirect&amp;PageID=' + PageID + '&LinkID=' + LinkID + '','Lw');
	}else if (Target == '_self'){
		location.href='/pages/links.asp?Action=Redirect&amp;PageID=' + PageID + '&LinkID=' + LinkID + '';
	}else{
		window.open('/pages/links.asp?Action=Redirect&amp;PageID=' + PageID + '&LinkID=' + LinkID + '','Lw');
	}
}
function getElementsByClassName(strClass, strTag, objContElm) {
  strTag = strTag || "*";
  objContElm = objContElm || document;
  var objColl = objContElm.getElementsByTagName(strTag);
  if (!objColl.length &&  strTag == "*" &&  objContElm.all) objColl = objContElm.all;
  var arr = new Array();
  var delim = strClass.indexOf('|') != -1  ? '|' : ' ';
  var arrClass = strClass.split(delim);
  for (var i = 0, j = objColl.length; i < j; i++) {
    var arrObjClass = objColl[i].className.split(' ');
    if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
    var c = 0;
    comparisonLoop:
    for (var k = 0, l = arrObjClass.length; k < l; k++) {
      for (var m = 0, n = arrClass.length; m < n; m++) {
        if (arrClass[m] == arrObjClass[k]) c++;
        if (( delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
          arr.push(objColl[i]);
          break comparisonLoop;
        }
      }
    }
  }
  return arr;
}

// To cover IE 5.0's lack of the push method
Array.prototype.push = function(value) {
  this[this.length] = value;
}

function Validate(TheForm) {
    var valid = true;
        
    var checkBoxes = false;
    var checkboxChecked = false;
        
    var radioButtons = false;
    var radioChecked = false;

    for (var i=0, j=TheForm.elements.length; i<j; i++) {
        myName = TheForm.elements[i].name;
        if (myName.indexOf('radio') > -1) {
            radioButtons = true;
            if (TheForm.elements[i].checked) radioChecked = true;
        }
        if (myName.indexOf('checkbox') > -1) {
            checkBoxes = true;
            if (TheForm.elements[i].checked) checkboxChecked = true;
        }
        if (myName.indexOf('hidden') > -1 || myName.indexOf('password') > -1 || myName.indexOf('text') > -1)
            if (TheFormTheForm.elements[i].value == what.elements[i].defaultValue) valid = false;
        if (myName.indexOf('select') > -1)
            if (TheForm.elements[i].selectedIndex == 0) valid = false;
    }

    if ((checkBoxes && !checkboxChecked) || (radioButtons && !radioChecked)) valid = false;

    if (!valid)
        alert('Form not completely filled');

    return valid;
}

function Validate(TheForm) {
    var valid = true;
        
    var checkBoxes = false;
    var checkboxChecked = false;
        
    var radioButtons = false;
    var radioChecked = false;
        
    for (var i=0, j=TheForm.elements.length; i<j; i++) {
        myType = TheForm.elements[i].type;
        if (myType == 'radio') {
            radioButtons = true;
           if (TheForm.elements[i].checked) radioChecked = true;
        }
        if (myType == 'checkbox') {
            checkBoxes = true;
            if (TheForm.elements[i].checked) checkboxChecked = true;
        }
        if (myType == 'hidden' || myType == 'password' || myType == 'text' || myType == 'textarea')
            if (TheForm.elements[i].value == TheForm.elements[i].defaultValue) valid = false;
        if (myType == 'select-one' || myType == 'select-multiple')
            if (TheForm.elements[i].selectedIndex == 0) valid = false;
    }

    if ((checkBoxes && !checkboxChecked) || (radioButtons && !radioChecked)) valid = false;

    if (!valid)
        alert('Form not completely filled');

    return valid;
}

function log_out()
{
	ht = document.getElementsByTagName("html");
	ht[0].style.filter = "progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)";
	if (confirm('Are you sure you want to log out?'))
	{
		return true;
	}
	else
	{
		ht[0].style.filter = "";
		return false;
	}
}
function getElementPosition(Obj){ 
   var el = Obj; var pT = 0; var pL = 0;
   while(el){        
        pT+=el.offsetTop;
        pL+=el.offsetLeft;
        el=el.offsetParent;
   }         
   var pos = { top:pT, left:pL};   
   return pos;
}
function PopURL(Sender,ev){
	var coord = getElementPosition(Sender);
	var wnd   = document.getElementById("LinkPop");
	wnd.style.display='';
	wnd.innerHTML='<a style="text-decoration:underline;" target="_blank" href="' + Sender.href + '"><img border="0" alt="Open this link in a new window" onclick="LinkPop.style.display=\'none\';" src="/images/site/newwin.gif" /></a>'
	wnd.style.top = (coord.top+13) + "px";
	wnd.style.left = (coord.left-115) + "px";
	//to use offset for mouse 
	//wnd.style.top = (coord.top + ev.clientY) + "px";
	//wnd.style.left = (coord.left + ev.clientX) + "px";
}

var fontElementId = "PublicationText";
function changeFont(fontClass){
	var element = document.getElementById(fontElementId);
	element.className = fontClass;
	setCookie("fontSize", fontClass, 5);
}		
function setDefaultFontSize(){
	var fontSize = getCookie("fontSize")
	if(fontSize){
		var element = document.getElementById(fontElementId);
		element.className = fontSize;
	}
}
function setCookie(c_name,value,expiredays){
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+ ((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}
function getCookie(c_name){
	if(document.cookie.length>0){
		c_start=document.cookie.indexOf(c_name + "=");
		if (c_start!=-1){ 
			c_start=c_start + c_name.length+1;
			c_end=document.cookie.indexOf(";",c_start);
			if (c_end==-1) c_end=document.cookie.length;
			return unescape(document.cookie.substring(c_start,c_end));
		}
	}
	return false;
}
function Navigate() {
	var URL =
	Address.options[Address.selectedIndex].value
	parent.top.location.href = URL
}