From: Sven Schöling Date: Wed, 18 Oct 2017 11:54:13 +0000 (+0200) Subject: kivi.Validator: Jahreszahlen mit mehr als 4 Stellen ablehnen X-Git-Tag: release-3.5.4~672 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=22faee923071966f24b041c703aca282cb707fc0;p=kivitendo-erp.git kivi.Validator: Jahreszahlen mit mehr als 4 Stellen ablehnen Das ist in der Praxis mehrfach vorgekommen. Ja, theoretisch ist der 18.10.20017 ein korrektes Datum. In der Praxis ist es zu 100% ein Vertipper. --- diff --git a/js/kivi.js b/js/kivi.js index daedfaa78..43e3718c2 100644 --- a/js/kivi.js +++ b/js/kivi.js @@ -68,6 +68,8 @@ namespace("kivi", function(ns) { if (parts.length == 3) { var year = +parts[ ns._date_format.y ] || 0 * 1 || (new Date()).getFullYear(); + if (year > 9999) + return undefined; if (year < 100) { year += year > 70 ? 1900 : 2000; } diff --git a/js/t/kivi/parse_format_date.js b/js/t/kivi/parse_format_date.js index 904142d88..6cbc9a2b5 100644 --- a/js/t/kivi/parse_format_date.js +++ b/js/t/kivi/parse_format_date.js @@ -24,6 +24,7 @@ QUnit.test("kivi.parse_date function for German date style with dots", function( assert.deepEqual(kivi.parse_date("::"), undefined); assert.deepEqual(kivi.parse_date(""), null); assert.deepEqual(kivi.parse_date("0"), new Date()); + assert.deepEqual(kivi.parse_date("29.02.20008"), undefined); }); QUnit.test("kivi.parse_date function for German date style with slashes", function( assert ) {