X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=js%2Fkivi.Validator.js;h=bc19ee537f4dcd7888c1a1806b3161764155d473;hb=4a98a42369087fe9d291285690bca812e9815c8a;hp=c8e02c63e05754d0da9778cf04c2e055f5313b2d;hpb=ccfd9aace3d2c0a1199668e36d2deadbb871bd9b;p=kivitendo-erp.git diff --git a/js/kivi.Validator.js b/js/kivi.Validator.js index c8e02c63e..bc19ee537 100644 --- a/js/kivi.Validator.js +++ b/js/kivi.Validator.js @@ -21,8 +21,10 @@ namespace("kivi.Validator", function(ns) { var to_check = $(selector + ' [data-validate]').toArray(); for (var to_check_idx in to_check) - if (!ns.validate($(to_check[to_check_idx]))) + if (!ns.validate($(to_check[to_check_idx]))) { + $(to_check[to_check_idx]).focus(); return false; + } return true; }; @@ -32,6 +34,8 @@ namespace("kivi.Validator", function(ns) { for (var test_idx in tests) { var test = tests[test_idx]; + if (!ns.checks[test]) + continue; if (ns.checks[test]) { if (!ns.checks[test]($e)) @@ -84,7 +88,7 @@ namespace("kivi.Validator", function(ns) { var parsed_date = kivi.parse_date(date_string); - if (parsed_number === null) { + if (parsed_date === null) { $e.val(''); ns.annotate($e); return true; @@ -100,6 +104,27 @@ namespace("kivi.Validator", function(ns) { ns.annotate($e); return true; } + }, + time: function($e) { + var time_string = $e.val(); + + var parsed_time = kivi.parse_time(time_string); + if (parsed_time === null) { + $e.val(''); + ns.annotate($e); + return true; + } else + if (parsed_time === undefined) { + ns.annotate($e, kivi.t8('Wrong time format (#1)', [ kivi.myconfig.timeformat ])); + return false; + } else + { + var formatted_time = kivi.format_time(parsed_time); + if (formatted_time != time_string) + $e.val(formatted_time); + ns.annotate($e); + return true; + } } };