function GetAbsoluteLeft(objectId)
{
		// Get an object left position from the upper left viewport corner
		// Tested with relative and nested objects
		o = document.getElementById(objectId)
		oLeft = o.offsetLeft            // Get left position from the parent object
		while(o.offsetParent!=null) {   // Parse the parent hierarchy up to the document element
		oParent = o.offsetParent    // Get parent object reference
		oLeft += oParent.offsetLeft // Add parent left position
		o = oParent
		}
		// Return left postion
		return oLeft
	}
	
function GetAbsoluteTop(objectId)
{
	// Get an object top position from the upper left viewport corner
	// Tested with relative and nested objects
	o = document.getElementById(objectId);
	oTop = o.offsetTop;         // Get top position from the parent object
	while(o.offsetParent!=null) 
	{ // Parse the parent hierarchy up to the document element
	  oParent = o.offsetParent  // Get parent object reference
	  oTop += oParent.offsetTop // Add parent top position
	  o = oParent
	}
	// Return top position
	return oTop
}

function PopupDatePicker(ctlDate, ctlMinDate, defaultMinDate, width, height)
{
  var leftPosition = GetAbsoluteLeft(ctlDate);
  var topPosition = GetAbsoluteTop(ctlDate);
  
  var dateValue = document.getElementById(ctlDate).value;
  
  var dateMinValue = defaultMinDate;
  if (ctlMinDate != '')
  {
    dateMinValue = document.getElementById(ctlMinDate).value;
  }
  
  var settings='width='+ width + ',height='+ height + ',left=' + leftPosition + ',top=' + topPosition + ',location=no,directories=no,menubar=no,toolbar=no,status=no,scrollbars=no,resizable=no,dependent=yes';
 
  var PopupWindow =  window.open('/Controls/DatePicker.aspx?Ctl=' + ctlDate + "&MinDate=" + dateMinValue + "&SelectedDate=" + dateValue, 'DatePicker', settings);
  PopupWindow.focus();
}

function fnTrapKD(CertObj, CertEvent, btn)
{
  var Keycode = 0;

  if(window.event)
  {
    // for IE, e.keyCode or window.event.keyCode can be used
    Keycode = parseInt(CertEvent.keyCode);
  }
  else if(CertEvent.which)
  {
    // Netscape, Mozilla, Firefox, SeaMonkey
    Keycode = parseInt(CertEvent.which);
  }

  if (event.keyCode == 13)
  {
    btn.click();
    return false;
  }

  return true;
}

function TravelTradeResoucesRedirect(obj)
{
  if(obj.value != '')
  {
    window.location = obj.value;
  }
}

/****** Start of dropdown.js used for the menu included in common.js ******/
var disappeardelay = 550  //menu disappear speed onMouseout (in miliseconds)
var enableanchorlink = 0 //Enable or disable the anchor link when clicked on? (1=e, 0=d)
var hidemenu_onclick = 1 //hide menu when user clicks within menu? (1=yes, 0=no)

/////No further editting needed

var ie5 = document.all;
var ns6 = document.getElementById && !document.all;

function getposOffset(what, offsettype) {
  var totaloffset = (offsettype == "left") ? what.offsetLeft : what.offsetTop;
  var parentEl = what.offsetParent;
  while (parentEl != null) {
    totaloffset = (offsettype == "left") ? totaloffset + parentEl.offsetLeft : totaloffset + parentEl.offsetTop;
    parentEl = parentEl.offsetParent;
  }
  return totaloffset;
}

function showhide(obj, e, visible, hidden) {
  if (ie5 || ns6) {
    dropmenuobj.style.left = dropmenuobj.style.top = -500;
  }
  if (e.type == "click" && obj.display == none || e.type == "mouseover") {
    setTimeout("dropmenuobj.style.display='inline'", 100);
  }
  else if (e.type == "click") {
    obj.display = nonw;
  }
}

function iecompattest() {
  return (document.compatMode && document.compatMode != "BackCompat") ? document.documentElement : document.body;
}

function clearbrowseredge(obj, whichedge) {
  var edgeoffset = 0;
  if (whichedge == "rightedge") {
    var windowedge = ie5 && !window.opera ? iecompattest().scrollLeft + iecompattest().clientWidth - 15 : window.pageXOffset + window.innerWidth - 15;
    dropmenuobj.contentmeasure = dropmenuobj.offsetWidth;
    if (windowedge - dropmenuobj.x < dropmenuobj.contentmeasure) {
      edgeoffset = dropmenuobj.contentmeasure - obj.offsetWidth;
    }
  }
  else {
    var topedge = ie5 && !window.opera ? iecompattest().scrollTop : window.pageYOffset;
    var windowedge = ie5 && !window.opera ? iecompattest().scrollTop + iecompattest().clientHeight - 15 : window.pageYOffset + window.innerHeight - 18;
    dropmenuobj.contentmeasure = dropmenuobj.offsetHeight;
    if (windowedge - dropmenuobj.y < dropmenuobj.contentmeasure) { //move up?
      edgeoffset = dropmenuobj.contentmeasure + obj.offsetHeight;
      if ((dropmenuobj.y - topedge) < dropmenuobj.contentmeasure) { //up no good either?
        edgeoffset = dropmenuobj.y + obj.offsetHeight - topedge;
      }
    }
  }
  return edgeoffset;
}

function dropdownmenu(obj, e, dropmenuID) {
  if (window.event) {
    event.cancelBubble = true;
  }
  else if (e.stopPropagation) {
    e.stopPropagation();
  }

  if (typeof dropmenuobj != "undefined") {
    if (dropmenuobj) {
      //hide previous menu
      dropmenuobj.style.display = "none";
    }
  }

  clearhidemenu();

  if (ie5 || ns6) {
    obj.onmouseout = delayhidemenu;
    dropmenuobj = document.getElementById(dropmenuID);

    if (dropmenuobj) {
      if (hidemenu_onclick) dropmenuobj.onclick = function() { dropmenuobj.style.display = 'none' }
      dropmenuobj.onmouseover = clearhidemenu;
      dropmenuobj.onmouseout = ie5 ? function() { dynamichide(event) } : function(event) { dynamichide(event) }
      showhide(dropmenuobj.style, e, "visible", "hidden");
      dropmenuobj.x = getposOffset(obj, "left");
      dropmenuobj.y = getposOffset(obj, "top");
      dropmenuobj.style.left = dropmenuobj.x - clearbrowseredge(obj, "rightedge") + "px";
      dropmenuobj.style.top = dropmenuobj.y - clearbrowseredge(obj, "bottomedge") + obj.offsetHeight + "px";
      removeselect("hidden");
    }
  }

  return clickreturnvalue();
}

function removeselect(hide) {
  if (navigator.appVersion.indexOf("MSIE") != -1) {
    temp = navigator.appVersion.split("MSIE");
    version = parseFloat(temp[1]);

    if (version < 7.0) {
      for (var begin = 0; begin < document.forms.length; begin++) {
        for (var next = 0; next < document.forms[begin].length; next++) {
          if (document.forms[begin].elements[next].options) {
            document.forms[begin].elements[next].style.visibility = hide;
          }
        }
      }
    }
  }
}

function clickreturnvalue() {
  if ((ie5 || ns6) && !enableanchorlink) {
    return false;
  }
  else {
    return true;
  }
}

function contains_ns6(a, b) {
  while (b.parentNode) {
    if ((b = b.parentNode) == a) {
      return true;
    }
  }
  return false;
}

function dynamichide(e) {
  if (ie5 && !dropmenuobj.contains(e.toElement)) {
    delayhidemenu();
  }
  else if (ns6 && e.currentTarget != e.relatedTarget && !contains_ns6(e.currentTarget, e.relatedTarget)) {
    delayhidemenu();
  }
}

function delayhidemenu() {
  if (typeof dropmenuobj != "undefined") {
    if (dropmenuobj) {
      delayhide = setTimeout("dropmenuobj.style.display='none';removeselect('visible')", disappeardelay);
    }
  }
}

function clearhidemenu() {
  if (typeof delayhide != "undefined") {
    clearTimeout(delayhide);
  }
}
/****** End of dropdown.js used for the menu included in common.js ******/

