               callback(params)
             else
               $.ajax(path, {
-                data: $.extend({}, paramsCollection($element), {init: true, item_ids: id}),
+                data: $.extend({}, paramsCollection($element, ''), {init: true, item_ids: id}),
                 dataType: "json"
               }).done((data) ->
                 if(data != null)

          functionCollection = window[additionalAjaxData['function']]($input, term)
        $(additionalAjaxData['selector']).each (index, el) ->
          $el = $(el)
          paramsCollection[$el.attr('name')] = $el.val()
          return
        $.extend(paramsCollection, additionalAjaxData['params'], functionCollection)
        delete paramsCollection[$input.attr('name')]
    paramsCollection

  window.initAutoAjaxSelect2 = ->
    # @todo: need to refactor this hell

          url: path,
          dataType: 'json',
          data: (term, page) ->
            ajaxData = {term: term, page: page}
            return $.extend({}, paramsCollection($input, term), ajaxData)
          ,
          results: (data, page) ->
            more = (page * limit) < data.total
            return {results: data.items, more: more}
        },
        initSelection : (element, callback) ->
          $element = $(element)
