');
//for (const property in row) {
for (const field of this.table.fields) {
//console.log(`${property}: ${row[property]}`);
var field_name=row[field];
$('#row_ajaxlist_'+z).append('
'+field_name+'
');
}
z++;
}
if(data.hasOwnProperty('total_num_items')) {
var total_elements=data.total_num_items;
var num_elements=options.num_elements;
var link=options.url;
var initial_num_pages=options.initial_num_pages;
var variable='begin_page';
var label='';
var func_jscript='';
var pages=pagination( begin_page, total_elements, num_elements, link ,initial_num_pages, variable, label, func_jscript, this.table.css_class);
$('#table_pages').remove();
this.table.after('
Pages: '+pages+'
');
}
if(options.hasOwnProperty("success")) {
options.success(data);
}
}
else {
if(options.hasOwnProperty("error_data")) {
options.error_data(data);
}
}
if(search_all) {
//Add input event to search when search is done
//var search_input='#'+$(this.table).attr('id')+'_search_in_table';
//$(search_input).on('input', {table: this.table}, update_list_search);
}
activate=0;
},
error: function (data) {
//$(options.loading).hide();
$(this).find('.loading_cells').remove();
alert('Error: '+data.status+' '+data.statusText);
activate=0;
},
dataType: 'json'
});
};
//Pages click method for change page
$(document).on('click', '.'+this.css_class, {table: this}, function (e) {
console.log('Changing page...');
begin_page=$(this).attr('data-begin');
//Update list getting begin_page variable
e.data.table.updateAjaxList();
return false;
});
//Method for change order in page
$(document).on('click', '.change_order', {table: this}, function (e) {
console.log('Changing order list...');
field=$(this).attr('data-field');
begin_page=0;
//Clean order_flag icons
$('.order_flag').hide();
//Reset other fields not selected
Object.entries(order_by).forEach(([key, value]) => {
if(key!=field) {
order_by[key]=1;
}
});
//Change order and showing flags from selected field
if(order_by[field]==1) {
order_by[field]=0;
order=order_by[field];
$('#flag_down_'+field).show();
}
else {
order_by[field]=1;
order=order_by[field];
$('#flag_up_'+field).show();
}
//Set order_field with selected field
order_field=field;
//Update list getting order_field variable
e.data.table.updateAjaxList();
return false;
});
//For search in all fields
if(search_all) {
console.log('Search all...')
$('
').insertBefore($(this));
//console.log($(this).attr('id'));
var index=arr_num_items.indexOf(options.num_elements);
if(index!=-1) {
//console.log(index);
//'+$(this).attr('id')+'_number_of_items
$('#'+$(this).attr('id')+'_number_of_items option:eq('+index+')').prop('selected', true);
}
$('#'+$(this).attr('id')+'_number_of_items').on('change', {table: this}, function (e) {
begin_page=0;
e.data.table.updateAjaxList();
e.preventDefault();
return false;
});
//$(form).find(".input_performance").on('keyup', function (e) {
function update_list_search(e) {
//e.stopPropagation();
//var search_input='#'+$(e.data.table).attr('id')+'_search_in_table';
//$(search_input).off();
search_all_text=$(this).val();
e.data.table.updateAjaxList();
e.preventDefault();
return false;
}
$('#'+$(this).attr('id')+'_search_in_table').on('input', {table: this}, update_list_search);
}
//First loading of list
this.updateAjaxList();
return this;
}
})( jQuery );
//begin_page, int: number of first element showed in table
function pagination( begin_page, total_elements, num_elements, link ,initial_num_pages, variable, label, func_jscript, css_class) {
pages='';
if(begin_page>total_elements) {
begin_page=0;
}
// Calculamos el total de todas las páginas
total_page=Math.ceil(total_elements/num_elements);
// Calculamos en que página nos encontramos
actual_page=Math.ceil(begin_page/num_elements);
// Calculamos el total de intervalos
total_interval=Math.ceil(total_page/initial_num_pages);
// Calculamos el intervalo en el que estamos
actual_interval=Math.floor(actual_page/initial_num_pages);
//Calculamos el elemento de inicio del intervalo
initial_page=Math.ceil(actual_interval*initial_num_pages*num_elements);
last_page=Math.ceil(actual_interval*initial_num_pages*num_elements)+Math.ceil(initial_num_pages*num_elements);
if (last_page>total_elements) {
last_page=total_elements;
}
//url_base=new URL(link);
if(initial_page>0) {
//initial_link=add_get_parameters(link, **{variable: '0'});
initial_url=new URL(link);
initial_url.searchParams.append(variable, '0');
initial_link=initial_url.href;
//middle_link=add_get_parameters(link, **{variable: str((initial_page-num_elements)) } );
middle_url=new URL(link);
begin_page=(initial_page-num_elements);
middle_url.searchParams.append(variable, begin_page);
middle_link=middle_url.href;
pages += "1<< "
}
arr_pages={};
for(x=initial_page;x"+num_page+" ";
arr_pages[begin_page]=''+num_page+' ';
pages+=arr_pages[x];
}
if (last_page>> Last";
}
return pages;
}