$.postJSON = function(url, data, callback) {
	$.post(url, data, callback, "json");
};

function carregaCombo(idSelect, url, serializaForm, textName, valueName, textDefault, valueDefault, selectValueDefault){
	clearCombo(idSelect,textDefault,valueDefault);
	insereCarregando(idSelect);

	if(serializaForm)
		url += "?" + $('form').serialize();

	textName = "item." + textName;
	valueName = "item." + valueName;
	
	$.getJSON(url, 
			function(data){
				$.each(data, function(i,item){
					$("#" + idSelect).addOption(eval(valueName), eval(textName));
				});
				//selecionando a primeira opção
				if (selectValueDefault != undefined)
					$("#" + idSelect).selectOptions(selectValueDefault);
				else
					$("#" + idSelect).selectOptions('-1');
				removeCarregando(idSelect);
	        });	
	
}

function clearCombo(idSelect, textDefault, valueDefault){
	$("#" + idSelect).removeOption(/./);
	
	if (textDefault == undefined || textDefault == "")
		textDefault = "--- Selecione ---";
	
	if (valueDefault == undefined || valueDefault == "")
		valueDefault = "-1";
		
	$("#" + idSelect).addOption(valueDefault, textDefault);
}

function insereCarregando(idSelect){
	$("#" + idSelect).css( "display", "none" );
	$("#" + idSelect).after('<span id="' + idSelect  + '_divCarregando"><img src="imagens/loading.gif" height="22px" alt="Carregando" />Carregando...</span>');
}

function removeCarregando(idSelect){
	$('#' + idSelect  + '_divCarregando').remove();
	$("#" + idSelect).css( "display", "" );
}

function buscaConvenio(nome, tipoConvenio, url, serializaForm, textName, valueName, textDefault, valueDefault) {
	
}

function validaOnFocus(campo, valorInicial)
{
	if(jQuery.trim(campo.value) == valorInicial)
		campo.value = '';
	else
		campo.select();
}

function validaOnBlur(campo, valorDefault)
{
	if(jQuery.trim(campo.value) == '')
		campo.value = valorDefault;
}

function saltaCampo(fields, initialValue) {
	//if (fields.value == initialValue || jQuery.trim(fields.value)){
		if (fields.value.length == fields.maxLength) {
			for (var i = 0; i < fields.form.length; i++) {
				if (fields.form[i] == fields && fields.form[(i + 1)] && fields.form[(i + 1)].type != "hidden") {
					fields.form[(i + 1)].focus();
					break;
				}
			}
		}
	//}
}

function toolTip(idCampo, mensagem, marginLeft){
	var style = '';
	if (marginLeft != undefined)
		style= 'style="margin-left: ' + marginLeft + 'px;"';
	$("#" + idCampo.id).after('<p id="span_' + idCampo.id +  '" class="erro" ' + style + '><strong>' + mensagem + '</strong></p>');
}

function removeToolTip(idCampo){
	$("#span_" + idCampo.id).remove();
}

function openPopup(id){
	$('#' + id).show("fast");
}

function closePopup(id){
	$('#' + id).hide("fast");
}

// funcao para abrir e fechar a resposta da pergunta
function fncShowHideResp(P_idResp) {
  var obj = document.getElementById(P_idResp);
  obj.className = (obj.className == 'resposta ativa') ? 'resposta' : 'resposta ativa';
}


// functions para mudar de campo
var MudarCampo = true;
document.onkeypress = HabilitarTABAutom;
function HabilitarTABAutom(evt)
{
	var codTecla;
 	var e = evt ? evt : window.event; 
	if(e.keyCode)  // IE
	{
		codTecla = e.keyCode;
	}
	else // Netscape/Firefox/Opera
	{
		codTecla = e.which;
	}
	if ( (codTecla < 48) || (codTecla >  255) )
		MudarCampo = false;
	else
		MudarCampo = true;
}

function tabAutom(quem, e) 
{
	if ( ( quem.value.length == quem.maxLength ) && ( MudarCampo ) ){
		var i=0,j=0, indice=-1;
		// Localiza em qual form está o input no documento
		for (i=0; i<document.forms.length; i++) {
			for (j=0; j<document.forms[i].elements.length; j++) {
				if (document.forms[i].elements[j].name == quem.name) {
					indice=i;
					break;
				}
			}
			if (indice != -1)
		         break;
		}

		// Localiza o input no documento e verifica se existe outro input para receber o foco
		for (i=0; i<document.forms[indice].elements.length; i++) 
		{
			if (document.forms[indice].elements[i].name == quem.name) 
			{
				while ( ((i+1) < document.forms[indice].elements.length) && 
				        ( (document.forms[indice].elements[(i+1)].type == "hidden") || 
					  (document.forms[indice].elements[(i+1)].name == "Lim") ) )
				{
							i++;
				}
				if ( (i+1) < document.forms[indice].elements.length )
				{
					document.forms[indice].elements[(i+1)].focus();
					MudarCampo = false;
				}
				break;
			} 
		}
	} 
}
