mirror of https://github.com/interlegis/sapl.git
				
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							179 lines
						
					
					
						
							4.7 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							179 lines
						
					
					
						
							4.7 KiB
						
					
					
				| 
 | |
| function onEventsDneExec(pk) { | |
| 
 | |
| 	$('html, body').animate({ | |
| 		scrollTop: $('#dne' + pk ).offset().top - window.innerHeight / 5 | |
| 	}, 300); | |
| 
 | |
| 	$('.dateinput').fdatepicker({ | |
| 		// TODO localize | |
| 		format: 'dd/mm/yyyy', | |
| 		language: 'pt', | |
| 		endDate: '31/12/2100', | |
| 		todayBtn: true | |
| 	}); | |
| 
 | |
| 	$('#dne'+pk+" .primary").click(onSubmitEditForm); | |
| 	$('#dne'+pk+" .btn-close-container").click(function(){ | |
| 		$(this).closest('.dne-nota').removeClass('dne-nota'); | |
| 		$(this).closest('.dne-form').html(''); | |
| 	}); | |
| 
 | |
| 	$('#dne'+pk+" select[name='tipo']").change(function(event) { | |
| 		var url = ''; | |
| 		url = 'text/'+pk+'/nota/create?action=modelo_nota&id_tipo='+this.value; | |
| 		$.get(url).done(function( data ) { | |
| 			$('#dne'+pk+" textarea[name='texto']").val(data); | |
| 		}); | |
| 	}); | |
| 
 | |
| 	$('#dne'+pk+" select[name='tipo_norma']" | |
| 	).change(onChangeParamNorma); | |
| 
 | |
| 	$('#dne'+pk+" input[name='num_norma'], " | |
| 		+ '#dne'+pk+" input[name='ano_norma'], " | |
| 		+ '#dne'+pk+" input[name='busca_dispositivo']" | |
| 	).change(onChangeParamNorma); | |
| 
 | |
| 	$('#dne'+pk+" .btn-busca").click(onChangeParamNorma); | |
| 
 | |
| 	onChangeParamNorma(); | |
| } | |
| var onChangeParamNorma = function(event) { | |
| 	var tipo_ta = $("select[name='tipo_ta']").val(); | |
| 	var num_ta = $("input[name='num_ta']").val(); | |
| 	var ano_ta = $("input[name='ano_ta']").val(); | |
| 	var busca_dispositivo = $("input[name='busca_dispositivo']").val(); | |
| 	var dispositivo_ref = $("#id_dispositivo_ref").val(); | |
| 	$('#id_dispositivo_ref').remove(); | |
| 
 | |
| 	if (dispositivo_ref == null) | |
| 		dispositivo_ref = '' | |
| 
 | |
| 	var url = ''; | |
| 	var pk = $("select[name='tipo_ta']").closest('.dne').attr('pk') | |
| 
 | |
| 	var formData = { | |
| 		'tipo_ta'            : tipo_ta, | |
| 		'num_ta'             : num_ta, | |
| 		'ano_ta'             : ano_ta, | |
| 		'busca'               	: busca_dispositivo, | |
| 		'tipo_form'             : 'radio', | |
| 		'initial_ref'           : dispositivo_ref | |
| 	}; | |
| 
 | |
| 	url = 'text/search'; | |
| 	$('.container-busca').html(''); | |
| 	insertWaitAjax('.container-busca') | |
| 	$.get(url, formData).done(function( data ) { | |
| 		$('.container-busca').html(data); | |
| 		$("input[name='dispositivo_ref']").first().prop('checked', true); | |
| 	}); | |
| } | |
| 
 | |
| var onSubmitEditForm = function(event) { | |
| 
 | |
| 	var url = ''; | |
| 	var model = 'nota'; | |
| 	var id_edit = null; | |
| 	var id_dispositivo = $('#id_dispositivo').val(); | |
| 
 | |
| 	if (id_dispositivo == null) { // trata-se de um vide | |
| 		$('#id_dispositivo_ref').remove(); | |
| 		id_dispositivo = $('#id_dispositivo_base').val(); | |
| 		model='vide'; | |
| 	} | |
| 
 | |
| 	id_edit = $('#id_pk').val(); | |
| 	url = 'text/'+id_dispositivo+'/'+model+'/' | |
| 	if (id_edit == null || id_edit == '') | |
| 		url += 'create'; | |
| 	else | |
| 		url += id_edit+'/edit'; | |
| 
 | |
| 	console.log($('#dne'+id_dispositivo+" form").serialize()); | |
| 
 | |
| 	$.post( url, $('#dne'+id_dispositivo+" form").serialize(), function(data) { | |
| 
 | |
| 			if (typeof data == "string") { | |
| 				if (data.indexOf('<form') >= 0) { | |
| 					$('#dne'+id_dispositivo+' .dne-form').html(data); | |
| 					onEventsDneExec(id_dispositivo); | |
| 				} | |
| 				else { | |
| 					$('#dne'+id_dispositivo+' .dne-form').closest('.dpt').html(data) | |
| 					onReadyNotasVides(); | |
| 
 | |
| 					$('html, body').animate({ | |
| 						scrollTop: $('#dne' + id_dispositivo ).offset().top - window.innerHeight / 3 | |
| 					}, 300); | |
| 
 | |
| 				} | |
| 			} | |
| 		} | |
| 	); | |
| } | |
| var onDelete = function(event) { | |
| 
 | |
| 	var model = $(event).attr('model'); | |
| 
 | |
| 	var id_dispositivo =  $(event).closest('.dn').attr('pk'); | |
| 	var id_delete = $(event).attr('pk'); | |
| 	var url = 'text/'+id_dispositivo+'/'+model+'/'+id_delete+'/delete'; | |
| 
 | |
| 	$.get( url, function(data) { | |
| 		$('#dne'+id_dispositivo+' .dne-form').closest('.dpt').html(data) | |
| 		onReadyNotasVides(); | |
| 		} | |
| 	); | |
| } | |
| 
 | |
| function getForm(_this) { | |
| 
 | |
| 	var url = ''; | |
| 	var model = $(_this).attr('model'); | |
| 	var id_dispositivo = $('.dne-nota .dne-form').closest('.dne').attr('pk'); | |
| 	if (id_dispositivo != null) { | |
| 		$('#dne'+id_dispositivo).removeClass('dne-nota'); | |
| 		$('#dne'+id_dispositivo+' .dne-form').html(''); | |
| 	} | |
| 
 | |
| 	if (_this.className.indexOf('create') >= 0 ) { | |
| 		id_dispositivo = $(_this).attr('pk'); | |
| 		url = 'text/'+id_dispositivo+'/'+model+'/create'; | |
| 	} | |
| 	else if (_this.className.indexOf('edit') >= 0 ) { | |
| 		var id_edit = $(_this).attr('pk'); | |
| 		id_dispositivo = $(_this).closest('.dn').attr('pk'); | |
| 		url = 'text/'+id_dispositivo+'/'+model+'/'+id_edit+'/edit' | |
| 	} | |
| 
 | |
| 	$('#dne'+id_dispositivo).addClass('dne-nota'); | |
| 
 | |
| 	$.get(url).done(function( data ) { | |
| 		$('#dne'+id_dispositivo+' .dne-form').html(data); | |
| 		onEventsDneExec(id_dispositivo); | |
| 	}).fail(function() { | |
| 		onReadyNotasVides(); | |
| 	}); | |
| } | |
| 
 | |
| function onReadyNotasVides() { | |
| 
 | |
| 		$('.dne-nota').removeClass('dne-nota'); | |
| 		$('.dne-form').html(''); | |
| 
 | |
| 		$('.dne .btn-action').off(); | |
| 		$('.dn .btn-action').off(); | |
| 
 | |
| 		$('.dne .btn-action, .dn .btn-action').not('.btn-nota-delete').not('.btn-vide-delete').click(function(){ | |
| 			getForm(this); | |
| 		}); | |
| 
 | |
| 		$('.dn .btn-nota-delete, .dn .btn-vide-delete').click(function(){ | |
| 			onDelete(this); | |
| 		}); | |
| } | |
| $(document).ready(function() { | |
| 	onReadyNotasVides() | |
| });
 | |
| 
 |