/**************************************************************
*
* CLASSE JAVASCRIPT REFERENCIA
*
* CRIADO POR: JONATAN BRANDI
* DATA: 13/07/2010
* OBS:
* EDITADO POR: JONATAN BRANDI
* DATA: 13/07/2010
* OBS:
*
*************************************************************/

function pesquisar(evtClick, fkempresa, msgErro, var_id) {
    if ($.trim(document.getElementById(var_id + "inf_referencia").value) == '') {
        alert('Preencha a referência para continuar.')
        return false;
    }
    var v_referencia = document.getElementById(var_id + "inf_referencia").value;
    $.post("../../../Components/buscasReferencia/referenciaBasica/Ajax/processa1.aspx", { fkempresa: fkempresa, referencia: v_referencia }, function (resposta) {
        if (resposta != '-1') {
            eval(evtClick.replace(/\[pkimovel\]/g, resposta).replace(/\[fkempresa\]/g, fkempresa));
        }
        else {
            document.getElementById(var_id + "inf_referencia").value = msgErro;
        }
    });
}

function clickPesquisar(referencia) {
    var evtClick = referencia.evtClick;
    var fkempresa = referencia.fkempresa;
    var msgErro = referencia.msgErro;
    var var_id = referencia.id;
    $("#" + var_id + "btn_pesquisar").click(function () {
        pesquisar(evtClick, fkempresa, msgErro, var_id);
    });
}

function teclaInput(referencia) {
    var evtClick = referencia.evtClick;
    var fkempresa = referencia.fkempresa;
    var msgErro = referencia.msgErro;
    var var_id = referencia.id;

    $("#" + var_id + "inf_referencia").keypress(function () {        
        var keynum;

        if (window.event) {
            keynum = event.keyCode
        } else if (event.which) {
            keynum = event.which
        }
        if (keynum == 13) {
            pesquisar(evtClick, fkempresa, msgErro, var_id);
            return false;
        }
        else {
            if (document.getElementById(var_id + "inf_referencia").value == msgErro)
                document.getElementById(var_id + "inf_referencia").value = "";
        }
    });

    $("#" + var_id + "inf_referencia").focus(function () {
        if (document.getElementById(var_id + "inf_referencia").value == msgErro)
            document.getElementById(var_id + "inf_referencia").value = "";
    });
}

function print(referencia)
{	
    $(this.destino).append(this.layout);
    referencia.clickPesquisar(referencia)
    referencia.teclaInput(referencia)    
}

function Referencia(fkempresa, id, destino, layout, evtClick, msgErro) {
    // Código fk empresa
    this.fkempresa = fkempresa;
    // Id para objetos
    this.id = id;
    //Destino 
	this.destino = destino;
    // Layout da consulta
	this.layout = layout;
	// Evento a ser executado quando encontra referencia
	this.evtClick = evtClick;
    // Mensagem de Erro 
    this.msgErro = msgErro;

    //Métodos
	this.print = print;
	this.clickPesquisar = clickPesquisar;
	this.teclaInput = teclaInput;
}

