//AJAX FUNCTIONS
var defaultCurrency = "";
function setDefaultCurrency(currency, callback){
	var defCurrency =  currency.split("#")[1] ;
	var prev = currency.split("#")[0].split("&");//[0].split("=X")[0];
	var from;
	var rate;
	var i, j, k , l;
	var counter = 0;
	var hotels = document.getElementsByTagName("hotel");
	var currency = document.getElementById('currency');
	var len = document.getElementById('currency').options;
	defCurrency = defCurrency.replace(/\s/g,"");
	var symbolArr = [];
	symbolArr["ARS"] = "ARS$";
	 symbolArr["AUD"] = "AUD$";
	 symbolArr["BBD"] = "B$";
	 symbolArr["BMD"] = "B$";
	 symbolArr["BRL"] = "R$";
	 symbolArr["CAD"] = "CAD$";
	 symbolArr["CLP"] = "C$";
	 symbolArr["CNY"] = "&#165;";
	 symbolArr["COP"] = "COP$";
	 symbolArr["CRC"] = "&#8353;";
	 symbolArr["HRK"] = "kn";
	 symbolArr["CUP"] = "&#8369;";
	 symbolArr["CZK"] = "&#75;&#269;";
	 symbolArr["DKK"] = "&#107;&#114;";
	 symbolArr["EGP"] = "&#163;";
	 symbolArr["EUR"] = "&euro;";
	 symbolArr["GBP"] = "&#163;";
	 symbolArr["HKD"] = "HK$";
	 symbolArr["INR"] = "&#82;&#112;";
	 symbolArr["IDR"] = "Rp";
	 symbolArr["ILS"] = "&#8362;";
	 symbolArr["JPY"] = "&#165;";
	 symbolArr["JOD"] = "JD";
	 symbolArr["KRW"] = "&#8361;";
	 symbolArr["LBP"] = "&#163;";
	 symbolArr["LYD"] = "LYD";
	 symbolArr["LTL"] = "&#76;&#116;";
	 symbolArr["MOP"] = "MOP";
	 symbolArr["MYR"] = "&#82;&#77;";
	 symbolArr["MXN"] = "M$";
	 symbolArr["MAD"] = "MAD";
	 symbolArr["NZD"] = "NZ$";
	 symbolArr["NGN"] = "&#8358;";
	 symbolArr["NOK"] = "&#107;&#114;";
//	 symbolArr["OMR"] = "&#65020;";
	 symbolArr["OMR"] = "OMR";
	 symbolArr["PKR"] = "&#8360;";
	 symbolArr["PEN"] = "&#83;&#47;&#46;";
	 symbolArr["PHP"] = "&#80;&#104;&#112;";
	 symbolArr["PLN"] = "&#122;&#322;";
//	 symbolArr["QAR"] = "&#65020;";
	 symbolArr["QAR"] = "QAR";
	 symbolArr["RON"] = "&#108;&#101;&#105;";
	 symbolArr["RUB"] = "&#1088;&#1091;&#1073;";
//	 symbolArr["SAR"] = "&#65020;";
	 symbolArr["SAR"] = "SAR";
	 symbolArr["SGD"] = "SG$";
	 symbolArr["ZAR"] = "R";
	 symbolArr["LKR"] = "&#8360;";
	 symbolArr["SEK"] = "&#107;&#114;";
	 symbolArr["CHF"] = "CHF";
	 symbolArr["SYP"] = "&#163;";
	 symbolArr["TWD"] = "&#78;&#84;&#36;";
	 symbolArr["THB"] = "&#3647;";
	 symbolArr["TRY"] = "&#84;&#76;";
	 symbolArr["USD"] = "$";
	 symbolArr["AED"] = "AED";
	 symbolArr["VEF"] = "&#66;&#115;";
	 symbolArr["VND"] = "&#8363;";
	 var curr = symbolArr[defCurrency];

	for(k = 0; k < len.length; k++){
		if(defCurrency == currency.options[k].value){
			currency.options[k].setAttribute("selected", "selected");
		}
	}

	for(l=0; l<hotels.length; l++){
		 var id = hotels[l].getAttribute("id");
		 if(document.getElementById('h'+id) != undefined) {
			 var u = document.getElementById("u"+id);
			 var h1 = document.getElementById('h'+id);
			 if(h1.innerHTML != "" && h1.innerHTML != null)
				u.innerHTML = curr+"&nbsp;";
		 }
	 }

	for(i=0; i < prev.length; i++){
		if(prev[i] != "" || prev[i] != null){
			from = prev[i].split(",")[0].split("=X")[0].substr(1,3);
			rate = prev[i].split(",")[1];
			for(j=0; j < hotels.length; j++ ){
				var id = hotels[j].getAttribute("id");
				if(document.getElementById('h'+id) != undefined){
					var h = document.getElementById('h'+id);
					var u = document.getElementById("u"+id);
					if(h.innerHTML != "" && h.innerHTML != null) {
						if(u.getAttribute("value") == from){
						//	img.src ="/imgs/currency/"+defCurrency+".jpg";
							u.innerHTML = curr+"&nbsp;";
							var price = formatNumber(roundCurrency(remNumFormat(h.getAttribute("value")) * rate));
							h.innerHTML = price;
							h.setAttribute("value", price);
							u.setAttribute("value", defCurrency);
						}
					}
				}
			}
		}
	}


	setCurrency(defCurrency);
	defaultCurrency = defCurrency;
	document.getElementById("currencyFrom").value = defCurrency;
	if(callback)
		callback()
}

//Called on onselect
function getCurrency() {
	var filePath = "";
	var currency = document.getElementById('currency').value;
	if (currency != ""){
		var poststr = "currencyTo=" + encodeURI(currency )+
						"&currencyFrom=" + encodeURI( document.getElementById("currencyFrom").value );

		filePath = '/php/currency.php';
		$.ajax({
		type: "POST",
		url: filePath,
		data: poststr,
		success: function(resp){
			updatePrices(resp)
		},
		error: function(){
			alert("There was a problem with the request.");
		}
	});
	}
}

/*
 * This function will change the currencies to default.
 */
function changeDefaultCurrency(callback){
	var poststr = "";
	$.ajax({
		type: "POST",
		url: '/php/CheckCurrency.php',
		data: "",
		success: function(resp){
			changeCurrency(resp, callback);
		},
		error: function(){
			alert("There was a problem with the request.");
		}
	});
}

//set currency for hotel detail pages
function setCurrency(currency){

//	document.getElementById("currency_change").src="http://riodejaneirohotels.yayriodejaneiro.com/nexres/reservations/availability.cgi?currency_id="+currency;
	if(navigator.appName == "Microsoft Internet Explorer"){
		setCurrencyIE(currency);
	} else {
		var bd = document.getElementsByTagName("body")[0];
		var lc = bd.lastChild.nodeName;
		if(lc != "img" && lc != "IMG"){
				var img = createImg(currency);
				bd.appendChild(img);
		} else if(lc == "img" || lc == "IMG") {
				var src = bd.lastChild.getAttribute("src");
				if(src.indexOf("http://riodejaneirohotels.yayriodejaneiro.com/nexres/reservations/availability.cgi") != -1){
					bd.lastChild.setAttribute("src", "http://riodejaneirohotels.yayriodejaneiro.com/nexres/reservations/availability.cgi?currency_id="+currency);

				} else {
					var img = createImg(currency);
					bd.appendChild(img);
				}
		}
	}
}

function createImg(currency){
	var img = document.createElement("img");
	img.setAttribute("src", "http://riodejaneirohotels.yayriodejaneiro.com/nexres/reservations/availability.cgi?currency_id="+currency);
	img.style.display = "none";
	return img;
}

function changeCurrency(currencyTo, callback){
	var hotels = document.getElementsByTagName("hotel");
	var currency ="";
	var filePath = "";

	var counter = 0;
	var i, j;
	for(j=0; j < hotels.length; j++){
		var id = hotels[j].getAttribute("id");
		var units = document.getElementById("u"+id).getAttribute("value");
		if(units != currencyTo){
			if(currency.indexOf(units) == -1){
				currency += units+":";
			}
		}
	}
	var poststr = "currencyTo="+currencyTo+"&currencyFrom="+currency;
	filePath = '/php/currency.php';

		$.ajax({
		type: "POST",
		url: filePath,
		data: poststr,
		success: function(resp){
			setDefaultCurrency(resp, callback);
		},
		error: function(){
			alert("There was a problem with the request.");
		}
	});

}

function updatePrices(currencyInfo){
	var units = document.getElementById('currency').value;
//	document.getElementById("currencyFrom").value  = units;
	var hotels = document.getElementsByTagName("hotel");
	var rate = currencyInfo.split(",")[1];
	var currencyTo = currencyInfo.split("#")[1];
	currencyTo = currencyTo.replace(/\s/g, "");
	var symbolArr = [];
	symbolArr["ARS"] = "ARS$";
	 symbolArr["AUD"] = "AUD$";
	 symbolArr["BBD"] = "B$";
	 symbolArr["BMD"] = "B$";
	 symbolArr["BRL"] = "R$";
	 symbolArr["CAD"] = "CAD$";
	 symbolArr["CLP"] = "C$";
	 symbolArr["CNY"] = "&#165;";
	 symbolArr["COP"] = "COP$";
	 symbolArr["CRC"] = "&#8353;";
	 symbolArr["HRK"] = "kn";
	 symbolArr["CUP"] = "&#8369;";
	 symbolArr["CZK"] = "&#75;&#269;";
	 symbolArr["DKK"] = "&#107;&#114;";
	 symbolArr["EGP"] = "&#163;";
	 symbolArr["EUR"] = "&euro;";
	 symbolArr["GBP"] = "&#163;";
	 symbolArr["HKD"] = "HK$";
	 symbolArr["INR"] = "&#82;&#112;";
	 symbolArr["IDR"] = "Rp";
	 symbolArr["ILS"] = "&#8362;";
	 symbolArr["JPY"] = "&#165;";
	 symbolArr["JOD"] = "JD";
	 symbolArr["KRW"] = "&#8361;";
	 symbolArr["LBP"] = "&#163;";
	 symbolArr["LYD"] = "LYD";
	 symbolArr["LTL"] = "&#76;&#116;";
	 symbolArr["MOP"] = "MOP";
	 symbolArr["MYR"] = "&#82;&#77;";
	 symbolArr["MXN"] = "M$";
	 symbolArr["MAD"] = "MAD";
	 symbolArr["NZD"] = "NZ$";
	 symbolArr["NGN"] = "&#8358;";
	 symbolArr["NOK"] = "&#107;&#114;";
//	 symbolArr["OMR"] = "&#65020;";
	 symbolArr["OMR"] = "OMR";
	 symbolArr["PKR"] = "&#8360;";
	 symbolArr["PEN"] = "&#83;&#47;&#46;";
	 symbolArr["PHP"] = "&#80;&#104;&#112;";
	 symbolArr["PLN"] = "&#122;&#322;";
//	 symbolArr["QAR"] = "&#65020;";
	 symbolArr["QAR"] = "QAR";
	 symbolArr["RON"] = "&#108;&#101;&#105;";
	 symbolArr["RUB"] = "&#1088;&#1091;&#1073;";
//	 symbolArr["SAR"] = "&#65020;";
	 symbolArr["SAR"] = "SAR";
	 symbolArr["SGD"] = "SG$";
	 symbolArr["ZAR"] = "R";
	 symbolArr["LKR"] = "&#8360;";
	 symbolArr["SEK"] = "&#107;&#114;";
	 symbolArr["CHF"] = "CHF";
	 symbolArr["SYP"] = "&#163;";
	 symbolArr["TWD"] = "&#78;&#84;&#36;";
	 symbolArr["THB"] = "&#3647;";
	 symbolArr["TRY"] = "&#84;&#76;";
	 symbolArr["USD"] = "$";
	 symbolArr["AED"] = "AED";
	 symbolArr["VEF"] = "&#66;&#115;";
	 symbolArr["VND"] = "&#8363;";
	 var curr = symbolArr[units];

	rate = parseFloat(rate);

	if(defaultCurrency == currencyTo){
		rate = 1;
	}
	if(rate == 0.00) {
		alert('rate not found');
		return;
	}
	var str = "";
	var i, j;
	var idArr = [];
	var counter = 1;
	idArr[0] = hotels[0].getAttribute("id");
	str = idArr;
	for(j=0; j< hotels.length; j++){
		var flag = 0;
		var hotelId = hotels[j].getAttribute("id");
		for(k = (idArr.length - 1); k >= 0 ; k--){
			if(idArr[k] == hotelId){
				flag = 1;
			}
		}
		if(flag == 0){
			idArr[counter] = hotelId;
			counter++;
		}
	}
	 for(i=0; i < idArr.length; i++) {
		 var id = idArr[i];
		 if(document.getElementById('h'+id) != undefined) {
			 var ht = document.getElementById('h'+id);
			 var ut = document.getElementById("u"+id);
		//	 var img = document.getElementById("u"+id).getElementsByTagName("img")[0];
			 if(ht.innerHTML != "" && ht.innerHTML != null) {
		//		img.src ="/imgs/currency/"+units+".jpg";
				ut.innerHTML = curr+"&nbsp;";
				ht.innerHTML = "";
				ht.innerHTML = formatNumber(roundCurrency(remNumFormat(ht.getAttribute("value")) * rate ));
				//document.getElementById("u"+id).setAttribute("value", units);
			}
		 }
  	}
	setCurrency(units);

}


function formatNumber(num,prefix){
   prefix = prefix || '';
   num += '';
   var splitStr = num.split('.');
   var splitLeft = splitStr[0];
   var splitRight = splitStr.length > 1 ? '.' + splitStr[1] : '';
   var regx = /(\d+)(\d{3})/;
   while (regx.test(splitLeft)) {
      splitLeft = splitLeft.replace(regx, '$1' + ',' + '$2');
   }
   return prefix + splitLeft + splitRight;
}

/*
 * This function removes number formatting if any
 */
function remNumFormat(num){
	var newNum = num;
	if(num != null){
		if(num.indexOf(",") != -1){
			var number = num.split(",");
			newNum = number.join("");
		}
	}
	return newNum;

}

function roundCurrency(currency){
	currency = currency.toString();
	var newCurr;
	var num;
	if(currency.indexOf(".") != -1){
		newCurr = currency.split(".")[1];
		num = newCurr.substr(0, 1);
		if(num < 5) {
			currency = Math.floor(currency);
		} else if( num >= 5){
			currency = Math.ceil(currency);
		}
	}
	//alert(""+currency);
	return  parseFloat(currency);
}

/*
 * This function is used to set currency for ie for hotel detail pages
 */

function setCurrencyIE(currency) {
	//alert("cookie value "+document.cookie);
	//var bd = document.getElementsByTagName("body")[0];
//	var scrpt = document.createElement("script");
//	scrpt.setAttribute("src", "http://riodejaneirohotels.yayriodejaneiro.com/nexres/reservations/availability.cgi?currency_id="+currency);
//	bd.appendChild(scrpt);
//document.domain = "riodejaneirohotels.yayriodejaneiro.com";

//if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
//	  xmlhttp=new XMLHttpRequest();
//	} else {// code for IE6, IE5
//	  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
//	}
//	xmlhttp.onreadystatechange = function() {
//	  if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
//	  // alert(""+xmlhttp.responseText);
//	  }
//	}
//
//	xmlhttp.open("POST","http://riodejaneirohotels.yayriodejaneiro.com/nexres/reservations/availability.cgi",true);
//	xmlhttp.send("currency_id="+currency);
}
//document.write("<img src=\"http://riodejaneirohotels.yayriodejaneiro.com/nexres/reservations/availability.cgi?currency_id=PKR\" id=\"currency_change\" name=\"currency_change\" />");

