
var _current_menu = null, _submenu = null, _smenu = null;

function _getMenuTopo(act){
	htcLoadClass = 'contCinza';
	htcGet('/lib/inc_geral.asp',_gel('conteudoMenu'),true,'acao=' + act,'_gel(\'conteudoMenu\').innerHTML = result','default');
}

function _getMenuSub(a,b,c){
	if(c){
		_current_menu.className = 'menu_over';	
		if(_submenu == null){
			_submenu 		= document.createElement('DIV');
			_submenu.className	= 'divsubmenu';
			_submenu.innerHTML	= c;
			_submenu.style.top 	= moveYbySlicePos(19,_current_menu)+'px';
			_submenu.style.left = moveXbySlicePos(0,_current_menu)+'px';
			document.getElementsByTagName('body')[0].appendChild(_submenu);
		}else{
			_submenu.style.top 	= moveYbySlicePos(19,_current_menu)+'px';
			_submenu.style.left = moveXbySlicePos(0,_current_menu)+'px';
			_submenu.innerHTML	= c;
			_submenu.style.display = 'block';
		}
		_smenu = setTimeout('_submenu.style.display = \'none\'',10000);
	}else{	
		if(_submenu != null){
			_submenu.style.display = 'none';
			_current_menu.className = 'menu';
			_current_menu.onmouseout = function(){
				this.className = 'menu_over';
			}
		}
		_current_menu = a;
		_current_menu.onmouseout = null;
		htcGet('/lib/inc_geral.asp',null,true,'acao=2&ix='+b,'_getMenuSub(0,0,result)','default');
	}
}

function setArea(a,b){
	location.href = (b)?'/adm/?ar='+a:'/projetos/?ar='+a;
}

/*==================================================================================================*/
function verifyKey(obj, evt, type){

	this.key = evt.keyCode;
	
	this.isAllowedKey = isAllowedKey;
	this.isNumericKey = isNumericKey;
	this.isCharKey = isCharKey;
	this.isAlphaKey = isAlphaKey;
	this.isSelected = isSelected;
	
	function isAllowedKey(key){
		var ok = false;
		var validKeys = new Array(8, 9, 13, 35, 36, 37, 39, 46);
		for(var i=0; i<validKeys.length;i++){
			if(key == validKeys[i]){
				ok = true;
				break;
			}
		}
		return ok
	}
	
	function isAlphaKey(key){
		return (key >= 65 && key <= 90 || key >= 48 && key <= 57)
	}
	
	function isNumericKey(key){
		return ((key >= 48 && key <= 57) || (key >= 96 && key <= 105))
	}
	
	function isCharKey(key){
		return (key >= 65 && key <= 90);
	}
	
	function isSelected(){
		var txt = '';
		if (window.getSelection){
	        txt = window.getSelection();
        }else{
			if(document.getSelection){
		        txt = document.getSelection();
            }else{
				if(document.selection){
		        	txt = document.selection.createRange().text;
            	}else{
					txt = '';
				}
			}
		}
		return (txt.length > 0);
	}
	
	if(!isAllowedKey(key)){
		if(window.event){ //IE
			evt.returnValue = false;
		}else{ // Firefox
			evt.preventDefault();
		}
	}
	
	switch(type){
		case 'number':
			if(isNumericKey(key)){
				obj.value += String.fromCharCode(((key <= 57)?key:(key-48)));
			}
			break;
		case 'upper':
			if(isCharKey(key)){
				obj.value += String.fromCharCode(key).toUpperCase();
			}
			break;
		case 'lower':
			if(isCharKey(key)){
				obj.value += String.fromCharCode(key).toLowerCase();
			}
			break;
		case 'alpha':
			if(isAlphaKey(key)){
				obj.value += String.fromCharCode(key);
			}
			break;
		default:
			break;
	}
}

function switchDiv(toShow){
	var tables = new Array('Dbg','Frm','View');
	var posfix = toShow.substring(toShow.length, toShow.length -3);
	var name = toShow.substring(3, toShow.indexOf(posfix));
	for(var i=0; i<tables.length; i++){
		if(tables[i] == name){
			Obj('tbl' + tables[i] + posfix).style.display = '';
		}else{
			Obj('tbl' + tables[i] + posfix).style.display = 'none';
		}
	}
}

function cBool(val){
	return ((val.toLowerCase() == 'true')?1:(val.toLowerCase() == 'false')?0:val);
}

function getForm(form){
	var r = '';
	var e = '';
	form = _gel(((form)?form:this.form));
	for(var i=0;i<form.length;i++){
		var element = form.elements[i];
		if(r.indexOf(element.name + '=') == -1){
			r += e + element.name + '=' + escape(getFieldValue(element));
			e = '&';
		}
	}
	return r;
}
	
function getFieldValue(field){
	if(field.type == 'radio'){
		field = _geln(field.name);
		if(field.length){
			for(var i=0; i<field.length; i++){
				if(field[i].checked){
					return field[i].value;
				}
			}
		}else{
			if(field.checked){
				return field.value;	
			}
		}
	}else{
		if(field.type == 'checkbox'){
			return ((field.checked)?field.value:0);
		}else{
			return field.value;
		}
	}
}

function loadForm(frm, fld, hand){
	if(fld[0].erro){
		alert(fld[0].men);
		return;
	}
	fld = fld[1];
	for(key in fld){
		var frmFld = eval('Obj(\'' + frm + '\').elements[\'' + key + '\']');
		if(frmFld){
			if(frmFld.type == 'checkbox'){
				if(String(frmFld.value).toLowerCase() == fld[key].toLowerCase()){
					frmFld.checked = true;
				}
			}else{
				if(frmFld.length){
					if(frmFld[0].type == 'radio'){
						for(var j=0;j<frmFld.length;j++){
							if(frmFld[j].value.replace('True','1').replace('False','0').toLowerCase() == fld[key].replace('True','1').replace('False','0').toLowerCase() && frmFld[j].type == 'radio'){
								frmFld[j].checked = true;
							}
						}
					}else{
						if(frmFld.type == 'select-one'){
							frmFld.value = fld[key].replace('True','1').replace('False','0');
						}
					}
				}else{
					if(frmFld.type == 'radio'){
						if(frmFld.value.replace('True','1').replace('False','0').toLowerCase() == fld[key].replace('True','1').replace('False','0').toLowerCase()){
							frmFld.checked = true;
						}
					}else{
						frmFld.value = unescape(fld[key]).replace('True', '1').replace('False', '0');
					}
				}
			}
		}
	}
	if(hand){
		eval(hand);
	}
}

function loadView(tipo, fld){
	if(fld[0].erro){
		alert(fld[0].men);
		return;
	}
	fld = fld[1];
	for(key in fld){
		var td = Obj('td_'+tipo+'_'+key);
		if(td){
			td.innerHTML = unescape(String(fld[key]).replace('True','Sim').replace('False','Não'));
		}
	}
}

function reload(dbg){
	switch(dbg){
		case 'dbgCont':
			dbgSetSearchValue('nome','', dbg);
			dbgSetSearchValue('cargo','', dbg);
			dbgSetSearchValue('email','', dbg);
			dbgSetSearchValue('area','', dbg);
			Obj('tit_cont').innerHTML = 'Contatos';
			break;
		case 'dbgEnd':
			dbgSetSearchValue('tudo','1', dbg);
			dbgSetSearchValue('logradouro','', dbg);
			dbgSetSearchValue('estado','', dbg);
			dbgSetSearchValue('cep','', dbg);
			dbgSetSearchValue('cidade','', dbg);
			Obj('tit_end').innerHTML = 'Endereços';
			break;
		case 'dbgCli':
			dbgSetSearchValue('razao','', dbg);
			dbgSetSearchValue('nome_fantasia','', dbg);
			dbgSetSearchValue('cnpj','', dbg);
			dbgSetSearchValue('website','', dbg);
			break;
		case 'dbgPro':
			dbgSetSearchValue('produto','', dbg);
			dbgSetSearchValue('preco','', dbg);
			dbgSetSearchValue('categoria','', dbg);
			dbgSetSearchValue('ativo','1', dbg);
			break;
		case 'dbgMot':
			dbgSetSearchValue('tipo','', dbg);
		case 'dbgCat':
			dbgSetSearchValue('tipo','', dbg);
		case 'dbgCcr':
			dbgSetSearchValue('razao','', dbg);
			dbgSetSearchValue('nome_fantasia','', dbg);
			dbgSetSearchValue('cidade','', dbg);
			dbgSetSearchValue('estado','', dbg);
			break;
		case 'dbgPrj':
		case 'dbgPrjConc':
		case 'dbgPrjRep':
			dbgSetSearchValue('nome_projeto','', dbg);
			dbgSetSearchValue('informacoes','', dbg);
			dbgSetSearchValue('cliente','', dbg);
			dbgSetSearchValue('representante','', dbg);
			dbgSetSearchValue('id_status',0, dbg);
			break;
		default:
			break;
	}
	dbgSetSearchValue('idc','', dbg);
	dbgCallBack('','',dbg);
}

function setMask(campo, tipo){
	var format = null;
	var type = '';
	switch(tipo){
		case 'data':
			format = '##/##/####';
			break;
		case 'cnpj':
			format = '###.###.###/####-##';
			break;
		case 'fone':
			format = '##-####-####';
			break;
		case 'cep':
			format = '#####-###';
			break;
		case 'preco':
			format = '#########';
			type = 'currency'
			break;
	}
	if(format){
		var msk = new Mask(format,type);
		msk.attach(campo);
	}
}

function setMaskEnderecoNumero(e){
	var key, campo = null;
	var ie = (typeof document.all != 'undefined');
	if(ie){
		key = window.event.keyCode
		window.event.returnValue = false;
		campo = e;//.srcElement;
	}else{
		key = e.which;
		e.preventDefault();	
		campo = e.target;
	}

	if(isNaN(String.fromCharCode(key))){
		var part = campo.value.substr(0, campo.value.length).toLowerCase() + String.fromCharCode(key).toLowerCase();
		if(part == 's/n'.substr(0, campo.value.length +1) || part == 'sn'.substr(0, campo.value.length +1)){
			campo.onkeydown = new Function('');
			campo.onkeyup = new Function('');
			campo.onblur = new Function('');
			campo.value += String.fromCharCode(key);
		}
	}else{
		var msk = new Mask('########','');
		msk.attach(campo);
		campo.value += String.fromCharCode(key);
	}
}

function setMaskIE(e){
	var key, campo = null;
	var ie = (typeof document.all != 'undefined');
	if(ie){
		key = window.event.keyCode
		window.event.returnValue = false;
		campo = e.srcElement;
	}else{
		key = e.which;
		e.preventDefault();	
		campo = e.target;
	}
	
	if(isNaN(String.fromCharCode(key))){
		var part = campo.value.substr(0, campo.value.length).toLowerCase() + String.fromCharCode(key).toLowerCase()
		if(part == 'isento'.substr(0, campo.value.length +1) || part == 'isenta'.substr(0, campo.value.length +1)){
			campo.onkeydown = new Function('');
			campo.onkeyup = new Function('');
			campo.onblur = new Function('');
			campo.value += String.fromCharCode(key);
		}
	}else{
		var msk = new Mask('###.###.###.###','');
		msk.attach(campo);
		campo.value += String.fromCharCode(key);
	}
}

function setLimit(campo, limite){
	return (campo.value.length < limite);
}
