Kunden-/Lieferantenbericht: Zahlungsbegingungen anzeigen können.
[kivitendo-erp.git] / js / common.js
index 86b869c..9160115 100644 (file)
@@ -33,42 +33,31 @@ function centerParms(width,height,extra) {
   return string;
 }
 
-function set_longdescription_window(input_name) {
-  var parm = centerParms(600,500) + ",width=600,height=500,status=yes,scrollbars=yes";
-  var name = document.getElementsByName(input_name)[0].value;
-  url = "common.pl?" +
-    "INPUT_ENCODING=UTF-8&" +
-    "action=set_longdescription&" +
-    "longdescription=" + encodeURIComponent(document.getElementsByName(input_name)[0].value) + "&" +
-    "input_name=" + encodeURIComponent(input_name) + "&"
-  window.open(url, "_new_generic", parm);
-  }
-
 function check_right_number_format(input_name) {
-  if(decpoint == thpoint) {
+  if(decpoint && thpoint && thpoint == decpoint) {
     return show_alert_and_focus(input_name, wrongNumberFormat);
   }
-  if(decpoint == ',') {
-    var decnumbers = input_name.value.split(',');
+  var test_val = input_name.value;
+  if(thpoint && thpoint == ','){
+    test_val = test_val.replace(/,/g, '');
   }
-  else {
-    var decnumbers = input_name.value.split('.');
+  if(thpoint && thpoint == '.'){
+    test_val = test_val.replace(/\./g, '');
   }
-  if(decnumbers.length == 2) {
-    if(decnumbers[1].length > 2)  {
-     /* return show_alert_and_focus(input_name, wrongNumberFormat); */
-    }
+  if(decpoint && decpoint == ','){
+    test_val = test_val.replace(/,/g, '.');
   }
-  else {
-    if(decnumbers.length > 2) {
-      return show_alert_and_focus(input_name, wrongNumberFormat);
-    }
-    if(!thpoint) {
-      if(decnumbers[0].match(/\D/)) {
-        return show_alert_and_focus(input_name, wrongNumberFormat);
-      }
-    }
+  var forbidden = test_val.match(/[^\s\d\(\)\-\+\*\/\.]/g);
+  if (forbidden && forbidden.length > 0 ){
+    return show_alert_and_focus(input_name, wrongNumberFormat);
+  }
+
+  try{
+    eval(test_val);
+  }catch(err){
+    return show_alert_and_focus(input_name, wrongNumberFormat);
   }
+
 }
 
 function check_right_date_format(input_name) {
@@ -164,9 +153,13 @@ $(document).ready(function () {
   $('input').focus(function(){
     if (focussable(this)) window.focused_element = this;
   });
+
+  var initial_focus = $(".initial_focus").filter(':visible')[0];
+  if (initial_focus)
+    $(initial_focus).focus();
+
   // legacy. sone forms install these
   if (typeof fokus == 'function') { fokus(); return; }
-  if (focus_by_name('fokus'))        return;
   if (focus_by_name('cursor_fokus')) return;
   set_cursor_to_first_element();
 });