function openwindow(url_address,window_width,window_height,framename,additional,is_picture) {
  sx = (screen.availWidth - window_width) / 2;
  sy = (screen.availHeight - window_height) / 2;
  params = "width="+window_width+",height="+window_height+",Left="+sx+",Top="+sy+",screenX="+sx+",screenY="+sy;
  if(additional>"") params += "," + additional;
  nw = window.open(url_address, framename, params);
  if(is_picture) {
    nw.document.open();
    nw.document.write("<html><head><title>Travelport.hu - Photos</title></head>\n");
    nw.document.write("<body marginwidth='0' marginheight='0' topmargin='0' leftmargin='0'>\n");
    nw.document.write("<center><img src='"+url_address+"' alt='photo'></center>\n");
    nw.document.write("</body>\n");
    nw.document.write("</html>\n");
    nw.document.close();
  }
  nw.focus();
  return nw;
}

function changelangto(sNewLangcode, sSessionID) {
	var url = window.location + "";
	url = url.replace(/#*/gi,'');
	url = removeparamfromurl(url, "lang");
	url = removeparamfromurl(url, "sid");
	if(url.search(/\?/)==-1) url += "?";
	url = url + "&lang=" + sNewLangcode;
	url = url + "&sid=" + sSessionID;
	url = url.replace(/&+/gi,"&");
	url = url.replace(/\?&/gi,"?");
	url = url.replace(/(.*)&$/gi,"$1");
	window.open(url,"_self");
	return false;
}

function removeparamfromurl(url_address, param_name) {
	var url = url_address + "";
	eval("url = url.replace(/&"+param_name+"\=[a-z0-9]*&/gi,'&');");
	eval("url = url.replace(/&"+param_name+"\=[a-z0-9]*$/gi,'');");
	eval("url = url.replace(/\\?"+param_name+"\=[a-z0-9]*&/gi,'?');");
	eval("url = url.replace(/\\?"+param_name+"\=[a-z0-9]*$/gi,'');");
	return url;
}


var oPopup;

function ShowToolTip(obj, message, width, height,toLeft,plusTop) {
	if(!plusTop) plusTop = 0;
	var window = obj.ownerDocument.parentWindow;
	oPopup = window.createPopup();
	var oPopBody = oPopup.document.body;
	oPopBody.style.backgroundColor = "lightyellow";
	oPopBody.style.border = "solid black 1px";
	oPopBody.style.fontFamily = "Verdana, Arial";
	oPopBody.style.fontSize = "12px";
	oPopBody.innerHTML = message;
	if(toLeft)
		oPopup.show(obj.offsetLeft+obj.offsetWidth-width-20, obj.offsetTop+obj.offsetHeight - document.body.scrollTop + plusTop, width, height, document.body);
	else
		oPopup.show(obj.offsetLeft+20, obj.offsetTop+obj.offsetHeight - document.body.scrollTop + plusTop, width, height, document.body);
}

function HideToolTip() {
	if(oPopup) oPopup.hide();
}

function ChangePassword(sid,lang) {
	openwindow("/corporate/myprofile/changepassword.php?sid="+sid+"&lang="+lang,500,250,"cpwdframe","",0);
	return false;
}

function dummy(dummy) {
  // do nothing!
  return false;
}

function ClearHtml(str) {
	str = str.replace(/<b>/gi, "###BOLD_BEGIN###");
	str = str.replace(/<\/b>/gi, "###BOLD_END###");
	str = str.replace(/<strong>/gi, "###BOLD_BEGIN###");
	str = str.replace(/<\/strong>/gi, "###BOLD_END###");
	str = str.replace(/<\/td>/gi, " ");
	str = str.replace(/<\/tr>/gi, "###BR###");
	str = str.replace(/<\/table>/gi, "###BR###");
	str = str.replace(/<\/li>/gi, "###BR###");
	str = str.replace(/<\/div>/gi, "###BR###");
	str = str.replace(/<\/p>/gi, "###BR###");
	str = str.replace(/<\/h[1-9]*>/gi, "###BR###");
	str = str.replace(/<[^>]*>/gi, "");
	str = str.replace(/###BR###/gi, "</P>\r\n<P>");
	str = str.replace(/###BOLD_BEGIN###/gi, "<STRONG>");
	str = str.replace(/###BOLD_END###/gi, "</STRONG>");
	if(str.search(/<\/P>/)!=-1) str = "<P>" + str + "</P>";
	str = str.replace(/<P><\/P>/gi, "");
	str = str.replace(/<P>[\r\n]*/gi, "<P>");
	return str;
}

function NormalizeHtml(str) {
	// MEGENGDETETTEK

	// BOLD
	str = str.replace(/<b>/gi, "###BOLD_BEGIN###");
	str = str.replace(/<\/b>/gi, "###BOLD_END###");
	str = str.replace(/<strong>/gi, "###BOLD_BEGIN###");
	str = str.replace(/<\/strong>/gi, "###BOLD_END###");
	
	// <OL>, <UL>, <LI>
	str = str.replace(/<ol[^>]*>/gi, "###OL_BEGIN###");
	str = str.replace(/<\/ol>/gi, "###OL_END###");
	str = str.replace(/<ul[^>]*>/gi, "###UL_BEGIN###");
	str = str.replace(/<\/ul>/gi, "###UL_END###");
	str = str.replace(/<li[^>]*>/gi, "###LI_BEGIN###");
	str = str.replace(/<\/li>/gi, "###LI_END###");
	
	str = ClearHtml(str); // kitörli a többit
	
	str = str.replace(/###OL_BEGIN###/gi, "<ol>");
	str = str.replace(/###OL_END###/gi, "</ol>");
	str = str.replace(/###UL_BEGIN###/gi, "<ul>");
	str = str.replace(/###UL_END###/gi, "</ul>");
	str = str.replace(/###LI_BEGIN###/gi, "<li>");
	str = str.replace(/###LI_END###/gi, "</li>");
	
	return str;
}

function DoCom(sCommand, sObjname) {
	document.all[sObjname].focus();
	if(sCommand=="RemoveFormat") {
		str = ClearHtml(document.all[sObjname].innerHTML);
		document.all[sObjname].innerHTML = str;
		document.all[sObjname].focus();
	}
	else if(sCommand=="NormalizeText") {
		str = NormalizeHtml(document.all[sObjname].innerHTML);
		document.all[sObjname].innerHTML = str;
		document.all[sObjname].focus();
	}
	else document.execCommand(sCommand);
	return false;
}

function addOption(selectName, id, name){
	var oOption = document.createElement("OPTION");
	document.all[selectName].options.add(oOption);
	oOption.innerText = name;
	oOption.value = id;
}

function removeAllOption(selectName){
	for (i=document.all[selectName].options.length-1;i>0;i--){
		document.all[selectName].options[i] = null;
	}
}

function selectOption(selectName, id){
	for (i=0;i<document.all[selectName].options.length;i++){
		if (document.all[selectName].options[i].value == id){
			document.all[selectName].options.selectedIndex = i;
			break;
		}
	}
}

function AfterPaste2(sObjname, sTmpObjname) {
	var oldSource = document.all[sObjname].innerHTML;
	document.all[sObjname].style.display = "none";
	document.all[sTmpObjname].innerHTML = oldSource;
	document.all[sTmpObjname].style.display = "block";
	do {
		setTimeout("NormalizeAfterPaste('"+sObjname+"')",1);
	}while(oldSource!=document.all[sObjname].innerHTML);
	document.all[sObjname].style.display = "block";
	document.all[sTmpObjname].style.display = "none";
}

function NormalizeAfterPaste(sObjname) {
	var str = NormalizeHtml(document.all[sObjname].innerHTML);
	document.all[sObjname].innerHTML = str;
}


function getStyleObject(objectId) {
	if(document.getElementById && document.getElementById(objectId)) {
		// W3C DOM
		return document.getElementById(objectId).style;
	}
	else if(document.all && document.all(objectId)) {
		// MSIE 4 DOM
		return document.all(objectId).style;
	}
	else if(document.layers && document.layers[objectId]) {
		// NN 4 DOM.. note: this won't find nested layers
		return document.layers[objectId];
	}
	else {
		return false;
	}
}

function getObject(objectId) {
	if(document.getElementById && document.getElementById(objectId)) {
		// W3C DOM
		return document.getElementById(objectId);
	}
	else if(document.all && document.all[objectId]) {
		// MSIE 4 DOM
		return document.all(objectId);
	}
	else if(document.layers && document.layers[objectId]) {
		// NN 4 DOM.. note: this won't find nested layers
		return document.layers[objectId];
	}
	else {
		return false;
	}
}

function NumberToPrice(number) {
	var str = "" + PriceToNumber(number); // ezt azért teszem, mert lehet, hogy véletlenül mégis pénz alakja volt a number változónak
	var a = str.split("\.");
	var egesz_szamok = a[0];
	var tort_szamok = a[1];
	if(tort_szamok) {
		// Kicsit TÖKÉLETLEN a JavaScript számolása!
		// Nála néha két egész szám szorzata nem egész számot eredményez! Bizony, ám!
		// Ezért kell ilyen 'finoman' nyúlni a maradék kerekítéséhez:
		var maradek = tort_szamok.substr(0,3); // ha hosszú is a tört rész, akkor is 3-jegyűt csinálok belőle
		if(maradek.length==1) maradek += "00";
		else if(maradek.length==2) maradek += "0";
		maradek = Math.round(1*maradek / 100); // aztán lesz belőle x,yy, majd pedig kerekítem
		if(maradek>=5) {
			egesz_szamok = 1 * egesz_szamok; // szám típusú változót csinálok belőle
			egesz_szamok++;
			egesz_szamok = "" + egesz_szamok; // újra string objektumot csinálok így belőle
		}
	}

	var price = "";
	var j = 0;
	for(var i=egesz_szamok.length-1; i>=0; i--) {
		price = egesz_szamok.substr(i,1) + (!(j % 3) ? " " : "") + price;
		j++;
	}
	price += ",-";
	price = price.replace(/ ,/g, ",");
	return price;
}

function PriceToNumber(price) {
	price = "" + price;
	price = price.replace(/[^0-9\,\.]*/g, "");
	price = price.replace(/\,/g, ".");
	return 1*price;
}
