
var secureProtocol = document.location.href.substr(0, document.location.href.indexOf(":"));
var replaceUrl = ""
if (window.IsSecure) {
	//alert(IsSecure + "," + secureProtocol);	
	if (secureProtocol == "http") {
		replaceUrl = "https" + document.location.href.substr(document.location.href.indexOf(":"), document.location.href.length);
		document.location.replace(replaceUrl);
	}
} else {
	if (secureProtocol == "https") {
		replaceUrl = "http" + document.location.href.substr(document.location.href.indexOf(":"), document.location.href.length);
		document.location.replace(replaceUrl);
	}
}
	
	//alert("secureProtocol:" + secureProtocol + ", " + "replaceUrl: " + replaceUrl)

//This generic function will return the value of a QueryString
function getQueryString(Val) {
	thisURLparamStr = document.location.search;
	//chop "?" off thisURLparamStr
	if (thisURLparamStr.charAt(0) == "?") thisURLparamStr = thisURLparamStr.substring(1, thisURLparamStr.length);
	returnStr = "";
	if (thisURLparamStr != "") {
		//Build array out of thisURLparamStr using "&" as delimiter
		divide1=(thisURLparamStr.split("&"))
		for (i=0; i < divide1.length; i++) {
			divide2 = divide1[i].split("=")
			if (unescape(divide2[0]) == Val) {
				//returnStr = unescape(divide2[1]);
				returnStr = decodeURIComponent(divide2[1]);
				
			}
		}
	}
	return returnStr;
}

//Get cookie routine by Shelley Powers 
function get_cookie(Name) {
  var search = Name + "="
  var returnvalue = "";
  if (document.cookie.length > 0) {
    offset = document.cookie.indexOf(search)
    // if cookie exists
    if (offset != -1) { 
      offset += search.length
      // set index of beginning of value
      end = document.cookie.indexOf(";", offset);
      // set index of end of cookie value
      if (end == -1) end = document.cookie.length;
      returnvalue=unescape(document.cookie.substring(offset, end))
      }
   }
  return returnvalue;
}

function addPageEvent(elm, evType, fn, useCapture) {
	if (elm.addEventListener) {
		elm.addEventListener(evType, fn, useCapture);
		return true;
	} else if (elm.attachEvent) {
		var r = elm.attachEvent("on"+evType, fn);
		return r;
	} else {
		//alert("Handler could not be removed");
	}
} 

function stripHTML(oldString) {
  return oldString.replace(/<&#91;^>&#93;*>/g, "");  
}

//***********************
function divDisplayOn(divID) {

	elm = document.getElementById(divID);
	elm.style.display = "block";
}


function divDisplayOff(divID) {

	elm = document.getElementById(divID);
	elm.style.display = "none";
}

//********************************

function addOptions(fromMenu, toMenu) {

	//fromMenu = document.forms.UserProfile.AvailablePrivs;
	//toMenu = document.forms.UserProfile.FUNCTIONS;
	fromMenuArray = new Array();
	toMenuArray = new Array();
	for (i=0; i<fromMenu.options.length; i++) {
		if (fromMenu.options[i].selected == true) {
			//toMenuArray[toMenuArray.length] = new Array(fromMenu.options[i].value, fromMenu.options[i].text);
			toMenu.options[toMenu.options.length] = new Option(fromMenu.options[i].text, fromMenu.options[i].value, false, false);
		} else {
			fromMenuArray[fromMenuArray.length] = new Array(fromMenu.options[i].value, fromMenu.options[i].text);
		}
	}
	populateSelect(fromMenu, fromMenuArray);

}

function removeOptions(fromMenu, toMenu) {

	//fromMenu = document.forms.UserProfile.FUNCTIONS;
	//toMenu = document.forms.UserProfile.AvailablePrivs;
	fromMenuArray = new Array();
	toMenuArray = new Array();
	for (i=0; i<fromMenu.options.length; i++) {
		if (fromMenu.options[i].selected == true) {
			//toMenuArray[toMenuArray.length] = new Array(fromMenu.options[i].value, fromMenu.options[i].text);
			toMenu.options[toMenu.options.length] = new Option(fromMenu.options[i].text, fromMenu.options[i].value, false, false);
		} else {
			fromMenuArray[fromMenuArray.length] = new Array(fromMenu.options[i].value, fromMenu.options[i].text);
		}
	}
	populateSelect(fromMenu, fromMenuArray);

}



// ***********************
// BEGIN POSITIONING STUFF
// ***********************

function getStyleObject(objectId) {
    // cross-browser function to get an object's style object given its id
    if(document.getElementById && document.getElementById(objectId)) {
	// W3C DOM
	return document.getElementById(objectId).style;
    } else if (document.all && document.all(objectId)) {
	// MSIE 4 DOM
	return document.all(objectId).style;
    } else if (document.layers && document.layers[objectId]) {
	// NN 4 DOM.. note: this won't find nested layers
	return document.layers[objectId];
    } else {
	return false;
    }
} // getStyleObject


function GetElementLeft(eElement)
{
   if (!eElement && this)                    // if argument is invalid
   {                                         // (not specified, is null or is 0)
      eElement = this;                       // and function is a method
   }                                         // identify the element as the method owner

   var DL_bIE = document.all ? true : false; // initialize var to identify IE

   var nLeftPos = eElement.offsetLeft;       // initialize var to store calculations
   var eParElement = eElement.offsetParent;  // identify first offset parent element

   while (eParElement != null)
   {                                         // move up through element hierarchy

      if(DL_bIE)                             // if browser is IE, then...
      {
         if( (eParElement.tagName != "TABLE") && (eParElement.tagName != "BODY") )
         {                                   // if parent is not a table or the body, then...
            nLeftPos += eParElement.clientLeft; // append cell border width to calcs
         }
      }
      else                                   // if browser is Gecko, then...
      {
         if(eParElement.tagName == "TABLE")  // if parent is a table, then...
         {                                   // get its border as a number
            var nParBorder = parseInt(eParElement.border);
            if(isNaN(nParBorder))            // if no valid border attribute, then...
            {                                // check the table's frame attribute
               var nParFrame = eParElement.getAttribute('frame');
               if(nParFrame != null)         // if frame has ANY value, then...
               {
                  nLeftPos += 1;             // append one pixel to counter
               }
            }
            else if(nParBorder > 0)          // if a border width is specified, then...
            {
               nLeftPos += nParBorder;       // append the border width to counter
            }
         }
      }
      nLeftPos += eParElement.offsetLeft;    // append left offset of parent
      eParElement = eParElement.offsetParent; // and move up the element hierarchy
   }                                         // until no more offset parents exist
   return nLeftPos;                          // return the number calculated
}

function GetElementTop(eElement)
{
   if (!eElement && this)                    // if argument is invalid
   {                                         // (not specified, is null or is 0)
      eElement = this;                       // and function is a method
   }                                         // identify the element as the method owner

   var DL_bIE = document.all ? true : false; // initialize var to identify IE

   var nTopPos = eElement.offsetTop;         // initialize var to store calculations
   var eParElement = eElement.offsetParent;  // identify first offset parent element

   while (eParElement != null)
   {                                         // move up through element hierarchy
      if(DL_bIE)                             // if browser is IE, then...
      {
         if( (eParElement.tagName != "TABLE") && (eParElement.tagName != "BODY") )
         {                                   // if parent a table cell, then...
            nTopPos += eParElement.clientTop; // append cell border width to calcs
         }
      }
      else                                   // if browser is Gecko, then...
      {
         if(eParElement.tagName == "TABLE")  // if parent is a table, then...
         {                                   // get its border as a number
            var nParBorder = parseInt(eParElement.border);
            if(isNaN(nParBorder))            // if no valid border attribute, then...
            {                                // check the table's frame attribute
               var nParFrame = eParElement.getAttribute('frame');
               if(nParFrame != null)         // if frame has ANY value, then...
               {
                  nTopPos += 1;              // append one pixel to counter
               }
            }
            else if(nParBorder > 0)          // if a border width is specified, then...
            {
               nTopPos += nParBorder;        // append the border width to counter
            }
         }
      }

      nTopPos += eParElement.offsetTop;      // append top offset of parent
      eParElement = eParElement.offsetParent; // and move up the element hierarchy
   }                                         // until no more offset parents exist
   return nTopPos;                           // return the number calculated
}


//******* END POSITIONING STUFF



function getFormObjFromID(pageObj, idString) {
	var strLength = idString.length;
	var thisIDString = "";
	var formObj2return = null;
	outerFormLoop:
	for (cnt1=0; cnt1<pageObj.document.forms.length; cnt1++) {
		for (cnt2=0; cnt2<pageObj.document.forms[cnt1].elements.length; cnt2++) {
			if (pageObj.document.forms[cnt1].elements[cnt2].getAttribute("id") != null) {
				thisIDString = pageObj.document.forms[cnt1].elements[cnt2].id;
				if (thisIDString.substring(thisIDString.length - strLength, thisIDString.length) == idString) {
					//alert(thisIDString + "," + idString + "," + pageObj.document.forms[cnt1].elements[cnt2].value)
					formObj2return = pageObj.document.forms[cnt1].elements[cnt2]
					break outerFormLoop;
				}
			}
		}
	}
	return formObj2return;
}

function getUCDivID(idString) {
    //alert("hey");
	var divElms = document.getElementsByTagName("div");
	var thisUCDivID = "";
	var strLength = idString.length;
	var returnDivID = ""; 
	for (i=0; i<divElms.length; i++) {
		thisUCDivID = divElms[i].id;
		if (thisUCDivID.substring(thisUCDivID.length - strLength, thisUCDivID.length) == idString) {
			returnDivID = thisUCDivID;
			break;
		}
		
	}
	return returnDivID;
}

//this function returns the file ext.
function getFileExt(fileStr) {
	var retExt = "";
	retExt = fileStr.substring(fileStr.lastIndexOf("."), fileStr.length);
	return retExt;
}

function mkrIsDate(dateStr) {

    var datePattern = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{2}|\d{4})$/;
    var matchArray = dateStr.match(datePattern);

    //Check valid format
    if (matchArray == null) { return false; }

    month = matchArray[1];
    day = matchArray[3];
    year = matchArray[5];

    // check month range
    if (month < 1 || month > 12) { return false; }

    //Check day range
    if (day < 1 || day > 31) { return false; }

    //Check months with 30 days
    if ((month == 4 || month == 6 || month == 9 || month == 11) && day > 30) { return false; }

    //Check Feb days
    if (month == 2) {
        var leapYr = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        if (day > 29 || (day > 28 && !leapYr)) { return false; }
    }

    return true;
}

function doSocialBookmarks() {

	var sBookMarkList = new Array("http://www.stumbleupon.com/submit|ico_stumble1.gif|url|title|?|Stumble It", "http://del.icio.us/post|ico_delicious1.gif|url|title|?|Bookmark this @ DEL.ICIO.US", "http://digg.com/submit?phase=2|ico_digg1.gif|url|title|&|Bookmark this @ DIGG", "http://myweb2.search.yahoo.com/myresults/bookmarklet|ico_yahoo1.gif|u|t|?|Bookmark this @ Yahoo", "https://www.google.com/bookmarks/mark|ico_google1.gif|bkmk|title|?op=edit&|Bookmark this @ Google");
	var bookMarkHTML1 = "<table class=\"bookMarkTable1\"><tr><td class=\"bookmarkHeader1\" colspan=\"" + sBookMarkList.length + "\">Bookmarks</td></tr><tr>"
	var bookMarkURL = document.location.href;
	var bookMarkTitle = document.title;
	for (i=0; i<sBookMarkList.length; i++) {
		divide = sBookMarkList[i].split("|");
		bookMarkHTML1 += "<td><a href=\"" + divide[0] + divide[4] + divide[2] + "=" + encodeURIComponent(bookMarkURL) + "&" + divide[3] + "=" + escape(bookMarkTitle) + "\" target=\"_blank\"><img src=\"images/" + divide[1] + "\" height=\"24\" width=\"24\" border=\"0\" alt=\"" + divide[5] + "\" title=\"" + divide[5] + "\" /></a></td>"
	}
	
	bookMarkHTML1 += "</tr><tr><td colspan=\"" + sBookMarkList.length + "\"><iframe src=\"http://www.facebook.com/plugins/like.php?href=" + encodeURIComponent(bookMarkURL) + "&amp;layout=button_count&amp;show_faces=false&amp;width=100%&amp;action=like&amp;colorscheme=light\" scrolling=\"no\" frameborder=\"0\" allowTransparency=\"true\" style=\"border:none; overflow:hidden; width:100%; height:22px\"></iframe></td></tr>";
	bookMarkHTML1 += "<tr><td colspan=\"" + sBookMarkList.length + "\" style=\"text-align:left\"><div id=\"gPlusOneDiv\"></div></td></tr>";

	bookMarkHTML1 += "</table>"
	document.write(bookMarkHTML1);

}

//****** BEGIN AUTO SLIDESHOW



var mySldShwObj = "";
var mkrSlideTimer = "";
var mkrSlideDuration = 5000;
var closeSldShwButImg1 = new Image;
var closeSldShwButImg2 = new Image;
closeSldShwButImg1.src = "images/but_closeSldShw_a.gif";
closeSldShwButImg2.src = "images/but_closeSldShw_b.gif";

function SetOpacity(object,opacityPct)
{
  // IE.
  object.style.filter = 'alpha(opacity=' + opacityPct + ')';
  // Old mozilla and firefox
  object.style.MozOpacity = opacityPct/100;
  // Everything else.
  object.style.opacity = opacityPct/100;
}

function mkrRunSldShw(slideImgs) {

	//initialize
	var bkgDiv = document.getElementById("mkrSldDisplayBox");
	bkgDiv.style.display = "block";
	var sldHdDiv = document.getElementById("mkrSlideHead");
	sldHdDiv.style.display = "block";
	mySldShwObj = new sldShwObj("mkrSlide_Div1", "mkrSlide_Div2", "mkrSld1Title", "mkrSld2Title", slideImgs);
	
	//are we currently viewing an image?
	var currentSldId = getQueryString("ssitem");
	if (currentSldId != "") {
	    for (i=0; i<mySldShwObj.sldImages.length;i++) {
	        if (mySldShwObj.sldImages[i].imgID == currentSldId) {
	            mySldShwObj.currImg = i;
	            break;
	        }
	    }
	} else {
	    mySldShwObj.currImg = 0;
	}
	
	var Img1 = new Image;
	Img1.src = mySldShwObj.sldImages[mySldShwObj.currImg].imgSrc;
	Img1.setAttribute("style", "margin-left:auto;margin-right:auto;margin-top:auto;margin-bottom:auto;border:solid 3px #000000;");
	Img1.setAttribute("border", "0");
	Img1.setAttribute("alt", "Click for details");
	var divObj1 = document.getElementById(mySldShwObj.div1);
	var divObj2 = document.getElementById(mySldShwObj.div2);
	var titleArea1 = document.getElementById(mySldShwObj.titleDiv1);
	var titleArea2 = document.getElementById(mySldShwObj.titleDiv2);
	mkrClearElement(divObj1);
	mkrClearElement(divObj2);
	div1Span = document.createElement("span");
	divObj1.appendChild(div1Span);
	Img1Link = document.createElement("a");
	Img1Link.setAttribute("href", "#");
	Img1Link.setAttribute("onclick", "mkrGoToSlide()");
	Img1Link.appendChild(Img1);
	divObj1.appendChild(Img1Link);
	titleArea1.innerHTML = mySldShwObj.sldImages[mySldShwObj.currImg].imgTitle;
	titleArea2.innerHTML = "";
	divObj1.style.display = "block";
	divObj2.style.display = "block";

	mkrSlideTimer = setInterval("mkrChgSlides()",mkrSlideDuration);

}

function mkrEndSldShw() {

	window.clearInterval(mkrSlideTimer);

	var divObj1 = document.getElementById(mySldShwObj.div1);
	var divObj2 = document.getElementById(mySldShwObj.div2);
	var bkgDiv = document.getElementById("mkrSldDisplayBox");
	var sldHdDiv = document.getElementById("mkrSlideHead");
	sldHdDiv.style.display = "none";
	divObj1.style.display = "none";
	divObj2.style.display = "none";
	bkgDiv.style.display = "none";

	var titleArea1 = document.getElementById(mySldShwObj.titleDiv1);
	var titleArea2 = document.getElementById(mySldShwObj.titleDiv2);

	mkrClearElement(divObj1);
	mkrClearElement(divObj2);
	mkrClearElement(titleArea1);
	mkrClearElement(titleArea2);
}

function mkrChgSlides() {

	window.clearInterval(mkrSlideTimer);

	var Img1 = new Image;
	var Img2 = new Image;

	var divObj1 = document.getElementById(mySldShwObj.div1);
	var divObj2 = document.getElementById(mySldShwObj.div2);

	var titleArea1 = document.getElementById(mySldShwObj.titleDiv1);
	var titleArea2 = document.getElementById(mySldShwObj.titleDiv2);

	mkrClearElement(divObj1);
	mkrClearElement(divObj2);

	//which is next?
	var nxtImg = (mySldShwObj.currImg == (mySldShwObj.sldImages.length - 1))? 0:mySldShwObj.currImg + 1;

	Img1.src = mySldShwObj.sldImages[nxtImg].imgSrc;
	Img2.src = mySldShwObj.sldImages[mySldShwObj.currImg].imgSrc;

	Img1.setAttribute("style", "margin-left:auto;margin-right:auto;margin-top:auto;margin-bottom:auto;border:solid 3px #000000;");
	Img1.setAttribute("border", "0");
	Img1.setAttribute("alt", "Click for details");
	Img1.setAttribute("title", "Click for details");
	Img2.setAttribute("style", "margin-left:auto;margin-right:auto;margin-top:auto;margin-bottom:auto;border:solid 3px #000000;");
	Img2.setAttribute("border", "0");

	mySldShwObj.div1Opacity = 0;
	mySldShwObj.div2Opacity = 100;

	SetOpacity(divObj1,mySldShwObj.div1Opacity);
	SetOpacity(divObj2,mySldShwObj.div2Opacity);

	SetOpacity(titleArea1,mySldShwObj.div1Opacity);
	SetOpacity(titleArea2,mySldShwObj.div2Opacity);

	div1Span = document.createElement("span");
	div2Span = document.createElement("span");

	divObj1.appendChild(div1Span);
	divObj2.appendChild(div2Span);

	//divObj1.appendChild(Img1);
	//divObj2.appendChild(Img2);

	Img1Link = document.createElement("a");
	Img1Link.setAttribute("href", "#");
	Img1Link.setAttribute("onclick", "mkrGoToSlide()");
	Img1Link.appendChild(Img1);
	Img2Link = document.createElement("a");
	Img2Link.setAttribute("href", "#");
	Img2Link.setAttribute("onclick", "return false;");
	Img2Link.appendChild(Img2);
	divObj1.appendChild(Img1Link);
	divObj2.appendChild(Img2Link);

	titleArea1.innerHTML = mySldShwObj.sldImages[nxtImg].imgTitle;
	titleArea2.innerHTML = mySldShwObj.sldImages[mySldShwObj.currImg].imgTitle;

	mySldShwObj.img1 = Img1;
	mySldShwObj.img2 = Img2;
	mySldShwObj.currImg = nxtImg;

	mkrSlideTimer = setInterval("isSlideLoadDone()", 200);



}

function sldShwObj(div1id, div2id, titleDiv1Id, titleDiv2id, sldImgObj) {
	this.div1 = div1id;
	this.div2 = div2id;
	this.titleDiv1 = titleDiv1Id;
	this.titleDiv2 = titleDiv2id;
	this.div1Opacity = 100;
	this.div2Opacity = 0;
	this.sldImages = sldImgObj;
	this.currImg = 0;
	this.img1 = null;
	this.img2 = null;

}

function sldObj(sldSrc, sldID, sldTitle, sldGroup, sldW, sldH) {
	this.imgSrc = sldSrc;
	this.imgID = sldID;
	this.imgTitle = sldTitle;
	this.imgGroup = sldGroup;
	this.imgW = sldW;
	this.imgH = sldH;
}


function mkrClearElement(obj) {
	while(obj.firstChild) obj.removeChild(obj.firstChild);
}

function mkrChangeOpacity() {

	var divObj1 = document.getElementById(mySldShwObj.div1);
	var divObj2 = document.getElementById(mySldShwObj.div2);
	var titleArea1 = document.getElementById(mySldShwObj.titleDiv1);
	var titleArea2 = document.getElementById(mySldShwObj.titleDiv2);
	var div1complete = false;
	var div2complete = false;

	//div1 always fades up
	//div 2 always fades down

	if (mySldShwObj.div1Opacity < 100) {
		mySldShwObj.div1Opacity = mySldShwObj.div1Opacity + 10;
	} else {
		div1complete = true;
	}
	if (mySldShwObj.div2Opacity > 0) {
		mySldShwObj.div2Opacity = mySldShwObj.div2Opacity - 10;
	} else {
		div2complete = true;
	}

	if (div1complete && div2complete) {
		window.clearInterval(mkrSlideTimer);
		mkrSlideTimer = setInterval("mkrChgSlides()",mkrSlideDuration);
	} else {
		SetOpacity(divObj1,mySldShwObj.div1Opacity);
		SetOpacity(divObj2,mySldShwObj.div2Opacity);
		SetOpacity(titleArea1,mySldShwObj.div1Opacity);
		SetOpacity(titleArea2,mySldShwObj.div2Opacity);
	}



}

function isSlideLoadDone() {
	var slidesLoaded = false;
	var sldImg1 = mySldShwObj.img1;
	var sldImg2 = mySldShwObj.img2;

	if (sldImg1 != null && sldImg2 != null) {
		if (sldImg1.complete && sldImg2.complete) {
			slidesLoaded = true;
		}
	} else {
		slidesLoaded = true;
	}

	if (slidesLoaded) {
		window.clearInterval(mkrSlideTimer);
		mkrSlideTimer = window.setInterval("mkrChangeOpacity()",100);
	}

}

function mkrGoToSlide() {
	var slideID = mySldShwObj.sldImages[mySldShwObj.currImg].imgID;
	var slideGrp = mySldShwObj.sldImages[mySldShwObj.currImg].imgGroup;
	var slidePg = getQueryString("pg");
	document.location = "default.aspx?pg=" + slidePg + "&ssgrp=" + slideGrp + "&ssitem=" + slideID;
}

//****** END AUTO SLIDESHOW

//****** BEGIN TOOLTIP


var thisFloatyMenu = null;

function FloatyMenu(divObject, endFunction) {
    this.endFunc = endFunction;
    this.divObj = divObject;
}
        
function noFunc() {
}

function getCursorPos(e) {
    e = e || window.event;
    var cursor = {x:0, y:0};
    if (e.pageX || e.pageY) {
        cursor.x = e.pageX;
        cursor.y = e.pageY;
    } 
    else {
        var de = document.documentElement;
        var b = document.body;
        cursor.x = e.clientX + 
            (de.scrollLeft || b.scrollLeft) - (de.clientLeft || 0);
        cursor.y = e.clientY + 
            (de.scrollTop || b.scrollTop) - (de.clientTop || 0);
    }
    return cursor;
}

function delayhideFloatyMenu() {
    delayhide=setTimeout(thisFloatyMenu.endFunc, 250);
}

function clearhideFloatyMenu() {
    if (typeof delayhide!="undefined") {
        clearTimeout(delayhide);
    }
}

function hideFloatyMenu() {
    divDisplayOff(thisFloatyMenu.divObj.id);
}

function dynamicFloatyMenuhide(e){
    delayhideFloatyMenu();
}

function hideFloatyMenu() {
    divDisplayOff(thisFloatyMenu.divObj.id);
}

//****** END TOOLTIP

//****** BEGIN DISPLAY ARCHIVE LIST

function displayPgArchList() {
    var archiveHTMLStr = "";
    var newYear = "";
    var oldYear = "";
    var archDate = new Date();
    var month_names = new Array();
    var archYearCollection = new Array();
    var thisArchYear = new Array();
    var addedToYrCollection = false;
    var thisArchYearCollObj = new archYearCollObj("", null);
    var thisURLstr = document.location.href.substring(0, document.location.href.indexOf("?"));
    var thisPgId = getQueryString("pg");

    month_names[month_names.length] = "January";
    month_names[month_names.length] = "February";
    month_names[month_names.length] = "March";
    month_names[month_names.length] = "April";
    month_names[month_names.length] = "May";
    month_names[month_names.length] = "June";
    month_names[month_names.length] = "July";
    month_names[month_names.length] = "August";
    month_names[month_names.length] = "September";
    month_names[month_names.length] = "October";
    month_names[month_names.length] = "November";
    month_names[month_names.length] = "December";
    
    
    
    if (window.pgArchiveList) {
        for (i=0;i<pgArchiveList.length;i++) {
            addedToYrCollection = false;
            archDivide = pgArchiveList[i].split("|");
            newYear = archDivide[2].split("/")[2];
            
            if (newYear != oldYear) {
                //new year - iterate archYearCollection
                //alert(oldYear + "," + newYear);
                if (i>0) {
                    archYearCollection[archYearCollection.length] = thisArchYearCollObj;
                    thisArchYear = new Array();
                    thisArchYearCollObj = new archYearCollObj(newYear, new Array());
                } else {
                    thisArchYearCollObj = new archYearCollObj(newYear, new Array());
                }
            }
            thisArchYear[thisArchYear.length] = new archiveObj(thisURLstr + "?pg=" + archDivide[0], archDivide[1], archDivide[2], archDivide[0]);

            if (i == pgArchiveList.length - 1) {
                thisArchYearCollObj.archCollection = thisArchYear;
                archYearCollection[archYearCollection.length] = thisArchYearCollObj;
            } else {
                thisArchYearCollObj.archCollection = thisArchYear;
            }
            oldYear = newYear;
            //alert(thisArchYearCollObj.archCollection[0][i].archTitle)
        }

        for (i=0;i<archYearCollection.length;i++) {
            archiveHTMLStr += "<h2>" + archYearCollection[i].year + " Archives</h2>";
            archiveHTMLStr += "<ul>";
            for (j=0;j<archYearCollection[i].archCollection.length;j++) {
                thisMonthStr = archYearCollection[i].archCollection[j].archDate.split("/")[0];
                while (thisMonthStr.charAt(0) == "0") {
                    thisMonthStr = thisMonthStr.substring(1, thisMonthStr.length);
                }
               thisMonthInt = parseInt(thisMonthStr) - 1;
               thisDateStr = month_names[thisMonthInt] + " " + archYearCollection[i].archCollection[j].archDate.split("/")[1];
               if (thisPgId == archYearCollection[i].archCollection[j].archPgID) {
                   archiveHTMLStr += "<li><b>" + thisDateStr + "</b></li>";
               } else {
                   archiveHTMLStr += "<li>" + "<a href=\"" + archYearCollection[i].archCollection[j].archUrl + "\" title=\"" + archYearCollection[i].archCollection[j].archTitle + "\">" + thisDateStr + "</a></li>";
               }
               
               
            }
            archiveHTMLStr += "</ul>";
        }
        document.write(archiveHTMLStr);
    }
}

function archiveObj(arUrl, arTitle, arDate, arPgID) {
    this.archUrl = arUrl;
    this.archTitle = arTitle;
    this.archDate = arDate;
    this.archPgID = arPgID;
}

function archYearCollObj(arYear, arObjList) {
    this.year = arYear;
    this.archCollection = arObjList;
}


//****** END DISPLAY ARCHIVE LIST

//****** BEGIN MENU HILITE FUNCS

function isGTmsEight() {
	var browzVerz = 99;
	var returnBool = true;
	if (navigator.appVersion.indexOf("MSIE") != -1) {
		browzVerz = parseFloat(navigator.appVersion.split("MSIE")[1]);
	}
	if (browzVerz < 8) {
		returnBool = false;
	}
	return returnBool;
}

function hiliteNavItem() {

	var look4ID = getQueryString("pg");

	//div 'class' attribute should be 'className' attribute
	//in pre-8 IE browsers
	var classAttribStr = "class";
	if (!isGTmsEight()) {
		classAttribStr = "className";
	}

	masterNavArray = new Array();
	masterNavArray = getMasterNavArray();

	if ((look4ID == "") && (masterNavArray.length > 0)) {
		look4ID = masterNavArray[0].parentNav.elmID.substring(masterNavArray[0].parentNav.elmID.lastIndexOf("_") + 1, masterNavArray[0].parentNav.elmID.length);
	}

	outerNavLoop:
	for (i=0; i<masterNavArray.length; i++) {

		for (j=0; j<masterNavArray[i].subNavCollection.length; j++) {
			if (masterNavArray[i].subNavCollection[j].elmID == look4ID) {
				//alert("masterNavArray[i].elmID: " + masterNavArray[i].parentNav.elmID + " = " + look4ID);
				var topLevelItem = document.getElementById(masterNavArray[i].parentNav.elmID);
				topLevelItem.setAttribute(classAttribStr, "activeMenu");
				topLevelItem.getElementsByTagName("a")[0].innerHTML = "<span class=\"hiliteLink\">" + topLevelItem.getElementsByTagName("a")[0].innerHTML + "</span>";
				break outerNavLoop;
			}
		}
	}

}


function navigationObj(eNavObj, subNavList) {
    this.parentNav = eNavObj;
    this.subNavCollection = subNavList;
}

function subNavObj(eID, eHtml, eHref) {
    this.elmID = eID;
    this.elmText = stripHTML(eHtml);
    this.elmLink = eHref;
}


function getMasterNavArray() {

	var menuDiv = document.getElementById("menu");
	var topLevelNavs = new Array();
	var subLevelNavs = new Array();
	var masterNavArray = new Array();
	var subNavArray = new Array();
	var subNavCollection = new Array();
	var liNodes = menuDiv.childNodes;
	var parentID = "";
	var parentHtml = "";
	var parentHREFStr = "";
	
	var thisIDStr1 = "";
	var thisIDStr2 = "";
	var thisTXTStr1 = ""
	var thisTXTStr2 = "";
	var thisHREFStr1 = "";
	var thisHREFStr2 = "";

	for(i=0;i<liNodes.length;i++) {
        	if(liNodes[i].nodeType == 1) {
        	    topLevelNavs[topLevelNavs.length] = liNodes[i];
        	}
	}

	for(i=0; i<topLevelNavs.length; i++) {
		elmID = "";
		subNavArray = new Array();
		subNavArray = topLevelNavs[i].getElementsByTagName("li");
		subNavCollection = new Array();
		for (j=0;j<subNavArray.length;j++) {
			//scrape ids
			thisIDStr1 = subNavArray[j].id;
			thisTXTStr1 = subNavArray[j].getElementsByTagName("a")[0].innerHTML;
			thisHREFStr1 = subNavArray[j].getElementsByTagName("a")[0].getAttribute("href");
			//capture id of first LI
			if (j == 0) {
				parentID = thisIDStr1;
				parentHtml = thisTXTStr1;
				parentHREFStr = thisHREFStr1;
				parentNavObj = new subNavObj(thisIDStr1, thisTXTStr1, thisHREFStr1);
			}
			thisIDStr2 = thisIDStr1.substring(thisIDStr1.lastIndexOf("_") + 1, thisIDStr1.length);
			thisTXTStr2 = subNavArray[j].getElementsByTagName("a")[0].innerHTML;
			thisHREFStr2 = subNavArray[j].getElementsByTagName("a")[0].getAttribute("href");
			subNavCollection[subNavCollection.length] = new subNavObj(thisIDStr2, thisTXTStr2, thisHREFStr2);
		}
		masterNavArray[masterNavArray.length] = new navigationObj(parentNavObj, subNavCollection);
	}
	return masterNavArray;
}

function writeContextMenu(look4ID) {
	if (!look4ID) {
		look4ID = getQueryString("pg");
	}
	masterNavArray = new Array();
	masterNavArray = getMasterNavArray();
	var topLevelItem = "";

	outerNavLoop:
	for (i=0; i<masterNavArray.length; i++) {
		for (j=0; j<masterNavArray[i].subNavCollection.length; j++) {
			if (masterNavArray[i].subNavCollection[j].elmID == look4ID) {
				topLevelItem = document.getElementById(masterNavArray[i].parentNav.elmID);
				makeContextMenuStr(masterNavArray[i].parentNav.elmID, masterNavArray[i].subNavCollection);
				break outerNavLoop;
			}
		}
	}
}

function getContextTitle(look4ID) {
	if (!look4ID) {
		look4ID = getQueryString("pg");
	}
	masterNavArray = new Array();
	masterNavArray = getMasterNavArray();
	var contextTitle = "";

	outerNavLoop:
	for (i=0; i<masterNavArray.length; i++) {
		for (j=0; j<masterNavArray[i].subNavCollection.length; j++) {
			if (masterNavArray[i].subNavCollection[j].elmID == look4ID) {
				topLevelItem = masterNavArray[i].parentNav;
				contextTitle = masterNavArray[i].parentNav.elmText;
				break outerNavLoop;
			}
		}
	}
	return contextTitle;
}

function makeContextMenuStr(eID, nvArray) {
	var sideListDiv = document.getElementById("sideBarList");
	navUL = document.createElement("ul");
	thisParentID = eID.substring(eID.lastIndexOf("_") + 1, eID.length);
	for (i=0;i<nvArray.length;i++) {
		if (nvArray[i].elmID != thisParentID) {
			navLI = document.createElement("li");
			navLIA = document.createElement("a");
			navLIA.setAttribute("href", nvArray[i].elmLink);
			navLIA.innerHTML = nvArray[i].elmText;
			navLI.appendChild(navLIA);
			navUL.appendChild(navLI);
		}
	}
	sideListDiv.appendChild(navUL);
	hiliteSideNavItem();
}

function hiliteSideNavItem() {
	var classAttribStr = "class";
	if (!isGTmsEight()) {
		classAttribStr = "className";
	}
	var sideNav = document.getElementById("sideBarList");
	var navID = getQueryString("pg");
	var sideLinks = sideNav.getElementsByTagName("a");
	if (navID != "") {
		for (i=0;i<sideLinks.length;i++) {
			if (sideLinks[i].getAttribute("href").indexOf("pg=" + navID) > -1) {
				sideLinks[i].setAttribute(classAttribStr, "activeSideItem");
				break;
			}
		}
	}
}

//****** END MENU HILITE FUNCS


//****** BEGIN HEADLINE SLIDER FUNCS

function mkrHeadlineSlider() {

	this.container = null;
	this.containerWidth = 0;
	this.slices = 0;
	this.currentHeadline = 0;
	this.leftHeadlineNum = 0;
	this.sldInterval = "";
	this.sliderWidth = 0;
	this.sliderDivs = new Array();
	this.maxLeft = 0;
	this.maxRight = 0;
	this.leftHeadlineNum = 0;
	this.maxLeft = 0;
	this.maxRight = 0;
	this.inProcess = false;


	this.init = function() {
		//alert("init!")
		//addPageEvent(window, "resize", "mSliderObj.init()");
		var slideRoot = document.getElementById("mkr_headlineRoot");
		var slideContainer = document.getElementById("mkr_HeadlineMainSlider");
		widthfit = parseInt(slideRoot.offsetWidth) - 64;
		slideContainer.style.width = widthfit.toString() + "px";
		var cntnrWidth = parseInt(slideContainer.clientWidth);
		var sliderDivs = new Array();
		this.container = slideContainer;
		this.containerWidth = cntnrWidth;
		var sliderWidth = parseInt(widthfit - 200);
		this.slices = 5;
		this.currentHeadline = 1;
		this.sldInterval = "";

		var sliderNodes = slideContainer.childNodes;
		for (i=0;i<sliderNodes.length;i++) {
			if (sliderNodes[i].nodeType == 1) {
				if (sliderNodes[i].getAttribute("class") == "mkr_HeadlineSlider") {
					widthStr = sliderWidth + "px";
					sliderNodes[i].style.width = widthStr;
					sliderDivs[sliderDivs.length] = sliderNodes[i];
				}
			}
		}

		this.sliderWidth = sliderWidth;
		this.sliderDivs = sliderDivs;
		this.slideTo(this.leftHeadlineNum);

	}

	this.slideLeft = function () {
		var marginval = (this.sliderDivs[0].style.marginLeft == "")? 0:parseInt(this.sliderDivs[0].style.marginLeft);
		if (!this.inProcess) {
			this.inProcess = true;
			this.maxLeft = marginval - this.sliderWidth;
			this.leftHeadlineNum++;
			var p=this;
			this.sldInterval = setInterval(function() { p.slide('L') }, 100);
		}
	}

	this.slideRight = function () {
		var marginval = (this.sliderDivs[0].style.marginLeft == "")? 0:parseInt(this.sliderDivs[0].style.marginLeft);
		if (!this.inProcess) {
			this.inProcess = true;
			this.maxRight = marginval + this.sliderWidth;
			var p=this;
			this.leftHeadlineNum--;
			this.sldInterval = setInterval(function() { p.slide('R') }, 100);
		}
	}

	this.disableButton = function (whichBut) {
		switch (whichBut) {
			case "L":
				thisBut = document.getElementById("mkr_prevHeadlineBut").getElementsByTagName("a")[0];
				break;
			case "R":
				thisBut = document.getElementById("mkr_nextHeadlineBut").getElementsByTagName("a")[0];
				break;
			default:
				break;
		}
		if (thisBut) {
			thisBut.setAttribute("class", "gray");
			thisBut.removeAttribute("onclick");
			thisBut.removeAttribute("href");
		}
	}

	this.enableButton = function (whichBut) {
		switch (whichBut) {
			case "L":
				thisBut = document.getElementById("mkr_prevHeadlineBut").getElementsByTagName("a")[0];
				clickFunc = "mSliderObj.slideRight();return false;";
				break;
			case "R":
				thisBut = document.getElementById("mkr_nextHeadlineBut").getElementsByTagName("a")[0];
				clickFunc = "mSliderObj.slideLeft();return false";
				break;
			default:
				break;
		}
		if (thisBut) {
			thisBut.setAttribute("class", "");
			thisBut.setAttribute("onclick", clickFunc);
			thisBut.setAttribute("href", "#");
		}
	}


	this.slide = function (sldDir) {
		//var sldAmt = parseInt(this.sliderWidth * this.currentHeadline)/this.slices;

		marginval = (this.sliderDivs[0].style.marginLeft == "")? "0":this.sliderDivs[0].style.marginLeft;
		marginL = parseInt(marginval);

		var sldAmt = parseInt(this.sliderWidth)/this.slices;

		var moveAmt = 0;
		var maxAmt = 0;
		headLineIterator = 0;
		var stopSlidingBool = false;


		switch (sldDir) {
			case "L":
				moveAmt = marginL - sldAmt;
				maxAmt = this.maxLeft;
				stopSlidingBool = (moveAmt <=  maxAmt)? true:false;
				break;
			case "R":
				moveAmt = marginL + sldAmt;
				maxAmt = this.maxRight;
				stopSlidingBool = (moveAmt >=  maxAmt)? true:false;
				break;
			default:
				break;
		}

		var moveAmtStr = moveAmt.toString() + "px";

		//alert("sliderDivs[0].id:" + this.sliderDivs[0].getAttribute("id") + "\n moveLeftAmt:" + moveLeftAmt + "\n marginval:" + marginval + "\n" + "this.containerWidth:" + this.containerWidth);

		if (stopSlidingBool) {

			//stop interval
			clearInterval(this.sldInterval);

			this.sliderDivs[0].style.marginLeft = maxAmt;

			this.fixPos();

			this.checkButtonState();

			this.inProcess = false;

		} else {
			this.sliderDivs[0].style.marginLeft = moveAmtStr;
		}

	}

	this.slideTo = function (sldNum) {
		var moveAmt = 0 - parseInt(this.sliderWidth * sldNum);
		var moveAmtStr = moveAmt.toString() + "px";
		this.leftHeadlineNum = sldNum;
		this.sliderDivs[0].style.marginLeft = moveAmtStr;
		this.fixPos();
		this.checkButtonState();
	}

	this.fixPos = function () {
		//fix positioning problem


		var containerLeft = this.container.offsetLeft;
		var fixAmt = 0 - parseInt(this.sliderDivs[this.leftHeadlineNum].offsetLeft - this.container.offsetLeft);
		//alert("container left:" + this.container.offsetLeft + ", slider left:" + this.sliderDivs[this.leftHeadlineNum].offsetLeft + ", fixAmt:" + fixAmt);

		this.sliderDivs[0].style.marginLeft = parseInt(this.sliderDivs[0].style.marginLeft) + fixAmt + "px";



		/*
		if (this.sliderDivs[this.leftHeadlineNum].offsetLeft > containerLeft) {
			fixPos = parseInt(this.sliderDivs[0].style.marginLeft) - this.sliderDivs[this.leftHeadlineNum].offsetLeft;
			this.sliderDivs[0].style.marginLeft = fixPos.toString() + "px";
		}
		if (this.sliderDivs[this.leftHeadlineNum].offsetLeft < 0) {
			fixPos = parseInt(this.sliderDivs[0].style.marginLeft) + parseInt(this.sliderDivs[this.leftHeadlineNum].offsetLeft * -1);
			this.sliderDivs[0].style.marginLeft = fixPos.toString() + "px";
		}
		*/
	}

	this.checkButtonState = function () {
		if ((this.leftHeadlineNum + 1) == this.sliderDivs.length - 1) {
			this.disableButton("R")
		} else {
			this.enableButton("R")
		}

		if ((this.leftHeadlineNum + 1) == 1) {
			this.disableButton("L")
		} else {
			this.enableButton("L")
		}
	}

	this.generateHeadlineSlider = function(parentDivID, headLineArray, scrollToNum) {

		var parentDiv = document.getElementById(parentDivID);
		var clickFunc = "";
		//slider root
		var rootDiv = document.createElement("div");
		rootDiv.setAttribute("id", "mkr_headlineRoot");

		//prev button
		var prvButDiv = document.createElement("div");
		prvButDiv.setAttribute("id", "mkr_prevHeadlineBut");
		var prvAnchor = document.createElement("a");
		prvAnchor.setAttribute("href", "#");
		clickFunc = "mSliderObj.slideRight()";
		prvAnchor.setAttribute("onclick", clickFunc);
		prvButDiv.appendChild(prvAnchor);
		rootDiv.appendChild(prvButDiv);

		//main sliding area
		var mainSliderDiv = document.createElement("div");
		mainSliderDiv.setAttribute("id", "mkr_HeadlineMainSlider");

		//all the sliding divs
		for (i=0;i<headLineArray.length; i++) {
			thisHeadLnDiv = document.createElement("div");
			thisHeadLnDiv.setAttribute("id", "HeadLineSlider_" + i);
			thisHeadLnDiv.setAttribute("class", "mkr_HeadlineSlider");
			if (headLineArray[i].url != "") {
				thisHeadLnAnchor = document.createElement("a");
				thisHeadLnAnchor.innerHTML = headLineArray[i].txt;
				thisHeadLnAnchor.setAttribute("href", headLineArray[i].url);
				thisHeadLnDiv.appendChild(thisHeadLnAnchor);
			}
			mainSliderDiv.appendChild(thisHeadLnDiv);

		}
		rootDiv.appendChild(mainSliderDiv);

		//next button
		var nxtButDiv = document.createElement("div");
		nxtButDiv.setAttribute("id", "mkr_nextHeadlineBut");
		var nxtAnchor = document.createElement("a");
		nxtAnchor.setAttribute("href", "#");
		clickFunc = "mSliderObj.slideLeft()";
		nxtAnchor.setAttribute("onclick", clickFunc);
		nxtButDiv.appendChild(nxtAnchor);
		rootDiv.appendChild(nxtButDiv);

		parentDiv.appendChild(rootDiv);

		this.leftHeadlineNum = scrollToNum;
		this.init();

	}


}

var mSliderObj = new mkrHeadlineSlider();

function headLineItemArray(headLineTxt, headLineUrl) {
	this.txt = headLineTxt;
	this.url = headLineUrl;
}

function headLineInitOnResize() {
	mSliderObj.init();
}

function generateHLSlider() {


	//var thisPgID = "157";
	//var thisPgID = "258";
	//var thisPgID = "173";
	var thisPgID = getQueryString("pg");
	var thisPageFileNm = "default.aspx";
	var headLineHeaderTxt = "";
	var headLineArray = new Array();
	var arrayType = "";

	if (window.pgArchiveList) {
		headLineArray = pgArchiveList;
		arrayType = "archive";
	} else {
		masterNavArray = new Array();
		masterNavArray = getMasterNavArray();
		outerNavLoop:
		for (i=0; i<masterNavArray.length; i++) {
			for (j=0; j<masterNavArray[i].subNavCollection.length; j++) {
				if (masterNavArray[i].subNavCollection[j].elmID == thisPgID) {
					headLineArray = masterNavArray[i].subNavCollection;
					headLineArray.shift();
					headLineHeaderTxt = masterNavArray[i].parentNav.elmText;
					break outerNavLoop;
				}
			}
		}
		arrayType = "context";
	}


	if (headLineArray.length > 0) {

		var myDynHdlnArray = new Array();

		var isFirstHeadline = false;
		var isLastHeadline = false;
		var isOK = true;
		var previousHeadlineNum = -1;
		var scrollToHeadline = 0;
		for (i=0;i<headLineArray.length;i++) {

			if (arrayType == "archive") {
				archSplit = headLineArray[i].split("|");
				linkUrl = thisPageFileNm + "?pg=" + archSplit[0];
				linkTxt = archSplit[2] + "<br/><strong>" + archSplit[1] + "</strong>"
				linkPgID = archSplit[0];
			}

			if (arrayType == "context") {
				linkUrl = headLineArray[i].elmLink;
				linkTxt = headLineHeaderTxt + "<br/><strong>" + headLineArray[i].elmText + "</strong>"
				linkPgID = headLineArray[i].elmID;
			}

			if (linkPgID == thisPgID) {
				//is curr headline 1st?
				if (i == 0) {
					isFirstHeadline = true;
					myDynHdlnArray[myDynHdlnArray.length] = new headLineItemArray("", "");
				} else if (i == parseInt(headLineArray.length - 1)) {
					isLastHeadline = true;
					scrollToHeadline = myDynHdlnArray.length - 1;
				} else {
					scrollToHeadline = previousHeadlineNum;
				}
			}

			if (linkPgID != thisPgID) {
				myDynHdlnArray[myDynHdlnArray.length] = new headLineItemArray(linkTxt, linkUrl);
				previousHeadlineNum++;
			}

			if (isLastHeadline) {
				myDynHdlnArray[myDynHdlnArray.length] = new headLineItemArray("", "");
			}
		}

		//if array is too short or we are in slideshow or IE7 - no slider
		if (myDynHdlnArray.length < 3) isOK = false;
		if (getQueryString("ssitem") != "") isOK = false;
		if (!isGTmsEight()) isOK = false;

		if (isOK) {
			mSliderObj.generateHeadlineSlider("mkrSliderParent", myDynHdlnArray, scrollToHeadline);
			addPageEvent(window, "resize", headLineInitOnResize);
		}
	}
}

//****** END HEADLINE SLIDER FUNCS



