// JavaScript Document
var moduloped;
var pagina;
var moduloped = 'modulos/painel/pedidos/pedido/';
msgIncluidoSucesso 	= "Dados salvos com sucesso.\n";
msgIncluidoErro 	= "Ocorreu um erro durante a inclusão destas informações.\nPor favor tente novamente mais tarde.";
msgEditarErro = "Ocorreu um erro na leitura desta Informação.\nPor favor tente novamente mais tarde.";
msgStatusErro = "Ocorreu um erro durante a mudança deste status.\nPor favor tente novamente mais tarde."
msgDeleteErro = "Ocorreu um erro durante a exclusão destes dados.\nPor favor tente novamente mais tarde."

function salvarPed()
{
	var id			= document.getElementById('id_ped');
	var cli			= document.getElementById('lista_cli');
	var fpg			= document.getElementById('lista_fpg');
	var val			= document.getElementById('valor');

    if (cli.value == '') { 
	   alert('Por favor Selecione um cliente'); 
	   cli.focus(); return false; 
	}
    if (fpg.value == '') { 
	   alert('Por favor Selecione uma Forma de Pagamento'); 
	   fpg.focus(); return false; 
	}
    if (val.value == '') { 
	   alert('Por favor preencha o campo Valor do Pedido'); 
	   val.focus(); return false; 
	}
	else {
		xhSend(moduloped+'bd.salva.ped.php','frmPed',salvarPedReturn)
	}
}
function salvarPedReturn()
{
	if (xhReq.readyState == 4)
	{
		retorno = xhReq.responseXML;
		if (retorno != null)
		{
			obj = retorno.getElementsByTagName('retorno');
			if (obj[0].getElementsByTagName("mensagem")[0].firstChild.nodeValue == '1')
			{
				alert(msgIncluidoSucesso);
				zeraCamposPed();
				// insere a variavel temporario (id temporario no XML) no campo hidden ID.
				document.getElementById('id_ped').value = obj[0].getElementsByTagName("temporario")[0].firstChild.nodeValue;
			}
			else if (obj[0].getElementsByTagName("mensagem")[0].firstChild.nodeValue == '0')
			{
				alert(msgIncluidoRepetido);	
			}
			else { alert(msgIncluidoErro); }
		}
		else { alert(msgIncluidoErro); }
	}
}

function inserirItem()
{
	xhSend(moduloped+'bd.salva.item.php','frmPed',salvarItemReturn)
}
function salvarItemReturn()
{
	if (xhReq.readyState == 4)
	{
		retorno = xhReq.responseXML;
		if (retorno != null)
		{
			obj = retorno.getElementsByTagName('retorno');
			if (obj[0].getElementsByTagName("mensagem")[0].firstChild.nodeValue == '1')
			{
				var valTotal = obj[0].getElementsByTagName("valor")[0].firstChild.nodeValue
				alert(msgIncluidoSucesso);
				document.getElementById('valor').value = valTotal;
				zeraCamposItemPed();
			}
			else if (obj[0].getElementsByTagName("mensagem")[0].firstChild.nodeValue == '0')
			{
				alert(msgIncluidoRepetido);	
			}
			else { alert(msgIncluidoErro); }
		}
		else { alert(msgIncluidoErro); }
	}
}

function carregarCarac(id) 
{
	document.getElementById('car_lista').style.display = '';
	document.getElementById('bts').style.display 	   = '';
	include(moduloped+'lista_carac.php','id='+id,'car_lista');
}

function editarFor(id) 
{
	zeraCamposFor();
	/* 	Vai até o arquivo e retorna um XML com os dados do registro
		Passado via POST o id do registro */
	executar(moduloped+'bd.get.php','id='+id,editarForReturn);
}
function editarForReturn()
{
	if (xhReq.readyState == 4)
	{
		resposta = xhReq.responseXML;
		if (resposta)
		{
			obj = resposta.getElementsByTagName('dados');
			if (obj.length >= '1')
			{
				/* Variáveis do Formulário */
				var id			= document.getElementById('id_for');
				var desc		= document.getElementById('desc_pg');
				var ativo		= document.getElementById('ativo_pg');

					/* Variáveis do XML */
					
				var Xid			= obj[0].getElementsByTagName('id')[0].firstChild;
				var Xdesc		= obj[0].getElementsByTagName('descricao')[0].firstChild;
				var Xativo		= obj[0].getElementsByTagName('ativo')[0].firstChild;
				
				id.value		= Xid.nodeValue;
				desc.value 		= (Xdesc		!= null?unescape(Xdesc.nodeValue):'');
				ativo.checked	= (Xativo.nodeValue == '1'?true:false);
				document.getElementById('botao_fpg').value = 'Alterar';

			}
			else { alert(msgEditarErro); }
		}
		else { alert(msgEditarErro); }
	}
}

function zeraCamposItemPed()
{
	var qtd			= document.getElementById('quantidade');
	var cont_res	= document.getElementById('cont_res');
	var id          = document.getElementById('id_ped').value; 
    qtd.value 		= '';
	for(i=1;i <= cont_res;i++) {
	   document.getElementById('lista_cont'+i).value = '';	
	}
	document.getElementById('lista_item').style.display = '';
	include(moduloped+'lista_item.php','id='+id,'lista_item');
}

function zeraCamposPed()
{
	document.getElementById('car_lista').style.display = 'none';
	document.getElementById('lista_item').style.display = 'none';
	document.getElementById('frmPed').reset();
}

function cancelarPed()
{
	if(confirm('Deseja realmente cancelar este Pedido?')) {
		document.getElementById('car_lista').style.display = 'none';
		document.getElementById('bts').style.display       = 'none';
		document.getElementById('lista_item').style.display = 'none';
		document.getElementById('frmPed').reset();
		var id = document.getElementById('id_ped').value;
        executar(moduloped+'bd.delete.ped.php','id='+id,deletaPedReturn);	
	}
}

function alteraStatusFor(id)
{
	executar(moduloped+'bd.status.php','id='+id,alteraStatusForRe);
}
function alteraStatusForRe()
{
	if (xhReq.readyState == 4)
	{
		resposta = xhReq.responseXML;
		if (resposta)
		{
			obj = resposta.getElementsByTagName('retorno');
			// pega variaveis do XML
			var Xmsg = obj[0].getElementsByTagName('mensagem')[0].firstChild;

			var Xid = obj[0].getElementsByTagName('id')[0].firstChild;
			var Xstatus = obj[0].getElementsByTagName('novoStatus')[0].firstChild;
			
			// se o retorno for 1 quer dizer que foi Ok
			if (Xmsg.nodeValue == '1') {
				// se o status for 0, quer dizer que passou a ser inativo
				if (Xstatus.nodeValue == '0') { 
				   imagem = 'inativo.gif'; 
				}
				else { 
				   imagem = 'ativo.gif'; 
				}
				document.getElementById('imgFor'+Xid.nodeValue).src = '../imagens/icones/'+imagem;
			}
			else
			{
				alert(msgStatusErro);	
			}
		}
		else
		{
			alert(msgStatusErro);	
		}
	}
}

function deletaPedReturn()
{
	if (xhReq.readyState == 4)
	{
		resposta = xhReq.responseXML;
		if (resposta)
		{
			obj 	= resposta.getElementsByTagName('retorno');
			Xmsg 	= obj[0].getElementsByTagName('mensagem')[0].firstChild;
			if (Xmsg.nodeValue == '1')
			{
				alert("Pedido excluido com sucesso");
				novoPed();
			}
			else
			{
				alert(msgDeleteErro);
			}
		}
		else
		{
			alert(msgDeleteErro);
		}
	}
}

function novoPed()
{
	executar(moduloped+'bd.novo.ped.php','',novoPedRe);
}
function novoPedRe()
{
	if (xhReq.readyState == 4)
	{

		resposta = xhReq.responseXML;
		if (resposta)
		{
			obj = resposta.getElementsByTagName('retorno');
			// variaveis do XML
			Xmsg 	= obj[0].getElementsByTagName('mensagem')[0].firstChild;
			Xid		= obj[0].getElementsByTagName('id')[0].firstChild;
			if (Xmsg.nodeValue == '1')
			{
				document.getElementById('id_ped').value = Xid.nodeValue;
			}
			else { alert(msgIncluidoErro); }
		}
		else { alert(msgIncluidoErro); }
	}
}

function showCar(cont) {
   var linha = document.getElementById('lcar'+cont);	
   if(linha.style.display == 'none') {
	   linha.style.display = '';   
   }
   else {
	   linha.style.display = 'none';   
   }
}

function excluirItem(id,cod) {
   var valI = document.getElementById('valor_item').value;	
   var valP = document.getElementById('valor').value;	
   if(confirm('Deseja realmente excluir esse Item?')) {	
      executar(moduloped+'bd.delete.item.php','id='+id+'&codigo='+cod+'&valor_item='+valI+'&valor_ped='+valP,excluiItemRe);	
   }
}

function excluiItemRe() {
	if (xhReq.readyState == 4)
	{
		resposta = xhReq.responseXML;
		if (resposta)
		{
			obj 	= resposta.getElementsByTagName('retorno');
			Xmsg 	= obj[0].getElementsByTagName('mensagem')[0].firstChild;
			if (Xmsg.nodeValue == '1')
			{
				alert("Item excluido com sucesso");
				document.getElementById('valor').value = obj[0].getElementsByTagName('valor')[0].firstChild.nodeValue;
				var id   = document.getElementById('id_ped').value;
                include(moduloped+'lista_item.php','id='+id,'lista_item');
			}
			else
			{
				alert(msgDeleteErro);
			}
		}
		else
		{
			alert(msgDeleteErro);
		}
	}
}
