Skip to content

Instantly share code, notes, and snippets.

@franklinbr
Created March 27, 2013 15:44
Show Gist options
  • Save franklinbr/5255240 to your computer and use it in GitHub Desktop.
Save franklinbr/5255240 to your computer and use it in GitHub Desktop.
validacao
function DataGarantiaPopup() {
/* retorna data de garantia do bem escolhido */
$('select[name=bem_cod]').change(function(){
var bem_cod = $(this).val();
var bem = $(this).find('option:selected').text();
var posicao = $(this).find('option:selected').index();
if(posicao > 0) {
$('div[class=modulo-painel-titulo-esquerdo]').text(bem);
}
else {
$('div[class=modulo-painel-titulo-esquerdo]').html(' ');
}
if(bem_cod > 0) {
$.ajax({
type: "POST",
url: "index.php",
cache: false,
data: {tipo: 'validacao', bem_cod: bem_cod},
dataType: 'json',
context: $(this),
beforeSend: function() {
$('.modulo-modal-loader-container').fadeIn();
$("select[name=bem_cod]").select2('disable');
},
success: function(dados){
if(dados.status) {
var tipo = $('input[name=tipo]').val();
if(tipo == 'inserir') {
if(dados.total == 0) {
if(dados.data_garantia != 0) {
var dias = 0;
dias = IntervaloDias(dados.data_garantia);
if(dias >= 0) {
if(dias > 60) {
ValidoLongo(dados, dias);
}
else {
ValidoCurto(dados, dias);
}
}
else {
Vencido(dados, dias);
}
}
else {
NaoDeclarado(dados, dias);
}
}
else {
/* sistema de mensagem feedback */
$('.modulo-feedback').addClass('modulo-msg-error').text('Este bem já está em Manutenção!').show();
setTimeout(function(){
$('.modulo-feedback').removeClass('modulo-msg-error').text('').hide();
}, 4000);
/* reseta o select */
$("select[name=bem_cod]").select2('val', 0);
/* tira o nome do display topo */
$('div[class=modulo-painel-titulo-esquerdo]').html(' ');
}
$("select[name=bem_cod]").select2('enable');
if(dados.total == 0) {
/* mostra o popup do com dados do bem */
$('div[class=popup-garantia]').fadeIn();
}
}
else if(tipo == 'alterar' || tipo == 'retornar') {
//validacao apenas em bem diferente do alterado ou retornado
var bem_cod_matriz = $('input[name=bem_cod_matriz]').val();
var permissao = true;
if(bem_cod != bem_cod_matriz) {
if(dados.total > 0) {
/* sistema de mensagem feedback */
$('.modulo-feedback').addClass('modulo-msg-error').text('Este bem já está em Manutenção!').show();
setTimeout(function(){
$('.modulo-feedback').removeClass('modulo-msg-error').text('').hide();
}, 4000);
/* reseta o select */
$("select[name=bem_cod]").select2('val', bem_cod_matriz);
permissao = false;
}
}
if(dados.data_garantia != 0 && permissao) {
var dias = 0;
dias = IntervaloDias(dados.data_garantia);
if(dias >= 0) {
if(dias > 60) {
ValidoLongo(dados, dias);
}
else {
ValidoCurto(dados, dias);
}
}
else {
Vencido(dados, dias);
}
}
else {
NaoDeclarado(dados, dias);
}
$("select[name=bem_cod]").select2('enable');
/* mostra o popup do com dados do bem */
$('div[class=popup-garantia]').fadeIn();
}
}
/* esconde o loader */
$('.modulo-modal-loader-container').fadeOut();
},
error: function(){
/* empty */
}
});
}
else {
/* esconde o popup */
$('div[class=popup-garantia]').fadeOut();
}
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment