// JScript File

function getElementByIdCrossBrowser(the_id) {
if (typeof the_id != 'string') {
return the_id;
}

if (typeof document.getElementById != 'undefined') {
return document.getElementById(the_id);
} else if (typeof document.all != 'undefined') {
return document.all[the_id];
} else if (typeof document.layers != 'undefined') {
return document.layers[the_id];
} else {
return null;
}
}


function getElementByIdCrossBrowserParent(the_id) {
if (typeof the_id != 'string') {
return the_id;
}

if (typeof parent.document.getElementById != 'undefined') {
return parent.document.getElementById(the_id);
} else if (typeof parent.document.all != 'undefined') {
return parent.document.all[the_id];
} else if (typeof parent.document.layers != 'undefined') {
return parent.document.layers[the_id];
} else {
return null;
}
}


// Declaring valid date character, minimum year and maximum year
 var dtCh= "/";
 var minYear=1900;
 var maxYear=2100;
 function isInteger(s){

 	var i;
     for (i = 0; i < s.length; i++){   
         // Check that current character is number.
         var c = s.charAt(i);
         if (((c < "0") || (c > "9"))) return false;
     }
     // All characters are numbers.
     return true;
 }
 function stripCharsInBag(s, bag){
 	var i;
     var returnString = "";
     // Search through string's characters one by one.
     // If character is not in bag, append to returnString.
     for (i = 0; i < s.length; i++){   
         var c = s.charAt(i);
         if (bag.indexOf(c) == -1) returnString += c;
     }
     return returnString;
 }
 function daysInFebruary (year){
 	// February has 29 days in any year evenly divisible by four,
     // EXCEPT for centurial years which are not also divisible by 400.
     return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
 }
 function DaysArray(n) {
 	for (var i = 1; i <= n; i++) {
 		this[i] = 31
 		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
 		if (i==2) {this[i] = 29}
    } 
    return this
 }
 
 function isDate(dtStr,theField){
 	if (dtStr==''){ return true; }
   if (dtStr.indexOf(dtCh) == -1&&dtStr.length==8){dtStr = (dtStr.substr(0,2) + dtCh + dtStr.substr(2,2) + dtCh + dtStr.substring(4))}
 theField.value=dtStr
 	var daysInMonth = DaysArray(12)
 	var pos1=dtStr.indexOf(dtCh)
 	var pos2=dtStr.indexOf(dtCh,pos1+1)
 	var strMonth=dtStr.substring(0,pos1)
 	var strDay=dtStr.substring(pos1+1,pos2)
 	var strYear=dtStr.substring(pos2+1)
 	strYr=strYear
 	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
 	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)	
 for (var i = 1; i <= 3; i++) {
 		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
 	}
 	month=parseInt(strMonth)
 	day=parseInt(strDay)
 	year=parseInt(strYr)	
 if (pos1==-1 || pos2==-1){
 		alert("The date format should be : mm/dd/yyyy")
 		return false
 	}	
 if (strMonth.length<1 || month<1 || month>12){
 		alert("Please enter a valid month")
 		return false
 	}	
 if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
 		alert("Please enter a valid day")
 		return false
 	}	
 if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
 		alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
 		return false
 	}	
 if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
 		alert("Please enter a valid date")
 		return false	
 }
 return true
 }
 
 function IsNumeric(sText)
 {
    var ValidChars = " 0123456789.-";
    var IsNumber=true;
    var Char;
 
  
    for (i = 0; i < sText.length && IsNumber == true; i++) 
       { 
       Char = sText.charAt(i); 
       if (ValidChars.indexOf(Char) == -1) 
          {
          IsNumber = false;
          }
       }
    return IsNumber;
    
    }
 
 
 function IsPhone(strNum, len)
 { 
 
 	if (strNum==''||strNum==' ')
 	{
 		return true;
 	}
   strNum = strNum.replace('(','')
   strNum = strNum.replace(')','')
   strNum = strNum.replace('-','')
   strNum = strNum.replace('.','')
   strNum = strNum.replace(',','')
 	if (IsNumeric(strNum)&&strNum.length==len)
 	{
 		return true;
 	}
 	else
 	{
 		window.alert('Please enter only numbers in this field and it must be ' + len + ' digits long');
 		return false;
 	}
 }
 
 function firefoxOnBlurFix(fldID)
 {
  //this.focus();
  setTimeout("document.getElementById('"+fldID+"').focus();",1);
  //setTimeout("document.getElementById('"+fldID+"').select();",1);

 }
 		function formatFieldName(cFieldName) {
 		var upr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'
 		if (cFieldName.substring(0,1)=='i'||cFieldName.substring(0,1)=='c'||cFieldName.substring(0,1)=='b'){
 			cFieldName = cFieldName.substring(1);
 		}
 		if (cFieldName.substring(0,3)=='dte'){
 			cFieldName = cFieldName.substring(3);
 		}
 		var cFieldNameOut = '';
 		for (i=0; i<cFieldName.length;i++){
 			if (upr.indexOf(cFieldName.charAt(i),0) != -1){
 				cFieldNameOut += ' ' + cFieldName.charAt(i),0;
 			}
 			else {
 				cFieldNameOut += cFieldName.charAt(i),0;
 			}
 		}
 		return cFieldNameOut
 		}
 		
 		
 		function checkEmail(theField) {
       if (theField==''){return (true);}
 		if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(theField)){
 		return (true)
 		}
 		window.alert("Invalid E-mail Address! Please re-enter with the following format: name@domain.com")
 		return (false)
 		}
 		
 			
 		function checkIsNumeric(theField) {
        if (IsNumeric(theField)){return (true);}
        else{
 		window.alert("Invalid entry! Please re-enter with only numbers.")
 		return (false)
 		}
 		}



function formatFieldName(cFieldName) {
 		var upr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'
 		if (cFieldName.substring(0,1)=='i'||cFieldName.substring(0,1)=='c'||cFieldName.substring(0,1)=='b'){
 			cFieldName = cFieldName.substring(1);
 		}
 		var cFieldNameOut = '';
 		for (i=0; i<cFieldName.length;i++){
 			if (upr.indexOf(cFieldName.charAt(i),0) != -1){
 				cFieldNameOut += ' ' + cFieldName.charAt(i),0;
 			}
 			else {
 				cFieldNameOut += cFieldName.charAt(i),0;
 			}
 		}
 		return cFieldNameOut
 		}
 		
 		

function showCharCodes (stringIn) {
	//var string = form.textfield.value;
	var str = '';
	for (i = 0; i < stringIn.length; i++) {
		str = str + '&#' + stringIn.charCodeAt(i) + ';';
	}
	//form.textfield2.value = str;
	//form.textfield3.value = myUrlEncode(string);
	
	return str;
}

function myUrlEncode(str) {
	var result = "";
	var i = 0;

	for (i=0; i < str.length; i++) {
		result = result + "%";
		result = result + "0123456789ABCDEF".charAt((str.charCodeAt(i)/16)&0x0F);
		result = result + "0123456789ABCDEF".charAt((str.charCodeAt(i)/1)&0x0F);
	}
	return result;
}








/**
 * SUBMODAL v1.6
 * Used for displaying DHTML only popups instead of using buggy modal windows.
 *
 * By Subimage LLC
 * http://www.subimage.com
 *
 * Contributions by:
 * 	Eric Angel - tab index code
 * 	Scott - hiding/showing selects for IE users
 *	Todd Huss - inserting modal dynamically and anchor classes
 *
 * Up to date code can be found at http://submodal.googlecode.com
 */

// Popup code
var gPopupMask = null;
var gPopupContainer = null;
var gPopFrame = null;
var gReturnFunc;
var gPopupIsShown = false;
var gDefaultPage = "/Portals/0/raw/modalContent.html";
var gHideSelects = false;
var gReturnVal = null;

var gTabIndexes = new Array();
// Pre-defined list of tags we want to disable/enable tabbing into
var gTabbableTags = new Array("A","BUTTON","TEXTAREA","INPUT","IFRAME");	

// If using Mozilla or Firefox, use Tab-key trap.
if (!document.all) {
	document.onkeypress = keyDownHandler;
}

/**
 * Initializes popup code on load.	
 */
function initSurveyMask()
{
// Add the HTML to the body
	theBody = document.getElementsByTagName('BODY')[0];
	gPopupMask = document.getElementById("popupMask");
	gPopupContainer = document.getElementById("pollInsert");
	
	// check to see if this is IE version 6 or lower. hide select boxes if so
	// maybe they'll fix this in version 7?
	var brsVersion = parseInt(window.navigator.appVersion.charAt(0), 10);
	if (brsVersion <= 6 && window.navigator.userAgent.indexOf("MSIE") > -1) {
		gHideSelects = true;
	}
	
	if (gHideSelects == true) {
		hideSelectBoxes();
	}
	//centerPopWin("490","400");
	gPopupMask.style.display = "block";
	gPopupContainer.style.display = "block";
	
	
    

	width = gPopupContainer.offsetWidth;
	height = gPopupContainer.offsetHeight;

	var theBody = document.getElementsByTagName("BODY")[0];
	var scTop = parseInt(getScrollTop(),10);
	var scLeft = parseInt(theBody.scrollLeft,10);

	setMaskSize();
	
	
	var fullHeight = getViewportHeight();
	var fullWidth = getViewportWidth();
	
	gPopupContainer.style.top =  "5px"; //(scTop + ((fullHeight - height) / 2)) + "px";
	gPopupContainer.style.left =  (scLeft + ((fullWidth - width) / 2)) + "px";
	
	addEvent(window, "resize", resizeSurveyMask);
    addEvent(window, "scroll", resizeSurveyMask);
    window.onscroll = resizeSurveyMask;

}

function resizeSurveyMask()
{
    width = gPopupContainer.offsetWidth;
	height = gPopupContainer.offsetHeight;

	var theBody = document.getElementsByTagName("BODY")[0];
	var scTop = parseInt(getScrollTop(),10);
	var scLeft = parseInt(theBody.scrollLeft,10);

	setMaskSize();
	
	
	var fullHeight = getViewportHeight();
	var fullWidth = getViewportWidth();
	
	gPopupContainer.style.top = "5px"; //(scTop + ((fullHeight - height) / 2)) + "px";
	gPopupContainer.style.left =  (scLeft + ((fullWidth - width) / 2)) + "px";
}



function initPopUp() {
	// Add the HTML to the body
	theBody = document.getElementsByTagName('BODY')[0];
	popmask = document.createElement('div');
	popmask.id = 'popupMask';
	popcont = document.createElement('div');
	popcont.id = 'popupContainer';
	popcont.innerHTML = '' +
		'<div id="popupInner">' +
			'<div id="popupTitleBar">' +
				'<div id="popupTitle"></div>' +
				'<div id="popupControls">' +
					'<img src="/Portals/0/i/close.gif" onclick="hidePopWin(false);" id="popCloseBox" />' +
				'</div>' +
			'</div>' +
			'<iframe src="'+ gDefaultPage +'" style="width:100%;height:100%;background-color:transparent;" scrolling="auto" frameborder="0" allowtransparency="true" id="popupFrame" name="popupFrame" width="100%" height="100%"></iframe>' +
		'</div>';
	theBody.appendChild(popmask);
	theBody.appendChild(popcont);
	
	gPopupMask = document.getElementById("popupMask");
	gPopupContainer = document.getElementById("popupContainer");
	gPopFrame = document.getElementById("popupFrame");	
	
	// check to see if this is IE version 6 or lower. hide select boxes if so
	// maybe they'll fix this in version 7?
	var brsVersion = parseInt(window.navigator.appVersion.charAt(0), 10);
	if (brsVersion <= 6 && window.navigator.userAgent.indexOf("MSIE") > -1) {
		gHideSelects = true;
	}
	
	// Add onclick handlers to 'a' elements of class submodal or submodal-width-height
	var elms = document.getElementsByTagName('a');
	for (i = 0; i < elms.length; i++) {
		if (elms[i].className.indexOf("submodal") == 0) { 
			// var onclick = 'function (){showPopWin(\''+elms[i].href+'\','+width+', '+height+', null);return false;};';
			// elms[i].onclick = eval(onclick);
			elms[i].onclick = function(){
				// default width and height
				var width = 400;
				var height = 200;
				// Parse out optional width and height from className
				params = this.className.split('-');
				if (params.length == 3) {
					width = parseInt(params[1]);
					height = parseInt(params[2]);
				}
				showPopWin(this.href,width,height,null); return false;
			}
		}
	}
}

//addEvent(window, "load", initPopUp);

 /**
	* @argument width - int in pixels
	* @argument height - int in pixels
	* @argument url - url to display
	* @argument returnFunc - function to call when returning true from the window.
	* @argument showCloseBox - show the close box - default true
	*/
	
	function showPopWinWithTitle(url, width, height, showCloseBox, titleText) {
	// show or hide the window close widget
	if (showCloseBox == null || showCloseBox == true) {
		document.getElementById("popCloseBox").style.display = "block";
	} else {
		document.getElementById("popCloseBox").style.display = "none";
	}
	gPopupIsShown = true;
	disableTabIndexes();
	gPopupMask.style.display = "block";
	gPopupContainer.style.display = "block";
	// calculate where to place the window on screen
	centerPopWin(width, height);
	
	var titleBarHeight = parseInt(document.getElementById("popupTitleBar").offsetHeight, 10);


	gPopupContainer.style.width = width + "px";
	gPopupContainer.style.height = (height+titleBarHeight) + "px";
	
	setMaskSize();

	// need to set the width of the iframe to the title bar width because of the dropshadow
	// some oddness was occuring and causing the frame to poke outside the border in IE6
	gPopFrame.style.width = parseInt(document.getElementById("popupTitleBar").offsetWidth, 10) + "px";
	gPopFrame.style.height = (height) + "px";
	document.getElementById("popupTitle").innerHTML = titleText;
	// set the url
	gPopFrame.src = url;
	
	//gReturnFunc = returnFunc;
	// for IE
	if (gHideSelects == true) {
		hideSelectBoxes();
	}
	
	//window.setTimeout("setPopTitle();", 600);
}

function showPopWin(url, width, height, returnFunc, showCloseBox) {
	// show or hide the window close widget
	if (showCloseBox == null || showCloseBox == true) {
		document.getElementById("popCloseBox").style.display = "block";
	} else {
		document.getElementById("popCloseBox").style.display = "none";
	}
	gPopupIsShown = true;
	disableTabIndexes();
	gPopupMask.style.display = "block";
	gPopupContainer.style.display = "block";
	// calculate where to place the window on screen
	centerPopWin(width, height);
	
	var titleBarHeight = parseInt(document.getElementById("popupTitleBar").offsetHeight, 10);


	gPopupContainer.style.width = width + "px";
	gPopupContainer.style.height = (height+titleBarHeight) + "px";
	
	setMaskSize();

	// need to set the width of the iframe to the title bar width because of the dropshadow
	// some oddness was occuring and causing the frame to poke outside the border in IE6
	gPopFrame.style.width = parseInt(document.getElementById("popupTitleBar").offsetWidth, 10) + "px";
	gPopFrame.style.height = (height) + "px";
	
	// set the url
	gPopFrame.src = url;
	
	gReturnFunc = returnFunc;
	// for IE
	if (gHideSelects == true) {
		hideSelectBoxes();
	}
	
	//window.setTimeout("setPopTitle();", 600);
}

//
var gi = 0;
function centerPopWin(width, height) {
	if (gPopupIsShown == true) {
		if (width == null || isNaN(width)) {
			width = gPopupContainer.offsetWidth;
		}
		if (height == null) {
			height = gPopupContainer.offsetHeight;
		}
		
		//var theBody = document.documentElement;
		var theBody = document.getElementsByTagName("BODY")[0];
		//theBody.style.overflow = "hidden";
		var scTop = parseInt(getScrollTop(),10);
		var scLeft = parseInt(theBody.scrollLeft,10);
	
		setMaskSize();
		
		//window.status = gPopupMask.style.top + " " + gPopupMask.style.left + " " + gi++;
		
		var titleBarHeight = parseInt(document.getElementById("popupTitleBar").offsetHeight, 10);
		
		var fullHeight = getViewportHeight();
		var fullWidth = getViewportWidth();
		
		gPopupContainer.style.top = (scTop + ((fullHeight - (height+titleBarHeight)) / 2)) + "px";
		gPopupContainer.style.left =  (scLeft + ((fullWidth - width) / 2)) + "px";
		//alert(fullWidth + " " + width + " " + gPopupContainer.style.left);
	}
}
addEvent(window, "resize", centerPopWin);
addEvent(window, "scroll", centerPopWin);
window.onscroll = centerPopWin;


/**
 * Sets the size of the popup mask.
 *
 */
function setMaskSize() {
	var theBody = document.getElementsByTagName("BODY")[0];
			
	var fullHeight = getViewportHeight();
	var fullWidth = getViewportWidth();
	
	// Determine what's bigger, scrollHeight or fullHeight / width
	if (fullHeight > theBody.scrollHeight) {
		popHeight = fullHeight;
	} else {
		popHeight = theBody.scrollHeight;
	}
	
	if (fullWidth > theBody.scrollWidth) {
		popWidth = fullWidth;
	} else {
		popWidth = theBody.scrollWidth;
	}
	
	gPopupMask.style.height = popHeight + "px";
	gPopupMask.style.width = popWidth + "px";
}

/**
 * @argument callReturnFunc - bool - determines if we call the return function specified
 * @argument returnVal - anything - return value 
 */
function hidePopWin(callReturnFunc) {
	gPopupIsShown = false;
	var theBody = document.getElementsByTagName("BODY")[0];
	theBody.style.overflow = "";
	restoreTabIndexes();
	if (gPopupMask == null) {
		return;
	}
	gPopupMask.style.display = "none";
	gPopupContainer.style.display = "none";
	if (callReturnFunc == true && gReturnFunc != null) {
		// Set the return code to run in a timeout.
		// Was having issues using with an Ajax.Request();
		gReturnVal = window.frames["popupFrame"].returnVal;
		window.setTimeout('gReturnFunc(gReturnVal);', 1);
	}
	gPopFrame.src = gDefaultPage;
	// display all select boxes
	if (gHideSelects == true) {
		displaySelectBoxes();
	}
}

/**
 * Sets the popup title based on the title of the html document it contains.
 * Uses a timeout to keep checking until the title is valid.
 */
function setPopTitle() {
	return;
	if (window.frames["popupFrame"].document.title == null) {
		window.setTimeout("setPopTitle();", 10);
	} else {
		document.getElementById("popupTitle").innerHTML = window.frames["popupFrame"].document.title;
	}
}

// Tab key trap. iff popup is shown and key was [TAB], suppress it.
// @argument e - event - keyboard event that caused this function to be called.
function keyDownHandler(e) {
    if (gPopupIsShown && e.keyCode == 9)  return false;
}

// For IE.  Go through predefined tags and disable tabbing into them.
function disableTabIndexes() {
	if (document.all) {
		var i = 0;
		for (var j = 0; j < gTabbableTags.length; j++) {
			var tagElements = document.getElementsByTagName(gTabbableTags[j]);
			for (var k = 0 ; k < tagElements.length; k++) {
				gTabIndexes[i] = tagElements[k].tabIndex;
				tagElements[k].tabIndex="-1";
				i++;
			}
		}
	}
}

// For IE. Restore tab-indexes.
function restoreTabIndexes() {
	if (document.all) {
		var i = 0;
		for (var j = 0; j < gTabbableTags.length; j++) {
			var tagElements = document.getElementsByTagName(gTabbableTags[j]);
			for (var k = 0 ; k < tagElements.length; k++) {
				tagElements[k].tabIndex = gTabIndexes[i];
				tagElements[k].tabEnabled = true;
				i++;
			}
		}
	}
}


/**
 * Hides all drop down form select boxes on the screen so they do not appear above the mask layer.
 * IE has a problem with wanted select form tags to always be the topmost z-index or layer
 *
 * Thanks for the code Scott!
 */
function hideSelectBoxes() {
  var x = document.getElementsByTagName("SELECT");

  for (i=0;x && i < x.length; i++) {
    x[i].style.visibility = "hidden";
  }
}

/**
 * Makes all drop down form select boxes on the screen visible so they do not 
 * reappear after the dialog is closed.
 * 
 * IE has a problem with wanting select form tags to always be the 
 * topmost z-index or layer.
 */
function displaySelectBoxes() {
  var x = document.getElementsByTagName("SELECT");

  for (i=0;x && i < x.length; i++){
    x[i].style.visibility = "visible";
  }
}






/**
 * COMMON DHTML FUNCTIONS
 * These are handy functions I use all the time.
 *
 * By Seth Banks (webmaster at subimage dot com)
 * http://www.subimage.com/
 *
 * Up to date code can be found at http://www.subimage.com/dhtml/
 *
 * This code is free for you to use anywhere, just keep this comment block.
 */

/**
 * X-browser event handler attachment and detachment
 * TH: Switched first true to false per http://www.onlinetools.org/articles/unobtrusivejavascript/chapter4.html
 *
 * @argument obj - the object to attach event to
 * @argument evType - name of the event - DONT ADD "on", pass only "mouseover", etc
 * @argument fn - function to call
 */
function addEvent(obj, evType, fn){
 if (obj.addEventListener){
    obj.addEventListener(evType, fn, false);
    return true;
 } else if (obj.attachEvent){
    var r = obj.attachEvent("on"+evType, fn);
    return r;
 } else {
    return false;
 }
}
function removeEvent(obj, evType, fn, useCapture){
  if (obj.removeEventListener){
    obj.removeEventListener(evType, fn, useCapture);
    return true;
  } else if (obj.detachEvent){
    var r = obj.detachEvent("on"+evType, fn);
    return r;
  } else {
    alert("Handler could not be removed");
  }
}

/**
 * Code below taken from - http://www.evolt.org/article/document_body_doctype_switching_and_more/17/30655/
 *
 * Modified 4/22/04 to work with Opera/Moz (by webmaster at subimage dot com)
 *
 * Gets the full width/height because it's different for most browsers.
 */
function getViewportHeight() {
	if (window.innerHeight!=window.undefined) return window.innerHeight;
	if (document.compatMode=='CSS1Compat') return document.documentElement.clientHeight;
	if (document.body) return document.body.clientHeight; 

	return window.undefined; 
}
function getViewportWidth() {
	var offset = 17;
	var width = null;
	if (window.innerWidth!=window.undefined) return window.innerWidth; 
	if (document.compatMode=='CSS1Compat') return document.documentElement.clientWidth; 
	if (document.body) return document.body.clientWidth; 
}

/**
 * Gets the real scroll top
 */
function getScrollTop() {
	if (self.pageYOffset) // all except Explorer
	{
		return self.pageYOffset;
	}
	else if (document.documentElement && document.documentElement.scrollTop)
		// Explorer 6 Strict
	{
		return document.documentElement.scrollTop;
	}
	else if (document.body) // all other Explorers
	{
		return document.body.scrollTop;
	}
}
function getScrollLeft() {
	if (self.pageXOffset) // all except Explorer
	{
		return self.pageXOffset;
	}
	else if (document.documentElement && document.documentElement.scrollLeft)
		// Explorer 6 Strict
	{
		return document.documentElement.scrollLeft;
	}
	else if (document.body) // all other Explorers
	{
		return document.body.scrollLeft;
	}
}


 
function CreateBookmarkLink(title,url) { 
    if (window.sidebar) { // Mozilla Firefox Bookmark		
        window.sidebar.addPanel(title, url,"");	
    } 
    else if( window.external ) { 
    // IE Favorite		
        window.external.AddFavorite( url, title); 
    }	
    else if(window.opera && window.print) { 
    // Opera Hotlist		
    return true; 
    } 
} 


function checkEnterHold(e,objName){ //e is event object passed from function invocation
    var characterCode //literal character code will be stored in this variable

    if(e && e.which){ //if which property of event object is supported (NN4)
        e = e
        characterCode = e.which //character code is contained in NN4's which property
    }
    else{
        e = event
        characterCode = e.keyCode //character code is contained in IE's keyCode property
    }

    if(characterCode == 13){ //if generated character code is equal to ascii 13 (if enter key)
        var thisBtn = getElementByIdCrossBrowser(objName);
        //window.alert(thisBtn.name);
        //window.alert(thisBtn.value);
        var thisAction = getElementByIdCrossBrowser('action');
        thisAction.value=thisBtn.value;
        theForm.submit();
        //thisBtn.click;
        //document.forms[0].submit() //submit the form
        return true; 
    }
    else{
        return true; 
    }

}


function getURLParam( name ){  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");  var regexS = "[\\?&]"+name+"=([^&#]*)";  var regex = new RegExp( regexS );  var results = regex.exec( window.location.href );  if( results == null )    return "";  else    return results[1];}
