$(document).ready(function(){
    // MEDIA
    $('a.media').media();

    // MASKED INPUT
    $('#nascimento').mask("99/99/9999");
    $('#cnpj').mask("99.999.999/9999-99");
    $('#cpf').mask("999.999.999-99");
    $('#telefone, #fax, #celular').mask("(99)9999-9999");
    $('#cep').mask("99999-999");

    // COLORBOX
    $("a[rel='colorbox']").colorbox();
    $("a.colorbox").colorbox({
        iframe:true,
        innerWidth:710,
        innerHeight:400
    });

    //VALIDA FORM
    $.validator.setDefaults({
            errorClass: 	'formError',
            errorElement:	'span'
    });
    var txtMandatoryField = 'Campo obrigatório!';

    // CAROUSEL
    $('#mycarousel').jcarousel({
        scroll: 1
    });

    // RESET SCROLLABLE
    $.scrollTo(0);

    // EXPRESSOES REGULARES
    var regEmail = /^[\w-]+(\.[\w-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;
    //regEmail.test( var)

    // LOGIN
    var loginSetNomeValue   = 'Email';
    var loginSetPassValue   = 'Senha';
    //
    $('#loginNome').val( loginSetNomeValue);
    $('#loginSenha').val( loginSetPassValue);
    //
    $('#loginNome').focus( function(){
        if( $(this).val() == loginSetNomeValue )
            $(this).val('');
    }).blur( function(){
        if( $(this).val() == '')
            $(this).val( loginSetNomeValue);
    });
    //
    $('#loginSenha').focus( function(){
        if( $(this).val() == loginSetPassValue )
            $(this).val('');
    }).blur( function(){
        if( $(this).val() == '')
            $(this).val( loginSetPassValue);
    });
    //
    $('#conteudoLogin button').click( function(){
        var login   = $('#loginNome').val();
        var pass    = $('#loginSenha').val();

        if( login == '' || pass == '')
        {
            alert('Por favor, preencha corretamente os campos de Login e Senha.');
            return false;
        }

        if( regEmail.test( login) == false)
        {
            alert('Por favor, informe um email válido.');
            return false;
        }

    });


    // NEWSLETTER
    var newsletterSetNomeValue      = 'Nome:';
    var newsletterSetEmailValue     = 'Email:';
    var newsletterSetCaptchaValue   = 'Digite as caracteres acima';
    //
    $('#newsletterNome').val( newsletterSetNomeValue);
    $('#newsletterEmail').val( newsletterSetEmailValue);
    $('#newsletterCaptcha').val( newsletterSetCaptchaValue);
    //
    $('#newsletterNome').focus( function(){
        if( $(this).val() == newsletterSetNomeValue )
            $(this).val('');
    }).blur( function(){
        if( $(this).val() == '')
            $(this).val( newsletterSetNomeValue);
    });
    //
    $('#newsletterEmail').focus( function(){
        if( $(this).val() == newsletterSetEmailValue )
            $(this).val('');
    }).blur( function(){
        if( $(this).val() == '')
            $(this).val( newsletterSetEmailValue);
    });
    //
    $('#newsletterCaptcha').focus( function(){
        if( $(this).val() == newsletterSetCaptchaValue )
            $(this).val('');
    }).blur( function(){
        if( $(this).val() == '')
            $(this).val( newsletterSetCaptchaValue);
    });
    //
    $('#divNewsletter form button').click( function(newsletter){
        newsletter.preventDefault();
        //
        var userEmail   = $('#divNewsletter form input#newsletterEmail').val();
        var userNome    = $('#divNewsletter form input#newsletterNome').val();
        var captcha     = $('#divNewsletter form input#newsletterCaptcha').val();
        var formMethod  = $('#divNewsletter form').attr('method');
        var formAction  = $('#divNewsletter form').attr('action');
        //
        if( ( userNome == '' || userNome == newsletterSetNomeValue) || ( userEmail == '' || userEmail == newsletterSetEmailValue) || ( captcha == '' || captcha == newsletterSetCaptchaValue))
        {
            alert('É obrigatório o preenchimento dos campos Nome, Email e Captcha.');
            return false;
        }
        //
        if( regEmail.test( userEmail) == false)
        {
            alert('Por favor, informe um email válido.');
            return false;
        }
        //
        $(this).slideUp('slow');
        $('img#newsletterLoader').slideDown('slow');
        //
        $.ajax({
            type:    formMethod,
            url:     formAction,
            data: 'newsletterEmail='+ userEmail +'&newsletterNome='+ userNome +'&captcha='+ captcha,
            success: function( msg){
                 $.scrollTo( 150, 1000)
                 $('#divNewsletter p, #divNewsletter form').slideUp('slow');
                 $('#divNewsletter').append( msg);
            }
        });
    });

    // TABS
    var tabElementsWithOutA = '#tabs .link ul li';
    var tabElementsWithA    = tabElementsWithOutA +' a';
    //
    $(tabElementsWithA).click(function(e){
        e.preventDefault();
        //
        $(tabElementsWithOutA).removeClass('sel');
        $(this).parent().addClass('sel');
        //
        var getContentId = $(this).attr('rel');
        //
        $('#tabs .conteudo .content').addClass('hide');
        $('#tabs .conteudo #'+ getContentId).removeClass('hide');
    });

    // CHANGE ARTICLE BOX
    $('#changeArticle select').change( function(){
        top.location = $(this).val();
    });

    // GLOSSARIO
    var h4Link = '#glossario h4 a';
    $( h4Link).click( function(e){
        e.preventDefault();
        // RETURN
        $( h4Link).removeClass('sel');
        $( h4Link +' span').show();
        $( h4Link).parent().next('div').slideUp('slow');

        // EVENT
        $(this).addClass('sel');
        $( h4Link +'.sel span').hide();
        $(this).parent().next('div').slideDown('slow');
    });

});

//valida o CPF digitado
function validaCPF( cpfValue)
{
    var cpf = cpfValue;
    exp = /\.|\-/g;
    cpf = cpf.toString().replace( exp, "" );
    var digitoDigitado = eval(cpf.charAt(9)+cpf.charAt(10));
    var soma1=0, soma2=0;
    var vlr =11;

    for(i=0;i<9;i++)
    {
        soma1+=eval(cpf.charAt(i)*(vlr-1));
        soma2+=eval(cpf.charAt(i)*vlr);
        vlr--;
    }

    soma1 = (((soma1*10)%11)==10 ? 0:((soma1*10)%11));
    soma2 = (((soma2+(2*soma1))*10)%11);

    var digitoGerado=(soma1*10)+soma2;

    if( digitoGerado != digitoDigitado)
        return false;
    else
        return true;
}

// VALIDA CNPJ
function validaCNPJ( cnpjValue)
{
    CNPJ = cnpjValue;
    erro = new String;

    if (CNPJ.length < 18)
        return false;

    if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-"))
    {
            if (erro.length == 0)
                return false;
    }

    //substituir os caracteres que nao sao numeros
    if(document.layers && parseInt(navigator.appVersion) == 4){
            x = CNPJ.substring(0,2);
            x += CNPJ.substring(3,6);
            x += CNPJ.substring(7,10);
            x += CNPJ.substring(11,15);
            x += CNPJ.substring(16,18);
            CNPJ = x;
    }
    else
    {
            CNPJ = CNPJ.replace(".","");
            CNPJ = CNPJ.replace(".","");
            CNPJ = CNPJ.replace("-","");
            CNPJ = CNPJ.replace("/","");
    }

    var nonNumbers = /\D/;

    if (nonNumbers.test(CNPJ))
        return false;

    var a = [];
    var b = new Number;
    var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];

    for (i=0; i<12; i++)
    {
            a[i] = CNPJ.charAt(i);
            b += a[i] * c[i+1];
    }

    if ((x = b % 11) < 2)
    {
        a[12] = 0
    }
    else
    {
        a[12] = 11-x
    }

    b = 0;
    for (y=0; y<13; y++)
    {
            b += (a[y] * c[y]);
    }

    if ((x = b % 11) < 2)
    {
        a[13] = 0;
    }
    else
    {
        a[13] = 11-x;
    }

    if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13]))
            return false;

    return true;
}