/* general ajax functions */
function ajaxGetContent(url,toId,customCallback) {
	if (customCallback === undefined) { customCallback = "void(0)"; }
	Ext.Ajax.request({
		waitMsg: 'Töltés...',
		url: url,
		callback: function (options,success,response) {
			Ext.getDom(toId).innerHTML = response.responseText;
			setTimeout(customCallback,0);
		},
		failure: function(response,options) {
			alert('fail');
		}
	});
}


/* floating box functions */
/*
 1 - cursor = top left
 2 - cursor = top right
 3 - cursor = bottom left
 4 - cursor = bottom right
 5 - cursor = center
*/
function floatingBoxMouseX(evt) {if (!evt) evt = window.event; if (evt.pageX) return evt.pageX; else if (evt.clientX)return evt.clientX + (document.documentElement.scrollLeft ?  document.documentElement.scrollLeft : document.body.scrollLeft); else return 0;}
function floatingBoxMouseY(evt) {if (!evt) evt = window.event; if (evt.pageY) return evt.pageY; else if (evt.clientY)return evt.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop); else return 0;}

var floatingBoxMode = 0;

function floatingBoxTrack(evt) {
	var extdiv = Ext.get("floatingBox");
	var currentdiv = extdiv.dom;
	var posX = floatingBoxMouseX(evt);
	var posY = floatingBoxMouseY(evt);

	// horizontal positioning
	currentdiv.style.left = "auto"; currentdiv.style.right = "auto";
	if (floatingBoxMode == 1 || floatingBoxMode == 3)
		currentdiv.style.left = posX+10+'px';
	else if(floatingBoxMode == 2 || floatingBoxMode == 4)
		currentdiv.style.left = posX-extdiv.getWidth()-10+'px';
	else
		currentdiv.style.left = posX-Math.floor(extdiv.getWidth()/2)+'px';

	// vertical positioning
	currentdiv.style.top = "auto"; currentdiv.style.bottom = "auto";
	if (floatingBoxMode == 1 || floatingBoxMode == 2 || floatingBoxMode == 5)
		currentdiv.style.top = posY+10+'px';
		else currentdiv.style.top = posY-extdiv.getHeight()-10+'px';
}

function floatingBoxShow(text,mode) {
	Ext.getDom("floatingBoxContent").innerHTML = text;
	Ext.getDom("floatingBox").style.display = "block";
	document.onmousemove = floatingBoxTrack;
	floatingBoxMode = mode;
}

function floatingBoxHide(text) {
	Ext.getDom("floatingBoxContent").innerHTML = "";
	Ext.getDom("floatingBox").style.display = "none";
	document.onmousemove = "";
}

// radio group - getting current value
function getRadioBoxValue(form,element) {
	for( i = 0; i < document.forms[form].elements[element].length; i++ ) {
		if( document.forms[form].elements[element][i].checked == true ) {
			val = document.forms[form].elements[element][i].value;
		}
	}
	return(val);
}

// text preloads - delete and restore
preloads = new Array();
function delPreload(obj) {
	if (typeof(preloads[obj.name]) != "string") {
		preloads[obj.name] = obj.value;
		obj.style.color = "#000000";
		obj.value = "";
	}
}

function restorePreload(obj) {
	if (obj.value == "") {
		obj.value = preloads[obj.name];
		obj.style.color = "#555555";
		preloads[obj.name] = false;
	}
}


function popup(URL) {
	day = new Date();
	id = day.getTime();
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=700,height=300');");
}


function isNumeric(sText) {
  var ValidChars = "0123456789";
  var IsNumber=true;
  var Char;

  for (i = 0; i < sText.length && IsNumber == true; i++) {
    Char = sText.charAt(i);
    if (ValidChars.indexOf(Char) == -1) {
      IsNumber = false;
    }
  }
  return IsNumber;
}
