STATUS = { ERRO : 'erro', ALERTA : 'alerta', SUCESSO : 'sucesso' }; Mensagem = { show : function(status, mensagem){ $('.mensagem-materia-prima.'+status).text(mensagem).show(); } }; MensagemProduto = { show : function(status, mensagem){ $('.mensagem-produto.'+status).text(mensagem).show(); } }; PopupConsultarMateriaPrima = { parametros : null, urlPesquisa : null, elementoResultadoPesquisa : null, tabelaResultado : null, pagina : null, carregaParametros : function(elemento){ valor = $(elemento.attr('data-pesquisa-materia-prima')).attr('name') + "="; valor += $(elemento.attr('data-pesquisa-materia-prima')).val(); this.parametros = valor; this.urlPesquisa = $(elemento.attr('data-url-pesquisa')).val(); this.elementoResultadoPesquisa = $(elemento.attr('data-resultado-pesquisa')); this.tabelaResultado = $(elemento.attr('data-tabela-materia-prima')); }, limpaMensagens : function(){ $('.mensagem-materia-prima').empty().hide(); $('.resultado-pesquisa-materia-prima' ).empty(); $('.divSelecionarMateriaPrima').hide(); }, iniciar : function(){ $('.consultar-materia-prima').click(function(event){ event.preventDefault(); PopupConsultarMateriaPrima.pagina = null; PopupConsultarMateriaPrima.carregaParametros($(this)); PopupConsultarMateriaPrima.consultar(); }); $('.modal-materia-prima').dialog({ autoOpen :false, modal :true, width :700, height :550, resizable :false }); $('.btn-abrir-modal-materia-prima').click(function(event){ event.preventDefault(); PopupConsultarMateriaPrima.limpaMensagens(); $('.campos-materia-prima').val(''); idModal = $(this).attr('data-modal'); $(idModal).dialog('open'); }); $('.btnSelecionarMateriaPrima').click(function(e){ e.preventDefault(); selecionado = $('.isChecked'); $('.isChecked').removeClass('isChecked'); descricaoMateriaPrima = selecionado.attr('data-descricao-materia-prima'); idMateriaPrima = selecionado.val(); $($(this).attr('data-id-materia-prima')).val(idMateriaPrima); $($(this).attr('data-descricao-materia-prima')).val(descricaoMateriaPrima); $($(this).attr('data-modal')).dialog('close'); $($(this).attr('data-modal')).dialog('close'); if($.trim($(this).attr('data-url-selecionar-materia'))!=''){ formularioAlvo = $($(this).attr('data-id-materia-prima')).parents('form:eq(0)'); formularioAlvo.attr('action',$(this).attr('data-url-selecionar-materia')); formularioAlvo.find("input").removeAttr('disabled').removeAttr('readonly'); formularioAlvo.submit(); } }); $('.limpar-modal-materia-prima').click(function(e){ e.preventDefault(); $($(this).attr('data-resultado')).empty(); $($(this).attr('data-btns')).hide(); $($(this).attr('data-tx-pesquisa')).val('').focus(); $('.modal-materia-prima .mensagem-materia-prima').hide(); }); }, consultar : function(){ $.ajax({ url : this.urlPesquisa, data: this.pagina != null ? this.parametros + this.pagina : this.parametros, dataType: 'json', type: 'post', beforeSend: function() { PopupConsultarMateriaPrima.limpaMensagens(); bloquearBrowser(); }, success: function(json) { if(json.status == 'sucesso') { PopupConsultarMateriaPrima.copiaTabela(); PopupConsultarMateriaPrima.renderiza(json); PopupConsultarMateriaPrima.renderizarPaginador(json); } else { Mensagem.show(json.status, json.mensagem); } }, error: function(data) { alert('Ocorreu um erro inesperado!'); } }); }, copiaTabela : function(){ novaTabela = this.tabelaResultado.clone(); novaTabela.removeAttr('id') this.elementoResultadoPesquisa.append(novaTabela); }, renderiza : function(json) { bodyTabelaResultado = $('#' + this.elementoResultadoPesquisa.attr('id') + ' tbody'); $.each(json.colecao, function(i, o) { linha = $(''); if (i % 2 != 0){ linha.addClass('linha-alternada'); } colunaRadio = $(''); colunaText = $(''); radio = $('') .addClass('materiaPrima') .attr('name','itemMateriaPrima') .attr('data-descricao-materia-prima', o.descricao) .attr('type','radio') .val(o.id) .click(function(){$(this).addClass('isChecked')}); colunaRadio.append(radio); colunaText.text(o.descricao); linha.append(colunaRadio).append(colunaText); bodyTabelaResultado.append(linha); }); $('.resultado-pesquisa-materia-prima .tabela-materia-prima, .divSelecionarMateriaPrima').show(); }, renderizarPaginador : function(paginador){ var primeiraPagina; var paginaAnterior; var proximaPagina; var ultimaPagina; labelQtdeRegistros = $('