var limite = 6;//limite de bolas selecionadas
var clicks = 0;
var numerosSelecionados = new Array();
var IE = false;
var FF = false;
var JanelaPopup = null;
var retorno_funcao = false;

if(navigator.appName == 'Microsoft Internet Explorer')
{
	IE = true;	
	
}else if(navigator.appName == 'Netscape'){
	
	FF = true;
}

//-----------------
//Funções Genéricas
//-----------------

function trim(str)
{
  return str.replace(/^\s+|\s+$/g,"");
}

function URLDecode(valor)
{
   var HEXCHARS = "0123456789ABCDEFabcdef"; 
   var encoded = valor;
   var plaintext = "";
   var i = 0;
   while (i < encoded.length) {
       var ch = encoded.charAt(i);
	   if (ch == "+") {
	       plaintext += " ";
		   i++;
	   } else if (ch == "%") {
			if (i < (encoded.length-2) 
					&& HEXCHARS.indexOf(encoded.charAt(i+1)) != -1 
					&& HEXCHARS.indexOf(encoded.charAt(i+2)) != -1 ) {
				plaintext += unescape( encoded.substr(i,3) );
				i += 3;
			} else {
				alert( 'Bad escape combination near ...' + encoded.substr(i) );
				plaintext += "%[ERROR]";
				i++;
			}
		} else {
		   plaintext += ch;
		   i++;
		}
	}

   return plaintext;
}

function desabilitarCombos(){
	
	combos = document.getElementsByTagName('SELECT');
	
	for(i=0;i<combos.length;i++){
		
		combos[i].style.display = 'none';
	}
}

function habilitarCombos(){
	
	combos = document.getElementsByTagName('SELECT');
	
	for(i=0;i<combos.length;i++){
		
		combos[i].style.display = '';
	}
}

function removerNumero(numero)
{
	var novoArray = new Array();
	for(i=0; i<numerosSelecionados.length; i++)
	{
		if(numero != numerosSelecionados[i])
		{
			novoArray.push(numerosSelecionados[i]);
		}
	}
	numerosSelecionados = novoArray;
}

function marcaBola(identificador)
{
	fecharPopup();
	if(limite != clicks || identificador.className=="tdBolaVermelha")
	{
			if(identificador.className == "tdBolaAzul"){
				
				 clicks++;
				 numerosSelecionados.push(identificador.id);
				 identificador.className = "tdBolaVermelha";
				 
			}else{
				
				 clicks--;
				 removerNumero(identificador.id);
				 identificador.className = "tdBolaAzul";
				 
			}
			document.getElementById('clicks').innerHTML = '<span class="tx-preto">Quantidade de dezenas selecionadas: <strong>'+clicks+'</strong></span>'; 
	}else{
			mensagemPopup('Limite de bolas esgotado!<br> Limite permitido: 6', true, 4);
	}	
}

function organizarTela(metodo)
{
	resultado = document.getElementById('blocoResultado');
	carrinho  = document.getElementById('blocoCarrinho');
	numeros   = document.getElementById('blocoNumeros');
	
	if(metodo == 'pesquisa')
	{
			resultado.className = "ativo";
			carrinho.className = "ativo";
			numeros.className = "desativado";
	}else{
			resultado.className = "desativado";
			carrinho.className = "desativado";
			numeros.className = "ativo";
	}
}

function processarResposta(string) {
    
    var _redirecionar;
    var _limpar;
    var _desabilitar;
    var _ocultarbotoes;
    var _advertencias;
    var _erros;
    var _retorno;
    
    _request = string;
    
    array_request = _request.split('&');
    
    for(i=0;i<array_request.length;i++) {
        
        string_temp = array_request[i];
        array_temp  = string_temp.split('=');
        
        switch(array_temp[0]) {
            
            case '_redirecionar':
                                 _redirecionar  = array_temp[1];
                                 break;
            case '_limpar':
                                 _limpar        = array_temp[1];
                                 break;                                        
            case '_desabilitar':
                                 _desabilitar   = array_temp[1];
                                 break;                                        
            case '_ocultarbotoes':
                                 _ocultarbotoes = array_temp[1];
                                 break;                                        
            case '_advertencias':
                                 _advertencias  = array_temp[1];
                                 break;                                        
            case '_erros':
                                 _erros         = array_temp[1];
                                 break;                                        
        }
    }

    //Tratamento de Exibição de Mensagens
    
    if(_advertencias!='')
    {
        arr_temp = _advertencias.split('|');
        
        for(i=0;i<arr_temp.length;i++) {
            
            _advertencias = arr_temp[i] + '<br/>';
        }
        
        _advertencias = _advertencias;
    }
    
    if(_erros!='')
    {
    	_erros_mensagens = '';
    		
        arr_temp = _erros.split('|');
        
        _erros = '';
        for (i=0; i < arr_temp.length; i++) {
        	
        	string = arr_temp[i];
        	
        	arr_temp2 = string.split('@');
        	
        	if(arr_temp2[1] != '#'){

        			_erros_mensagens += '<a href="javascript:document.getElementById(\''+ arr_temp2[1] +'\').focus()" onmouseover="window.status=\'\';return true" onclick="window.status=\'\';return true" class="premio">'+ arr_temp2[0] + '</a></font><br/>@' + arr_temp2[1] + '|';
        	}else{
        			_erros_mensagens += '<a href="#" onmouseover="window.status=\'\';return true" onclick="window.status=\'\';return true" class="premio">'+ arr_temp2[0] + '</a></font><br/>@' + arr_temp2[1] + '|';
        	}
            
        }
        
        _erros = _erros_mensagens.substr(0,_erros_mensagens.length-1);
    }
    
    _retorno = new Array(_advertencias,_erros);
    
    return _retorno;
}

//----------------------------
//Funções referentes a cartela
//----------------------------

function recuperarCartelaIE(id_cartela_eliminada)
{
	pars = 'id_cartela_eliminada=' + id_cartela_eliminada;
	
	objAjax = new Ajax.Request(
			www_url + 'compra/recuperarCartela.php', 
			{
				method:    'post', 
				parameters: pars, 
				onSuccess:  function(request){

								div = document.getElementById('div_aux');
								if(div==null)
								{
									div = document.createElement('DIV');
									div.setAttribute('id','div_aux');
									div.style.display = 'none';
									document.body.appendChild(div);
								}
								
								resposta 		    = request.responseText;
								cartela 		    = resposta.split('@');
								id_cartela		    = trim(cartela[0])	;
								cartelas_visiveis   = document.getElementById('rolante').innerHTML;
								cartelas 		    = cartelas_visiveis.split('</TBODY></TABLE>');
								div.innerHTML       = '<TABLE id="'+id_cartela+'" class="cartela" align="left" border="0" cellspacing="0" cellpadding="0"><TBODY>' +cartela[1] +'</TBODY></TABLE>';
								cartela_recuperada  = document.getElementById(id_cartela).cloneNode(true);
								div.innerHTML 		= '';
								ultimoElemento 	    = document.getElementById('tab1000');
								document.getElementById('rolante').insertBefore(cartela_recuperada, ultimoElemento);
								
								new Draggable(id_cartela, {revert:true} )
								
								validarBotoes();
							},
				onFailure:  function(){}
			});
}	

function recuperarCartelaFF(id_cartela_eliminada)
{
	pars = 'id_cartela_eliminada=' + id_cartela_eliminada;
	
	objAjax = new Ajax.Request(
			www_url + 'compra/recuperarCartela.php', 
			{
				method:    'post', 
				parameters: pars, 
				onSuccess:  function(request){
					
								divRolante 		   = document.getElementById('rolante');
								resposta 		   = request.responseText;
								cartela 		   = resposta.split('@');
								tabela  		   = document.createElement('TABLE');
								tabela.id 		   = trim(cartela[0]);
								tabela.className   = 'cartela';
								tabela.align       = 'left';
								tabela.border	   = "0";
								tabela.setAttribute('cellpadding', '0');
        						tabela.setAttribute('cellspacing', '0');
								tabela.innerHTML   = cartela[1];
								ultimoElemento 	   = document.getElementById('tab1000');
								divRolante.insertBefore(tabela,ultimoElemento);
								
								new Draggable(tabela.id, {revert:true} ); 
								
								validarBotoes();
							},
				onFailure:  function(){}
			});
}

function serializeForm()
{
	retorno = '';

	form = document.forms[1];

	for(i=0;i<form.length;i++)
	{
		if(retorno == '')
		{
				retorno = retorno +     form.elements[i].name + '=' + form.elements[i].value;
		}else{
				retorno = retorno +'&'+ form.elements[i].name + '=' + form.elements[i].value;
		}
	}
	
	return retorno;
}

function serializeFormulario(form, valorEmBranco)
{
	retorno = '';
	//alert(valorEmBranco);
	//form = document.forms[1];

	for(i=0;i<form.length;i++)
	{
		valor = form.elements[i].value;
		if((trim(valor) == '') && (valorEmBranco != undefined)) {
			valor = valorEmBranco;
		}
		if(retorno == '')
		{
				retorno = retorno +     form.elements[i].name + '=' + valor;
		}else{
				retorno = retorno +'&'+ form.elements[i].name + '=' + valor;
		}
	}
	//alert('retorno: '+retorno);
	return retorno;
}

function carregaCartelas(metodo)
{
	fecharPopup();
	
	execucao1 = function(){window.location = www_url + 'compra/carrinhoFinal.php'};
	
	execucao2 = function() {
							if($('id_produto').value != '')
							{
									var pars = serializeForm();
									
									if(clicks != 0 || (metodo == 'aleatorio')){	
									
											fecharPopup();
											mensagemPopup('Aguarde... <BR>Buscando certificados.', false,null,'',true);
											
											organizarTela('pesquisa');
											carrinhoParcial();
											
											if(metodo != 'aleatorio'){
												for(i=0;i<numerosSelecionados.length;i++){
													pars = pars + '&bolas[]=' + numerosSelecionados[i] + '&';
												}
											}
											
										   	
										   objAjax  = new Ajax.Updater(
										                 'blocoResultado', 'buscaCartelas.php', 
										                 {
															method:'post',
															parameters:pars, 
															evalScripts:true, 
															asynchronous:true,
															onSuccess:  function(request){
																
																			fecharPopup();
																			resultado = request.responseText;
																		},
															onFailure:  function () { 
																			mensagemPopup('<font color="red">Erro ao buscar certificados !</font>',true,3);
																		}
										                 });
										   
									}else{
										   mensagemPopup('Selecione as dezenas desejadas!', true, 2);
									}
							}else{
									mensagemPopup('Por favor, selecione o tipo de produto!', true, 2);
							}		
				}

    execucao3 = function() { registrarVariavelSessao('_cartelas_selecionadas:array(),_cartelas_reservadas:array()');
							 desregistrarVariavelSessao('id_produto_selecionado,_cartelas_selecionadas,compra_pendente');
							 execucao2();
    			}
				
	//verificando se o usuário tem compra pendente
	
	compraPendente = recuperarVariavelSessao('compra_pendente');
	//alert(compraPendente);
	if(compraPendente=='1')	{
		confirmacaoPopup('Você tem uma compra pendente, deseja finalizar esta compra ?','execucao1()','execucao3()');
	} else {
		execucao2();
	}
}

function carrinhoParcial()
{
	fecharPopup();
	mensagemPopup('Aguarde... <BR>Buscando certificados.', false, null,'',true);
	
	pars = '';
	
	objAjax = new Ajax.Request(
			www_url + 'compra/carrinhoParcial.php', 
			{
				method:    'post',
				parameters:pars, 
				onSuccess:  function(request){

								$('blocoCarrinho').innerHTML = request.responseText;
							},
				onFailure:  function () { 
								mensagemPopup('<font color="red">Erro ao carregar carrinho !</font>',true,3);
							}
			});
}

function adicionarCartelaClick()
{
	fecharPopup();
	id = cartelaCentral();
	//alert(id);
	try {
		if(id!=null)
		{		
				element = document.getElementById(id);
				//alert(element);			
				adicionarCartela(element);
		}else{
				mensagemPopup('Não há mais certificados disponíveis!',true,3);
		}
	} catch (e) {
		
			fecharPopup();
			mensagemPopup('Erro ao tentar operacao, tente novamente !',true,null);
			//alert(e.message);
	}
}

function adicionarCartela(element)
{
	fecharPopup();
	mensagemPopup('Aguarde...',false,null,'',true);
	
	//falta = checarQuantidadeCartelas();
	//alert('1');
	//alert($('quantidade_cartelas'));
	//alert($('quantidade_bilhetes'));
	quantidade_cartelas = $('quantidade_cartelas').value;
	//alert('2');
	quantidade_bilhetes = $('quantidade_bilhetes').value;
	//alert('3');
	totalCartelas = quantidade_cartelas*quantidade_bilhetes;
	//alert(totalCartelas);
	//if(falta > 0) {
	
		pars = 'id_cartela_adicionada=' + element.id;
		
		objAjax = new Ajax.Request(
				www_url + 'compra/carrinhoParcial.php', 
				{
					method:    'post', 
					parameters: pars, 
					onSuccess:  function(request){
									mensagemPopup('Seu certificado foi adicionado ao carrinho com sucesso !',true,4);
									//alert(request.responseText);
									$('blocoCarrinho').innerHTML = request.responseText;
									element.style.display = 'none';
									validarBotoes();
								},
					onFailure:  function () { 
									mensagemPopup('<font color="red">Erro ao adicionar certificado !</font>',true,3);
								}
				});
				
	/*}else{
				fecharPopup();
				mensagemPopup('Nesse tipo de produto (' + $('nomeJogo').value + ') só é possível selecionar '+ totalCartelas +' cartela(s)',true,4);
	}*/
}

function eliminarCartela(id_cartela_eliminada)
{
	fecharPopup();
	mensagemPopup('Aguarde...',false,null,'',true);

	pars = 'id_cartela_eliminada=' + id_cartela_eliminada;
	
	objAjax = new Ajax.Request(
			www_url + 'compra/carrinhoParcial.php', 
			{
				method:    'post', 
				parameters: pars, 
				onSuccess:  function(request){
								mensagemPopup('O certificado foi eliminado do carrinho com sucesso !',true,4);
								//alert(request.responseText);
								$('blocoCarrinho').innerHTML = request.responseText;
								validarBotoes();
							},
				onFailure:  function(){
								mensagemPopup('<font color="red">Erro ao eliminar certificado !',true,3)
							}
			});

	if((document.getElementById(id_cartela_eliminada) == undefined) || (document.getElementById(id_cartela_eliminada) == null))
	{
			if(IE){
					recuperarCartelaIE(id_cartela_eliminada);
			}else if(FF){
					recuperarCartelaFF(id_cartela_eliminada);
			}
	}else{
			elemento = document.getElementById(id_cartela_eliminada);
			elemento.style.display = '';
	}
}

function confirmarBeneficiario(index)
{

	try {
		fecharPopup();
		mensagemPopup('Aguarde...',false,null,'',true);
		
		beneficiarios = document.formCertificado.elements["beneficiario[]"];
		if(((beneficiarios.value == undefined) && (trim(beneficiarios[index].value) == ''))
			||
			(((beneficiarios.value != undefined) && trim(beneficiarios.value) == ''))
			) {
	    	//beneficiarios[index].value = '<clear>';
	    	fecharPopup();
			mensagemPopup('Nome do Beneficiário não informado!',true,5);
	    } else {
		
			//alert('index: '+index);
			//pars = Form.serialize('formCertificado');
			pars = serializeFormulario(document.formCertificado,'<clear>');
			//pars = pars+'&xbeneficiarioIndice='+index;
			//alert(pars);
		
			objAjax = new Ajax.Request(
					www_url + 'compra/carrinhoParcial.php', 
					{
						method:    'post', 
						parameters: pars, 
						onSuccess:  function(request){
										mensagemPopup('Beneficiário confirmado com sucesso!',true,4);
										//alert(request.responseText);
										$('blocoCarrinho').innerHTML = request.responseText;
										//document.getElementById('blocoCarrinho').innerHTML = String(request.responseText);
										//validarBotoes();
									},
						onFailure:  function(){
										mensagemPopup('<font color="red">Erro ao confirmar beneficiário !',true,3)
									}
					});
		}
	}  catch (e) {
			alert(e.message);
			fecharPopup();
			mensagemPopup('Erro ao tentar operacao, tente novamente !',true,null);
	}
}

function alterarBeneficiario(index)
{

	try {
		fecharPopup();
		mensagemPopup('Aguarde...',false,null,'',true);
	
	    //alert(document.forms[0].name);
	    //alert(document.forms[1].name);
	    //alert(document.formCertificado);
	    //alert(document.formCertificado.elements[0].name);
	    //alert(document.formCertificado.elements[1].name);
	    beneficiarios = document.formCertificado.elements["beneficiario[]"];
	    //alert(document.formCertificado.elements[2].name);
	    //alert(document.formCertificado.elements["beneficiario[]"]);
	    //alert(beneficiarios.value);
	    //apenas um elemento
	    if(beneficiarios.value != undefined) {
	        //alert('1 elemento');
	    	beneficiarios.value = '<clear>';
	    } else {
	        //alert('varios elementos');
	    	beneficiarios[index].value = '<clear>';
	    	//alert(beneficiarios[index].value);
	    }
	    //alert(document.formCertificado.beneficiario[]);
	    //limpa conteudo do beneficiario atual
	    //document.formCertificado.beneficiario[index].value = '';
	
		//pars = Form.serialize('formCertificado');
		pars = serializeFormulario(document.formCertificado, '<clear>');
		//pars = pars+'beneficiarioIndice='+index;
		//alert(pars);
		
		objAjax = new Ajax.Request(
				www_url + 'compra/carrinhoParcial.php', 
				{
					method:    'post', 
					parameters: pars, 
					onSuccess:  function(request){
									fecharPopup();
									//alert(request.responseText);
									$('blocoCarrinho').innerHTML = request.responseText;
									validarBotoes();
								},
					onFailure:  function(){
									mensagemPopup('<font color="red">Erro ao tentar alterar beneficiário !',true,3)
								}
				});
	}  catch (e) {
		alert(e.message);
		fecharPopup();
		mensagemPopup('Erro ao tentar operacao, tente novamente !',true,null);
	}
}

function esvaziarCarrinho()
{
	fecharPopup();
	
	mensagemPopup('Aguarde...',false,null,'',true);

	pars = 'esvaziar=1';
	
	objAjax = new Ajax.Request(
			www_url + 'compra/carrinhoParcial.php', 
			{
				method:    'post', 
				parameters: pars, 
				onSuccess:  function(request){
								mensagemPopup('Carrinho esvaziado com sucesso !',true,4);
								$('blocoCarrinho').innerHTML = request.responseText;
							},
				onFailure:  function(){
								mensagemPopup('<font color="red">Erro ao esvaziar carrinho !',true,4)
							}
			});
}

function exibirBilhete(id_cartela,id_sorteio,tipo_cartela){

	if(JanelaPopup == null || JanelaPopup.closed)
	{
			if(tipo_cartela == 'NS')
			{
					JanelaPopup = window.open(www_url + 'compra/certificadoImpressao.php?id_cartela=' + id_cartela + '&id_sorteio=' + id_sorteio + '&tipo_cartela=' + tipo_cartela, "Bilhete", "width=320,height=670,resizable=yes,scrollbars=yes,status=no");
					
			}else if(tipo_cartela == 'SE'){
				
					JanelaPopup = window.open(www_url + 'compra/certificadoImpressao.php?id_cartela=' + id_cartela + '&id_sorteio=' + id_sorteio + '&tipo_cartela=' + tipo_cartela, "Bilhete", "width=662,height=797,resizable=yes,scrollbars=yes,status=no");
			}
	}else{
			JanelaPopup.focus();
			
			if(tipo_cartela == 'NS')
			{
					JanelaPopup = window.open(www_url + 'compra/certificadoImpressao.php?id_cartela=' + id_cartela + '&id_sorteio=' + id_sorteio + '&tipo_cartela=' + tipo_cartela, "Bilhete", "width=320,height=670,resizable=yes,scrollbars=yes,status=no");
					
			}else if(tipo_cartela == 'SE'){
				
					JanelaPopup = window.open(www_url + 'compra/certificadoImpressao.php?id_cartela=' + id_cartela + '&id_sorteio=' + id_sorteio + '&tipo_cartela=' + tipo_cartela, "Bilhete", "width=662,height=797,resizable=yes,scrollbars=yes,status=no");
			}
	}
	
	JanelaPopup.moveTo(0,0);
}

function imprimir() 
{
	window.print();
}

//-------------------------------
//Funções referentes a transações
//-------------------------------

function checarQuantidadeCartelas(){

	bilhetes = 0;
	cartelas = 0;
	selecionadas = 0;
	falta = null;
	
	if($('quantidade_selecionada') != null){

		bilhetes = $('quantidade_bilhetes').value;
		cartelas = $('quantidade_cartelas').value;
		selecionadas = $('quantidade_selecionada').value;

		quantidadeCartelasTotal = cartelas*bilhetes;
		ehMultiplo = ehMultiploDe(selecionadas, quantidadeCartelasTotal);
		
		if (ehMultiplo) {
			falta = 0;
		} else {
			
			multiplo = Math.ceil(selecionadas/quantidadeCartelasTotal);
			
			falta = Math.abs((quantidadeCartelasTotal*multiplo) - selecionadas);
		}
	}
	
	return falta;
}

function ehMultiploDe(valor, multiploDe) {
		
		retorno = false;	

		if ((valor%multiploDe) == 0) {
			retorno = true;
		}
		
		return retorno;
	}


function efetuarCompra()
{
	try {
		
			//alert('efetuarCompra');
	
			fecharPopup();
		
			mensagemPopup('Aguarde...',false,null,'',true);
			//alert(document.forms);
			//alert(document.forms[0].name);
			//alert(document.forms[1].name);
			argumentos = efetuarCompra.arguments;
			//alert(argumentos);
			executar = null;
			
			if(argumentos.length > 0)
			{
				executar = argumentos[0];
				
				executar = executar.replace(/@/g,"\\'");
			}
			//alert('antes');
			//falta = checarQuantidadeCartelas();
			//alert('depois');
			
			//checar se beneficiarios foi preenchido
			//alert(document.forms);		
			//alert(document.forms[0].name);
			//alert(document.forms[1].name);			
			//alert(document.formCertificado);
			//beneficiarios = document.formCertificado.elements["beneficiario[]"];
			//alert(beneficiarios);
			//beneficiarioPreenchido = checarPreenchimentoBeneficiario(beneficiarios);
			/*
			if( (falta != null) && (falta > 0) )
			{
					if(falta == 1)
					{
							s = '';
					}else{
							s = 's';
					}
					
					mensagemPopup('Nesse tipo de produto (' + $('nomeJogo').value + ') é necessário selecionar no mínimo ' + bilhetes + ' certificado(s), onde cada certificado para estar completo deve conter ' + cartelas +' certificado(s). <br>Para completar este produto ainda falta selecionar ' + falta +' certificados(s)',true,null);
			} 
			else if(beneficiarioPreenchido == false) {
				    mensagemPopup('O preenchimento do Nome do Beneficiário é obrigatório para o(s) certificado(s).',true,null);
			}*/
			if(false) {
			} else{
					pars = 'finalizar=1';
				
					objAjax = new Ajax.Request(
							www_url + 'compra/carrinhoVenda.php', 
							{
								method:    'post', 
								parameters: pars, 
								onSuccess:  function(request){
		
												retorno = request.responseText; 
									
												fecharPopup();
												//desabilitarLinks();
												
												if(retorno.length == 0)//siginifica que o PHP não retornou nenhum erro
												{
														mensagem = 'Certificado(s) reservado(s) com sucesso !';
														
														if(executar != null)
														{
																mensagemPopup(mensagem, true,4,executar);
														}else{
																mensagemPopup(mensagem, true,15);
														}
												}else{
														//mensagem = 'Erro ao tentar efetuar operação.';
														//mensagem = mensagem + retorno;
														
														//mensagemPopup(retorno, true,4,'habilitarLinks()');
														fecharPopup();
														//habilitarLinks();
														mensagemPopup(retorno,true,4);
												}
											},
								onFailure:  function(){
												mensagemPopup('Erro ao efetuar compra !',true,4)
												//habilitarLinks();
											}
							});
			}
			
	} catch (e) {
			//alert(e.message);
			fecharPopup();
			mensagemPopup('Erro ao tentar operacao, tente novamente !',true,null);
	}
}

function efetuarLogin(email,senha)
{
	fecharPopup();
	
	desabilitarCombos();
	
	argumentos = efetuarLogin.arguments;
	
	executar = null;
	
	if(argumentos.length > 2)
	{
		executar = argumentos[2];
	}

	$('fundoEscuro').style.display = 'block';
	
	if(document.getElementById('msglogin')) {
		document.getElementById('msglogin').innerHTML = 'Identificando Usuario . . .';
	}
	
	pars = 'email=' + email + '&senha=' + senha;

	objAjax = new Ajax.Request(
			www_url + 'loginAjax.php', 
			{
				method:    'post', 
				parameters: pars, 
				onSuccess:  function(request){
								
								retornoLogin = request.responseText;
								
								if(retornoLogin == 'T')
								{
										fecharLogin();
										
										mensagem = 'Seja bem-vindo ao Pernambuco dá Sorte On-line';
										
										if(executar != null)
										{
												mensagemPopup(mensagem, false, 3, executar);	
										}else{
												mensagemPopup(mensagem, true, 3);
										}
								}else{
										if($('msglogin'))
										{
											$('msglogin').innerHTML = '<font color="yellow">Usuário ou Senha Incorretos!</font>';
										}
								}
								
							},
					onFailure:  function(){
						
									mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
								}
			});
}

function efetuarCadastro(){
	
	fecharPopup();
	
	mensagemPopup('Salvando Cadastro . . .',false,null,'',true);
	
	document.getElementById('mensagemErro').className = "desativado";
	document.getElementById('camposIncorretos').innerHTML = '';
	
	argumentos = efetuarCadastro.arguments;
	
	executar = null;
	
	if(argumentos.length > 0)
	{
		executar = argumentos[0];
	}
	
	pars = Form.serialize('cadastro');
	
	objAjax = new Ajax.Request(
			www_url + 'cliente/cadastro/cadastroValidacao.php', 
			{
				method:    'post', 
				parameters: pars, 
				onSuccess:  function(request){
								
								retorno = request.responseText;
								retorno = processarResposta(retorno);
								
								if(retorno[1]=='')
								{
									    //advertencia
										fecharPopup();
										
										mensagem = 'Cadastro efetuado com sucesso.';
										
										if(executar != null)
										{
												mensagemPopup(mensagem, false, 3, executar);	
										}else{
												mensagemPopup(mensagem, false, 3);
										}
								}else{
									    //erro
									    fecharPopup();
									    mensagemPopup('Por favor, informe os dados obrigatórios.',true,3,'window.location = \\\'#topo\\\';');

									    _str_temp 	     = retorno[1];
									    _erros 			 = _str_temp.split('|');
									    _erros_campos  	 = '';
									    _erros_mensagens = '';
									    
									    array_campos = document.getElementsByClassName('campoAdvertencia');
									    
									    for(i=0;i<array_campos.length;i++){
									    	
									    	array_campos[i].className = 'campoCinza';
									    }
									    
									    for(i=0;i<_erros.length;i++){
									    
									    	_str_temp = _erros[i];
									    	_erros_campos  = _str_temp.split('@');
									    	_erros_mensagens += _erros_campos[0];
									    	
									    	if(_erros_campos[1] != '#'){
									    	
									    		document.getElementById(_erros_campos[1]).className = 'campoAdvertencia';	
									    	}
									    	
									    }
									    
										document.getElementById('mensagemErro').className = "ativado";
										document.getElementById('camposIncorretos').innerHTML = _erros_mensagens;
								}
							},
				onFailure:  function(){
					
								mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
							}
			});
}

function atualizarCadastro(){
	
	fecharPopup();
	
	mensagemPopup('Salvando Cadastro . . .',false,null,'',true);
	
	document.getElementById('mensagemErro').className = "desativado";
	document.getElementById('camposIncorretos').innerHTML = '';
	
	argumentos = atualizarCadastro.arguments;
	
	executar = null;
	
	if(argumentos.length > 0)
	{
		executar = argumentos[0];
	}
	
	pars = Form.serialize('cadastro');
	
	objAjax = new Ajax.Request(
			www_url + 'cliente/cadastro/cadastroValidacao.php', 
			{
				method:    'post', 
				parameters: pars, 
				onSuccess:  function(request){
								
								retorno = request.responseText;
								retorno = processarResposta(retorno);
																
								if(retorno[1]=='')
								{
									    //advertencia
										fecharPopup();
										
										mensagem = 'Cadastro atualizado com sucesso!';
										
										if(executar != null)
										{
												mensagemPopup(mensagem, false, 3, executar);	
										}else{
												mensagemPopup(mensagem, false, 3);
										}
								}else{
									    //erro
									    fecharPopup();
									    mensagemPopup('Por favor, informe os dados obrigatórios.',true,3,'window.location = \\\'#topo\\\';');

									    _str_temp 	     = retorno[1];
									    _erros 			 = _str_temp.split('|');
									    _erros_campos  	 = '';
									    _erros_mensagens = '';
									    
									    array_campos = document.getElementsByClassName('campoAdvertencia');
									    
									    for(i=0;i<array_campos.length;i++){
									    	
									    	array_campos[i].className = 'campoCinza';
									    }
									    
									    for(i=0;i<_erros.length;i++){
									    
									    	_str_temp = _erros[i];
									    	_erros_campos  = _str_temp.split('@');
									    	_erros_mensagens += _erros_campos[0];
									    	
									    	if(_erros_campos[1] != '#'){
									    	
									    		document.getElementById(_erros_campos[1]).className = 'campoAdvertencia';	
									    	}
									    	
									    }
									    
										document.getElementById('mensagemErro').className = "ativado";
										document.getElementById('camposIncorretos').innerHTML = _erros_mensagens;
								}
							},
				onFailure:  function(){
					
								mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
							}
			});
}

function alterarSenha(){
	
	fecharPopup();
	
	mensagemPopup('Alterando senha . . .',false);
	
	document.getElementById('mensagemErro').className = "desativado";
	document.getElementById('camposIncorretos').innerHTML = '';
	
	argumentos = alterarSenha.arguments;
	
	executar = null;
	
	if(argumentos.length > 0)
	{
		executar = argumentos[0];
	}
		
	pars = Form.serialize('cadastro');
	
	objAjax = new Ajax.Request(
			www_url + 'cliente/cadastro/senhaValidacao.php', 
			{
				method:    'post', 
				parameters: pars, 
				onSuccess:  function(request){
								
								retorno = request.responseText;
								retorno = processarResposta(retorno);
																
								if(retorno[1]=='')
								{
									    //advertencia
										fecharPopup();
										
										mensagem = 'Senha alterada com sucesso!';
										
										if(executar != null)
										{
												mensagemPopup(mensagem, false, 3, executar);	
										}else{
												mensagemPopup(mensagem, false, 3);
										}
								}else{
									    //erro
									    fecharPopup();
									    mensagemPopup('Por favor, informe os dados obrigatórios.',true,3,'window.location = \\\'#topo\\\';');

									    _str_temp 	     = retorno[1];
									    _erros 			 = _str_temp.split('|');
									    _erros_campos  	 = '';
									    _erros_mensagens = '';
									    
									    array_campos = document.getElementsByClassName('campoAdvertencia');
									    
									    for(i=0;i<array_campos.length;i++){
									    	
									    	array_campos[i].className = 'campoCinza';
									    }
									    
									    for(i=0;i<_erros.length;i++){
									    
									    	_str_temp = _erros[i];
									    	_erros_campos  = _str_temp.split('@');
									    	_erros_mensagens += _erros_campos[0];
									    	
									    	if(_erros_campos[1] != '#'){
									    	
									    		document.getElementById(_erros_campos[1]).className = 'campoAdvertencia';	
									    	}
									    	
									    }
									    
										document.getElementById('mensagemErro').className = "ativado";
										document.getElementById('camposIncorretos').innerHTML = _erros_mensagens;
								}
							},
				onFailure:  function(){
					
								mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
							}
			});
}

function carregarDadosDaCompra(dados) {

	arrayGeral  = dados.split('#');
	arrayCampos = new Array();
	arrayDados  = new Array();

	for(i=0;i<arrayGeral.length;i++){

		stringCampoDado = arrayGeral[i];
		arrayCampoDado	= stringCampoDado.split(':');
		arrayCampos[arrayCampos.length] = arrayCampoDado[0];
		arrayDados[arrayDados.length]   = arrayCampoDado[1];
	}
	
	for(i=0;i<arrayDados.length;i++){
	
		document.getElementById(arrayCampos[i]).value = arrayDados[i];
	}
}

function desabilitarLinks(){

	//alert('desabilitarLinks');
	botoes = document.getElementsByTagName('A');

	for(i=0;i<botoes.length;i++){
		botoes[i].onclick = function(){return false;};
	}
}

function habilitarLinks(){
	
	//alert('habilitarLinks');
	botoes = document.getElementsByTagName('A');
	
	for(i=0;i<botoes.length;i++){
		botoes[i].onclick = function(){return true;};
	}
}


function enviarEmailDuvida() {
	
	executar = function () {
		
		try {
				mensagemPopup('Aguarde... <br> Sua mensagem está sendo enviada',false,null,'',true);

				pars = serializeForm();
				
				objAjax = new Ajax.Request(
				
						www_url + 'duvidaEnvio.php', 
						{
							method:    'post', 
							parameters: pars,
							onSuccess:  function(request){
											
											retorno  = request.responseText;

											fecharPopup();											
											
											if(retorno=='')
											{
													mensagemPopup('Sua mensagem foi recebida com sucesso !', true, 4);
											}else{
													mensagemPopup(retorno, true, null);
											}
										},
							onFailure:  function(){
											mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
										}
						});
		} catch(e) {
			alert(e.message);
		}						
	}
			  
	confirmacaoPopup('Seus dados estão corretos ?','executar()');
	
}


function inserirCreditoPin()
{
	
	try {
		
		fecharPopup();
		mensagemPopup('Aguarde enquanto seu PIN é validado.', false, null, '', true);
		
		pars = serializeForm();
			
		objAjax = new Ajax.Request(
				www_url + 'cliente/credito/inserirPin.php', 
				{
					method:    'post', 
					parameters: pars, 
					onSuccess:  function(request){
									
									retorno  = request.responseText;
									
									//alert(retorno);
									
									resposta = retorno.split('|');
									
									//alert(resposta);
									
									bool	 = resposta[0];
									mensagem = resposta[1];
									valor    = resposta[2];
									url      = resposta[3];
									
									fecharPopup();
									
									if(bool == 'T')
									{
										fn_callback = function (){ window.location = url};
										mensagemPopup(mensagem, false, 3, 'mensagemPopup(\\\'Foram Creditados R$ '+ valor +' em sua conta.\\\', true, null,\\\'fn_callback()\\\');');
												
									} else if(bool == 'F'){
	
										mensagemPopup(mensagem, true, null);
										
									} else if (bool == 'R') {
											
										//reload do codigo de autenticacao
										fn_callback = function (){ window.location = url};
										mensagemPopup(mensagem, true, null,'fn_callback()');
									
									} else {
										
										mensagem = 'Não foi possível validar o seu PIN. Tente novamente mais tarde.';
										mensagemPopup(mensagem, true, null);
									}
								},
					onFailure:  function(){
									fecharPopup();
									mensagemPopup('Servidor indisponivel! Tente novamente!',true,null);
								}
				});
	} catch(e) {
		fecharPopup();
		mensagemPopup('Problema ao tentar validar seu PIN! Tente novamente!',true,null);
	}
}

//--------------------------
//Função de controle de ação
//--------------------------

function controleAcao(acao)
{
	mensagemPopup('Aguarde...',false,null,'',true);

	pars = 'acao=' + acao;

	objAjax = new Ajax.Request(
				www_url + 'controleAcao.php', 
				{
					method:    'post', 
					parameters: pars,
					onComplete: function(request){

									eval(request.responseText);
								},
					onFailure:  function(){

									mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
								}
				});
}

//----------------------------------------
//Função para registrar variavel na sessão
//----------------------------------------
//Formato  String: var1:valor1,var2:valor2

function registrarVariavelSessao(string)
{
	pars = 'variaveis_sessao=' + string;
	
	objAjax = new Ajax.Request(
				www_url + 'registrarSessao.php', 
				{
					method:    'post', 
					parameters: pars,
					asynchronous:false,
					onComplete: function(request){

									request.responseText;
								},
					onFailure:  function(){
						
									mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
								}
				});
}

//-------------------------------------------
//Função para desregistrar variavel na sessão
//-------------------------------------------
//Formato  String: var1,var2

function desregistrarVariavelSessao(string)
{
	pars = 'variaveis_sessao=' + string;
	
	objAjax = new Ajax.Request(
				www_url + 'desregistrarSessao.php', 
				{
					method:    'post', 
					parameters: pars,
					asynchronous:false,
					onComplete: function(request){

									request.responseText;
								},
					onFailure:  function(){
						
									mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
								}
				});
}

//----------------------------------------
//Função para recuperar variavel da sessão
//----------------------------------------

function recuperarVariavelSessao(string)
{
	var retorno = null;
	
	pars = 'variavel=' + string;
	
	objAjax = new Ajax.Request(
				www_url + 'recuperarVariavelSessao.php', 
				{
					method:    'post', 
					parameters: pars,
					asynchronous:false,
					onComplete: function(request){
									
									retorno = request.responseText;
								},
					onFailure:  function(){
						
									mensagemPopup('Servidor indisponivel! Tente novamente',true,4)
								}
				});
				
	return retorno;
}

function confirmarUsoCredito(form) {

	//checar se o regulamento foi aceito
	if(document.form.aceite_regulamento.checked == true) {
		confirmacaoPopup('Deseja realmente utilizar seus créditos para comprar o certificado ?','$(\'operacao\').value=\'uc\';document.form.action=\'pagamentoEfetuado.php\';document.form.submit();');
	} else {
		mensagem = 'Você precisa concordar com o regulamento para finalizar a compra. <br>Clique na caixa ao lado do `Você concorda?` caso você aceite o regulamento.';
		mensagemPopup(mensagem, true, 10);
	}	
}