var contextPath = "/unopar";
var process;
function out(){process = setTimeout(hide, 700);}
function over(){if(process){clearTimeout(process);process=null;}}
function hide(){hideSelects(true); $('submenu').style.display = 'none';$('mainmenu').style.display = 'none';}

function hideSelects(b){
	$$('select').each(function (i){ i.setStyle({'visibility' : b?'visible':'hidden'})});
	$$('input').each(function (i){ i.setStyle({'visibility' : b?'visible':'hidden'})});
}

function showLoader(){if($('loading')) $('loading').style.display='';}
function hideLoader(){if($('loading')) $('loading').style.display='none';}

function sm(){
	var url = contextPath+'/menu/getmenu.action';
	if($('mainmenu').innerHTML == ''){
		new Ajax.Request(url, {method: 'post',
						onComplete: function(req){
										var lst = eval(req.responseText);
										if(lst.length>0){
											for(var i = 0; i < lst.length; i++){
												$('mainmenu').innerHTML += '<a onmouseover="javascript:over()" onmouseout="javascript:out()" id="_'+lst[i].siinCd+'" href="javascript:ssm('+lst[i].siinCd+')">'+lst[i].siinDs+'</a>';
											}
	                                   		$('mainmenu').style.display = '';
										}else{
	                                   		$('submenu').style.display = 'none';
										}
									}
		});
	}
	var src = $('menu');
	var offset = Position.cumulativeOffset(src);
	$('submenu').style.display = 'none';
	$('mainmenu').style.display = $('mainmenu').style.display=='none'?'':'none';
	hideSelects($('mainmenu').style.display=='none');
	$('mainmenu').style.top = (offset[1]+Element.getHeight(src))+'px';
	$('mainmenu').style.left = offset[0]+'px';
}


function ssm(id){
    var url = contextPath+'/menu/getsubmenu.action';
    var pars = 'insisint.siinCd='+id;
	var myAjax = new Ajax.Request(url, {method: 'post',
     									parameters: pars,
										onError: function(){
											alert('Erro');
										},
     									onComplete: function(req){
											$('submenu').innerHTML = '';

											var lst = eval(req.responseText);
											if(lst.length>0){
 												for(var i = 0; i < lst.length; i++){

 													if(!lst[i].actiBoManutencao){
 														$('submenu').innerHTML += '<a onmouseover="javascript:over()" onmouseout="javascript:out()" href="'+contextPath+'/'+lst[i].actiDsAction+'">'+lst[i].actiDsMenu+'</a>';
 													}else{
 														$('submenu').innerHTML += '<a onmouseover="javascript:over()" onmouseout="javascript:out()" href=\'\'>'+lst[i].actiDsMenu+' <span style="color:red">Manutenção</span></a>';
 													}

 												}
                                            	var src = $('_'+id);
                                            	var offset = Position.cumulativeOffset(src);

   	                                            $('submenu').style.top = (offset[1]+Element.getDimensions(src).height/2)+'px';
												if(offset[1] + Element.getDimensions($('submenu')).height > document.viewport.getDimensions()[1]){
    	                                            $('submenu').style.top = (offset[1]+Element.getDimensions(src).height/2) - Element.getDimensions($('submenu')).height +'px';
												}else{
    	                                            $('submenu').style.top = (offset[1]+Element.getDimensions(src).height/2)+'px';
												}

                                                $('submenu').style.left = (offset[0]+Element.getDimensions(src).width-10)+'px';
                                                $('submenu').style.display = '';
											}else{
                                                $('submenu').style.display = 'none';
											}
										}});
}

// Busca de cidades
function buscaCidade(selectElement){
	buscaCidadeTipo(selectElement, '');
	
}

function buscaCidadeTipo(selectElement, muniTp){
	if (selectElement.value == -1) {
		selectElement.selectedIndex = 0;
		var q = window.prompt("Pesquisa de cidades:", "Digite parte do nome da cidade", true);
		if(q && q.length > 2){
			var url = '/unopar/common/buscaCidades.action';
			var pars = 'query='+likeStr(q)+'&muniTp='+muniTp;
			var myAjax = new Ajax.Request(url, {method: 'post',
												parameters: pars,
												onComplete: function(req){
													fillCombo(eval(req.responseText), selectElement)
												},
												onFailure: hideLoader});
			return false;
		}
	}
}
function fillCombo(list, combo){
	if(!list || list.length==0){
		alert('Nenhum item localizado!');
	}else{
		combo.options.length=3;
		for(var i = 0; i < list.length; i++){
			combo.options[i+3] = new Option(list[i].descricao +(list[i].info?' - '+list[i].info:''), list[i].id);
		}
	}
	combo.selectedIndex = 0;
}

// Busca de pessoas
function buscaPessoas(selectElement){
	buscaPessoas(selectElement, '');
}

function buscaPessoas(selectElement, perfis){
	//Novo cadastro
	if (selectElement.value == -2) {
		window.open("/unopar/common/cadastraPessoaForm.action?combo="+selectElement.name, null, "top=100, left=200, height=280, width=473, status=no, toolbar=no, menubar=no, location=no");
	}

	//Localizar
	if (selectElement.value == -1) {
		var q = '';
		if(q = window.prompt("Pesquisa de pessoas:", "Digite parte do nome da pessoa!", true)){
			var url = '/unopar/common/buscaPessoas.action';
			var pars = 'query='+likeStr(q);
			
			if(perfis && perfis.length>0){
				perfis = $w(perfis);
				for(var i = 0; i < perfis.length; i++){
						pars += '&gepfCd='+perfis[i];
				}
			}

			new Ajax.Request(url, {method: 'post',
				parameters: pars,
				onComplete: function(req){
					fillCombo(eval(req.responseText), selectElement)
				},
				onFailure: hideLoader});
		}
	}
}

// Busca de profissoes
function buscaProfissoes(selectElement){
	if (selectElement.value == -1) {
		selectElement.selectedIndex = 0;
		var q = window.prompt("Pesquisa de Profissões:", "Digite parte do nome da profissão ", true);
		if(q && q.length > 3){
			var url = '/unopar/common/buscaProfissoes.action';
			var pars = 'query='+likeStr(q);
			var myAjax = new Ajax.Request(url, {method: 'post',
												parameters: pars,
												onComplete: function(req){
													fillCombo(eval(req.responseText), selectElement)
												},
												onFailure: hideLoader});
			return false;
		}
	}
}
function likeStr(str){
	return str.replace(/[^0-9A-Za-z ]/g, '_').toUpperCase();
}

function setupToolTip(field, text){
	this.tip = new Element("DIV");
	this.tip.id = 'tip';
	this.tip.setStyle({
			backgroundColor:'#FFF',
			padding:'5px',
			border:'1px solid #000',
			position:'absolute'
	});
	this.tip.hide();
	document.body.appendChild(this.tip);
	this.field = $(field);
	if(!this.field) return;
	if(text==null || text==""){
		text = field.readAttribute('title');
	}
	$(field).removeAttribute('title');
	this.field.observe('mousemove', function(event){
		if(!this.field) return;
		this.tip.update(text);
		this.tip.setStyle({
			top: Event.pointerY(event)+15+'px',
			left: Event.pointerX(event)+15+'px'
		});
		this.tip.show();
	}.bindAsEventListener(this));
	this.field.observe('mouseout',	function(event){
		this.tip.hide();
	}.bindAsEventListener(this));
}

function setupToolTipByClassName(className, text){
	var elements = document.getElementsByClassName(className);
	if(elements){
		elements.each(
			function(e){
				setupToolTip(e, text);
			}
		)
	}
}

var item=0;
function addAnexo(tipo){
	item++;
	var dv = document.createElement('div');
	dv.setAttribute('id', item);
	var link = document.createElement('a');
	link.setAttribute('href','javascript: remAnexo(\''+item+'\','+tipo+');');
	link.appendChild(document.createTextNode(' '));
	var img = document.createElement('img');
	img.setAttribute('src', '/unopar/images/form_cancel.gif');
	img.setAttribute('border', 0);
	link.appendChild(img);
	var inpt = document.createElement('input');
	inpt.setAttribute('type','file');
	inpt.setAttribute('name', 'anexo');
	inpt.setAttribute('size',50);
	dv.appendChild(inpt);
	dv.appendChild(link);
	$('anexos'+tipo).appendChild(dv);
}

function remAnexo(item, tipo){
	var a = $(item);
	var b = $('anexos'+tipo);
	b.removeChild(a);
}

function getUserInfo(geusCd){
	var openedWindow = window.open('/unopar/message/getuserinfo.action?geuser.geusCd='+geusCd, 'Informações', 'resize=no,width=400,height=225');
}

function hideUserInfo(){
	document.body.removeChild($('info'));
}