var table;

$(document).ready(function() {
	table = $("#grid");

	get_dados_grid();

	$('#grid tbody').on( 'click', 'tr', function () {
		if ( $(this).hasClass('active') ) {
			limpar_selecao_grid();
		}
		else {
			table.find('tr.active').removeClass('active');
			$(this).addClass('active');
			var id = table.find('tr.active').attr('rowid');
			var url_editar = $("#editar").attr('data-href').replace('{id}',id);
			$("#editar").attr('href',url_editar);
		}
	} );

	$("#importar").click(function(event){
		event.preventDefault();
		//@ToDO Ajax Upload funciton
		get_dados_grid();
	})

	$("#editar").click(function(event){
		if ($(this).attr('href') == '#') {
			event.preventDefault();
			msg_alert("Selecione um {programacao} para editar! ");
		} else {
			return true;
		}
	})

	$("#deletar").click(function(event){
		event.preventDefault();
		var id = table.find('tr.active').attr('rowid');
		if ( id == undefined ) {
			msg_alert("Selecione um {programacao} para remover!");
			return false;
		}
		//@ToDo Ajax Function
	})

})

function limpar_selecao_grid() {
	table.find('tr.active').removeClass('active');
	$("#editar").attr('href','#');
}

function get_dados_grid() {
	limpar_selecao_grid();
	
	$.ajax({
		url : base_url + 'programacao/grid',
		dataType : 'JSON',
		success : function ( response ) {
			if ( response.status == 'ok' ) {
				var dados = response.dados;
				var linhas = '';
				$(dados).each(function(){
					linhas += '<tr rowid="'+this.id+'">';
					linhas += '<td>'+this.id+'</td>';
					linhas += '<td>'+this.nome+'</td>';
					linhas += '<td>'+this.idioma+'</td>';
					linhas += '<td>'+this.data+'</td>';
					linhas += '<td>'+this.hora+'</td>';
					linhas += '</tr>';
				})
				if ( $.fn.DataTable.isDataTable( '#grid' ) ) {
					table.DataTable().destroy();
				}

				table.find('tbody').html(linhas);
				table.DataTable();
			}
		}, 
		error : function () {
			msg_alert("Não foi possível listar os {programacao}, favor entrar em contato com o administrador do sistema! ");
		}
	})
}

function msg_alert(msg) {
	window.alert(msg);
}
