function attachCode(parentObj, childCode) {
	var childObj = document.createElement('div');
	childObj.innerHTML = childCode;
    parentObj.appendChild(childObj);
}
function attachObject(parentObj, childObj) {parentObj.appendChild(childObj);}
function detachObject(parentObj, childObj) {parentObj.removeChild(childObj);}
function trim(str){return str.replace(/^\s+|\s+$/g,'');}
function checkNumber(textBox)
{while (textBox.value.length > 0 && isNaN(textBox.value)) {textBox.value = textBox.value.substring(0, textBox.value.length - 1)}
textBox.value = trim(textBox.value);}
function getCheckedValue(radioObj) 
{
if(!radioObj)
return "";
var radioLength = radioObj.length;
if(radioLength == undefined)
if(radioObj.checked)
return radioObj.value;
else
return "";
for(var i = 0; i < radioLength; i++) 
{
if(radioObj[i].checked) 
{
return radioObj[i].value;
}
}
return "";
}
function isEmpty(formElement, message) {
formElement.value = trim(formElement.value);
_isEmpty = false;
if (formElement.value == '') {
_isEmpty = true;
alert(message);
formElement.focus();
}
return _isEmpty;
}
function isDiff(formElementOne, formElementTwo, message)
{
formElementOne.value = trim(formElementOne.value);
formElementTwo.value = trim(formElementTwo.value);
_isSame = false;
if (formElementOne.value != formElementTwo.value)
{
_isSame = true;
alert(message);
formElementOne.focus();
}
return _isSame;
}
function setSelect(listElement, listValue)
{
for (i=0; i < listElement.options.length; i++) {
if (listElement.options[i].value == listValue)	{
listElement.selectedIndex = i;
}
}	
}
function getSelectValue(listElement)
{
return listElement.options[listElement.selectedIndex].value;
}
function changeDisplay(elementId, targetVis)
{
var offset = getScrollY();
element = document.getElementById(elementId);
if (element.style.display == 'none')
element.style.display = targetVis;
else 
element.style.display = 'none';
setTimeout('window.scrollTo(0, ' + offset + ')',0);
}
function toggle(elementId)
{
var offset = getScrollY();
element = document.getElementById(elementId);
if (element.style.display == 'none')
element.style.display = 'block';
else 
element.style.display = 'none';
setTimeout('window.scrollTo(0, ' + offset + ')',0);
}
function toggleOn(elementId)
{
var offset = getScrollY();
element = document.getElementById(elementId);
element.style.display = 'block';
setTimeout('window.scrollTo(0, ' + offset + ')',0);
}
function toggleOff(elementId)
{
var offset = getScrollY();
element = document.getElementById(elementId);
element.style.display = 'none';
setTimeout('window.scrollTo(0, ' + offset + ')',0);
}
function getScrollY() 
{
var offset = window.pageYOffset;
if (offset != undefined) {
return offset;
}
else {
if (document.documentElement && document.documentElement.scrollTop) {
return document.documentElement.scrollTop;
}
else if (document.body) {
return document.body.scrollTop;
}
}
return 0;
}
function getScrollX() 
{
var offset = window.pageXOffset;
if (offset != undefined) {
return offset;
}
else {
if (document.documentElement && document.documentElement.scrollLeft) {
return document.documentElement.scrollLeft;
}
else if (document.body) {
return document.body.scrollLeft;
}
}
return 0;
}
function absoluteTop(inObject)
{
var local = inObject;
var top  = 0;
while (local != document.body)
{
if (local.tagName != 'TR' && local.tagName != 'TBODY')
top  += local.offsetTop;
local = local.parentNode;
}
return top;
}
function absoluteLeft(inObject)
{
var local = inObject;
var left  = 0;
while (local != document.body)
{
if (local.tagName != 'TR' && local.tagName != 'TBODY')
left  += local.offsetLeft;
local = local.parentNode;
}
return left;
}
function scrollToY(inY)
{
window.scrollTo(0, inY);
}
var disableReposition = false;
function fadeDivOutIn(divId, xmlHttp)
{
document.getElementById(divId).innerHTML = 
xmlHttp.responseText;
if (divId == 'middleDiv')
{
var top = absoluteTop(document.getElementById(divId));
if (getScrollY() > top && !disableReposition)
setTimeout('scrollToY(' + top + ')',0);
disableReposition = false;
}
}	
function opacity(id, opacStart, opacEnd, millisec) 
{
//speed for each frame
var speed = Math.round(millisec / 100);
var timer = 0;
//determine the direction for the blending, if start and end are the same nothing happens
if(opacStart > opacEnd) 
{
for(i = opacStart; i >= opacEnd; i--) 
{
setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
timer++;
}
} 
else if(opacStart < opacEnd) 
{
for(i = opacStart; i <= opacEnd; i++)
{
setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
timer++;
}
}
}
//change the opacity for different browsers
function changeOpac(opacity, divId) 
{
var object = document.getElementById(divId).style;
object.opacity = (opacity / 100);
//object.MozOpacity = (opacity / 100);
//object.KhtmlOpacity = (opacity / 100);
//object.opacity = opacity;
object.filter = "Alpha(opacity=" + opacity + ")";
}
function shiftOpacity(id, millisec) 
{
//if an element is invisible, make it visible, else make it ivisible
if(document.getElementById(id).style.opacity == 0) 
{
opacity(id, 0, 100, millisec);
} 
else 
{
opacity(id, 100, 0, millisec);
}
}
function showContactPromoterPopup()
{
setTimeout("expandCollapse('popupContactPromoter');", 100);
}
function expandCollapse() {
for (var i=0; i<expandCollapse.arguments.length; i++) {
var element = document.getElementById(expandCollapse.arguments[i]);
element.style.display = (element.style.display == "none") ? "block" : "none";
}
}
function Browser() {
var ua, s, i;
this.isIE    = false;
this.isNS    = false;
this.version = null;
ua = navigator.userAgent;
s = "MSIE";
if ((i = ua.indexOf(s)) >= 0) {
this.isIE = true;
this.version = parseFloat(ua.substr(i + s.length));
return;
}
s = "Netscape6/";
if ((i = ua.indexOf(s)) >= 0) {
this.isNS = true;
this.version = parseFloat(ua.substr(i + s.length));
return;
}
s = "Gecko";
if ((i = ua.indexOf(s)) >= 0) {
this.isNS = true;
this.version = 6.1;
return;
}
}
var browser = new Browser();
var dragObj = new Object();
dragObj.zIndex = 1000;
function dragStart(event, id) {
var el;
var x, y;
if (id)
dragObj.elNode = document.getElementById(id);
else {
if (browser.isIE)
dragObj.elNode = window.event.srcElement;
if (browser.isNS)
dragObj.elNode = event.target;
if (dragObj.elNode.nodeType == 3)
dragObj.elNode = dragObj.elNode.parentNode;
}
if (browser.isIE) {
x = window.event.clientX + document.documentElement.scrollLeft
+ document.body.scrollLeft;
y = window.event.clientY + document.documentElement.scrollTop
+ document.body.scrollTop;
}
if (browser.isNS) {
x = event.clientX + window.scrollX;
y = event.clientY + window.scrollY;
}
dragObj.cursorStartX = x;
dragObj.cursorStartY = y;
dragObj.elStartLeft  = parseInt(dragObj.elNode.style.left, 10);
dragObj.elStartTop   = parseInt(dragObj.elNode.style.top,  10);
if (isNaN(dragObj.elStartLeft)) dragObj.elStartLeft = 0;
if (isNaN(dragObj.elStartTop))  dragObj.elStartTop  = 0;
dragObj.elNode.style.zIndex = ++dragObj.zIndex;
if (browser.isIE) {
document.attachEvent("onmousemove", dragGo);
document.attachEvent("onmouseup",   dragStop);
window.event.cancelBubble = true;
window.event.returnValue = false;
}
if (browser.isNS) {
document.addEventListener("mousemove", dragGo,   true);
document.addEventListener("mouseup",   dragStop, true);
event.preventDefault();
}
}
function dragGo(event) {
var x, y;
if (browser.isIE) {
x = window.event.clientX + document.documentElement.scrollLeft
+ document.body.scrollLeft;
y = window.event.clientY + document.documentElement.scrollTop
+ document.body.scrollTop;
}
if (browser.isNS) {
x = event.clientX + window.scrollX;
y = event.clientY + window.scrollY;
}
dragObj.elNode.style.left = (dragObj.elStartLeft + x - dragObj.cursorStartX) + "px";
dragObj.elNode.style.top  = (dragObj.elStartTop  + y - dragObj.cursorStartY) + "px";
if (browser.isIE) {
window.event.cancelBubble = true;
window.event.returnValue = false;
}
if (browser.isNS)
event.preventDefault();
}
function dragStop(event) {
if (browser.isIE) {
document.detachEvent("onmousemove", dragGo);
document.detachEvent("onmouseup",   dragStop);
}
if (browser.isNS) {
document.removeEventListener("mousemove", dragGo,   true);
document.removeEventListener("mouseup",   dragStop, true);
}
}
function getContent(path, divId)
{
var xmlHttp = getXML();
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
document.getElementById(divId).innerHTML = xmlHttp.responseText;	
}
}
xmlHttp.open("GET",path,true);
xmlHttp.send(null);
}
function removeContent(divId)
{
document.getElementById(divId).innerHTML = "";
}
function getContentToAdd(path, divId)
{
var xmlHttp = getXML();
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
attachCode(document.getElementById(divId), xmlHttp.responseText);
}
}
xmlHttp.open("GET",path,true);
xmlHttp.send(null);
}
function postContent(inputForm, divId)
{
return postContentPath(inputForm, inputForm.action, divId);
}
function postContentPath(inputForm, path, divId)
{
var xmlHttp = getXML();

xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
document.getElementById(divId).innerHTML = xmlHttp.responseText;	
}
xmlHttp.open("POST",path,true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
xmlHttp.send(getFormValues(inputForm));
}
function postContentToAdd(inputForm, divId)
{
var path = inputForm.action;
var xmlHttp = getXML();

xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
attachCode(document.getElementById(divId), xmlHttp.responseText);
}
}
xmlHttp.open("POST",path,true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
xmlHttp.send(getFormValues(inputForm));
}
function getFormValues(fobj)
{
var str = "";
var valueArr = null;
var val = "";
var cmd = "";
for(var i = 0;i < fobj.elements.length;i++)
{
switch(fobj.elements[i].type)
{
case "text":
case "textarea":
case "password":
case "hidden":
str += fobj.elements[i].name +
"=" + escape(fobj.elements[i].value) + "&";
break;
case "select-one":
str += fobj.elements[i].name +
"=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";
break;
case "radio":
if (getCheckedValue(fobj.elements[i]) != '')
{
str += fobj.elements[i].name +
"=" + getCheckedValue(fobj.elements[i]) + "&";
}
break;
case "checkbox":
if (fobj.elements[i].checked)
{
str += fobj.elements[i].name +
"=checked&";
}
break;
}
}
str = str.substr(0,(str.length - 1));
return str;
}
function getXML()
{
var xmlHttp;
try
{
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("Your browser does not support AJAX!");
return false;
}
}
}
return xmlHttp;
}