js/common.js: show_alert_and_focus auf annotate umgeschrieben
authorSven Schöling <s.schoeling@linet-services.de>
Thu, 12 Oct 2017 13:54:27 +0000 (15:54 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Fri, 13 Oct 2017 13:45:45 +0000 (15:45 +0200)
js/common.js
js/locale/de.js

index 07317ec..4959aca 100644 (file)
@@ -34,9 +34,6 @@ function centerParms(width,height,extra) {
 }
 
 function check_right_number_format(input_name) {
-  if(decpoint && thpoint && thpoint == decpoint) {
-    return show_alert_and_focus(input_name, wrongNumberFormat);
-  }
   var test_val = input_name.value;
   if(thpoint && thpoint == ','){
     test_val = test_val.replace(/,/g, '');
@@ -52,19 +49,21 @@ function check_right_number_format(input_name) {
   }
   var forbidden = test_val.match(/[^\s\d\(\)\-\+\*\/\.]/g);
   if (forbidden && forbidden.length > 0 ){
-    return show_alert_and_focus(input_name, wrongNumberFormat);
+    return annotate(input_name, kivi.t8('wrongformat'), kivi.myconfig.numberformat);
   }
 
   try{
     eval(test_val);
   }catch(err){
-    return show_alert_and_focus(input_name, wrongNumberFormat);
+    return annotate(input_name, kivi.t8('wrongformat'), kivi.myconfig.numberformat);
   }
 
+  return annotate(input_name);
 }
 
 function check_right_date_format(input_name) {
   if(input_name.value == "") {
+    annotate(input_name);
     return true;
   }
 
@@ -111,21 +110,35 @@ function check_right_date_format(input_name) {
   if(!(dateFormat.lastIndexOf("y") == 3) && !matching.test(input_name.value)) {
     matching = new RegExp(dateFormat.replace(/\w/g, '\\d') + '\\d\\d\$', "ig");
     if(!matching.test(input_name.value)) {
-      return show_alert_and_focus(input_name, wrongDateFormat);
+      return annotate(input_name, kivi.t8('Falsches Datumsformat!'), kivi.myconfig.dateformat);
     }
   }
   else {
     if (dateFormat.lastIndexOf("y") == 3 && !matching.test(input_name.value)) {
-      return show_alert_and_focus(input_name, wrongDateFormat);
+      return annotate(input_name, kivi.t8('Falsches Datumsformat!'), kivi.myconfig.dateformat);
     }
   }
+  return annotate(input_name);
 }
 
-function show_alert_and_focus(input_name, errorMessage) {
-  input_name.select();
-  alert(errorMessage + "\n\r\n\r--> " + input_name.value);
-  input_name.focus();
-  return false;
+function annotate(input_name, error, expected) {
+  var $e = $(input_name);
+  if (error) {
+    $e.addClass('kivi-validator-invalid');
+    var tooltip = error + ' (' + expected + ')';
+    if ($e.hasClass('tooltipstered'))
+      $e.tooltipster('destroy');
+
+    $e.tooltipster({
+      content: tooltip,
+      theme: 'tooltipster-light',
+    });
+    $e.tooltipster('show');
+  } else {
+    $e.removeClass('kivi-validator-invalid');
+    if ($e.hasClass('tooltipstered'))
+      $e.tooltipster('destroy');
+  }
 }
 
 function get_input_value(input_name) {
index cd7eb0d..f58cb9f 100644 (file)
@@ -56,6 +56,7 @@ namespace("kivi").setupLocale({
 "Edit text block":"Textblock bearbeiten",
 "Enter longdescription":"Langtext eingeben",
 "Error: Name missing":"Fehler: Name fehlt",
+"Falsches Datumsformat!":"Falsches Datumsformat!",
 "File upload":"Datei Upload",
 "Function block actions":"Funktionsblockaktionen",
 "Generate and print sales delivery orders":"Erzeuge und drucke Lieferscheine",
@@ -138,5 +139,6 @@ namespace("kivi").setupLocale({
 "sort items":"Positionen sortieren",
 "start upload":"Hochladen beginnt",
 "time and effort based position":"Aufwandsposition",
-"uploaded":"Hochgeladen"
+"uploaded":"Hochgeladen",
+"wrongformat":"Falsches Format"
 });