Save preferences for selected columns and their sizes only if "selectcols" is not empty.

This commit is contained in:
Alexandros Sigalas 2020-04-05 15:29:34 +03:00
parent e347b0e4a0
commit c5abd85836

View File

@ -1063,16 +1063,18 @@ var et2_nextmatch = (function(){ "use strict"; return et2_DOMWidget.extend([et2_
// efficient apps that didn't send all custom fields in the first request
var cf_added = jQuery(changed).filter(jQuery(custom_fields)).length > 0;
// Save visible columns
// Save visible columns and sizes if selectcols is not emtpy (an empty selectcols actually deletes the prefrence)
if(!jQuery.isEmptyObject(this.activeFilters.selectcols)){
// 'nextmatch-' prefix is there in preference name, but not in setting, so add it in
this.egw().set_preference(app, pref, this.activeFilters.selectcols.join(","),
// Use callback after the preference gets set to trigger refresh, in case app
// isn't looking at selectcols and just uses preference
cf_added ? jQuery.proxy(function() {if(this.controller) this.controller.update(true);}, this):null
);
// Save adjusted column sizes
// Save adjusted column sizes and inform user about it
this.egw().set_preference(app, pref+"-size", colSize);
this.egw().message('Saved column sizes to prefences.');
}
// No significant change (just normal columns shown) and no need to wait,
// but the grid still needs to be redrawn if a custom field was removed because