// JavaScript Document

//============================
// COTAÇÃO DOLAR
//============================
function cotacaoDolar()
{
	xajax_cotacaoDolar();
}

//============================
// PROMOÇÕES
//============================

function participarPromocao(id_promocao)
{
	getId('carregandoPromocao').className = "aparece";
	xajax_participarPromocao(id_promocao);
}

function addParticipaPromocao(id_promocao)
{
	if(getId('resposta').value == '')
	{
		alert("Preencha o campo 'Resposta/Comentario'");
		return false;
	}
	getId('carregandoPromocao').className = "aparece";
	xajax_addParticipaPromocao(id_promocao, getId('resposta').value);
}

//============================
// RECADOS
//============================

function recadosUsuario(id_usuario, pagina)
{
	getId('carregandoRecados').className = "aparece";
	if(!pagina)
		pagina = 0;
	xajax_recadosUsuario(id_usuario, pagina);
}

function addComentario(id_usuario, id_usuario_enviou)
{
	if(getId('novoRecado').value == '')
	{
		alert("Seu recado deve conter algum conteudo");
		return false;
	}
	getId('carregandoRecados').className = "aparece";
	xajax_addComentario(id_usuario, id_usuario_enviou, getId('novoRecado').value);
}

function excluirRecado(id_recado, pagina)
{
	if(confirm('Excluir Recado?')) 
	{
		getId('carregandoRecados').className = "aparece";
		xajax_excluirRecado(id_recado, pagina);
	}
}

function respondeRecado(id_recado)
{
	var recado = getId('respRecado'+id_recado).value;
	if(recado=='')
	{
		alert('Recado deve conter algum caractere');
		return false;
	}
	xajax_respondeRecado(id_recado, recado);
}

function attQtdeRecados(id_usuario)
{
	xajax_attQtdeRecados(id_usuario);
	//qtdeRecados
}

//============================
// ENQUETE
//============================

function divEnquete()
{
	getId('carregandoEnquete').className = "aparece";
	xajax_divEnquete();
}

function resultadoEnquete()
{
	getId('carregandoEnquete').className = "aparece";
	xajax_resultadoEnquete();
}

function votaEnquete(id_enquete, id_usuario)
{
	var respostas = document.getElementsByName('respostaEnquete');
	var i = 0;
	var id_enquete_opcao;
	var controle = 0;
	for (i=0;i<respostas.length;i++)
	{
		if (respostas[i].checked == true)
		{
			id_enquete_opcao = respostas[i].value;
			controle = 1;
		}
	}
	if(controle==0) {
		alert('Selecione alguma alternativa!');
		return false;
	}
	else {
		getId('carregandoEnquete').className = "aparece";
		xajax_votaEnquete(id_enquete, id_usuario, id_enquete_opcao);
	}
}

//============================
// USUARIO
//============================
function divLogin()
{
	getId('carregandoLogin').className = "aparece";
	xajax_divLogin();
}

function loginUsuario()
{
	getId('carregandoLogin').className = "aparece";
	xajax_loginUsuario($('email').value, $('senha').value);
}

function encerraSessao()
{
	xajax_encerraSessao();
}

function validaCadastro(form)
{	
	if(form.nome.value.length < 3)
	{
		alert('Preencha seu nome corretamente');
		form.nome.focus();
		return false;
	}
	if(form.email.value=='' || form.email.value.indexOf('@')==-1 || form.email.value.indexOf('.')==-1)
	{
		alert("Preencha o campo 'Email' corretamente!");
		form.email.focus();
		return false;
	}
	if(form.cidade.value=='')
	{
		alert("Preencha o campo 'Cidade' corretamente!");
		form.cidade.focus();
		return false;
	}
	if(form.senha.value.length < 4 || form.confSenha.value.lenght < 4)
	{
		alert("Campo senha deve ter no minimo 4 caracteres!");
		form.senha.focus();
		return false;
	}
	if(form.senha.value != form.confSenha.value)
	{
		alert("'Senha' e 'Confirmar Senha' devem ser iguais!");
		form.senha.focus();
		return false;
	}
	if(form.confirmacao.value.length != 6)
	{
		alert("Preencha o campo número de confirmação corretamente!");
		form.confirmacao.focus();
		return false;
	}
	return true;
}

// SINTONIZADOS

function perfilSintonizado(id)
{
	getId('carregandoSintonizado').className = "aparece";
	xajax_perfilSintonizado(id);
}

function sintonizaUsuario(id_usuario, sintonizado)
{
	getId('carregandoSintonizado').className = "aparece";
	xajax_sintonizaUsuario(id_usuario, sintonizado);
}

function desintonizarUsuario(id_usuario, sintonizado)
{
	getId('carregandoSintonizado').className = "aparece";
	xajax_desintonizarUsuario(id_usuario, sintonizado);
}

function attQtdeSintonizados(id_usuario)
{
	xajax_attQtdeSintonizados(id_usuario);
}

//==============================
// RAPIDINHAS
//==============================

function comentariosRapidinha(id_rapidinha)
{
	getId('carregandoRapidinhas').className = "aparece";
	xajax_comentariosRapidinha(id_rapidinha);
}

function novoComentarioRapidinha(id_rapidinha, id_usuario)
{
	var comentario = getId('comentario').value;
	if(comentario != '')
	{
		getId('carregandoRapidinhas').className = "aparece";
		xajax_novoComentarioRapidinha(id_rapidinha, id_usuario, comentario);
	}
	else {
		alert("Preencha o campo 'Comentario' corretamente");
		return false;
	}
}

function excluirComentarioRapidinha(id_rapidinha_comentario)
{
	if(confirm("Excluir registro?")) {
		getId('carregandoRapidinhas').className = "aparece";
		xajax_excluirComentarioRapidinha(id_rapidinha_comentario);
	} else { return false; }
}

//==============================
// BLOG
//==============================

function comentariosPost(id_blog_post)
{
	getId('carregandoPost').className = "aparece";
	xajax_comentariosPost(id_blog_post);
}

function novoComentarioPost(id_blog_post, id_usuario)
{
	var comentario = getId('comentario').value;
	if(comentario != '')
	{
		getId('carregandoPost').className = "aparece";
		xajax_novoComentarioPost(id_blog_post, id_usuario, comentario);
	}
	else {
		alert("Preencha o campo 'Comentario' corretamente");
		return false;
	}
}

function excluirComentarioPost(id_blog_comentario)
{
	if(confirm("Excluir registro?")) {
		getId('carregandoPost').className = "aparece";
		xajax_excluirComentarioPost(id_blog_comentario);
	} else { return false; }
}

//==============================
// NOTICIAS
//==============================

function comentariosNoticia(id_noticia)
{
	getId('carregandoNoticia').className = "aparece";
	xajax_comentariosNoticia(id_noticia);
}

function novoComentarioNoticia(id_noticia, id_usuario)
{
	var comentario = getId('comentario').value;
	if(comentario != '')
	{
		getId('carregandoNoticia').className = "aparece";
		xajax_novoComentarioNoticia(id_noticia, id_usuario, comentario);
	}
	else {
		alert("Preencha o campo 'Comentario' corretamente");
		return false;
	}
}

function excluirComentarioNoticia(id_noticia_comentario)
{
	if(confirm("Excluir registro?")) {
		getId('carregandoNoticia').className = "aparece";
		xajax_excluirComentarioNoticia(id_noticia_comentario);
	} else { return false; }
}

//==============================
// EVENTOS
//==============================

function comentariosEvento(id_evento)
{
	getId('carregandoEvento').className = "aparece";
	xajax_comentariosEvento(id_evento);
}

function novoComentarioEvento(id_evento, id_usuario)
{
	var comentario = getId('comentario').value;
	if(comentario != '')
	{
		getId('carregandoEvento').className = "aparece";
		xajax_novoComentarioEvento(id_evento, id_usuario, comentario);
	}
	else {
		alert("Preencha o campo 'Comentario' corretamente");
		return false;
	}
}

function excluirComentarioEvento(id_evento_comentario)
{
	if(confirm("Excluir registro?")) {
		getId('carregandoEvento').className = "aparece";
		xajax_excluirComentarioEvento(id_evento_comentario);
	} else { return false; }
}

//==============================
// PEDIDOS
//==============================

function pedidoProgramadores()
{
	var musica = getId('prMusica');
	var nome = getId('prNome');
	var email = getId('prEmail');
	var comentario = getId('prComentario');
	
	if(musica.value=='')
	{
		alert("Preencha o campo 'Musica' corretamente!");
		musica.focus();
		return false;
	}
	
	if(nome.value=='')
	{
		alert("Preencha o campo 'Nome' corretamente!");
		nome.focus();
		return false;
	}
	
	if(email.value=='' || email.value.indexOf('@')==-1 || email.value.indexOf('.')==-1)
	{
		alert("Preencha o campo 'Email' corretamente!");
		email.focus();
		return false;
	}
	
	getId('carregandoProgramadores').className = "aparece";
	xajax_pedidoProgramadores(musica.value, nome.value, email.value, comentario.value);
}

function pedidoMusical()
{
	var musica = getId('pMusica');
	var nome = getId('pNome');
	var email = getId('pEmail');
	var comentario = getId('pComentario');
	var id_programa = getId('pPrograma');
	
	if(musica.value=='')
	{
		alert("Preencha o campo 'Musica' corretamente!");
		musica.focus();
		return false;
	}
	
	if(nome.value=='')
	{
		alert("Preencha o campo 'Nome' corretamente!");
		nome.focus();
		return false;
	}
	
	if(email.value=='' || email.value.indexOf('@')==-1 || email.value.indexOf('.')==-1)
	{
		alert("Preencha o campo 'Email' corretamente!");
		email.focus();
		return false;
	}
	
	getId('carregandoPedido').className = "aparece";
	xajax_pedidoMusical(id_programa.value, musica.value, nome.value, email.value, comentario.value);
}

//=======================
// PLAYLIST
//=======================

function playMusica(id_playlist_musica)
{
	getId('carregandoPlayer').className = "aparece";
	xajax_playMusica(id_playlist_musica);
}


//=================================================================================================================
// MÁSCARA
//=================================================================================================================

/*
Para utilizar a mascara, basta chama-la desta forma:
onkeydown="return aplicaMascara(this,event,'99/99/9999 99:99');"

Caso seja passado "9" ou "0", ela vai aceitar apenas numeros e se for "#" aceitara apenas letras.
*/

function aplicaMascara(campo,event, mascara) {
    if (event.keyCode >= 46||event.keyCode == 8){   
        position = campo.selectionStart;
        valor = campo.value;
        v = event.keyCode;
        m = mascara.charAt(position);
        c = campo.value.charAt(position);    
        //Verifica se a mascara é para numero e se o valor inserido tb é 
        if (((m == '9')||(m == '0'))&&((event.keyCode >= 48 && event.keyCode <= 57)                
            ||(event.keyCode >= 96 && event.keyCode <= 105)))  {  
            if (c != '')  {
                valor = atualizaValor(valor,position,'');
                document.getElementById(campo.id).value = valor;
                setCursorPosition(campo,position,position);
            }            
        //Verifica se a mascara é para texto e se o valor inserido tb é 
        } else if ((m == '#')&&(event.keyCode >= 65 && event.keyCode <= 90))  {  
            if (c != '')  {
                valor = atualizaValor(valor,position,'');
                document.getElementById(campo.id).value = valor;
                setCursorPosition(campo,position,position);
            }            
        } else {  
            if (m=='')  {
                return false;
            //Trata o valor caso o usuario pressione DEL, para nao sair da estrutura
            } else if (event.keyCode == 46)  {
                for (del = position ;del < campo.selectionEnd ; del ++)  {
                       valor = atualizaValor(valor,del,' ')
                }
                 document.getElementById(campo.id).value = valor;
                 setCursorPosition(campo,position,position);
                return false;
            //Trata o valor caso o usuario pressione Backspace, para nao sair da 
            // estrutura
            } else if(event.keyCode == 8){
                valor = atualizaValor(valor,position-1,' ');
                document.getElementById(campo.id).value = valor;
                setCursorPosition(campo,position-1,position-1);
                return false;
            } else if ((m != '0')&&(m != '9')&&(m != '#')) {
                //insere o saparador ou digito especial no texto
                valor = atualizaValor(valor,position,m);
                //verifica se o proximo campo da mascara atende as caracteristicas 
                // do valor inserido
                if (((mascara.charAt(position+1) == '9')
                      ||(mascara.charAt(position+1) == '0'))
                    &&((event.keyCode >= 48 && event.keyCode <= 57) 
                      ||(event.keyCode >= 96 && event.keyCode <= 105)))  {  
                    if (c != '')  {
                        valor = atualizaValor(valor,position+1,'');
                        document.getElementById(campo.id).value = valor;
                        setCursorPosition(campo,position+1,position+1);
                    }            
                } else if ((mascara.charAt(position+1) == '#')
                            &&(event.keyCode >= 65 && event.keyCode <= 90))  {  
                    if (c != '')  {
                        valor = atualizaValor(valor,position+1,'');
                        document.getElementById(campo.id).value = valor;
                        setCursorPosition(campo,position+1,position+1);
                    }            
                }  else {
                    return false;
                }              
            } else {
                return false;
            }
        }
        document.getElementById(campo.id).value = valor;  
    }
}    

//Recebe um texto e substitui o valor passado na posicao indicada
function atualizaValor(texto,posicao,valor){
    var novoTexto = "";
    for (i = 0; i <= texto.length; i++) {
        if (i == posicao)  {
            novoTexto =   novoTexto + valor;             
        } else {
            v = texto.charAt(i);
            novoTexto =   novoTexto + v; 
        }
    }
    return novoTexto;
}

//Seta o cursor para a posicao desejada no campo
function setCursorPosition(oInput,oStart,oEnd) {
    if( oInput.setSelectionRange ) {
        oInput.setSelectionRange(oStart,oEnd);
    } else if( oInput.createTextRange ) {
        var range = oInput.createTextRange();
        range.collapse(true);
        range.moveEnd('character',oEnd);
        range.moveStart('character',oStart);
        range.select();
    }
}

//=================================================================================================================
// FIM MÁSCARA
//=================================================================================================================

function verificaCaracteres(event) 
{
	//if (event.keyCode >= 46||event.keyCode == 8){
	//alert(event.keyCode);
	var limite=1024;
	var caracteres = document.getElementById("novoRecado").value.length;
	var restantes = limite - caracteres;
	if(caracteres > 1024)
	{
		document.getElementById("restantes").innerHTML = "Ops... recado muito grande";
	}
	if(restantes <= -1) {
		if(event.keyCode!=8&&event.keyCode!=46) {
			return false;
		}
		else {
			return true;
		}
	} else
			document.getElementById("restantes").innerHTML = restantes+" restantes";
}