var svgDoc;
var svgSVGObj;
var SVGRoot;
var olcx = 0;
var olcy = 0;
var transx = 0;
var transy = 0;
var scale;
var curscale;
var txtStext;
var trans;
var xm;
var ym;
var xmr;//relativ
var ymr;
//zoomer
var zx1 = 0;
var zy1 = 0;
var zx2 = 0;
var zy2 = 0;
var yaziyaz = 1;
var preobj = '';
var preobj_col = '#CC80FF';
var preobj_typ = 'stroke';
var cur_w = 600;
var cur_h = 600;
var zw = '0k0k0k0';//zoom window
var prm = '';
var tur = '';
var gval = '';
var tID = '';
var objID = '';
var mt;
var svgobj;
var texID;
var mdi;
var mX;
var mY;
var maX;
var maY;
var mid;
var svginsvg;
var inmsrmn = 0;
var msrele;

function initMap(evt) {
	var directTarget = evt.target;
	SVGRoot = evt.getTarget().getOwnerDocument().getDocumentElement();
	if( directTarget.getNodeType() != 9 ){
		svgDoc = directTarget.ownerDocument;
	}else{
	    svgDoc = directTarget;
	}
	txtStext = svgDoc.getElementById('txt_data');//Goster text
	
	curscale = Number(svgDoc.getElementById('sc1').getFirstChild().getData());
	cur_w = Number(svgDoc.getElementById('cur_w').getFirstChild().getData());
	cur_h = Number(svgDoc.getElementById('cur_h').getFirstChild().getData());
	mX = Number(svgDoc.getElementById("minX").getFirstChild().getData());
	mY = Number(svgDoc.getElementById("minY").getFirstChild().getData());
	maX = Number(svgDoc.getElementById("maxX").getFirstChild().getData());
	maY = Number(svgDoc.getElementById("maxY").getFirstChild().getData());
	prm = (svgDoc.getElementById("prm").getFirstChild().getData());
	mid = (svgDoc.getElementById("mid").getFirstChild().getData());
    svginsvg = svgDoc.getElementById('insvg')
    preobj = '';
}

function set_info(){
yaziyaz = 1;
}

function set_measure() {
    svginsvg.setAttribute("onmousedown","startmeasure(evt)");
    msrele = svgDoc.getElementById('msru');
    //svginsvg.setAttribute("onmouseup","stopmeasure(evt)");
    yaziyaz = 0;
    txtStext.getFirstChild().setData('');
}

function startmeasure(evt) {
    yaziyaz = 0;
    if (inmsrmn==1) {
        stopmeasure(evt);
        inmsrmn = 0;
    }else{
        inmsrmn = 1;
        zx1 = xmr
        zy1 = ymr
        txtStext.getFirstChild().setData('');
        zmrect = svgDoc.getElementById('msru')
        zmrect.setAttribute("x1",zx1);
        zmrect.setAttribute("y1",zy1);
        svginsvg.setAttribute("onmousemove","measure(evt)");
        txtStext.getFirstChild().setData('');
    }
}

function stopmeasure(evt) {
    svginsvg.setAttribute("onmousemove","");
    svginsvg.setAttribute("onmousedown","");
    svginsvg.setAttribute("onmouseup","");
    zmrect = svgDoc.getElementById('msru')
    zmrect.setAttribute("x1",0);
    zmrect.setAttribute("y1",0);
    zmrect.setAttribute("x2",0);
    zmrect.setAttribute("y2",0);
    //yaziyaz = 1;
}

function measure(evt) {
    zx2 = xmr;
    zy2 = ymr;
    msrele.setAttribute("x2",zx2);
    msrele.setAttribute("y2",zy2);
    msf = Math.sqrt(Math.pow((zx1-zx2),2) + Math.pow(zy1-zy2,2))
    msf = msf.toFixed(2) + ' m';
    TG(msf);
}

function startzoomer(evt) {
    yaziyaz = 0;
    zx1 = xmr
    zy1 = ymr
    txtStext.getFirstChild().setData('');
    svginsvg.setAttribute("onmousemove","movezoomer(evt)");
}

function stopzoomer(evt) {
    svginsvg.setAttribute("onmousemove","");
    if  ((xmr != zx1) || (ymr != zy1)) {
        yaziyaz = 1;
        zx2 = xmr;
        zy2 = ymr;
        //alert(zx1 + ' ' + zx2 + ' ' + zy1 + ' ' + zy2)
        mX = zx2; maX = zx1; mY = zy2; maY = zy1;
        if (zx1 < zx2){ mX = zx1; maX = zx2; }
        if (zy1 < zy2){ mY = zy1; maY = zy2; }
        if ((mX != maX) || (mY != maY)) {
            yonlendir(evt);
        }
    }
}

function movezoomer(evt) {
    zmrect = svgDoc.getElementById('zoomrect')
    zmrectr = svgDoc.getElementById('zoomrectr')
    zx2 = xmr
    zy2 = ymr
    polpo = zx1 + ',' + zy1 + ' ' + zx2 + ',' + zy1 + ' ' + zx2 + ',' + zy2 + ' ' + zx1 + ',' + zy2
    a = 1;
    yf = zy2 - zy1
    xf = zx2 - zx1
    if (xf > 0 && yf > 0) {
        if (xf < yf) { zy2 = zy1 + (zx2 - zx1)
        }else{ zx2 = zx1 + (zy2 - zy1)       }} 
    if (xf > 0 && yf < 0) {
        if (xf < (-1*yf)) { zy2 = zy1 - (zx2 - zx1)
        }else{ zx2 = zx1 + (-1*(zy2 - zy1))  }}
    if (xf < 0 && yf < 0) {
        if ((-1*xf) < (-1*yf)) { zy2 = zy1 + (zx2 - zx1)
        }else{ zx2 = zx1 + (zy2 - zy1)  }}
    if (xf < 0 && yf > 0) {
        if ((-1*xf) < yf) { zy2 = zy1 + (-1*(zx2 - zx1))
        }else{ zx2 = zx1 - (zy2 - zy1)  }}

    polpor = zx1 + ',' + zy1 + ' ' + zx2 + ',' + zy1 + ' ' + zx2 + ',' + zy2 + ' ' + zx1 + ',' + zy2
    zmrect.setAttribute("points",polpo);
    zmrectr.setAttribute("points",polpor);
    txtStext.getFirstChild().setData('');
    //alert(polpo)
}

function getID(evt){
	mt = evt.target;
	tID = mt.getAttributeNS(null, "id");
	svgobj = svgDoc.getElementById(tID);
}

function getVal(gID){
	var idsp = gID.split('_');
	tur = idsp[0];
	gval = idsp[1];
	objID  = idsp[2];
}

function getcol(kim,ne){
	d = '';
	d =	svgDoc.getElementById(kim).getAttributeNS(null,ne);
	return d
}

function oM(evt){//function oM(tur,eID,gval){
	getID(evt);
	getVal(tID);
	objtur = mt.tagName;
	//onceki normalize
	if (preobj != '') {
		svgDoc.getElementById(preobj).getStyle().setProperty(preobj_typ,preobj_col);
	}
	
	if (objtur == 'polyline'){preobj_typ = 'stroke';}else{preobj_typ = 'stroke';}//if (objtur == 'polyline'){preobj_typ = 'stroke';}else{preobj_typ = 'fill';}
	preobj_col = mt.getAttributeNS(null,preobj_typ)
	if (preobj_col == ''){preobj_col = getcol(tur,preobj_typ)}
	
	//simdikini boya
	svgobj.getStyle().setProperty(preobj_typ,'#FF80FF');
	//objeyemove ozelligi ata
	svgobj.setAttribute("onmousemove","TG('" + gval + "')");
	//yazi yaz
    if (yaziyaz == 1) {
	    TG(gval)
    }
	//onceki obj ata
	preobj = tID
}

function Mj(evt){//function oM(tur,eID,gval){
	getID(evt);
	getVal(tID);
	svgobj.setAttribute("onmousemove","TG('" + gval + "')");
	//yazi yaz
	if (yaziyaz == 1) {
	    TG(gval)
    }
}

function gc(evt){
//alert(svgDoc.getElementById('p').getAttributeNS(null,'fill'))
//alert("Object is filled with "+ evt.target.getAttributeNS(null,"fill") + " color")
}

function DXY(evt){
	scale = SVGRoot.getCurrentScale();
	trans = SVGRoot.getCurrentTranslate(); 
	transx = trans.getX(); transy = trans.getY();
	xm=(evt.getClientX()-transx)/scale;
	ym=(evt.getClientY()-transy)/scale
	//svgDoc.getElementById('Xk').getFirstChild().setData(xm)
	//svgDoc.getElementById('Yk').getFirstChild().setData(ym)
    var sH= cur_h;
	var sW= cur_w;
	dx=maX-mX;dy=maY-mY;	
	if (dx>dy) { 
		xmr=Number(mX+xm*(dx/sH));
		ymr =maY-(ym*dx/sH)}
	else { 
		xmr=mX+(xm*dy/sW);
		ymr=Number(maY-ym*(dy/sW));}
}

function TG(gtext){
	var ypsn = (20/scale);
	txtStext.setAttribute("x",(xm-ypsn)-20);
	txtStext.setAttribute("y",(ym-ypsn)-20);
	txtStext.getFirstChild().setData(gtext);
	txtStext.getStyle().setProperty('font-size',ypsn);
}

function msj(gtext) {
	svgDoc.getElementById('msg').getFirstChild().setData(gtext);
}

function lostce(evt) {
zmobj = svgDoc.getElementById("olcek");
zmobj.setAttribute("visibility","hidden");
}

function visce(evt) {
zmobj = svgDoc.getElementById("olcek");
vismi = zmobj.getAttributeNS(null, "visibility");
if (vismi == 'hidden') {
    zmobj.setAttribute("visibility","visible");
    Stay(evt)
   }
}

function Stay(evt){
	zmobj = svgDoc.getElementById('olcek')
    //zmobj.setAttribute("visibility",'hidden');
	//zmobj2 = svgDoc.getElementById('kay')
	scale = SVGRoot.getCurrentScale();
	transx = trans.getX();
	transy = trans.getY();
	scl = 1/scale
	olcxx = (0 - transx)/scale
	olcxy = (0 - transy)/scale	
	yeni_trans = "translate(" + olcxx + "," + (olcxy) + ") scale(" + scl + ")"
	zmobj.setAttribute("transform",yeni_trans);
	//yeni olcekler
	svgDoc.getElementById('sc1').getFirstChild().setData(curscale*scl)
	svgDoc.getElementById('sc2').getFirstChild().setData(curscale*2*scl)
    //zmobj.setAttribute("visibility",'visible');
}

function ac(evt){ //open current window
	getID(evt);
	getVal(tID);
	var act = 1;//tummahalleler
	if (tur == "m"){act = 2}//tek mahalle
	if (tur == "z"){act = 3}//full zoomin
	
	prm = '';//chkprm()
	//location.href ="?W=" + cur_w + "&H=" + cur_h + "&act=" +  act + "&tur=" + tur + "&ID=" + objID + "&zw=" + zw + "&prm=" + prm
    vlnk = "?W=" + cur_w + "&H=" + cur_h + "&act=" +  act + "&tur=" + tur + "&ID=" + objID + "&zw=" + zw + "&prm=" + prm
    svgre(vlnk);
}

function yonlendir(evt){ 
	/*var sH= cur_h;
	var sW= cur_w;
	dx=maX-mX;dy=maY-mY;	
	if (dx>dy) { 
		xm=Number(mX+xm*(dx/sH));
		ym =maY-(ym*dx/sH)}
	else { 
		xm=mX+(xm*dy/sW);
		ym=Number(maY-ym*(dy/sW));}*/
    sonuc = NVK(mX) + "k" + NVK(mY) + "k" + NVK(maX) + "k" + NVK(maY)
	//sonuc = (NVK(xmr)-150) + "k" + (NVK(ymr)-150) + "k" + (NVK(xmr)+150) + "k" + (NVK(ymr)+150);
	zw = sonuc;
	prm = ''//chkprm()
	vlnk = "?W=" + cur_w + "&H=" + cur_h + "&act=3&tur=z&ID=" + mid + "&zw=" + zw + "&prm=" + prm
	//location.href = "?W=" + cur_w + "&H=" + cur_h + "&act=3&tur=z&ID=" + mid + "&zw=" + zw + "&prm=" + prm
    svgre(vlnk);
}

function getlink(){
	lnk = "?tur=z&W=" + cur_w + "&H=" + cur_h + "&act=3&ID=0&zw=" + zw + "&prm=" + prm
	//alert(lnk)
	return lnk
}

function ara(){
	var y = document.getElementById('yol')
	var a = document.getElementById('ada')
	var p = document.getElementById('parsel')
	var r = document.getElementById('rehber')
	
	//enaz biri dolumu
	if (y.value=='' & a.value =='' & p.value == '' & r.value == ''){
		alert('Lütfen en az bir kutuyu doldurunuz!')
	}else{
		nlnk = '&y=' + y.value + '&a=' + a.value + '&p=' + p.value + '&r=' + r.value;
		iW = window.open('ara.psp?' + getlink() + nlnk, 'arama', 'resizable=yes,menubar=no,scrollbars=yes,status=no,width=350,height=300,left=200,top=200');
		iW.focus();
	}
}

function lejand(gmid) {
		iW = window.open('lejand?mid=' + gmid, 'lejand', 'resizable=yes,menubar=no,scrollbars=yes,status=no,width=350,height=300,left=100,top=100');
		iW.focus();
}

function inf(evt){
    if (yaziyaz==1) {
	    getID(evt);
	    getVal(tID);
	    //tur gval objID
	    vval = tur + '_' + objID;
	    iW = window.open('info.psp?iid=' + vval, 'info', 'resizable=yes,menubar=no,scrollbars=yes,status=no,width=400,height=400,left=100,top=100');
	    iW.focus();
    }
}

function NVK(NVKin){
	var NVKs = NVKin.toString();var NVKc = "";var NVKy;
	if (NVKs.indexOf(".") != -1) { NVKc = ".";NVKy = NVKs.indexOf(".")}
	if (NVKs.indexOf(",") != -1) { NVKc = ",";NVKy = NVKs.indexOf(",")}
	return(Number(NVKs.substring(0, NVKy)));
}

function pan(mx,x,my,y) {
	o = 120;
    mXk   = (mx*o) + mX;
	mYk   = (my*o)  + mY;
	maXk  = (x*o) + maX;
	maYk  = (y*o)  + maY;
	zw    = (NVK(mXk)) + "k" + (NVK(mYk)) + "k" + (NVK(maXk)) + "k" + (NVK(maYk));
	
	//location.href ="?W=" + cur_w + "&H=" + cur_h + "&act=3&tur=z&ID=0&zw=" + zw + "&prm=" + prm
	vlnk = "?W=" + cur_w + "&H=" + cur_h + "&act=3&tur=z&ID=0&zw=" + zw + "&prm=" + prm
    svgre(vlnk);
}
		
function home(url){
	vlnk = "?W=" + cur_w + "&H=" + cur_h + "&act=0&tur=x&ID=0&zw=0&prm=x&aid=0&aracent=0"
	svgre(vlnk);
}

function vis(id,name){
    gprex = 'map_' + id
    gobj  = svgDoc.getElementById(gprex);//grafik
    lprex = 'map_l_' + id;
    lobj  = svgDoc.getElementById(lprex);//label
    bprex = 'pop_' + id;
    bobj  = svgDoc.getElementById(bprex);//kutu
    bfill = bobj.style.getPropertyValue('fill');

    if (bfill== "palegreen" || bfill==""){
        gobj.getStyle().setProperty('visibility','hidden');
        lobj.getStyle().setProperty('visibility','hidden');
        bobj.getStyle().setProperty('fill','red');
    }else{
        gobj.getStyle().setProperty('visibility','visible');
        lobj.getStyle().setProperty('visibility','visible');
        bobj.getStyle().setProperty('fill','palegreen');
    }
}

