]> wagnertech.de Git - mfinanz.git/blobdiff - js/autocomplete_part.js
Merge branch 'b-3.6.1' of ../kivitendo-erp_20220811
[mfinanz.git] / js / autocomplete_part.js
diff --git a/js/autocomplete_part.js b/js/autocomplete_part.js
deleted file mode 100644 (file)
index 451f964..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-$(function(){
-  $('input.part_autocomplete').each(function(i,real){
-    var $dummy  = $('#' + real.id + '_name');
-    var $type   = $('#' + real.id + '_type');
-    var $column = $('#' + real.id + '_column');
-    $dummy.autocomplete({
-      source: function(req, rsp) {
-        $.ajax({
-          url: 'controller.pl?action=Part/ajax_autocomplete',
-          dataType: "json",
-          data: {
-            term: req.term,
-            type: function() { return $type.val() },
-            column: function() { return $column.val()===undefined ? '' : $column.val() },
-            current: function() { return real.value },
-            obsolete: 0,
-          },
-          success: function (data){ rsp(data) }
-        });
-      },
-      limit: 20,
-      delay: 50,
-      select: function(event, ui) {
-        $(real).val(ui.item.id);
-        $dummy.val(ui.item.name);
-      },
-    });
-
-    var open_dialog = function(){
-      open_jqm_window({
-        url: 'controller.pl',
-        data: {
-          action: 'Part/part_picker_search',
-          real_id: function() { return $(real).attr('id') },
-          'filter.all:substr::ilike': function(){ return $dummy.val() },
-          'filter.type': function(){ return $type.val() },
-          'column': function(){ return $column.val() },
-          'real_id': function() { return real.id },
-        },
-        id: 'part_selection',
-      });
-      return true;
-    };
-    /*  In case users are impatient and want to skip ahead:
-     *  Capture <enter> key events and check if it's a unique hit.
-     *  If it is, go ahead and assume it was selected. If it wasn't don't do
-     *  anything so that autocompletion kicks in.  For <tab> don't prevent
-     *  propagation. It would be nice to catch it, but javascript is too stupid
-     *  to fire a tab event later on, so we'd have to reimplement the "find
-     *  next active element in tabindex order and focus it".
-     */
-    $dummy.keypress(function(event){
-      if (event.keyCode == 13 || event.keyCode == 9) { // enter or tab or tab
-        // if string is empty asume they want to delete
-        if ($dummy.val() == '') {
-          $(real).val('');
-          return true;
-        }
-        $.ajax({
-          url: 'controller.pl?action=Part/ajax_autocomplete',
-          dataType: "json",
-          data: {
-            term: $dummy.val(),
-            type: function() { return $type.val() },
-            column: function() { return $column.val()===undefined ? '' : $column.val() },
-            current: function() { return real.value },
-            obsolete: 0,
-          },
-          success: function (data){
-            // only one
-            if (data.length == 1) {
-              $(real).val(data[0].id);
-              $dummy.val(data[0].description);
-              if (event.keyCode == 13)
-                $('#update_button').click();
-            } else {
-              open_dialog();
-            }
-          }
-        });
-        if (event.keyCode == 13)
-          return false;
-      };
-    });
-
-    $dummy.blur(function(){
-      if ($dummy.val() == '')
-        $(real).val('');
-    });
-
-    // now add a picker div after the original input
-    var pcont  = $('<span>').addClass('position-absolute');
-    var picker = $('<div>');
-    $dummy.after(pcont);
-    pcont.append(picker);
-    picker.addClass('icon16 CRM--Schnellsuche').click(open_dialog);
-  });
-})