diff app/view/grid/Orte.js @ 1008:9651def05ae6

merged.
author Raimund Renkert <raimund.renkert@intevation.de>
date Wed, 20 Jan 2016 17:45:58 +0100
parents 9ac03f461ab4
children 6afdbc8ee920
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/app/view/grid/Orte.js	Wed Jan 20 17:45:58 2016 +0100
@@ -0,0 +1,179 @@
+/* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz
+ * Software engineering by Intevation GmbH
+ *
+ * This file is Free Software under the GNU GPL (v>=3)
+ * and comes with ABSOLUTELY NO WARRANTY! Check out
+ * the documentation coming with IMIS-Labordaten-Application for details.
+ */
+
+/**
+ * Grid to list Orte Stammdaten
+ */
+Ext.define('Lada.view.grid.Orte', {
+    extend: 'Ext.grid.Panel',
+    alias: 'widget.ortstammdatengrid',
+
+    // minHeight and deferEmptyText are needed to be able to show the
+    // emptyText message.
+    minHeight: 110,
+    viewConfig: {
+        deferEmptyText: false
+    },
+
+    recordId: null,
+
+    warnings: null,
+    errors: null,
+    readOnly: true,
+    allowDeselect: true,
+
+    initComponent: function() {
+        var i18n = Lada.getApplication().bundle;
+        this.emptyText = i18n.getMsg('orte.emptyGrid');
+
+        this.dockedItems = [{
+            xtype: 'toolbar',
+            dock: 'top',
+            items: [{
+                xtype: 'tbtext',
+                id: 'tbtitle',
+                text: i18n.getMsg('orte.gridTitle')
+            },
+            '->',
+            {
+                text: i18n.getMsg('orte.button.add'),
+                icon: 'resources/img/list-add.png',
+                action: 'add',
+                disabled: true // disabled on startup, will be enabled by setStore
+            }, {
+                text: i18n.getMsg('orte.button.delete'),
+                icon: 'resources/img/list-remove.png',
+                action: 'delete',
+                disabled: true // disabled on startup, will be enabled by controller if necessary
+            }]
+        }];
+        this.columns = [{
+            header: i18n.getMsg('orte.ortId'),
+            dataIndex: 'ortId'
+        }, {
+            header: i18n.getMsg('orte.nutsCode'),
+            dataIndex: 'nutsCode'
+        }, {
+            header: i18n.getMsg('orte.anlageId'),
+            dataIndex: 'anlageId'
+        }, {
+            header: i18n.getMsg('orte.gemId'),
+            dataIndex: 'gemId',
+            width: 120,
+            renderer: function(value) {
+                var store = Ext.data.StoreManager.get('verwaltungseinheiten');
+                var record = store.getById(value);
+                return record.get('bezeichnung');
+            }
+        }, {
+            header: i18n.getMsg('orte.staatId'),
+            dataIndex: 'staatId',
+            width: 70,
+            renderer: function(value) {
+                var staaten = Ext.data.StoreManager.get('staaten');
+                var record = staaten.getById(value);
+                return record.get('staatIso');
+            }
+        }, {
+            header: i18n.getMsg('orte.kdaId'),
+            dataIndex: 'kdaId'
+        }, {
+            header: i18n.getMsg('orte.ozId'),
+            dataIndex: 'ozId'
+        }, {
+            header: i18n.getMsg('orte.ortTyp'),
+            dataIndex: 'ortTyp'
+        }, {
+            header: i18n.getMsg('orte.mpArt'),
+            dataIndex: 'mpArt'
+        }, {
+            header: i18n.getMsg('orte.zone'),
+            dataIndex: 'zone'
+        }, {
+            header: i18n.getMsg('orte.sektor'),
+            dataIndex: 'sektor'
+        }, {
+            header: i18n.getMsg('orte.zustaendigkeit'),
+            dataIndex: 'zustaendigkeit'
+        }, {
+            header: i18n.getMsg('orte.berichtstext'),
+            dataIndex: 'berichtstext'
+        }, {
+            header: i18n.getMsg('orte.kurztext'),
+            dataIndex: 'kurztext'
+        }, {
+            header: i18n.getMsg('orte.langtext'),
+            dataIndex: 'langtext'
+        }, {
+            header: i18n.getMsg('orte.beschreibung'),
+            dataIndex: 'beschreibung'
+        }, {
+            header: i18n.getMsg('orte.unscharf'),
+            dataIndex: 'unscharf'
+        }, {
+            header: i18n.getMsg('orte.hoeheLand'),
+            dataIndex: 'hoeheLand'
+        }, {
+            header: i18n.getMsg('orte.koordXExtern'),
+            dataIndex: 'koordXExtern'
+        }, {
+            header: i18n.getMsg('orte.koordYExtern'),
+            dataIndex: 'koordYExtern'
+        }, {
+            header: i18n.getMsg('orte.longitude'),
+            dataIndex: 'longitude'
+        }, {
+            header: i18n.getMsg('orte.latitude'),
+            dataIndex: 'latitude'
+        }, {
+            header: i18n.getMsg('orte.letzteAenderung'),
+            dataIndex: 'letzteAenderung'
+        }];
+        this.listeners = {
+           select: {
+               fn: this.activateRemoveButton,
+               scope: this
+            },
+            deselect: {
+                fn: this.deactivateRemoveButton,
+                scope: this
+            }
+        };
+        this.listeners = {
+           select: {
+               fn: this.activateRemoveButton,
+               scope: this
+            },
+            deselect: {
+                fn: this.deactivateRemoveButton,
+                scope: this
+            }
+        };
+        this.callParent(arguments);
+    },
+
+    /**
+     * This sets the Store of this Grid
+     */
+    setStore: function(store){
+        var i18n = Lada.getApplication().bundle;
+
+        if (store) {
+            this.removeDocked(Ext.getCmp('ptbar'), true);
+            this.reconfigure(store);
+            this.down('button[action=add]').enable();
+            this.addDocked([{
+                xtype: 'pagingtoolbar',
+                id: 'ptbar',
+                dock: 'bottom',
+                store: store,
+                displayInfo: true
+            }]);
+        }
+    }
+});

http://lada.wald.intevation.org