function KartenaMap(customerId, db, elementId)
{
	var _CustomerId = customerId;
	var _Db = db;
	var _Map = new GeositionMapClassic(document.getElementById(elementId));
	var _Controls = _Map.getControls();
	var _ItemFixInterval;
	this.MarkItem = MarkItem;
	this.ClearState = ClearState;
	this.Update = Update;
		
	function MarkItem(prodId, scale)
	{
		this.ClearState();
		_Controls.markItem(_Db, prodId);
		_Controls.setScale(scale);
		_ItemFixInterval = setInterval(ItemFix, 500);
	}
		
	function AddItems(arrProdId)
	{
		this.ClearState();
		var strState = "";
		for (i = 0; i < arrProdId.length; i++)
		{
			strState += "id_" + _Db + "=" + arrProdId[i] + "&";
		}
		strState = strState.substring(0, strState.length - 1);
		_Controls.setState(strState);
	}
	
	function ClearState()
	{
		_Controls.setState("db=" + _Db + "&action_" + _Db + "=new");
	}	
	
	function Update()
	{
		_Controls.updateState();
		_Controls.setItemInSessionOverview();
	}
	
	function ItemFix() {
		var item = _Controls.getItemsInView()[0];
		if(item)
		{
			clearInterval(_ItemFixInterval);
			StdTools.fX();
			item.bN().style.visibility="";
		}
	}	
}