//<META http-equiv=Content-Type content="text/html; charset=windows-1251">

var infoMenu={ 'id':null };
var infoTimeout=null;

/***************************** Context Menus: idShow (zoom button menu), every field's menus
*/
function contextMenu(link, id, hid, type) {
	if(mode=='print') return;
	if(!hid) hid=link.getAttribute('hid');
	if(!type) type='id';
	if(window.infoMenu[type]) var menu = window.infoMenu[type];
	else  var menu =Create(type);
	var event = getEvent();

	function Create(type) {
		var menu = document.createElement('DIV');
		menu.className = 'infoMenu';
		menu.id = 'infoMenu_'+type;
		var head = document.createElement('DIV');
		head.className = 'infoHead';
		
		addListener(head, 'mousedown', function() { Dragable(event, menu, getBody()); });
		addListener(head, 'mouseover', function() { stopBubbleStopReturn(event); if(window.infoTimeout) window.clearTimeout(infoTimeout); });
		addListener(head, 'mouseout', function() { window.infoTimeout = setTimeout(function() { Hide(menu) }, 200); });
		menu.appendChild(head);
		var body = document.createElement('DIV');
		addListener(body, 'click', function() { Hide(menu); });
		menu.appendChild(body);
		if(type=='column') columnMenu(menu, type);
		document.body.appendChild(menu);
		window.infoMenu[type]=menu;
		return menu;
	}
	function Place(link) {
		var point = findPos(link);
		if(!point[0]) Error('infoMenu: click coordinates undefined');
		menu.style.left = point[0];
		menu.style.top = point[1];
	}
	function Button(onclick, name) {
		var b = document.createElement('BUTTON');
		b.className = 'infoButton';
		addListener(b, 'click', onclick );
		addListener(b, 'mouseover', function() { 
			if(window.infoTimeout) window.clearTimeout(infoTimeout);
			b.style.backgroundColor='#CBC7D7';
		});
		addListener(b, 'mouseout', function() { 
			window.infoTimeout = setTimeout(function() { Hide(menu) }, 200);
			b.style.backgroundColor='transparent';
		});
		b.innerHTML = name;
		var div = document.createElement('DIV');
		div.appendChild(b);
		return div;
	}
	function idMenu(id, hid) {
		if(isNaN(parseInt(id))) { alert("ContextMenu: id="+id+", hid="+hid); return; }  //  || isNaN(parseInt(hid))
		menu.childNodes[0].innerHTML = "&nbsp; "+id+". Контекстное меню "; 
		var body = menu.childNodes[1]; body.innerHTML = '';
		var uid=parseInt(link.getAttribute('uid'));
		var base=parseInt(link.getAttribute('base'));
		var info=parseInt(link.getAttribute('info'));
		if(isNaN(base)) base='';
		
		if(info>0) 
		body.appendChild( Button( function(){ 	Router(id, base, hid, uid, 'show'); }, "Подробная информация"));
		if(isNaN(author) || author==uid || adminLevel>0)
		body.appendChild( Button( function(){ 	Router(id, base, hid, uid, 'edit'); }, "Редактировать запись"));
		if(base==5) {
		if(window.adminLevel>0) {
		body.appendChild( Button( function(){ 	Accept(id, base, hid, uid, 'accept'); }, "Добавить в базу"));
		body.appendChild( Button( function(){ 	Accept(id, base, hid, uid, 'delete'); }, "Удалить"));
		}
		} else
		body.appendChild( Button( function(){ 	Router(id, base, hid, uid, 'claim'); }, "Отправить претензию"));
	}
	Place(link);
	if(type=='id') idMenu(id, hid);
	Display(menu);
}

function Router(id, base, hid, uid, mode) {
	if(mode=='show') {
	var page =	base==5 ? 'registr_profile' : 'profile';
	window.location.href=page+".php?base="+base+"&id="+id+(hid?"&h="+hid:'');

	} else if(mode=='edit') {
	var page =	base==5 ? 'registr_row' : 'edit_row';
	var win=open("http://"+server+"/"+page+".php?base="+base+"&u="+uid+"&id="+id+(hid?"&h="+hid:''), 'Editor_'+sessid, '');
	win.focus();

	} else if(mode=='claim') {
	window.location.href="claim.php?base="+base+"&u="+uid+"&id="+id+(hid?"&h="+hid:'');
	} else
	alert("Сервис находится в разработке");
}	
//	var winopts = "directories=1, location=1, menubar=1, resizable=1, scrollbars=1, status=1, toolbar=1";
//var winopts="left=0, top=0, width="+screen.width+", height="+screen.height+" ";
