function PSScript(src){document.write('<'+'script type="text/javascript" src="'+src+'"'+'><'+'/script>');};
function min(a,b){return (a<b) ?a :b;};
function max(a,b){return (a>b) ?a :b;};

if(!window.Exception) PSScript(PATH_RES+'psmap/exception.1.00.js');
if(!window.AjaxRequest) PSScript(PATH_RES+'psmap/ajax.1.00.js');
if(!window.onmousewheel) PSScript(PATH_RES+'psmap/onmousewheel.js');
if(!window.EOVWGS) PSScript(PATH_RES+'psmap/eovwgs.1.00.js');

with({$:PSMAP.prototype}){
///////////////////////////////////////////////////////////////////////////////
	$._debug = function(debugstr){
		var debug = document.getElementById('psmap-debug');
		if(!debug) return;
		debug.innerHTML += '<pre>'+debugstr+'</pre><br />';
		setDisplay(debug, 'block');
		}
	}

function PSMAP(engineUrl){
	var self = this;
	this.name = 'PSMAP';
	this.engineUrl = engineUrl;
	this.moveData = {active:false, sx:0, sy:0};
	this.zoomData = {active:false, keret:false, sx:0, sy:0};
	this.internalMode = 3;
	this.zoomIntesity = 2.3;
	this.mapQuality = 1.6;
	this.CP = {skrd:[0,0], wkrd:[0,0]};
//	this.routePoints = [];

	this.mapData = {busy:false, name:'', layout:1, windowLimit:null};
	this.cimData = {busy:false};
	this.symbols = [];

	try{
		this.mapwindow =  document.getElementById('map-window');
		this.mapimg =  document.getElementById('map-image');
		this.mapcopyright =  document.getElementById('map-copyright');
		this.mapsymbols =  document.getElementById('map-symbols');
//		this.zoommarker =  document.getElementById('mapzoommarker');

		this._setMapWindowClass();
		this.setCopyright('&copy; <a href="http://www.cnm.hu/" target="_blank">Cartographia New Media (CNM)</a> &amp; <a href="http://www.psoft.hu/" target="_blank">Psoft Informatikai Kft.</a>');

		//attach map controlling events
		if(this.mapwindow && this.mapimg){
			disableIMGInteractivity(this.mapimg);
			this.mapimg.onload = function(event){self._mapImgOnSet(event);}

			this._mapwindow_OnMouseDown = this.mapwindow.onmousedown;
			this.mapwindow.onmousedown = function(event){return self.mapwindow_OnMouseDown(event)};
			this._mapwindow_OnMouseMove = this.mapwindow.onmousemove;
			this.mapwindow.onmousemove = function(event){return self.mapwindow_OnMouseMove(event)};
			this._mapwindow_OnDblClick = this.mapwindow.ondblclick;
			this.mapwindow.ondblclick = function(event){return self.mapwindow_OnDblClick(event)};
			if(window.onmousewheel) onmousewheel(this.mapwindow, function(delta){self.mapwindow_OnMouseWheel(delta);});
//			this._onMouseDown_mapimg = this.mapimg.onmousedown;
//			this.mapimg.onmousedown = function(event){return self.onMouseDown_mapimg(event)};
//			if(this.zoommarker) this.zoommarker.onmousemove = function(event){if(!event) event=window.event; return false;}
			}
		else throw new Exception('PSMAP: Cannot find the required DHTML objects');
		}
	catch(e){alert(e);}
	}

PSScript(PATH_RES+'psmap/psmap.map.1.00.js');
PSScript(PATH_RES+'psmap/psmap.ovm.1.00.js');
PSScript(PATH_RES+'psmap/psmap.ruler.1.00.js');
PSScript(PATH_RES+'psmap/psmap.cim.1.00.js');
PSScript(PATH_RES+'psmap/psmap.symb.1.00.js');
