
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 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 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><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>";

	bookMarkHTML1 += "</tr></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 SEARCH VALIDATION



