changeset 754:6b0d0e62f7d7

added Probenintervalle to a Messprogramm... there is still a lot of work needed. For instance for the slider element.
author Dustin Demuth <dustin@intevation.de>
date Tue, 05 May 2015 17:22:38 +0200
parents 4dd0c645ea8b
children 3637c453f67d
files app.js app/controller/FilterResult.js app/model/Messprogramm.js app/view/widget/Datenbasis.js app/view/widget/Probenart.js app/view/widget/Umwelt.js resources/i18n/Lada_de-DE.properties
diffstat 7 files changed, 154 insertions(+), 52 deletions(-) [+]
line wrap: on
line diff
--- a/app.js	Wed Apr 29 13:04:24 2015 +0200
+++ b/app.js	Tue May 05 17:22:38 2015 +0200
@@ -177,6 +177,7 @@
         'Lada.controller.grid.Status',
         'Lada.controller.Map',
         'Lada.controller.form.Location',
-        'Lada.controller.ProbenPlanungSwitcher'
+        'Lada.controller.ProbenPlanungSwitcher',
+        'Lada.controller.form.Messprogramm'
     ]
 });
--- a/app/controller/FilterResult.js	Wed Apr 29 13:04:24 2015 +0200
+++ b/app/controller/FilterResult.js	Tue May 05 17:22:38 2015 +0200
@@ -12,7 +12,8 @@
 Ext.define('Lada.controller.FilterResult', {
     extend: 'Ext.app.Controller',
     requires: [
-        'Lada.view.window.ProbeEdit'
+        'Lada.view.window.ProbeEdit',
+        'Lada.view.window.MessprogrammEdit'
     ],
 
     /**
@@ -23,8 +24,8 @@
             'filterresultgrid': {
                 itemdblclick: this.editItem
             },
-            'filterresultgrid toolbar button[action=add]': {
-                click: this.addItem
+            'filterresultgrid toolbar button[action=addProbe]': {
+                click: this.addProbeItem
             },
             'filterresultgrid toolbar button[action=import]': {
                 click: this.uploadFile
@@ -41,24 +42,53 @@
      * {@link Lada.view.grid.FilterResult}
      * was double-clicked.
      * The function opens a {@link Lada.view.window.ProbeEdit}
+     * or a {@link Lada.view.window.MessprogrammEdit}.
+     * To determine which window has to be opened, the function
+     * analyse the records modelname.
      */
     editItem: function(grid, record) {
-        console.log(record);
-        var win = Ext.create('Lada.view.window.ProbeEdit', {
-            record: record
-        });
+        var mname = record.store.model.modelName || '';
+        var winname = '';
+
+        //Based upon the Model that was loaded, act differently
+        if (mname == 'Lada.model.ProbeList'){
+            winname = 'Lada.view.window.ProbeEdit';
+        }
+        else if (mname == 'Lada.model.MessprogrammList'){
+            winname = 'Lada.view.window.MessprogrammEdit';
+        }
+        if (winname){
+            var win = Ext.create(winname, {
+                record: record
+             });
+            win.show();
+            win.initData();
+        }
+        else {
+            console.log('The model is unknown.'
+                +'No window was configured to display the data.'
+                +'I retrieved a model named:' + mname
+            );
+        }
+    },
+
+    /**
+     * This function opens a new window to create a Probe
+     * {@link Lada.view.window.ProbeCreate}
+     */
+    addProbeItem: function() {
+        var win = Ext.create('Lada.view.window.ProbeCreate');
         win.show();
         win.initData();
     },
 
     /**
      * This function opens a new window to create a Probe
-     * {@link Lada.view.window.ProbeEdit}
+     * {@link Lada.view.window.MessprogrammCreate}
      */
-    addItem: function() {
-        var win = Ext.create('Lada.view.window.ProbeCreate');
-        win.show();
-        win.initData();
+    addMessprogrammItem: function() {
+        // TODO
+        console.log('implement me.')
     },
 
     /**
@@ -82,6 +112,7 @@
     downloadFile: function(button) {
         var grid = button.up('grid');
         var selection = grid.getView().getSelectionModel().getSelection();
+        var i18n = Lada.getApplication().bundle;
         var proben = [];
         for (var i = 0; i < selection.length; i++) {
             proben.push(selection[i].get('id'));
@@ -98,7 +129,8 @@
                 saveAs(blob, 'export.laf');
             },
             failure: function() {
-                Ext.Msg.alert('Fehler', 'Failed to create LAF-File!');
+                Ext.Msg.create(i18n.getMsg('err.msg.generic.title'),
+                    i18n.getMsg('err.msg.laf.filecreatefailed'));
             }
         });
     }
--- a/app/model/Messprogramm.js	Wed Apr 29 13:04:24 2015 +0200
+++ b/app/model/Messprogramm.js	Tue May 05 17:22:38 2015 +0200
@@ -16,7 +16,7 @@
     fields: [{
         name: 'id'
     }, {
-        name: 'test'
+        name: 'test',
         type: 'boolean'
     }, {
         name: 'netzbetreiberId',
@@ -29,6 +29,8 @@
     }, {
         name: 'mstId'
     }, {
+        name: 'name'
+    }, {
         name: 'datenbasisId'
     }, {
         name: 'baId'
@@ -86,4 +88,4 @@
             root: 'data'
         }
     }
-}
+});
--- a/app/view/widget/Datenbasis.js	Wed Apr 29 13:04:24 2015 +0200
+++ b/app/view/widget/Datenbasis.js	Tue May 05 17:22:38 2015 +0200
@@ -15,13 +15,15 @@
     store: 'Datenbasis',
     displayField: 'datenbasis',
     valueField: 'id',
-    emptyText: 'Wählen Sie eine Datenbasis',
     // Enable filtering of comboboxes
     queryMode: 'local',
     triggerAction: 'all',
     typeAhead: false,
 
     initComponent: function() {
+        var i18n = Lada.getApplication().bundle;
+        this.emptyText = i18n.getMsg('emptytext.datenbasis');
+
         this.store = Ext.data.StoreManager.get('datenbasis');
         if (!this.store) {
             this.store = Ext.create('Lada.store.Datenbasis');
--- a/app/view/widget/Probenart.js	Wed Apr 29 13:04:24 2015 +0200
+++ b/app/view/widget/Probenart.js	Tue May 05 17:22:38 2015 +0200
@@ -15,7 +15,6 @@
     store: 'Probenarten',
     displayField: 'probenart',
     valueField: 'id',
-    emptyText: 'Wählen Sie eine Probenart',
     // Enable filtering of comboboxes
     queryMode: 'local',
     triggerAction: 'all',
@@ -23,6 +22,9 @@
     minChars: 0,
 
     initComponent: function() {
+        var i18n = Lada.getApplication().bundle;
+        this.emptyText = i18n.getMsg('emptytext.probenart');
+
         this.store = Ext.data.StoreManager.get('probenarten');
         if (!this.store) {
             this.store = Ext.create('Lada.store.Probenarten');
--- a/app/view/widget/Umwelt.js	Wed Apr 29 13:04:24 2015 +0200
+++ b/app/view/widget/Umwelt.js	Tue May 05 17:22:38 2015 +0200
@@ -17,7 +17,6 @@
     valueField: 'id',
     editable: this.editable || false,
     forceSelection: true,
-    emptyText: 'Wählen Sie einen Umweltbereich',
     // Enable filtering of comboboxes
     autoSelect: false,
     queryMode: 'local',
@@ -31,6 +30,9 @@
          '<tpl for=".">{id} - {umweltBereich}</tpl>'),
 
     initComponent: function() {
+        var i18n = Lada.getApplication().bundle;
+        this.emptyText = i18n.getMsg('emptytext.umweltbereich');
+
         this.store = Ext.data.StoreManager.get('umwelt');
         if (!this.store) {
             this.store = Ext.create('Lada.store.Umwelt');
--- a/resources/i18n/Lada_de-DE.properties	Wed Apr 29 13:04:24 2015 +0200
+++ b/resources/i18n/Lada_de-DE.properties	Tue May 05 17:22:38 2015 +0200
@@ -2,49 +2,110 @@
 # Error Codes
 ##
 ! General errors
-200: Kein Fehler
-601: Probe existiert bereits
-602: Objekt ist keine Probe
-603: Fehler in der Verbindung zur DB
-604: Ihre Eingabe konnte nicht erfolgreich validiert werden und wurde daher nicht gespeichert. Bitte beheben Sie die Fehler in den hervorgehobenen Feldern und speichern Sie erneut.
+200:Kein Fehler
+601:Probe existiert bereits
+602:Objekt ist keine Probe
+603:Fehler in der Verbindung zur DB
+604:Ihre Eingabe konnte nicht erfolgreich validiert werden und wurde daher nicht gespeichert. Bitte beheben Sie die Fehler in den hervorgehobenen Feldern und speichern Sie erneut.
 
 ! Specific error messages
-611: Wert nicht eindeutig
-631: Wert nicht gesetzt
-632: Werte passen nicht zusammen
-651: Punkt nicht in Polygon
-652: Werte passen nicht zusammen
-661: Der Zeitpunkt liegt in der Zukunft
-662: Das Ende des Zeitraumes liegt vor dem Beginn
-697: Der zugrundeliegende Datensatz wurde in der Zwischenzeit verändert
-698: Kein Zugriff
-699: Keine Berechtigung
+611:Wert nicht eindeutig
+631:Wert nicht gesetzt
+632:Werte passen nicht zusammen
+651:Punkt nicht in Polygon
+652:Werte passen nicht zusammen
+661:Der Zeitpunkt liegt in der Zukunft
+662:Das Ende des Zeitraumes liegt vor dem Beginn
+697:Der zugrundeliegende Datensatz wurde in der Zwischenzeit verändert
+698:Kein Zugriff
+699:Keine Berechtigung
 
 ! Import error messages
-670: Fehler beim parsen
-671: Objekt existiert bereits
-672: Doppelter Eintrag
-673: Fehlender Wert
-674: Fehler in Datum
+670:Fehler beim parsen
+671:Objekt existiert bereits
+672:Doppelter Eintrag
+673:Fehlender Wert
+674:Fehler in Datum
 
 ##
 # Field names
 ##
-hauptprobenNr: Hauptproben Nr.
-entnahmeOrt: Entnahmeort
-test: Testdatensatz
-probenartId: Probenart
-probeentnahmeBeginn: Probeentnahme Beginn
+hauptprobenNr:Hauptproben Nr.
+entnahmeOrt:Entnahmeort
+test:Testdatensatz
+probenartId:Probenart
+probeentnahmeBeginn:Probeentnahme Beginn
 
-modus: Modus
-probeplanning: Messprogramme
-probelist: Proben
+modus:Modus
+probeplanning:Messprogramme
+probelist:Proben
+
+name:Name
+mstId:Messstelle
+datenbasisId:Datenbasis
+test:Testdatensatz
+baId:Betriebsart
+probeNehmerId:Probennehmer
+netzbetreiberId:Netzbetreiber
+mediaDesk:Deskriptoren
+umwId:Umweltbereich
+probenintervall:Probenintervall
+teilintervallVon:Teilintervall Von
+teilintervallBis:Teilintervall Bis
+inntervallOffset:Intervall Offset
+gueltigVon:Gültig Von
+gueltigBis:Gültig Bis
+probeKommentar:Probe Kommentar
+
+emptytext.probenintervall:Wählen Sie ein Probenintervall
+emptytext.datenbasis:Wahlen Sie eine Datenbasis
+emptytext.probenart:Wahlen Sie eine Probenart
+emptytext.umweltbereich:Wahlen Sie einen Umweltbereich
+
+##Fieldsets
+erwAngaben:Erweiterte Angaben
+medium:Medium
+deskDetails:Details Deskriptoren
+time:Zeit
+validity:Gültigkeit
+sollzeitraum:Sollzeitraum
+
+messprogramm.window.edit.title:Messprogramm bearbeiten
+messprogramm.window.create.title:Messprogramm erstellen
+messprogramm.form.fieldset.title:Messprogramm
+
+# Actions
+edit:bearbeiten
+create:erstellen
+close:Schließen
+save:Speichern
+save.qtip:Daten Speichern
+discard:Verwerfen
+discard.qtip:Änderungen verwerfen
 
 ##
 # Msg:
 ##
-err.msg.save.title: Fehler beim Speichern
-err.msg.delete.title: Fehler beim Löschen
-err.msg.generic.title: Fehler
-err.msg.generic.body: Ein Fehler ist aufgetreten. Dieser konnte nicht näher erfasst werden.
-err.msg.response.body: Die Antwort des Servers konnte nicht ausgewertet werden.
+err.msg.save.title:Fehler beim Speichern
+err.msg.delete.title:Fehler beim Löschen
+err.msg.generic.title:Fehler
+err.msg.generic.body:Ein Fehler ist aufgetreten. Dieser konnte nicht näher erfasst werden.
+err.msg.response.body:Die Antwort des Servers konnte nicht ausgewertet werden.
+err.msg.laf.filecreatefailed:Die LAF-Datei konnte nicht erzeugt werden.
+err.msg.novalidmessprogramm:Es wurd kein valides Messprogramm ausgewählt
+
+err.msg.deskriptorvalidation:Die Deskriptoren haben das falsche Format.<br />Richtig wäre: D: 99 99 99 99 99 99 99 99 99 99 99 99'
+
+
+##
+# Probenintervalle:
+##
+pi.yearly:jährlich
+pi.halfyearly:halbjährlich
+pi.quarteryearly:vierteljährlich
+pi.monthly:monatlich
+pi.fourweekly:vier wöchentlich
+pi.twoweekly:zwei wöchentlich
+pi.weekly:wöchentlich
+pi.daily:täglich
+intervall:Intervall

http://lada.wald.intevation.org