Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MyFunctions.prototype.byDataTable = {
- headerTable: function() {
- //console.log('_headerTable');
- this.header = elementHeader;
- return this.header;
- },
- initTable: function() {
- //console.log('_initTable');
- if (window[_global.objVars.utils].appComponents.validVarObj(dataTable, "mydata")){
- dataTable.myTable.destroy();
- dataTable = new Object({
- myTable: null,
- tableData: null,
- mydata: new Array(),
- dataActionRow: new Array(),
- myparant: new Array(),
- mypages: new Array(),
- mypage: 0
- });
- }
- dataTable.mydata = eventos.mydata;
- window[_global.objVars.functions].byDataTable.pagination();
- window[_global.objVars.functions].byDataTable.loadTable();
- $('i#pages').html((dataTable.mypage + 1) +" / "+ (countPages));
- $('i#register').html(countRegister);
- },
- loadTable: function() {
- //console.log('_loadTable');
- var pageData = dataTable.mypages[dataTable.mypage];
- dataTable.myTable = FLUIGC.datatable(elementTable, {
- dataRequest: pageData.data,
- renderContent: elementTemplate,
- header: window[_global.objVars.functions].byDataTable.headerTable(),
- multiSelect: true,
- classSelected: 'info',
- search: {
- enabled: true, //fasle,
- onSearch: function(response) {
- console.log('--onSearch:', response);
- dataTable.myTable.reload(dataTable.tableData);
- if (response) {
- var data = dataTable.mydata;
- var search = data.filter(function(el){
- var filter = $( elementSearch ).val();
- if( filter != '' ){
- return el[ filter ].toUpperCase().indexOf(response.toUpperCase()) >= 0;
- return true;
- } else {
- for (var key in el) {
- var busca = (key.search(/id|order/g) > -1) ? el[key]: null;
- if (busca != null){
- if ((busca.toString()).toUpperCase().indexOf(response.toUpperCase()) >= 0){
- return true;
- }
- }
- }
- }
- return false;
- });
- dataTable.myTable.reload(search);
- }
- },
- onlyEnterkey: false,
- searchAreaStyle: 'col-lg-3 col-md-3 col-sm-12 col-xs-12'
- },
- scroll: {
- target: ".target",
- enabled: false,
- onScroll: function() {
- console.log('--scroll:')
- }
- },
- actions: {
- enabled: true,
- template: elementButtons,
- actionAreaStyle: 'col-lg-9 col-md-9 col-sm-12 col-xs-12'
- },
- navButtons: {
- enabled: true,
- forwardstyle: 'btn-sm btn-info',
- backwardstyle: 'btn-sm btn-info',
- },
- draggable: {
- enabled: false,
- onDrag: function(dragInfo) {
- console.log('--dragInfo:', dragInfo.data);
- dataTable.myTable.reload(dataTable.tableData);
- return false;
- }
- },
- tableStyle: 'table-condensed table-hover',
- emptyMessage: '<div class="text-center">Não foi possível encontrar informações.</div>'
- }, function(err, data) {
- if (err) {
- window[_global.objVars.utils].byMessage.alertSuccess('Erro', err);
- }
- });
- dataTable.myTable.on('fluig.datatable.loadcomplete', function() {
- if (!dataTable.tableData) {
- dataTable.tableData = dataTable.myTable.getData();
- }
- });
- window[_global.objVars.functions].byDataTable.btnPagination();
- window[_global.objVars.functions].byDataTable.customButton();
- return true;
- },
- addRow: function(el, ev) {
- //console.log('_addRow', el, ev);
- var row = {
- order: '',
- idtrabalho: el.idtrabalho,
- codtrabalho: el.codtrabalho,
- escola: el.escola,
- cidade: el.cidade,
- professor: el.professor,
- aluno: el.aluno
- };
- dataTable.myTable.addRow(0, row);
- },
- editRow: function(el, ev) {
- //console.log('_editRow', el, ev);
- if (window[_global.objVars.utils].appComponents.validVarObj(dataTable.myTable.selectedRows(), "")){
- var row = dataTable.myTable.getRow(dataTable.myTable.selectedRows()[0]);
- dataTable.myTable.updateRow(dataTable.myTable.selectedRows()[0], row, elementTemplateEdit);
- $.each(row, function(index, value) {
- if (window[_global.objVars.utils].appComponents.existElement(index)) {
- window[_global.objVars.utils].appComponents.setElement('datatable-input-'+index, value);
- }
- });
- $('[data-datatable-edit-row]').prop("disabled", true);
- }else{
- window[_global.objVars.utils].byMessage.alertWarning('Nenhuma Linha Selecionada!', 'Selecione a Linha para prosseguir com a Edição!');
- }
- },
- updateRow: function(el, ev) {
- //console.log('_updateRow', el, ev);
- var editedRow = new Object();
- if(ev == 'cancel'){
- window[_global.objVars.functions].byDataTable.reload();
- } else {
- if(el !== null && el !== undefined){
- if(typeof(el) == 'object'){
- editedRow = el;
- }
- }
- this.index = dataTable.myTable.selectedRows()[0];
- if(Object.keys(editedRow).length == 0){
- editedRow = dataTable.myTable.getData()[this.index];
- }
- dataTable.myTable.updateRow(this.index, editedRow);
- dataTable.mydata[this.index] = editedRow;
- $('[data-datatable-edit-row]').prop("disabled", false);
- window[_global.objVars.utils].byMessage.alertSuccess('Elemento Editado!', 'Item Editado com Sucesso!');
- }
- },
- delRow: function(el, ev) {
- //console.log('_delRow', el, ev);
- if (window[_global.objVars.utils].appComponents.validVarObj(dataTable.myTable.selectedRows()[0], "")){
- this.elementRemove = dataTable.myTable.selectedRows();
- if (this.elementRemove.length > 0) {
- for (var i = 0; i <= this.elementRemove.length; i++) {
- dataTable.myTable.removeRow(dataTable.myTable.selectedRows()[0]);
- }
- }
- window[_global.objVars.utils].byMessage.alertSuccess('Elemento Removido!', 'Item Removido com Sucesso!');
- }else{
- window[_global.objVars.utils].byMessage.alertWarning('Nenhuma Linha Selecionada!', 'Selecione a Linha para prosseguir!');
- }
- },
- reload: function(el, ev) {
- //console.log('_reload', el, ev);
- dataTable.myTable.reload();
- },
- showColumn: function(el, ev) {
- //console.log('_showColumn', el, ev);
- this.index = 1;
- dataTable.myTable.showColumn(this.index);
- },
- hideColumn: function(el, ev) {
- //console.log('_hideColumn', el, ev);
- this.index = 1;
- dataTable.myTable.hideColumn(this.index);
- },
- selected: function(el, ev) {
- //console.log('_selected', el, ev);
- this.index = dataTable.myTable.selectedRows()[0];
- this.selected = dataTable.myTable.getRow(this.index);
- window[_global.objVars.utils].byMessage.alertSuccess('', "{\"id\" :" + this.selected.id + ", \"name\" :" + this.selected.name + " , \"uf\" :" + this.selected.uf + "}");
- },
- pagination: function(el, ev) {
- //console.log('_pagination', el, ev);
- this.itens = dataTable.mydata.length;
- countRegister = this.itens
- this.rows = 50;
- countPages = 0;
- countPages = Math.ceil(this.itens / this.rows);
- this.pageData = dataTable.mydata;
- dataTable.mypages = new Array();
- this.row = 0;
- var page = new Array();
- if(countPages > 1){
- for (var i = 0; i <= this.pageData.length; i++){
- if(this.row == this.rows){
- dataTable.mypages.push({'data': page});
- page = new Array();
- page.push(this.pageData[i]);
- this.inpage = ((parseInt(dataTable.mypages.length)) == 0) ? 1 : (parseInt(dataTable.mypages.length));
- if((this.pageData.length - (this.inpage * this.rows)) < this.rows){
- this.rows = (this.pageData.length - (this.inpage * this.rows));
- }
- this.row = 1;
- }else{
- page.push(this.pageData[i]);
- this.row++;
- }
- }
- }else{
- dataTable.mypages.push({'data': this.pageData});
- }
- return true;
- },
- customButton: function() {
- //console.log('_customButton');
- // if(dataTable.mypages.length > 1 && (dataTable.mypage + 1) != dataTable.mypages.length){
- // $("button[data-next]").removeClass("disabled");
- // }else{
- // $("button[data-next]").addClass("disabled");
- // }
- // if(dataTable.mypage > 0){
- // $("button[data-prev]").removeClass("disabled");
- // }else{
- // $("button[data-prev]").addClass("disabled");
- // }
- var idDivDataTable = 'dataTableTrabalhos';
- var $divDataTable = $("div#" + idDivDataTable).find("div#area-nav-button");
- if (countPages > 1 && (dataTable.mypage + 1) != countPages) {
- $divDataTable.find("button[data-next]").removeClass("disabled").prop('disabled', false);
- } else {
- $divDataTable.find("button[data-next]").addClass("disabled").prop('disabled', true);
- }
- if (dataTable.mypage > 0) {
- $divDataTable.find("button[data-prev]").removeClass("disabled").prop('disabled', false);
- } else {
- $divDataTable.find("button[data-prev]").addClass("disabled").prop('disabled', true);
- }
- },
- btnPagination: function() {
- //console.log('_btnPagination');
- var idDivDataTable = 'dataTableTrabalhos';
- var $divDataTable = $("div#" + idDivDataTable).find("div#area-nav-button");
- $divDataTable.find("button[data-nav-prev]").attr('data-prev', "");
- $divDataTable.find("button[data-nav-next]").attr('data-next', "");
- $divDataTable.find("button[data-nav-prev]").removeAttr("data-nav-prev");
- $divDataTable.find("button[data-nav-next]").removeAttr("data-nav-next");
- //NOTE: Ação dos Buttons Next e Prev
- $divDataTable.find("button[data-next]").on('click', function(ev) {
- ev.preventDefault();
- dataTable.mypage++;
- window[_global.objVars.functions].byDataTable.pagination();
- window[_global.objVars.functions].byDataTable.customButton();
- window[_global.objVars.functions].byDataTable.loadTable();
- $('i#pages').html((dataTable.mypage + 1) + " / " + (countPages));
- $('i#register').html(countRegister);
- });
- $divDataTable.find("button[data-prev]").on('click', function(ev) {
- ev.preventDefault();
- dataTable.mypage--;
- window[_global.objVars.functions].byDataTable.pagination();
- window[_global.objVars.functions].byDataTable.customButton();
- window[_global.objVars.functions].byDataTable.loadTable();
- $('i#pages').html((dataTable.mypage + 1) + " / " + (countPages));
- $('i#register').html(countRegister);
- });
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement