/* Functions for the filtering and sorting of dataincludes */ function fsj_dataincl_getformparams(setid) { // build array of parameters var id = '#fsj_dataincl_' + setid + '_form'; var params = {}; jQuery(id).find('input').each(function () { if (jQuery(this).attr('name')) params[jQuery(this).attr('name')] = jQuery(this).val(); }); return params; } function fsj_dataincl_reload(setid, url) { var width = jQuery('#fsj_dataincl_' + setid).outerWidth(); var height = jQuery('#fsj_dataincl_' + setid).outerHeight(); jQuery('#fsj_dataincl_' + setid).css('position', 'relative'); var newdiv = jQuery('
'); newdiv.css('position', 'absolute'); newdiv.css('left', '0px'); newdiv.css('top', '0px'); newdiv.css('width', width + 'px'); newdiv.css('height', height + 'px'); newdiv.css('background-color', 'rgba(220,220,220,0.7)'); newdiv.css('text-align', 'center'); newdiv.css('padding-top', '150px'); newdiv.html(""); jQuery('#fsj_dataincl_' + setid).append(newdiv); jQuery.ajax({ url: url }).done(function (data) { //alert(data); jQuery('#fsj_dataincl_' + setid).after(data); jQuery('#fsj_dataincl_' + setid).remove(); }); //jQuery('#fsj_dataincl_' + setid).load(url); } function fsj_dataincl_buildurl(setid, params, reset) { reset = typeof reset !== 'undefined' ? reset : false; var id = '#fsj_dataincl_' + setid + '_form'; var url = jQuery(id).attr('action'); if (url.indexOf('?') == -1) { url += "?"; } else { url += "&"; } var result = ""; for (key in params) { if (key.substr(0, 1) == "$") continue; value = params[key]; if (key == "option" || key == "view" || key == "set") { url += key + "=" + encodeURIComponent(value) + "&"; } else { result += key + "=" + encodeURIComponent(value) + "&"; } } if (!reset) url += "dataincl=" + fsj_utils.base64.encode(result); return url; } function fsj_dataincl_sortlink(setid, field, order) { var params = fsj_dataincl_getformparams(setid); params['sort_field'] = field; params['sort_dir'] = order; params['page_cur'] = 1; var url = fsj_dataincl_buildurl(setid, params); fsj_dataincl_reload(setid, url); return false; } function fsj_dataincl_sortdrop(setid) { var params = fsj_dataincl_getformparams(setid); var sortid = '#fsj_dataincl_sort_' + setid; var value = jQuery(sortid).val(); params['sort_field'] = value; params['sort_dir'] = ''; params['page_cur'] = 1; var url = fsj_dataincl_buildurl(setid, params); fsj_dataincl_reload(setid, url); } function fsj_dataincl_filter(setid, field) { var params = fsj_dataincl_getformparams(setid); var sortid = '#fsj_dataincl_filter_' + field + '_' + setid; var value = jQuery(sortid).val(); params['filter_' + field] = value; params['page_cur'] = 1; var url = fsj_dataincl_buildurl(setid, params); fsj_dataincl_reload(setid, url); } function fsj_dataincl_page(setid, pageno) { var params = fsj_dataincl_getformparams(setid); params['page_cur'] = pageno; var url = fsj_dataincl_buildurl(setid, params); fsj_dataincl_reload(setid, url); return false; } function fsj_dataincl_search(setid) { var params = fsj_dataincl_getformparams(setid); // find all search entries and add the data too the params var inputs = jQuery('input[ref="fsj_dataincl_search_' + setid + '"]'); if (inputs.length > 0) { for (var i = 0; i < inputs.length; i++) { var input = jQuery(inputs[i]); var value = input.val(); var field = input.attr('field'); params['search_' + field] = value; } } params['page_cur'] = 1; var url = fsj_dataincl_buildurl(setid, params); fsj_dataincl_reload(setid, url); return false; } function fsj_dataincl_reset(setid) { var params = fsj_dataincl_getformparams(setid); var url = fsj_dataincl_buildurl(setid, params, true); fsj_dataincl_reload(setid, url); return false; } function fsj_dataincl_keypress(setid, event) { if (event.which == 13) { fsj_dataincl_search(setid); return false; } return true; }