addMcpTooltip();

var fractiondigits = 2;
var fractiondigitsRound = 0;

function myRound(n){
  num = new Number(n);
	if (mcp_converted_currency in valuesOf(roundCurrency)){
		return num.toFixed(fractiondigitsRound);
	}
	return num.toFixed(fractiondigits);
}

function valuesOf(a){
	var o = {};
  for(var i = 0; i < a.length; i++)  {
    o[a[i]] = '';
  }
  return o;
}

function set_mcp_tooltip(e){
  show = this;
  var spanNodePosition;
  var spanNode = Event.element(e);
//  if ( (spanNode.tagName == "DIV" || spanNode.tagName == "INPUT") && spanNode.parentNode.parentNode.getElementsByClassName('mcp_tooltip').length > 0){
//		spanNode = spanNode.parentNode.parentNode.getElementsByClassName('mcp_tooltip')[0];
//	}
//  else if (spanNode.parentNode.getElementsByClassName('mcp_tooltip').length > 0){
//		spanNode = spanNode.parentNode.getElementsByClassName('mcp_tooltip')[0];
//	}
  if (spanNode.tagName == 'INPUT' || spanNode.tagName == 'TD' || spanNode.tagName == 'DIV'){
		spanNode = spanNode.parentNode;
		if (spanNode.tagName == 'TD'){
			spanNode = spanNode.parentNode;
	  }
	  if (spanNode.tagName != 'TR'){
			return;
	  }
	  else{
			children = spanNode.childNodes;
			childLength = children.length;
			spanNode = children[childLength-1].childNodes[0];
//			for (var c = 0; c < childLength; c++) {
//				if(children[c].tagName == 'TD'){
//					//spanNode = children[c].childNodes[0];
//					spanNode = children[c].childNodes[0];
//				}
//			}
	  }
  }
  if ( spanNode.value == undefined && (spanNode == undefined || spanNode.firstChild == undefined || spanNode.firstChild.nodeValue == undefined) )  {
    return;
  }
  else{
    if (show == 1){
      spanNodePosition = findPosition(spanNode);
      original_text = "";
			isInput = 0;
      if (spanNode.firstChild != undefined && spanNode.firstChild.nodeValue != undefined){
				original_text = new String(spanNode.firstChild.nodeValue);
			}
			else if (spanNode.value != undefined){
				original_text = new String(spanNode.value);
				isInput = 1;
			}
      original_text_array = original_text.split(" ");
      original_text_number = original_text_array[0];
      original_amount = new Number(original_text_number);
      if (isNaN(original_amount)){  
        original_text_number = original_text.substr(0,original_text.length-4);
        original_amount = new Number(original_text_number);
      }
      converter_amount = new Number(mcp_base_amount[mcp_converted_currency].rate);
      if (isNaN(converter_amount) || converter_amount == 0){  
				return;
      }
      converted_amount = new Number();
      converted_amount = original_amount * converter_amount;
      mcp_tooltip(myRound(converted_amount), mcp_converted_currency, spanNodePosition, isInput); 
    }
    else{
      hideTooltip('mcp_tooltip_box');
    }
  }
}

function mcp_tooltip(amount, currency,spanNodePosition, isInput){
    var alertMessage = new String();
    
    alertMessage = "" + amount + " " + mcp_base_amount[currency].suffix;
    alertMessage = '<div class="bd">' + alertMessage;
    alertMessage += '<!--[if lte IE 6]><iframe></iframe><![endif]--></div>';
    alertMessage += '<div class="bdbottom"></div>';
    
    if ($('mcp_tooltip_box') == null)
    {
        var nd = document.createElement('div');
        var top = spanNodePosition[0];
        top = top - 51;
        var left = spanNodePosition[1] + (50 * isInput);
        nd.id = "mcp_tooltip_box";
        nd.className = "mcpTooltipBox";
        nd.style.top = top+"px";
        nd.style.left = left+"px";
        $("wrapper").appendChild(nd);
    } else {
        nd = $('mcp_tooltip_box');
    }
    nd.style.display = '';
    nd.innerHTML = alertMessage;
}

function hideTooltip(id) {
    if ($(id) != null) $("wrapper").removeChild($(id));
}

function findPosition(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curtop,curleft];
}
function addMcpTooltip()
{
	if (mcpToolTipEnabled){
		items = document.getElementsByClassName('mcp_tooltip');
		for(i = 0; i<items.length; i++){
			Event.observe(items[i],'mouseover', set_mcp_tooltip.bindAsEventListener(1));
			Event.observe(items[i],'mouseout', set_mcp_tooltip.bindAsEventListener(0));
		}
		if ($('selectPage')){
			$A($('selectPage').getElementsByTagName('TABLE')).each( function(table) { 
				if (table.className == 'sbFlightDetailsTable'){
					//fetch all rows
					$A(table.getElementsByTagName('TR')).each( function(row) {
						if (row.tagName == 'TR'){
							Event.observe(row,'mouseover', set_mcp_tooltip.bindAsEventListener(1));
							Event.observe(row,'mouseout', set_mcp_tooltip.bindAsEventListener(0));
						}
					});
				}
			});
		}
	}
	if ($('mcpPriceChange')){
		Event.observe($('mcpPriceChange'),'change', function(){updateMcpTooltip()});
	}
	if ($('mcpHelp')){
		Event.observe($('mcpHelp'),'mouseover', showMcpHelp.bindAsEventListener(1));
		Event.observe($('mcpHelp'),'mouseout', showMcpHelp.bindAsEventListener(0));
	}
}

function showMcpHelp(e){
  var node = Event.element(e);
  show = this;
  nodePosition = findPosition(node);
	var alertMessage = new String();
  if (show == 1){
		alertMessage = mainPageText.mcpAlertMessage;
		alertMessage = '<div class="mcpHelp">' + alertMessage;
		alertMessage += '<!--[if lte IE 6]><iframe></iframe><![endif]--></div>';
	  
		if ($('mcp_tooltip_box') == null)
		{
			var nd = document.createElement('div');
			var top = nodePosition[0];
			top = top - 70;
			var left = nodePosition[1] + 145;
			nd.id = "mcp_tooltip_box";
			nd.className = "taxDetailsBox";
			nd.style.top = top+"px";
			nd.style.left = left+"px";
			$("wrapper").appendChild(nd);
		} else {
			nd = $('mcp_tooltip_box');
		}
		nd.style.display = '';
		nd.innerHTML = alertMessage;
	}
	else{
    hideTooltip('mcp_tooltip_box');
	}
}

function updateMcpTooltip(){
	if ($('totalPriceFinal') || $('AllInclusivePriceSummary_summary')){
		mcpPriceChange = $('mcpPriceChange');
		mcpPriceChangeValue = mcpPriceChange.options[mcpPriceChange.selectedIndex].value;
		mcp_converted_currency = mcpPriceChangeValue;
		mcpPriceChangeCurrency = mcp_base_amount[mcp_converted_currency].suffix;
		document.skylightsForm.mcp_converted_currency.value = mcp_converted_currency;
		original_text = "";
		if ($('totalPriceFinal') && $('totalPriceFinal').innerHTML != "")
			original_text = $('totalPriceFinal').innerHTML;
		if ($('AllInclusivePriceSummary_summary') && $('AllInclusivePriceSummary_summary').innerHTML != "")
			original_text = $('AllInclusivePriceSummary_summary').innerHTML;
		original_text_array = original_text.split(" ");
		original_text_number = original_text_array[0];
		original_amount = new Number(original_text_number);
		if (isNaN(original_amount)){  
			original_text_number = original_text.substr(0,original_text.length-4);
			original_amount = new Number(original_text_number);
		}
		converted_amount = new Number();
		converted_amount = original_amount * mcp_base_amount[mcpPriceChangeValue].rate;
		$('mcpPriceFinal').innerHTML = "" + myRound(converted_amount) + " " + mcpPriceChangeCurrency;
		if (pnr_currency != mcp_converted_currency && $('mcpHiddenContent'))
			$('mcpHiddenContent').style.visibility = "visible";
		if (pnr_currency == mcp_converted_currency && $('mcpHiddenContent'))
			$('mcpHiddenContent').style.visibility = "hidden";
		
	}
	if ($('mcpPriceFinalDueCurrency')){
		original_amount = new Number(document.skylightsForm.totalPaymentDisplay.value);
		converted_amount = new Number();
		converted_amount = original_amount * mcp_base_amount[mcp_converted_currency].rate;
		mcpPriceChangeCurrency = mcp_base_amount[mcp_converted_currency].suffix;
		document.skylightsForm.mcpPriceFinalDue.value = "" + myRound(converted_amount);
		document.skylightsForm.mcpPriceFinalDueHidden.value = "" + myRound(converted_amount);
		$('mcpPriceFinalDueCurrency').innerHTML = "" + mcp_base_amount[mcp_converted_currency].suffix;
		$('mcpPriceFinalDueCurrency2').innerHTML = "" + mcp_base_amount[mcp_converted_currency].suffix;
	}
	if ($('mcpPriceTotal') && $('mcpPriceTotalOrig').innerHTML != ""){
		original_text = $('mcpPriceTotalOrig').innerHTML;
		original_text_array = original_text.split(" ");
		original_text_number = original_text_array[0];
		original_amount = new Number(original_text_number);
		if (isNaN(original_amount)){  
			original_text_number = original_text.substr(0,original_text.length-4);
			original_amount = new Number(original_text_number);
		}
		converted_amount = new Number();
		converted_amount = original_amount * mcp_base_amount[mcp_converted_currency].rate;
		$('mcpPriceTotal').innerHTML = "" + myRound(converted_amount);
		$('mcpPriceTotalCurrencySuffix').innerHTML = "&nbsp;" + mcp_base_amount[mcp_converted_currency].suffix;
	}
}
updateMcpTooltip();
addMcpTooltip();

var fractiondigits = 2;
var fractiondigitsRound = 0;

function myRound(n){
  num = new Number(n);
	if (mcp_converted_currency in valuesOf(roundCurrency)){
		return num.toFixed(fractiondigitsRound);
	}
	return num.toFixed(fractiondigits);
}

function valuesOf(a){
	var o = {};
  for(var i = 0; i < a.length; i++)  {
    o[a[i]] = '';
  }
  return o;
}

function set_mcp_tooltip(e){
  show = this;
  var spanNodePosition;
  var spanNode = Event.element(e);
//  if ( (spanNode.tagName == "DIV" || spanNode.tagName == "INPUT") && spanNode.parentNode.parentNode.getElementsByClassName('mcp_tooltip').length > 0){
//		spanNode = spanNode.parentNode.parentNode.getElementsByClassName('mcp_tooltip')[0];
//	}
//  else if (spanNode.parentNode.getElementsByClassName('mcp_tooltip').length > 0){
//		spanNode = spanNode.parentNode.getElementsByClassName('mcp_tooltip')[0];
//	}
  if (spanNode.tagName == 'INPUT' || spanNode.tagName == 'TD' || spanNode.tagName == 'DIV'){
		spanNode = spanNode.parentNode;
		if (spanNode.tagName == 'TD'){
			spanNode = spanNode.parentNode;
	  }
	  if (spanNode.tagName != 'TR'){
			return;
	  }
	  else{
			children = spanNode.childNodes;
			childLength = children.length;
			spanNode = children[childLength-1].childNodes[0];
//			for (var c = 0; c < childLength; c++) {
//				if(children[c].tagName == 'TD'){
//					//spanNode = children[c].childNodes[0];
//					spanNode = children[c].childNodes[0];
//				}
//			}
	  }
  }
  if ( spanNode.value == undefined && (spanNode == undefined || spanNode.firstChild == undefined || spanNode.firstChild.nodeValue == undefined) )  {
    return;
  }
  else{
    if (show == 1){
      spanNodePosition = findPosition(spanNode);
      original_text = "";
			isInput = 0;
      if (spanNode.firstChild != undefined && spanNode.firstChild.nodeValue != undefined){
				original_text = new String(spanNode.firstChild.nodeValue);
			}
			else if (spanNode.value != undefined){
				original_text = new String(spanNode.value);
				isInput = 1;
			}
      original_text_array = original_text.split(" ");
      original_text_number = original_text_array[0];
      original_amount = new Number(original_text_number);
      if (isNaN(original_amount)){  
        original_text_number = original_text.substr(0,original_text.length-4);
        original_amount = new Number(original_text_number);
      }
      converter_amount = new Number(mcp_base_amount[mcp_converted_currency].rate);
      if (isNaN(converter_amount) || converter_amount == 0){  
				return;
      }
      converted_amount = new Number();
      converted_amount = original_amount * converter_amount;
      mcp_tooltip(myRound(converted_amount), mcp_converted_currency, spanNodePosition, isInput); 
    }
    else{
      hideTooltip('mcp_tooltip_box');
    }
  }
}

function mcp_tooltip(amount, currency,spanNodePosition, isInput){
    var alertMessage = new String();
    
    alertMessage = "" + amount + " " + mcp_base_amount[currency].suffix;
    alertMessage = '<div class="bd">' + alertMessage;
    alertMessage += '<!--[if lte IE 6]><iframe></iframe><![endif]--></div>';
    alertMessage += '<div class="bdbottom"></div>';
    
    if ($('mcp_tooltip_box') == null)
    {
        var nd = document.createElement('div');
        var top = spanNodePosition[0];
        top = top - 51;
        var left = spanNodePosition[1] + (50 * isInput);
        nd.id = "mcp_tooltip_box";
        nd.className = "mcpTooltipBox";
        nd.style.top = top+"px";
        nd.style.left = left+"px";
        $("wrapper").appendChild(nd);
    } else {
        nd = $('mcp_tooltip_box');
    }
    nd.style.display = '';
    nd.innerHTML = alertMessage;
}

function hideTooltip(id) {
    if ($(id) != null) $("wrapper").removeChild($(id));
}

function findPosition(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curtop,curleft];
}
function addMcpTooltip()
{
	if (mcpToolTipEnabled){
		items = document.getElementsByClassName('mcp_tooltip');
		for(i = 0; i<items.length; i++){
			Event.observe(items[i],'mouseover', set_mcp_tooltip.bindAsEventListener(1));
			Event.observe(items[i],'mouseout', set_mcp_tooltip.bindAsEventListener(0));
		}
		if ($('selectPage')){
			$A($('selectPage').getElementsByTagName('TABLE')).each( function(table) { 
				if (table.className == 'sbFlightDetailsTable'){
					//fetch all rows
					$A(table.getElementsByTagName('TR')).each( function(row) {
						if (row.tagName == 'TR'){
							Event.observe(row,'mouseover', set_mcp_tooltip.bindAsEventListener(1));
							Event.observe(row,'mouseout', set_mcp_tooltip.bindAsEventListener(0));
						}
					});
				}
			});
		}
	}
	if ($('mcpPriceChange')){
		Event.observe($('mcpPriceChange'),'change', function(){updateMcpTooltip()});
	}
	if ($('mcpHelp')){
		Event.observe($('mcpHelp'),'mouseover', showMcpHelp.bindAsEventListener(1));
		Event.observe($('mcpHelp'),'mouseout', showMcpHelp.bindAsEventListener(0));
	}
}

function showMcpHelp(e){
  var node = Event.element(e);
  show = this;
  nodePosition = findPosition(node);
	var alertMessage = new String();
  if (show == 1){
		alertMessage = mainPageText.mcpAlertMessage;
		alertMessage = '<div class="mcpHelp">' + alertMessage;
		alertMessage += '<!--[if lte IE 6]><iframe></iframe><![endif]--></div>';
	  
		if ($('mcp_tooltip_box') == null)
		{
			var nd = document.createElement('div');
			var top = nodePosition[0];
			top = top - 70;
			var left = nodePosition[1] + 145;
			nd.id = "mcp_tooltip_box";
			nd.className = "taxDetailsBox";
			nd.style.top = top+"px";
			nd.style.left = left+"px";
			$("wrapper").appendChild(nd);
		} else {
			nd = $('mcp_tooltip_box');
		}
		nd.style.display = '';
		nd.innerHTML = alertMessage;
	}
	else{
    hideTooltip('mcp_tooltip_box');
	}
}

function updateMcpTooltip(){
	if ($('totalPriceFinal') || $('AllInclusivePriceSummary_summary')){
		mcpPriceChange = $('mcpPriceChange');
		mcpPriceChangeValue = mcpPriceChange.options[mcpPriceChange.selectedIndex].value;
		mcp_converted_currency = mcpPriceChangeValue;
		mcpPriceChangeCurrency = mcp_base_amount[mcp_converted_currency].suffix;
		document.skylightsForm.mcp_converted_currency.value = mcp_converted_currency;
		original_text = "";
		if ($('totalPriceFinal') && $('totalPriceFinal').innerHTML != "")
			original_text = $('totalPriceFinal').innerHTML;
		if ($('AllInclusivePriceSummary_summary') && $('AllInclusivePriceSummary_summary').innerHTML != "")
			original_text = $('AllInclusivePriceSummary_summary').innerHTML;
		original_text_array = original_text.split(" ");
		original_text_number = original_text_array[0];
		original_amount = new Number(original_text_number);
		if (isNaN(original_amount)){  
			original_text_number = original_text.substr(0,original_text.length-4);
			original_amount = new Number(original_text_number);
		}
		converted_amount = new Number();
		converted_amount = original_amount * mcp_base_amount[mcpPriceChangeValue].rate;
		$('mcpPriceFinal').innerHTML = "" + myRound(converted_amount) + " " + mcpPriceChangeCurrency;
		if (pnr_currency != mcp_converted_currency && $('mcpHiddenContent'))
			$('mcpHiddenContent').style.visibility = "visible";
		if (pnr_currency == mcp_converted_currency && $('mcpHiddenContent'))
			$('mcpHiddenContent').style.visibility = "hidden";
		
	}
	if ($('mcpPriceFinalDueCurrency')){
		original_amount = new Number(document.skylightsForm.totalPaymentDisplay.value);
		converted_amount = new Number();
		converted_amount = original_amount * mcp_base_amount[mcp_converted_currency].rate;
		mcpPriceChangeCurrency = mcp_base_amount[mcp_converted_currency].suffix;
		document.skylightsForm.mcpPriceFinalDue.value = "" + myRound(converted_amount);
		document.skylightsForm.mcpPriceFinalDueHidden.value = "" + myRound(converted_amount);
		$('mcpPriceFinalDueCurrency').innerHTML = "" + mcp_base_amount[mcp_converted_currency].suffix;
		$('mcpPriceFinalDueCurrency2').innerHTML = "" + mcp_base_amount[mcp_converted_currency].suffix;
	}
	if ($('mcpPriceTotal') && $('mcpPriceTotalOrig').innerHTML != ""){
		original_text = $('mcpPriceTotalOrig').innerHTML;
		original_text_array = original_text.split(" ");
		original_text_number = original_text_array[0];
		original_amount = new Number(original_text_number);
		if (isNaN(original_amount)){  
			original_text_number = original_text.substr(0,original_text.length-4);
			original_amount = new Number(original_text_number);
		}
		converted_amount = new Number();
		converted_amount = original_amount * mcp_base_amount[mcp_converted_currency].rate;
		$('mcpPriceTotal').innerHTML = "" + myRound(converted_amount);
		$('mcpPriceTotalCurrencySuffix').innerHTML = "&nbsp;" + mcp_base_amount[mcp_converted_currency].suffix;
	}
}
updateMcpTooltip();
