Mercurial > lada > lada-client
view app/model/Messprogramm.js @ 970:f4eb53ba63fc
Setting Timestamps the correct way. Before this commit the times of the instatiation of the model were used as default values, which led to wrong dates.
author | Dustin Demuth <dustin@intevation.de> |
---|---|
date | Mon, 16 Nov 2015 11:48:15 +0100 |
parents | d4eb8fb99b5e |
children | f73ca04d73a7 |
line wrap: on
line source
/* 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. */ /** * A Messprogramm. * This class represents and defines the model of a 'Messprogramm' **/ Ext.define('Lada.model.Messprogramm', { extend: 'Ext.data.Model', fields: [{ name: 'id' }, { name: 'test', type: 'boolean' }, { name: 'netzbetreiberId', serialize: function(value) { if (value === '') { return null; } return value; } }, { name: 'mstId' }, { name: 'name' }, { name: 'datenbasisId' }, { name: 'baId' }, { name: 'gemId' }, { name: 'ortId' }, { name: 'mediaDesk' }, { name: 'umwId', serialize: function(value) { if (value === '') { return null; } return value; } }, { name: 'probenartId' }, { name: 'probenintervall' }, { name: 'teilintervallVon' }, { name: 'teilintervallBis' }, { name: 'intervallOffset' }, { name: 'gueltigVon', type: 'date', convert: function(v) { var firstofyeartimestamp = new Date( Date.UTC( new Date().getFullYear(),0,1)) .valueOf(); var dayToMilli = 86400000; if (!v) { return v; } //check if v might be a date // unless we go back in time this will work if (v < 1000) { v = v * dayToMilli; v = v + firstofyeartimestamp; v = new Date(v); } return v; }, serialize: function(value) { if (value instanceof Date && !isNaN(value.valueOf())) { return Ext.Date.getDayOfYear(value); } } }, { name: 'gueltigBis', type: 'date', convert: function(v) { var firstofyeartimestamp = new Date( Date.UTC( new Date().getFullYear(),0,1)) .valueOf(); var dayToMilli = 86400000; if (!v) { return v; } //check if v might be a date // unless we go back in time this will work if (v < 1000) { v = v * dayToMilli; v = v + firstofyeartimestamp; v = new Date(v); } return v; }, serialize: function(value) { if (value instanceof Date && !isNaN(value.valueOf())) { return Ext.Date.getDayOfYear(value); } } }, { name: 'probeNehmerId' }, { name: 'probeKommentar' }, { name: 'letzteAenderung', type: 'date', convert: function(v) { if (!v) { return v; } return new Date(v); } }], idProperty: 'id', proxy: { type: 'rest', url: 'lada-server/messprogramm', //not yet implemented reader: { type: 'json', root: 'data' } } });