]> wagnertech.de Git - mfinanz.git/blobdiff - js/kivi.Part.js
kivi.Part.js: KEY konstanten aus Picker verschoben.
[mfinanz.git] / js / kivi.Part.js
index 843c432878049db425abcfe807b04412a5c4fdeb..083e31e91fa93b7bceb5c4d0d4f0a2d888fb3e46 100644 (file)
@@ -263,24 +263,26 @@ namespace('kivi.Part', function(ns) {
     $.post("controller.pl", { action: 'Part/warehouse_changed', warehouse_id: function(){ return $('#part_warehouse_id').val() } },   kivi.eval_json_result);
   }
 
+  var KEY = {
+    TAB:       9,
+    ENTER:     13,
+    SHIFT:     16,
+    CTRL:      17,
+    ALT:       18,
+    ESCAPE:    27,
+    PAGE_UP:   33,
+    PAGE_DOWN: 34,
+    LEFT:      37,
+    UP:        38,
+    RIGHT:     39,
+    DOWN:      40,
+  };
+
   ns.Picker = function($real, options) {
     // short circuit in case someone double inits us
     if ($real.data("part_picker"))
       return $real.data("part_picker");
 
-    var KEY = {
-      ESCAPE: 27,
-      ENTER:  13,
-      TAB:    9,
-      LEFT:   37,
-      RIGHT:  39,
-      DOWN:   40,
-      PAGE_UP: 33,
-      PAGE_DOWN: 34,
-      SHIFT:     16,
-      CTRL:      17,
-      ALT:       18,
-    };
     var CLASSES = {
       PICKED:       'partpicker-picked',
       UNDEFINED:    'partpicker-undefined',
@@ -291,9 +293,9 @@ namespace('kivi.Part', function(ns) {
       delay: 50,
       fat_set_item: $real.hasClass(CLASSES.FAT_SET_ITEM),
       action: {
-        on_enter_match_none:  function(){},
-        on_enter_match_one:   function(){$('#update_button').click();},
-        on_enter_match_many:  function(){open_dialog();}
+        on_enter_match_none: function(){ },
+        on_enter_match_one:  function(){ $('#update_button').click(); },
+        on_enter_match_many: function(){ open_dialog(); }
       }
     }, options);
     var STATES = {
@@ -359,15 +361,15 @@ namespace('kivi.Part', function(ns) {
         $real.val('');
         $dummy.val('');
       }
-      state = STATES.PICKED;
-      last_real = $real.val();
+      state      = STATES.PICKED;
+      last_real  = $real.val();
       last_dummy = $dummy.val();
       $real.trigger('change');
 
       if (o.fat_set_item && item.id) {
         $.ajax({
           url: 'controller.pl?action=Part/show.json',
-          data: { id: item.id },
+          data: { 'part.id': item.id },
           success: function(rsp) {
             $real.trigger('set_item:PartPicker', rsp);
           },
@@ -443,7 +445,7 @@ namespace('kivi.Part', function(ns) {
             if (callbacks && callbacks.match_many) callbacks.match_many(data);
           } else {
             state = STATES.UNDEFINED;
-            if (callbacks &&callbacks.match_none) callbacks.match_none();
+            if (callbacks && callbacks.match_none) callbacks.match_none();
           }
           annotate_state();
         }
@@ -571,6 +573,16 @@ namespace('kivi.Part', function(ns) {
     return pp;
   };
 
+  ns.reinit_widgets = function() {
+    kivi.run_once_for('input.part_autocomplete', 'part_picker', function(elt) {
+      kivi.Part.Picker($(elt));
+    });
+  }
+
+  ns.init = function() {
+    ns.reinit_widgets();
+  }
+
   $(function(){
 
     // assortment
@@ -613,8 +625,6 @@ namespace('kivi.Part', function(ns) {
 
     $('#part_warehouse_id').change(kivi.Part.reload_bin_selection);
 
-    $('input.part_autocomplete').each(function(i,real){
-      kivi.Part.Picker($(real));
-    });
+    ns.init();
   });
 });