"filters":[ { "MIGX_id":2, "name":"analiz_category", "label":"\u0413\u0440\u0443\u043f\u043f\u0430", "emptytext":"-\u0432\u044b\u0431\u043e\u0440 \u0433\u0440\u0443\u043f\u043f\u044b-", "type":"combobox", "getlistwhere":{ "category":"[[+analiz_category]]" }, "getcomboprocessor":"getcombo", "combotextfield":"category", "comboidfield":"", "comboparent":"", "default":"" }, { "MIGX_id":3, "name":"search", "label":"\u041f\u043e\u0438\u0441\u043a", "emptytext":"\u041f\u043e\u0438\u0441\u043a...", "type":"textbox", "getlistwhere":{ "name:LIKE":"%[[+search]]%" }, "getcomboprocessor":"", "combotextfield":"", "comboidfield":"", "comboparent":"", "default":"" }, { "MIGX_id":4, "name":"reset", "label":"\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c", "emptytext":"\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c", "type":"resetall", "getlistwhere":"", "getcomboprocessor":"", "combotextfield":"", "comboidfield":"", "comboparent":"", "default":"" } ]
This question has been answered by Bruno17. See the first response.
setDefaultFilters: function(){ var filterDefaults = Ext.util.JSON.decode('{/literal}{$filterDefaults}{literal}'); var input = null; var refresh = false; var value = ''; for (var i=0;i<filterDefaults.length;i++) { input = Ext.getCmp(filterDefaults[i].name+'-migxdb-search-filter'); value = filterDefaults[i].default; if (input && value != ''){ if (value == '_empty'){ value = ''; } input.setValue(value); this.getStore().baseParams[filterDefaults[i].name]=value; refresh = true; } } if (refresh){ this.getBottomToolbar().changePage(1); this.refresh(); } }
setDefaultFiltersOnClick: function(){ var filterDefaults = Ext.util.JSON.decode('{/literal}{$filterDefaults}{literal}'); var input = null; var refresh = false; var value = ''; for (var i=0;i<filterDefaults.length;i++) { input = Ext.getCmp(filterDefaults[i].name+'-migxdb-search-filter'); value = filterDefaults[i].default; if (value == '_empty'){ // I think this block also can be erased value = ''; } if (input.xtype == 'textfield' && input.el.dom.value != input.emptyText){ input.setValue(value); this.getStore().baseParams[filterDefaults[i].name]=value; refresh = true; } if (input.xtype == 'modx-combo' && input.value != 'all'){ value = 'all'; input.setValue(value); this.getStore().baseParams[filterDefaults[i].name]=value; refresh = true; } } if (refresh){ this.getBottomToolbar().changePage(1); this.refresh(); } }
$gridfilters['resetall']['code']= " { xtype: 'button' ,id: '[[+name]]-migxdb-search-filter' ,text: '[[%migx.reset_all]]' ,listeners: { 'click': { fn: function(tf,nv,ov){ var s = this.getStore(); this.setDefaultFiltersOnClick(); // rename here }, scope: this } } } "; //$gridfilters['resetall']['handler'] = 'gridfilter';