/**
 * Simula um redirecionamento de href por jscript
 **/
function href(url, target) {
	if (target == "")
		target = "_self";
		
	window.open(url, target);
	return false;
}

function validaEmail(email) {
	var tmp = email.split("@");
	if (tmp.length == 1)
		return false;
	tmp = tmp[1].split(".");
	if (tmp.length == 1)
		return false;
	return true;
}

/**
 * Deixa uma linha marcada como selecionada dependendo da situação do checkbox na linha
 **/
function checkbox(id) {
	var obj = $("#tr-"+id);
	if (!$("#cb-"+id).attr("checked"))
		obj.removeClass("row-selected");
	else
		obj.addClass("row-selected");	
}

function todosCheckboxEm(id, marca) {
	var objs = $("#"+id);
	var tmpId = "";
	objs = objs.find('input[type="checkbox"]');
	for (var i = 0; i<objs.length; i++) {
		$(objs[i]).attr("checked", marca);
		tmpId = $(objs[i]).attr("id");
		tmpId = tmpId.replace("cb-","");
		checkbox(tmpId);
	}
}

function marcarLinha(obj, valor) {
	$("INPUT[@value=" + valor + "][type='checkbox']").attr('checked', $(obj).is(':checked'));
}
/**
 * Armazena a class de cada linha no conteudo em um atributo chamado subclass
 **/
function setSubClass() {
	var objs = $("#conteudo");
	objs = objs.find('tr');
	for (var i = 0; i<objs.length; i++)
		$(objs[i]).attr("subclass", objs[i].className);
}

/**
 * Troca o status de um item em uma linha na tabela HTML, ele realiza uma conexão
 * com um arquivo externo para alterar a informação no banco de dados
 **/
function changeStatus(tabela, id, modulo_id, status, obj) {
	if (status == true) {
		obj.src = obj.src.replace("ativado", "desativado");		
		obj.alt = obj.alt.replace("Ativado", "Desativado");	
		obj.title = obj.title.replace("Ativado", "Desativado");	
		obj.onclick = function() {return changeStatus(tabela, id, modulo_id, false, this);}
	} else {
		obj.src = obj.src.replace("desativado", "ativado");
		obj.alt = obj.alt.replace("Desativado", "Ativado");	
		obj.title = obj.title.replace("Desativado", "Ativado");	
		obj.onclick = function() {return changeStatus(tabela, id, modulo_id, true, this);}
	}
	
	$.ajax({
	   type: "POST",
	   url: "ajax/trocaStatus.php",
	   data: "tabela="+tabela+"&id="+id+"&status="+status+"&modulo_id="+modulo_id,
	   success: function(){}
	});

	return false;
}

function removerItem(url) {
	if (confirm("Você realmente deseja remover este item?"))
		window.location = url;
	return false;
}

function multiAction(obj, form) {
	var b = true;
	if (obj.value == "remover") 
		b = confirm("Você realmente deseja remover os itens selecionados?");
		
	if (b)
		form.submit();
	else
		obj.selectedIndex = 0;
		
	return false;
}

function clearInput(obj) {
  if (obj.defaultValue==obj.value) obj.value = "";
  return false;
}

function returnInput(obj) {
  if (obj.value=="") obj.value = obj.defaultValue;
  return false;
}

function setCampoSqlItem(tabela, campo, valor, id, modulo_id) {
	$.ajax({
	   type: "POST",
	   url: "ajax/set_sql_field.php",
	   data: "tabela="+tabela+"&campo="+campo+"&valor="+valor+"&id="+id+"&modulo_id="+modulo_id,
	   success: function(){}
	});	
}

function removeArquivo(arquivo) {
	$.ajax({
	   type: "POST",
	   url: "ajax/removeArquivo.php",
	   data: "arquivo="+arquivo,
	   success: function(){}
	});	
}

function carregaCidades(estado_id, pais_id, campo, selecionada) {
	$("#"+campo).attr("disabled", true);
	$("#"+campo).removeOption(/./);
	if (estado_id == -1) {
		$("#"+campo).hide("500");		
		$("#"+campo+"_texto").show("500");		
	} else {
		$("#"+campo+"_texto").hide("500");	
		$("#"+campo).show("500");	
		if (estado_id == 0)
			$("#"+campo).addOption("", "Selecione um estado");
		else {
			$("#"+campo).removeOption(0);
			$("#"+campo).addOption("", "Carregando...");
			$.ajax( {
			   type: "POST",
			   url: "ajax/carregaCidades.php",
			   data: "estado_id="+estado_id+"&pais_id="+pais_id,
			   dataType: "json",
			   success: function(json) {
			   		$("#"+campo).removeOption(0);
		   			$.each(json, function(i, val) {			   			
		   				$("#"+campo).addOption(i, val);
		   			});
		   			if (selecionada == 0)
		   				$("#"+campo).val(0);
	   				else
	   					$("#"+campo).selectOptions(selecionada);
	   				$("#"+campo).attr("disabled", false);
			   }
			});		
		}
			/*$("#"+campo).ajaxAddOption("ajax/carregaCidades.php?estado_id="+estado_id+"&pais_id="+pais_id).attr("disabled", false);*/
	}	
}

function removerImagem(tabela, campo, id, modulo_id, arquivo, obj) {
	if (confirm("Você tem certeza que deseja remover este item?")) {
		setCampoSqlItem(tabela, campo, "", id, modulo_id);
		removeArquivo(arquivo);
		
		$("#"+campo+"-img").remove();
		$(obj).remove();

		$("#"+campo+"-msg").fadeIn(1000).fadeTo(1000, 1).fadeOut(1000);
	}
}

function removerImagem2(campo, arquivo, obj) {
	if (confirm("Você tem certeza que deseja remover este item?")) {
		removeArquivo(arquivo);
		
		$("#"+campo+"-img").remove();
		$(obj).remove();

		$("#"+campo+"-msg").fadeIn(1000).fadeTo(1000, 1).fadeOut(1000);
	}
}

function checaFormArray(j, campos) {
	if (j > 0) {
		var tmp = campos[0];
		for(var a=1; a<j-1; a++)
			tmp += ", "+campos[a];
		if (j > 1)
			tmp += " e "+campos[j-1];
		
		var s = j > 1 ? "s" : "";
		alert("Preencha o"+s+" campo"+s+" obrigatório"+s+": \n"+tmp+".");
		return false;
	}
	return true;
}
