Auftragsschnellerfassung: Korrekturen für Währung/Wechselkurs
[kivitendo-erp.git] / js / autocomplete_project.js
index 9234340..9e76119 100644 (file)
@@ -14,6 +14,9 @@ namespace('kivi', function(k){
       RIGHT:  39,
       PAGE_UP: 33,
       PAGE_DOWN: 34,
+      SHIFT:     16,
+      CTRL:      17,
+      ALT:       18,
     };
     var CLASSES = {
       PICKED:       'projectpicker-picked',
@@ -58,10 +61,9 @@ namespace('kivi', function(k){
         $real.val('');
         $dummy.val('');
       }
-      state                 = STATES.PICKED;
-      last_real             = $real.val();
-      last_dummy            = $dummy.val();
-      last_unverified_dummy = $dummy.val();
+      state      = STATES.PICKED;
+      last_real  = $real.val();
+      last_dummy = $dummy.val();
 
       $real.trigger('change');
       $real.trigger('set_item:ProjectPicker', item);
@@ -76,7 +78,6 @@ namespace('kivi', function(k){
       } else if (state == STATES.UNDEFINED && $dummy.val() === '')
         set_item({})
       else {
-        last_unverified_dummy = $dummy.val();
         set_item({ id: last_real, name: last_dummy })
       }
       annotate_state();
@@ -88,7 +89,6 @@ namespace('kivi', function(k){
       else if (state == STATES.UNDEFINED && $dummy.val() === '')
         $dummy.removeClass(STATES.UNDEFINED).addClass(STATES.PICKED);
       else {
-        last_unverified_dummy = $dummy.val();
         $dummy.addClass(STATES.UNDEFINED).removeClass(STATES.PICKED);
       }
     }
@@ -151,6 +151,10 @@ namespace('kivi', function(k){
       select: function(event, ui) {
         set_item(ui.item);
       },
+      search: function(event, ui) {
+        if ((event.which == KEY.SHIFT) || (event.which == KEY.CTRL) || (event.which == KEY.ALT))
+          event.preventDefault();
+      }
     });
     /*  In case users are impatient and want to skip ahead:
      *  Capture <enter> key events and check if it's a unique hit.
@@ -183,7 +187,7 @@ namespace('kivi', function(k){
           });
           return false;
         }
-      } else {
+      } else if ((event.which != KEY.SHIFT) && (event.which != KEY.CTRL) && (event.which != KEY.ALT)) {
         state = STATES.UNDEFINED;
       }
     });