document.getElementById('rota').onchange = function() { chamaGetPonto(); } var valPonto = 0; function chamaGetPonto(){ var campoRota = document.getElementById('rota').value; var campoPonto= document.getElementById('ponto'); if (campoRota==''){ campoPonto.length = 1; campoPonto.options[0].text = 'Selecione uma rota acima'; }else{ campoPonto.length = 1; campoPonto.disabled = true; campoPonto.options[0].text = 'Carregando pontos...'; var xml_ponto = new ajax( getPonto ); xml_ponto.envia( "ponto_xml.php?rota="+campoRota ); } } function getPonto( xml_ponto ) { var campoPonto = document.getElementById('ponto'); var DOM_array = xml_ponto.getElementsByTagName( "ponto" ); if(DOM_array.length) { campoPonto.length = 1; campoPonto.options[0].text = 'Selecione um ponto'; campoPonto.disabled = false; for( var i = 0; i < DOM_array.length; i++ ) { campoPonto.options[campoPonto.options.length] = new Option( DOM_array[i].firstChild.data, DOM_array[i].getAttribute("cod_ponto"),false,false); } $j('#ponto').val(valPonto); } else campoPonto.options[0].text = 'Rota sem pontos'; } // before page is ready $deleteButton = $j('').html('') .addClass('botaolistagem').insertAfter('#btn_enviar'); var $idField = $j('#id'); var $nomeField = $j('#pessoa_nome'); var $resourceNotice = $j('').html('') .addClass('error resource-notice') .hide() .width($nomeField.outerWidth() - 12) .insertBefore($idField.parent()); var $pessoaNotice = $resourceNotice.clone() .appendTo($nomeField.parent()); // ajax resourceOptions.handlePost = function(dataResponse) { $nomeField.attr('disabled', 'disabled'); $j('.pessoa-links .cadastrar-pessoa').hide(); if (! dataResponse.any_error_msg) window.setTimeout(function() { document.location = '/intranet/transporte_pessoa_det.php?cod_pt=' + resource.id(); }, 500); else $submitButton.removeAttr('disabled').val('Gravar'); } resourceOptions.handlePut = function(dataResponse) { if (! dataResponse.any_error_msg) window.setTimeout(function() { document.location = '/intranet/transporte_pessoa_det.php?cod_pt=' + resource.id(); }, 500); else $submitButton.removeAttr('disabled').val('Gravar'); } resourceOptions.handleGet = function(dataResponse) { valPonto = dataResponse.ponto; handleMessages(dataResponse.msgs); $resourceNotice.hide(); $deleteButton.removeAttr('disabled').show(); $(''); if (dataResponse.pessoa) getPersonDetails(dataResponse.pessoa); $idField.val(dataResponse.id); $j('#rota').val(dataResponse.rota); chamaGetPonto(); $j('#observacao').val(dataResponse.observacao); $j('#nome').val(dataResponse.pessoa+' - '+dataResponse.pessoa_nome); $j('#pessoa_id').val(dataResponse.pessoa); if (dataResponse.pessoaj){ $j('#pessoaj_destino').val(dataResponse.pessoaj+' - '+dataResponse.pessoaj_nome); $j('#pessoaj_id').val(dataResponse.pessoaj); } }; var handleGetPersonDetails = function(dataResponse) { handleMessages(dataResponse.msgs); $pessoaNotice.hide(); var alunoId = dataResponse.aluno_id; $j('.pessoa-links .editar-pessoa').attr('href', '/intranet/atendidos_cad.php?cod_pessoa_fj=' + dataResponse.id) .show().css('display', 'inline'); $submitButton.removeAttr('disabled').show(); $j('#pessoa_id').val(dataResponse.id); $nomeField.val(dataResponse.id + ' - ' + dataResponse.nome); } var getPersonDetails = function(personId) { var additionalVars = { id : personId }; var options = { url : getResourceUrlBuilder.buildUrl('/module/Api/pessoa', 'pessoa', additionalVars), dataType : 'json', data : {}, success : handleGetPersonDetails }; getResource(options); } var updatePersonDetails = function() { if ($j('#pessoa_nome').val() && $j('#pessoa_id').val()) getPersonDetails($j('#pessoa_id').val()); else clearPersonDetails(); } var clearPersonDetails = function() { $j('#pessoa_id').val(''); $j('.pessoa-links .editar-pessoa').hide(); } // simple search options var simpleSearchPessoaOptions = { autocompleteOptions : { close : updatePersonDetails /*, change : updatePersonDetails*/ } }; // children callbacks function afterChangePessoa(targetWindow, pessoaId) { targetWindow.close(); // timeout para usuario perceber mudança window.setTimeout(function() { messageUtils.success('Pessoa alterada com sucesso', $nomeField); $j('#pessoa_id').val(pessoaId); getPersonDetails(pessoaId); if ($nomeField.is(':active')) $nomeField.focus(); }, 500); } // when page is ready (function($) { $(document).ready(function() { // pessoa var $pessoaActionBar = $j('').html('') .addClass('pessoa-links') .width($nomeField.outerWidth() - 12) .appendTo($nomeField.parent()); $j('').hide() .addClass('cadastrar-pessoa decorated') .attr('href', '/intranet/atendidos_cad.php') .attr('target', '_blank') .html('Cadastrar pessoa') .appendTo($pessoaActionBar); $j('').hide() .addClass('editar-pessoa decorated') .attr('href', '#') .attr('target', '_blank') .html('Editar pessoa') .appendTo($pessoaActionBar); if (resource.isNew()) { $nomeField.focus(); $j('.pessoa-links .cadastrar-pessoa').show().css('display', 'inline'); } else $nomeField.attr('disabled', 'disabled'); }); // ready })(jQuery);