var brwsr = navigator.appName
if (brwsr=="Netscape") brwsr = "ns"
else if (brwsr=="Microsoft Internet Explorer") brwsr = "ie"

var wndSis;
var wndVis;
var wndCentro;

var nRowOverAtual = 0;
var nRowOverAnterior = 0;
var nRowSelAtual = 0;
var cCorAnt;
var cCorSelAnt;

/*********FUNCAO PARA EXIBIR TELA DE MSG NA TELA*******************************************************************
  Criacao da Funcao: Lucas Shirm
  Implementacao na framework: Marcio Bandeira - 24/03/2009
  -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
  Esta funcao deve ser chamada da seguintr forma:
  montaTelaAguardeMSG("Titulo", "msg",formatado);
  Na msg, realizar a formatacao da mesma, de acordo com a necessidade. pode ser passado um html formatado.
  Caso a msg tenha sido formatada, o terceiro parametro recebe true senao false. isso, para que nao substitua a formatacao
  feita pelo programador.
  O arquivo basico.php chama o arquivo telaMSG.css, que contem a formatacao da div que sera exibida.
  Caso nao seja exibida a tela, incluir o telaMSG.css nos arquivos que chamam o arquivo funcoes.js.  
********************************************************************************************************************/
function fechaTelaAguarde() {
	t = document.getElementById('divAguardar').parentNode;
	t.removeChild(document.getElementById('divAguardar'));
	
}						
function montaTelaAguardeMSG(titulo, mensagem, formatado, botoes) {
	
	if(document.getElementById('divAguardar')) {				
		fechaTelaAguarde();					
	}
	objDiv = document.createElement('div');
	objDiv.id = 'divAguardar';
		objDiv.className = 'divAguarde';
		objTable = document.createElement('table');
			objTable.className= 'tblAguarde';
			objTBody = document.createElement('tbody');
				objTr = document.createElement('tr');
					objTd = document.createElement('td');

						objTableAviso = document.createElement('table');
							objTable.setAttribute('style', 'width: 500px;');
							objTable.style.width = '500px';
							objTable.setAttribute('align', 'center');
							
							objTBodyAviso = document.createElement('tbody');
							
								/*
								Linha de cabeçalho da tabela de informação
								*/
								objTrAvisoCabecalho = document.createElement('tr');
									objTdAvisoCabecalho = document.createElement('td');
										objTdAvisoCabecalho.className = 'tblCabecalho';
									objTrAvisoCabecalho.appendChild(objTdAvisoCabecalho);
								objTBodyAviso.appendChild(objTrAvisoCabecalho);
								
								/*
								Barra azul
								*/
								objTrAvisoBarra = document.createElement('tr');
									objTdAvisoBarra = document.createElement('td');
										objTdAvisoBarra.className = 'tblBarra';
										objTdAvisoBarra.innerHTML = "<div align='right'><a href=# onclick=fechaTelaAguarde();><img border='0' src='../../../framework/config/img/msg_erro_fechar.jpg' /></a></div>";
									objTrAvisoBarra.appendChild(objTdAvisoBarra);
								objTBodyAviso.appendChild(objTrAvisoBarra);
								
								/*
								Mensagem para o usuário
								*/
								objTrAvisoMensagem = document.createElement('tr');
										objTdAvisoMensagem = document.createElement('td');
										objTdAvisoMensagem.className = 'tblMensagem';
										objTdAvisoMensagem.vAlign = 'top';
										
											objDivMensagem = document.createElement('div');
												objDivMensagem.style.overflow = 'auto';
												objDivMensagem.style.height = '200px';
												objDivMensagem.innerHTML = "<h1>"+titulo+"</h1>";
												
												formatacaoInicial = '';
												formatacaoFinal	= '';
												if(!formatado){
													formatacaoInicial =  "<p id='divAguardeMensagem'>";
													formatacaoFinal = '</p>';
												}												
												objDivMensagem.innerHTML=objDivMensagem.innerHTML+ formatacaoInicial +mensagem + formatacaoFinal;
												objTdAvisoMensagem.appendChild(objDivMensagem);
										if(botoes) {
											if(botoes.length>0) {
												for(x in botoes) {
													objTdAvisoMensagem.innerHTML+=botoes[x];
												}

											}
										}
									objTrAvisoMensagem.appendChild(objTdAvisoMensagem);
								objTBodyAviso.appendChild(objTrAvisoMensagem);
								
								/*
								Rodapé
								*/
								objTrAvisoRodape = document.createElement('tr');
									objTdAvisoRodape= document.createElement('td');
										objTdAvisoRodape.className = 'tblRodape';
										objTrAvisoRodape.appendChild(objTdAvisoRodape);
									objTBodyAviso.appendChild(objTrAvisoRodape);
									
							objTableAviso.appendChild(objTBodyAviso);
						objTd.appendChild(objTableAviso);
						
					objTr.appendChild(objTd);
				objTBody.appendChild(objTr);
			objTable.appendChild(objTBody);
		objDiv.appendChild(objTable);	
		parent.document.body.appendChild(objDiv);
	return objDiv;
}
/*************FIM FUNCAO MSG******************************/

function abreJanelaAjuda(url)
{
	abreJanelaProgramaPadrao(url);
}

function setGridMessage(grid_name, msg){
	if(msg == '') msg = '&nbsp;';
	document.getElementById('gridMessage_' + grid_name).innerHTML = msg;
}

function abreJanelaProgramaPadrao(url){
	abreJanelaPrograma(url, '538', '785', '');
}

function abreJanelaPrograma(url, nHeight, nWidth, cAdicional, nome)
{
	if(nome==undefined)
		nome="";

	if(screen)
	{
		sHeight = screen.availHeight
		sWidth = screen.availWidth
		
		res = (screen.width) + 'x' + (screen.height);
		
		wHeight = nHeight    //new window height
		wWidth = nWidth     //new window width
		
		if(res == '800x600'){
			wLeft = 0;//left position
			wTop = 0; //top position
		}
		else if(res == '1024x768'){
			wLeft = ((sWidth - wWidth) / 2)//left position
			wTop = ((sHeight - wHeight) / 2) //top position
		}
		else{
			wLeft = ((sWidth - wWidth) / 2)//left position
			wTop = ((sHeight - wHeight) / 2) //top position
		}

		if(brwsr == "ie"){
			if(screen.height < 768)
			{
				wLeft = wLeft - 5;
				wTop = wTop - 25;
			}
		}
		else{
			if(screen.height < 768)
			{
				wLeft = wLeft - 3;
				wTop = wTop - 45;
			}
		}

		wndPrograma = window.open(url, nome,"left=" + wLeft + ",top=" + wTop + ",status=yes, width=" + wWidth + ",height=" + wHeight +  cAdicional);
		if(wndPrograma && res=='800x600') wndPrograma.moveTo(0,0);
		return wndPrograma;
	}
}

function DIV_Fechar_onMouseOver(){
	document.getElementById('DIV_Fechar').className = 'Link_Over';
}

function DIV_Fechar_onMouseOut(){
	document.getElementById('DIV_Fechar').className = 'Link_Out';
}

function trim(str)
{
   return str.replace(/^\s*|\s*$/g,"");
}

var _janelaModalAberta;

//bloqueando teclas indesejadas
var _editandoCampo = false;
/**
Esta linha faz com que todos os input's do aula deixem de aceitar backspace, foi comentada
pois nã há nenhum motivo aparente para isso funcionar desta forma, caso achem o motivo, me informar.
Por: Lucas Schirm
30/07/2008
*/
//document.onkeypress = _retiraTeclas;
function _retiraTeclas(keyStroke){
	var evento;
	if(navigator.appName == 'Microsoft Internet Explorer')
		evento = event;
	else
		evento = keyStroke;
	//aqui as teclas que devem ser bloqueadas em qualquer lugar do documento
	if(evento.altKey)
		return false;
	if(!_editandoCampo){
		//aqui as teclas que devem ser bloqueadas apenas quando nao estivermos dentro de inputs
		if(evento.keyCode==8)
			return false;
	}
}

document.onclick = function(){
	if(_janelaModalAberta){
		_janelaModalAberta.focus();
		return false;
	}
	if(parent._janelaModalAberta){
		parent._janelaModalAberta.focus();
		return false;
	}
	if(top._janelaModalAberta){
		top._janelaModalAberta.focus();
		return false;
	}

}
function abreJanelaCentro(url, nHeight, nWidth, cAdicional, modal){
	if(screen){
		sHeight = screen.height
		sWidth = screen.width
		wHeight = nHeight    //new window height
		wWidth = nWidth     //new window width
		wLeft = (sWidth - wWidth) / 2  //left position
		wTop = (sHeight - wHeight) / 2 //top position
		if(wndCentro){
			wndCentro.close();
			wndCentro = null;
		}
		wndCentro = window.open(url,"","left=" + wLeft + ",top=" + wTop + ",width=" + wWidth + ",height=" + wHeight +  cAdicional);
		if(modal)
			_janelaModalAberta = wndCentro;
		return wndCentro;
	}
}

function _root(){
	var janela = window;
	while(janela.parent != janela){
		if(janela.parent) janela = janela.parent;
	}
	return janela;
}

function _IfrmFormGrid(){
	return _root().frames['iFrmFormGrid'];
}

function _IfrmGrid(){
	return _IfrmFormGrid().frames['grid_dados'];
}

function mostraIfrmAuxiliar(){
	document.getElementById('iFrmAuxiliar').style.display = '';
	document.body.style.overflow = 'scroll';
}
function findPosX(obj){
	var curleft = 0;
	if (obj.offsetParent){
		while (obj.offsetParent){
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x){
		curleft += obj.x;
	}
	return curleft;
}

function findPosY(obj){
	var curtop = 0;
	if (obj.offsetParent){
		while (obj.offsetParent){
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function getClassByName(name){
	for(i=0;i<document.styleSheets.length;i++){
		try{
			for(j=0;j<document.styleSheets[i].cssRules.length;j++){
				if(document.styleSheets[i].cssRules[j].selectorText==name)
					return document.styleSheets[i].cssRules[j].style;
			}
		}
		catch(e){
			for(j=0;j<document.styleSheets[i].rules.length;j++){
				if(document.styleSheets[i].rules[j].selectorText==name)
					return document.styleSheets[i].rules[j].style;
			}
		}
	}
}