var infwin=null;
var objwin=null;
var findwin=null;
var catinfowin=null;

var x, y;
var brow='ie';
if (navigator.appName=='Netscape') brow='ns';
var agnt= navigator.userAgent.toLowerCase();
if ( agnt.indexOf('gecko') != -1 ) brow='mz';

function newwindow(path) 
{ 
window.open(path,'jav','width=480,height=300,resizable=yes,scrollbars=yes'); 
}

function mailto(name, host)
{
    location.href = 'mailto:'+name+'@'+host;
}

function CloseObj()
{
	if ( document.f1.userobjid )
		document.f1.userobjid.value = 0;
}
function ShowObj(id,id_gr)
{
	document.f1.userobjid.value = id;
	if ( id_gr )
	{
		box = eval("document.f1.ch" + id_gr); 
		box.checked = true;
	}
	document.f1.type.value = "";
	document.f1.str.value = "";
	document.f1.full.value = 0;
	document.f1.submit();
}
function findobj(cat_list)
{
	if ( findwin != null && !findwin.closed )
			findwin.close();
	var str = document.f1.strobj.value;
        if ( brow == 'ns' )
           str = escape(str);
	if ( str != "" )
	{
		findwin = window.open( 'findobj.php?str='+str+'&cat_list='+cat_list,'findobj','resizable=yes,scrollbars=yes,width=300,height=350');
//		findwin.focus();
	}

}
function CloseObjWin()
{
//	CloseObj();
	if ( objwin != null && !objwin.closed )
			objwin.close();
}
function CloseCatInfoWin()
{
//	CloseObj();
	if ( catinfowin != null && !catinfowin.closed )
			catinfowin.close();
}
function UpdateCatList()
{
	CloseObj();
	CloseObjWin();
	CloseCatInfoWin();
	document.f1.submit();
}
function CatClick(id)
{
    CloseObjWin();
	objwin=window.open('objlist.php?cat='+id,'objlist','resizable=yes,scrollbars=yes,width=300,height=350');
//	objwin.focus();
}

function CatInfoClick(id)
{
    CloseCatInfoWin();
	catinfowin=window.open('catinfo.php?cat='+id,'catinfo','resizable=yes,scrollbars=yes,width=600,height=350');
//	catinfowin.focus();
}

function GetMapCoord(evt)
{
	var dx,dy;
	if ( brow == 'ie' )
	{
		x = evt.offsetX;
		y = evt.offsetY;
	}
	else if ( brow == 'mz' ) // Mozilla
	{
		dx=298; dy=62;
		x = evt.pageX - dx;
		y = evt.pageY - dy;

	}
        else // Netscape and all others
        { 
		dx = 21; dy = 21;
		x = evt.x - dx;
		y = evt.y - dy;
        }
}

function MapClicked()
{
	if ( document.f1.nav.checked && x < 100 && y < 100 || !document.f1.tool[0].checked )
	{
		document.f1.map_x.value = x;
		document.f1.map_y.value = y;
		document.f1.submit();
	}
	else
	{
    		if ( infwin != null && !infwin.closed )
			infwin.close();
		if ( document.f1.full.value == 0 )
infwin=window.open('info.php?xmn='+document.f1.xmn.value+'&ymn='+document.f1.ymn.value+'&xmx='+document.f1.xmx.value+'&ymx='+document.f1.ymx.value+'&map_dy='+document.f1.map_dy.value+'&map_dx='+document.f1.map_dx.value+'&x='+x+'&y='+y+'&gr_list='+document.f1.gr_list.value,'objinfo','resizable=yes,scrollbars=yes,width=350,height=200');
	}
}
function EnterKeyPress(key)
{
	if ( key == 13)
	{
 		SetSkip(0);
		document.f1.submit();
	}
	else
		return true;
}

function noenter()
{	// Запретить обработку Enter в IE для полей номера дома
	// Для Netscape Enter работает только для формы с одним полем ввода
    return !(window.event && window.event.keyCode == 13);
}

function SetSkip(skipvalue)
{
	CloseObj();
 	document.f1.skip.value = skipvalue;
	if ( skipvalue == 0 )
	{
		document.f1.type.value = "";
//		document.f1.nobj.value = 0; не чистить номер объекта!
	}
}
function LeftRight(skipvalue)
{
	SetSkip(skipvalue);
	document.f1.submit();
}
function SetNobj(typ,num)
{
	CloseObj();
	document.f1.type.value = typ;
	if ( typ == "house1" || typ == "house1t")
		document.f1.nhouse.value = num;
	else
		document.f1.nobj.value = num;
	document.f1.nobjgr.value = 0;
	document.f1.full.value = 0;
	document.f1.submit();
}
function FullView()
{
	CloseObj();
	document.f1.full.value = 1;
	document.f1.submit();
}
function checknav()
{
	if (document.f1.nav.checked)
		document.f1.nav.value = "1";
	else
		document.f1.nav.value = "0";
	return true;
}
function checkbig()
{
	if (document.f1.big.checked)
		document.f1.big.value = "1";
	else
		document.f1.big.value = "0";
	return true;
}
function checkhouseN(typ)
{
	CloseObj();
	document.f1.type.value = typ;
	document.f1.full.value = 0;
	n = document.f1.housenum.value;
	if ( n == "" )
	{
		alert ("Не введен номер дома");
		return false;
	}
	num = parseInt(n);
	if ( n != ''+num )
	{
		alert("Номер дома должен быть числом от 1 до 999");
		return false;
	}
	n1 = document.f1.building.value;
	if ( n1 != "" )
	{
		num1 = parseInt(n1);
		if ( n1 != ''+num1 )
		{
			alert("Номер корпуса должен быть числом от 1 до 99");
			return false;
		}
	}
	return true;
}
function SetShifType(shtype)
{
//	CloseObj();
	document.f1.shift.value = shtype;
	document.f1.map_x.value = 0;
	document.f1.map_y.value = 0;
	document.f1.submit();
}
