[Lada-commits] [PATCH 3 of 4] filter orte in a separate store

Wald Commits scm-commit at wald.intevation.org
Fri Feb 3 14:32:34 CET 2017


# HG changeset patch
# User Raimund Renkert <raimund.renkert at intevation.de>
# Date 1486128732 -3600
# Node ID 6edab3ee2198ce9643553ceb6669c7ddd7928082
# Parent  f1e348109ebbbe031d1388ed02db216d719d72d0
filter orte in a separate store.

diff -r f1e348109ebb -r 6edab3ee2198 app/controller/grid/Ortszuordnung.js
--- a/app/controller/grid/Ortszuordnung.js	Fri Feb 03 14:31:10 2017 +0100
+++ b/app/controller/grid/Ortszuordnung.js	Fri Feb 03 14:32:12 2017 +0100
@@ -208,6 +208,8 @@
         if (evt.getKey() === 27) {
             if (this.resultPanel.isVisible()) {
                 this.resultPanel.close();
+                verwaltungseinheiten.clearFilter(true);
+                staaten.clearFilter(true);
                 return;
             }
             else {
@@ -221,6 +223,8 @@
         }
         if (field.getValue().length === 0) {
             this.resultPanel.hide();
+            verwaltungseinheiten.clearFilter(true);
+            staaten.clearFilter(true);
             return;
         }
         if (field.getValue().length < 3) {
@@ -236,12 +240,19 @@
     execSearch: function(field, filter) {
         // Filter stores
         var messpunkte = Ext.data.StoreManager.get('orte');
+        var cloneRecords = [];
+        messpunkte.each(function(r) {
+            cloneRecords.push(r.copy());
+        });
+        var filterMesspunkte = Ext.create('Lada.store.Orte',{
+            autoLoad: false
+        });
+        filterMesspunkte.add(cloneRecords);
         var verwaltungseinheiten = Ext.data.StoreManager.get('verwaltungseinheiten');
         var staaten = Ext.data.StoreManager.get('staaten');
-        messpunkte.clearFilter(true);
         verwaltungseinheiten.clearFilter(true);
         staaten.clearFilter(true);
-        messpunkte.filter({filterFn: function(item) {
+        filterMesspunkte.filter({filterFn: function(item) {
                 if (item.get('ortId').indexOf(filter) > -1) {
                     return true;
                 }
@@ -272,7 +283,7 @@
             });
         }
         this.resultPanel.show();
-        this.resultPanel.updateGrids(messpunkte, verwaltungseinheiten, staaten);
+        this.resultPanel.updateGrids(filterMesspunkte, verwaltungseinheiten, staaten);
         this.resultPanel.reposition(field.getX() + field.getLabelWidth(), field.getY());
         field.focus();
     },


More information about the Lada-commits mailing list