summaryrefslogtreecommitdiff
path: root/skins/jason/program.js
diff options
context:
space:
mode:
authorAndreas Brachold <vdr07@deltab.de>2009-01-05 16:21:02 +0000
committerAndreas Brachold <vdr07@deltab.de>2009-01-05 16:21:02 +0000
commit5930d38a5312139b8615500ca24bc49452287488 (patch)
treea98b230999dee08bc77d0faab298b81a53b4d228 /skins/jason/program.js
parent905a050ef9a1dbe743a9cb5b39695d6c8dbde61c (diff)
downloadxxv-5930d38a5312139b8615500ca24bc49452287488.tar.gz
xxv-5930d38a5312139b8615500ca24bc49452287488.tar.bz2
* jason: keep filter on program changes
* jason: small optimize
Diffstat (limited to 'skins/jason/program.js')
-rw-r--r--skins/jason/program.js37
1 files changed, 22 insertions, 15 deletions
diff --git a/skins/jason/program.js b/skins/jason/program.js
index d136632..0109046 100644
--- a/skins/jason/program.js
+++ b/skins/jason/program.js
@@ -10,7 +10,7 @@
Ext.xxv.programStore = function(data) {
return new Ext.data.GroupingStore({
title:data.name
- ,baseParams:{cmd:'p',data: data.position}
+ ,baseParams:{cmd:'p',data: data.id}
,autoLoad:{params:{start:0, limit:configuration.pageSize}}
,reader: new Ext.xxv.jsonReader({
fields: [
@@ -69,6 +69,18 @@ Ext.xxv.programGrid = function(viewer, record) {
var cm = new Ext.grid.ColumnModel(this.columns);
cm.defaultSortable = true;
+
+ this.filter = new Ext.ux.grid.Search({
+ id:'program-filter'
+ ,position:'top'
+ ,shortcutKey:null
+ ,paramNames: {
+ fields:'cmd'
+ ,all:'p'
+ ,cmd:'p'
+ ,query:'filter'
+ }
+ });
Ext.xxv.programGrid.superclass.constructor.call(this, {
region: 'center'
@@ -89,17 +101,7 @@ Ext.xxv.programGrid = function(viewer, record) {
store: this.store,
displayInfo: true
})
-
- ,plugins:[new Ext.ux.grid.Search({
- position:'top'
- ,shortcutKey:null
- ,paramNames: {
- fields:'cmd'
- ,all:'p'
- ,cmd:'p'
- ,query:'filter'
- }
- })]
+ ,plugins:[this.filter]
});
this.store.on({
@@ -177,10 +179,15 @@ Ext.extend(Ext.xxv.programGrid, Ext.grid.GridPanel, {
,reload : function(data) {
this.store.baseParams = {
cmd: 'p'
- ,data: data.position
- };
+ ,data: data.id
+ };
+ var p = {start:0, limit:configuration.pageSize};
+ var f = this.filter.field.getValue();
+ if(f && f != '') {
+ p.filter = f;
+ }
this.store.title = data.name;
- this.store.load({params:{start:0, limit:configuration.pageSize}});
+ this.store.load({params:p});
}
,formatTitle: function(value, p, record) {
return String.format(