/*
    Bio Brasil - site 2011
    www.cebinet.com.br
    silviosa@sswin.com.br
    Janeiro 2011
*/
var siteBiobrasil = {

    CallBack: '',

    Paginas: {
        home: {
            id: 'home',
            proxima: 'empresa',
            anterior: 'contato',
            trocaImagens: false,
            url: 'index.html'
        },
        empresa: {
            id: 'empresa',
            proxima: 'equipe',
            anterior: 'home',
            trocaImagens: false,
            url: 'empresa.html'
        },
        equipe: {
            id: 'equipe',
            proxima: 'produtos',
            anterior: 'empresa',
            trocaImagens: false,
            url: 'equipe.html'
        },
        produtos: {
            id: 'produtos',
            proxima: 'loja',
            anterior: 'equipe',
            trocaImagens: false,
            url: 'loja.html?m=P'
        },
        loja: {
            id: 'loja',
            proxima: 'newsletter',
            anterior: 'produtos',
            url: 'loja.html?m=L',
            trocaImagens: true,
            tempoSegundos: 15,
            imagemAtual: 0,
            imagens: [
                "loja_imagem_topo.jpg",
                "loja_imagem_topo_1.jpg",
                "loja_imagem_topo_2.jpg"
            ]
        },
        newsletter: {
            id: 'newsletter',
            proxima: 'contato',
            anterior: 'loja',
            trocaImagens: false,
            url: 'newsletter.html'
        },
        contato: {
            id: 'contato',
            proxima: 'home',
            anterior: 'newsletter',
            trocaImagens: false,
            url: 'contato.html'
        },
        cadastro: {
            id: 'cadastro',
            proxima: 'loja',
            anterior: 'loja',
            trocaImagens: false,
            url: 'cadastro.html'
        },
        carrinho: {
            id: 'carrinho',
            proxima: 'loja',
            anterior: 'loja',
            trocaImagens: false,
            url: 'carrinho.html'
        },
        carrinho: {
            id: 'pedidos',
            proxima: 'loja',
            anterior: 'loja',
            trocaImagens: false,
            url: 'pedidos.html'
        }
    },

    PaginaID: '',

    qs: {},

    Carregar: function(id, callback){

        this.PaginaID = id;
        $('#topo').load('topo.html', function(){ siteBiobrasil.ConfigurarTopo(); });
        $('#rodape').load('rodape.html');

        this.qs = this.getQueryString();
        if(this.PaginaID == 'loja'){
            if(this.qs.m == 'P'){
                this.PaginaID = 'produtos';
            }
        }

        this.CallBack = '';
        if(callback != 'undefined'){
            this.CallBack = callback;
        }

        SDI4.setModoPHP();

    },

    ConfigurarTopo: function(){
        $('#menuLnk_' + siteBiobrasil.PaginaID).attr('class','verde');
        $('#navegaDir').click( function(){ siteBiobrasil.NavegarProximo(); });
        $('#navegaEsq').click( function(){ siteBiobrasil.NavegarAnterior(); });
        $('.imagemFigura').css('background-image', 'url(images/' + siteBiobrasil.PaginaID + '_imagem_topo.jpg)');
        this.Temporizador();
        siteBioLogin.Carregar();
    },

    MostrarImagem: function(imagem){
        if(imagem == ''){
            $('.imagemFigura').css('background-image', 'url(images/' + siteBiobrasil.PaginaID + '_imagem_topo.jpg)')
        } else {
            $('.imagemFigura').css('background-image', 'url(' + imagem + ')')
        }
    },

    NavegarAnterior: function(){
        var pg = siteBiobrasil.Paginas[this.PaginaID].anterior;
        url = siteBiobrasil.Paginas[pg].url;
        window.location = url;
        return;
    },

    NavegarProximo: function(){
        var pg = siteBiobrasil.Paginas[this.PaginaID].proxima;
        url = siteBiobrasil.Paginas[pg].url;
        window.location = url;
        return;
    },

    Temporizador: function(){
        if(this.Paginas[this.PaginaID].trocaImagens){
            if($(document).everyTime == undefined){
                window.alert('Esta página precisa do plugin jquery.timers-1.2.js');
                return;
            }
            siteBiobrasil.Paginas[this.PaginaID].imagemAtual = 0;
            var seg = siteBiobrasil.Paginas[this.PaginaID].tempoSegundos;
            $(document).everyTime('' + seg + 's', function(i) { siteBiobrasil.TemporizadorMudaImagem() }, 0);
        }
    },

    TemporizadorMudaImagem: function(){
        var imgAtual = siteBiobrasil.Paginas[this.PaginaID].imagemAtual;
        siteBiobrasil.Paginas[this.PaginaID].imagemAtual++;
        if(siteBiobrasil.Paginas[this.PaginaID].imagemAtual >= siteBiobrasil.Paginas[this.PaginaID].imagens.length){
            siteBiobrasil.Paginas[this.PaginaID].imagemAtual = 0;
        }
        this.MostrarImagem('images/' + siteBiobrasil.Paginas[this.PaginaID].imagens[siteBiobrasil.Paginas[this.PaginaID].imagemAtual]);
    },

    getQueryString: function(){
        var qsElm=window.location.search.substr(1).split('&');
        var qs=new Object();
        for(i=0; i<qsElm.length; i++){ var el=qsElm[i].split('='); qs[el[0]]=el[1]; }
        return qs;
    }

};


// ----------------------------------------
// CONTROLE DO LOGIN
// ----------------------------------------

var siteBioLogin = {


// ----------------------------------------
// inicilaização
// ----------------------------------------

    Carregar:function(){

        // ações
        $('#LGNcpfcnpj').keypress(function(e){ if(e.which==13) { $('#LGNentrar').click(); } });
        $('#LGNsenha').keypress(function(e){ if(e.which==13) { $('#LGNentrar').click(); } });

        $('#LGNentrar').click(function(){ siteBioLogin.Permissao.Entrar(); });
        $('#LGNesqueci').click(function(){ siteBioLogin.Senha.Esqueci(); });
        $('#LGNnovo').click(function(){ siteBioLogin.Senha.MeuCadastro(); });
        $('#LGNmeucarrinho').click(function(){ siteBioLogin.Senha.MeuCarrinho(); });
        $('#LGNmeuspedidos').click(function(){ siteBioLogin.Senha.MeusPedidos(); });
        $('#LGNmeucadastro').click(function(){ siteBioLogin.Senha.MeuCadastro(); });
        $('#LGNsair').click(function(){ siteBioLogin.Permissao.Sair(); });

        this.Mostrar();
    },

    Foco: function(){
        $('#LGNcpfcnpj').focus();
    },

    Mostrar: function(){
        // decidir se está logado
        siteBioLogin.Permissao.Check();
        if(siteBioLogin.Permissao.Dados.id == ''){
            $('#topoLogado').hide();
            $('#topoLogin').show();
        } else {
            $('#LGNlogado').text('Conectado como ' + siteBioLogin.Permissao.Dados.nome);
            $('#topoLogin').hide();
            $('#topoLogado').show();
        }

        // call back
        if(siteBiobrasil.CallBack != ''){
            eval(siteBiobrasil.CallBack);
        }

        // re-exibir
//        var site = top.frames['principal'].document.referrer;
//        var url = top.frames['principal'].document.URL;
//        var pagina = url.substr(site.length);
//        if(pagina == 'documentos.htm'){
//            top.frames['principal'].siteDocumentos.Mostrar();
//        }
    },


// ----------------------------------------
// permissão
// ----------------------------------------

    Permissao : {

        Dados: {
            id: '',
            nome: "",
            fab: '',
            cat: '',
            prd: ''
        },

        scriptAcesso: 'sistema/site2011/login/controle.acesso.php',
        scriptDados: 'sistema/site2011/login/login.php',
        prefixo: 'siteBio',

        Check: function(){
            $.ajax({
                url: this.scriptAcesso,
                data: {
                    acao: "check",
                    prfx: this.prefixo
                },
                type: "POST",
                dataType: 'json',
                async: false,
                error: function(r, s, e){
                    siteBioLogin.Permissao.Dados.id='';
                    siteBioLogin.Permissao.Dados.nome='';
                    var m='O site informou: '+(s?(s+' '):'')+(e?(e+' '):'')+"\n"+r.responseText;
                    $('#areaLoginErro').html(m);
                },
                success: function(dados){
                    if(dados.loja.retCode=='ok'){
                        siteBioLogin.Permissao.Dados.fab=dados.loja.rs[0].fab;
                        siteBioLogin.Permissao.Dados.cat=dados.loja.rs[0].cat;
                        siteBioLogin.Permissao.Dados.prd=dados.loja.rs[0].prd;
                    }
                    if(dados.login.retCode=='ok'){
                        siteBioLogin.Permissao.Dados.id=dados.login.rs[0].id;
                        siteBioLogin.Permissao.Dados.nome=dados.login.rs[0].nome;
                    } else {
                        siteBioLogin.Permissao.Dados.id='';
                        siteBioLogin.Permissao.Dados.nome='';
                        if (dados.login.retCode == 'negado'){
                            return;
                        }
                        siteBioLogin.Erros(dados.login.erros);
                    }
                }
            });
        },

        Cancel: function(prefixo){
            $.ajax({
                url: this.scriptAcesso,
                data: {
                    acao: "cancel",
                    prfx: this.prefixo
                },
                type: "POST",
                dataType: 'json',
                async: false,
                error: function(r, s, e){
                    siteBioLogin.Permissao.Dados.id='';
                    siteBioLogin.Permissao.Dados.nome='';
                    var m='O site informou: '+(s?(s+' '):'')+(e?(e+' '):'')+"\n"+r.responseText;
                    $('#areaLoginErro').html(m);
                },
                success: function(dados){
                    siteBioLogin.Permissao.Dados.id='';
                    siteBioLogin.Permissao.Dados.nome='';
                }
            });
        },

        Entrar: function(){
            // validacao
            vld=new sjsValidacao( { "id": 'validLGN' } );
            vld.obrigatorio("LGNcpfcnpj", "Informe o CPF ou CNPJ");
            vld.cpfCnpj('LGNcpfcnpj', "CPF ou CNPJ: ")
            vld.obrigatorio("LGNsenha", "Informe sua senha");
            if(!vld.ok){
                var m = '';
                for( var i = 0; i < vld.mensagens.length; i++){
                    var r = vld.mensagens[i];
                    if(m != ''){ m += "<br />"; }
                    m += r.msg;
                }
                $('#areaLoginErro').html(m);
                return;
            }

            // verificar o login
            $.ajax({
                url: this.scriptDados,
                data: {
                    acao: "login",
                    cpf_cnpj: $('#LGNcpfcnpj').val(),
                    senha: $('#LGNsenha').val()
                },
                type: "POST",
                dataType: 'json',
                error: function(r, s, e){
                    var m='O site informou: '+(s?(s+' '):'')+(e?(e+' '):'')+"\n"+r.responseText;
                    $('#areaLoginErro').html(m);
                },
                success: function(dados){
                    if(dados.tabela.retCode != 'ok'){
                        siteBioLogin.Erros(dados.tabela.erros);
                        return;
                    }
                    $('#LGNcpfcnpj').val('');
                    $('#LGNsenha').val('');
                    $('#areaLoginErro').html('');
                    siteBioLogin.Mostrar();
                }
            });

        },

        Sair: function(){
            $('#LGNlogado').text('');
            this.Cancel();
            siteBioLogin.Mostrar();
        }

    },


// ----------------------------------------
// senha
// ----------------------------------------

    Senha: {

        scriptDados: 'sistema/site2011/login/login.php',

        Esqueci: function(){

            // validacao
            vld=new sjsValidacao( { "id": 'validLGN' } );
            vld.obrigatorio("LGNcpfcnpj", "Informe o CPF ou CNPJ");
            vld.cpfCnpj('LGNcpfcnpj', "CPF ou CNPJ: ")
            if(!vld.ok){
                var m = '';
                for( var i = 0; i < vld.mensagens.length; i++){
                    var r = vld.mensagens[i];
                    if(m != ''){ m += "\n"; }
                    m += r.msg;
                }
                $('#areaLoginErro').html(m);
                $('#LGNcpfcnpj').focus();
                return;
            }

            // verificar o login
            $.ajax({
                url: this.scriptDados,
                data: {
                    acao: "esqueci",
                    cpf_cnpj: $('#LGNcpfcnpj').val()
                },
                type: "POST",
                dataType: 'json',
                error: function(r, s, e){
                    var m='O site informou: '+(s?(s+' '):'')+(e?(e+' '):'')+"\n"+r.responseText;
                    $('#areaLoginErro').html(m);
                },
                success: function(dados){
                    if(dados.tabela.retCode != 'ok'){
                        siteBioLogin.Erros(dados.tabela.erros);
                        return;
                    }
                    $('#LGNcpfcnpj').val('');
                    $('#LGNsenha').val('');
                    siteBioLogin.Mostrar();
                    var m = 'Sua senha foi enviada para seu endereço de e-mail cadastrado';
                    $('#areaLoginErro').html(m);
                }
            });

        },

        MeuCadastro: function(){
            window.location = 'cadastro.html';
        },

        MeuCarrinho: function(){
            window.location = 'carrinho.html?m=ver';
        },

        MeusPedidos: function(){
            window.location = 'pedidos.html';
        },

        Mostrar: function(){
            $('#LGNlogado').hide();
            $('#LGNlogin').hide();
            $('#LGNmudarsenha').show();
            $('#LGNnova').focus();
        }

    },


// ----------------------------------------
// erros
// ----------------------------------------

    Erros: function(erros){
        if (erros == undefined){ return; }
        var  m = '';
        for( var i = 0; i < erros.length; i++){
            var e = erros[i];
            if (m != '') { m += "\n"; }
            m += e;
        }
        $('#areaLoginErro').html(m);
    }

};

