function divatmenet(target_obj, param, p_callback)
{
	if(param.ujmeret != null)
	{
		var futtat = '';
		if(param.ujmeret.kezd != null && param.ujmeret.kezd == 'x')
		{
			futtat = 'x';
		}
		else if(param.ujmeret.kezd != null && param.ujmeret.kezd == 'y')
		{
			futtat = 'y';
		}
		else
		{
			if(param.ujmeret.x != null)
			{
				futtat = 'x';
			}
			else if(param.ujmeret.y != null)
			{
				futtat = 'y';
			}
			else
			{
				futtat = 'ujrahiv';
			}
		}
		
		if(futtat == 'x')
		{
			var x_diff = param.ujmeret.x - target_obj.offsetWidth;//ha negativ, akkor kicsinyiteni kell tartget_obj-ot.
			
			var lepesek = new Array();
			lepesek[0] = target_obj.offsetWidth;
			var i;
			var str0 = '';
			var lepes = param.ujmeret.lepes != null ? param.ujmeret.lepes : 20;
			for(i = 1 ; i < lepes ; i++ )
			{
				lepesek[i] = (-(1/2)*Math.cos((Math.PI)*(i/lepes))+0.5)*x_diff + target_obj.offsetWidth;
			}
			lepesek[lepes] = param.ujmeret.x;
			divatmenet_ujmeret_x(target_obj, param, p_callback, lepesek, 0);
		}
		else if(futtat == 'y')
		{
			var y_diff = param.ujmeret.y - target_obj.offsetHeight;//ha negativ, akkor kicsinyiteni kell tartget_obj-ot.
			
			var lepesek = new Array();
			lepesek[0] = target_obj.offsetHeight;
			var i;
			var str0 = '';
			var lepes = param.ujmeret.lepes != null ? param.ujmeret.lepes : 20;
			for(i = 1 ; i < lepes ; i++ )
			{
				lepesek[i] = (-(1/2)*Math.cos((Math.PI)*(i/lepes))+0.5)*y_diff + target_obj.offsetHeight;
			}
			lepesek[lepes] = param.ujmeret.y;
			divatmenet_ujmeret_y(target_obj, param, p_callback, lepesek, 0);
		}
		else// futtat=='ujrahiv'
		{
			param.ujmeret = null;
			divatmenet(target_obj, param, p_callback);//megadta az ujmeret objektumot, de elfelejtette a parametereit megadni, azaz nincs x, y, kezd, akkor ujra kell hivni
		}
	}
	else if(param.removeClass != null)
	{
		removeClass(target_obj, param.removeClass);
		param.removeClass = null;
		divatmenet(target_obj, param, p_callback);
	}
	else if(param.addClass != null)
	{
		addClass(target_obj, param.addClass);
		param.addClass = null;
		divatmenet(target_obj, param, p_callback);
	}
	else
	{
		//alert(typeof p_callback)
		if(typeof p_callback != 'undefined')
		{
			//alert(p_callback)
			(p_callback)(target_obj);
		}
	}
}
function divatmenet_ujmeret_x(target_obj, param, p_callback, lepesek, i)
{
	target_obj.style.width = lepesek[i]+'px';
	//alert(lepesek[i]+'px');
	
	if(lepesek[i+1] != null)
	{
		var nsec = param.ujmeret.nsec != null ? param.ujmeret.nsec : 10;
		setTimeout(function(){divatmenet_ujmeret_x(target_obj, param, p_callback, lepesek, i+1)}, nsec);
	}
	else
	{
		param.ujmeret.x = null;
		param.ujmeret.kezd = null;
		divatmenet(target_obj, param, p_callback);
	}
}
function divatmenet_ujmeret_y(target_obj, param, p_callback, lepesek, i)
{
	target_obj.style.height = lepesek[i]+'px';
	//alert(lepesek[i]+'px');
	
	if(lepesek[i+1] != null)
	{
		var nsec = param.ujmeret.nsec != null ? param.ujmeret.nsec : 10;
		setTimeout(function(){divatmenet_ujmeret_y(target_obj, param, p_callback, lepesek, i+1)}, nsec);
	}
	else
	{
		param.ujmeret.y = null;
		param.ujmeret.kezd = null;
		divatmenet(target_obj, param, p_callback);
	}
}
