jquery_drapper 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,3 @@
1
1
  module JqueryDrapper
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -0,0 +1,76 @@
1
+ (function($) {
2
+ $.drappers = $.extend($.drappers, {
3
+ autocomplete: function() {
4
+ if(!$.isFunction($.fn.sortable)) {
5
+ throw "Jquery plugin '$.fn.tokenInput' hasn't been required. "
6
+ + "Check http://loopj.com/jquery-tokeninput/ "
7
+ }
8
+
9
+ if(!this.isDecoree) {
10
+ throw "The object is not decoree!"
11
+ + "See https://github.com/aratak/jquery.drapper/ for details."
12
+ }
13
+
14
+ var decoree = this;
15
+
16
+ var getData = function(selectSelected) {
17
+ return $(decoree).find('option' + (selectSelected ? '[selected]' : '')).map(function() {
18
+ return {
19
+ id: $(this).val(),
20
+ queue: $(this).attr('data-drapper-keywords'),
21
+ hint: $(this).attr('data-drapper-hint'),
22
+ value: $(this).html()
23
+ }
24
+ });
25
+ }
26
+
27
+ var getOptionByItem = function(item) {
28
+ return $(decoree).find('option[value=' + item['id'] + ']')
29
+ }
30
+
31
+ var optionsToTokenInput = function() {
32
+ return $.extend({
33
+ theme: 'facebook',
34
+ propertyToSearch: "queue",
35
+ resultsFormatter: function(item) { return "<li>" + item.hint + "</li>" },
36
+ tokenFormatter: function(item) { return "<li>" + item.value + "</li>" },
37
+ preventDuplicates: true,
38
+ hintText: "Type in a search term",
39
+ onAdd: function(item) {
40
+ return getOptionByItem(item).attr('selected', 'selected');
41
+ },
42
+ onDelete: function(item) {
43
+ return getOptionByItem(item).removeAttr('selected');
44
+ },
45
+ prePopulate: getData(true)
46
+ }, decoree.config);
47
+ }
48
+
49
+ var tokenInput = function() {
50
+ var findTokenInput = function() {
51
+ decoree.wrapper().find('input[data-drapper-autocomplete-container]');
52
+ }
53
+ var createTokenInput = function() {
54
+ return $(document.createElement('input')).attr({
55
+ 'type': 'text',
56
+ 'data-drapper-autocomplete-container': true
57
+ }).appendTo(decoree.wrapper());
58
+ }
59
+ return findTokenInput() || createTokenInput();
60
+ }
61
+
62
+ var hideDecoree = function() {
63
+ $(decoree).css({
64
+ visibility: 'hidden',
65
+ position: 'absolute',
66
+ zIndex: -1
67
+ })
68
+ return true;
69
+ };
70
+
71
+ hideDecoree();
72
+ $(tokenInput()).tokenInput(getData(), optionsToTokenInput());
73
+ }
74
+ });
75
+ })(jQuery);
76
+
@@ -2,18 +2,18 @@
2
2
  if($.fn.drapper === undefined) {
3
3
  throw "$.drapper plugin hasn't been required"
4
4
  + "This plugin depends from 'jquery.drapper' plugin. "
5
- + "See https://github.com/aratak/jquery.drapper/ for details."
5
+ + "See https://github.com/aratak/jquery_drapper/ for details."
6
6
  }
7
7
 
8
8
  $.drappers = $.extend($.drappers, {
9
9
  slider: function() {
10
10
  if(!$.isFunction($.fn.slider)) {
11
- throw "drapper.slider work with jquery-ui slider. Please, require that"
11
+ throw "drapper.slider work with jquery-ui slider. Please, require that."
12
12
  }
13
13
 
14
14
  if(!this.isDecoree) {
15
15
  throw "The object is not decoree!"
16
- + "See https://github.com/aratak/jquery.drapper/ for details."
16
+ + "See https://github.com/aratak/jquery_drapper/ for details."
17
17
  }
18
18
 
19
19
  var decoree = this;
@@ -47,8 +47,6 @@
47
47
  };
48
48
 
49
49
  hideDecoree();
50
- console.log(decoree.config.sortableList)
51
- console.log(sortableOptions)
52
50
  $(decoree.config.sortableList).sortable(sortableOptions);
53
51
  }
54
52
  });
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 0
8
- - 2
9
- version: 0.0.2
8
+ - 3
9
+ version: 0.0.3
10
10
  platform: ruby
11
11
  authors:
12
12
  - Alexey Osipenko
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-12-23 00:00:00 +02:00
17
+ date: 2012-01-05 00:00:00 +02:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -57,6 +57,7 @@ files:
57
57
  - lib/jquery_drapper/rails/engine.rb
58
58
  - lib/jquery_drapper/version.rb
59
59
  - vendor/assets/javascripts/jquery.drapper.js
60
+ - vendor/assets/javascripts/jquery.drappers.autocomplete.js
60
61
  - vendor/assets/javascripts/jquery.drappers.selectGroup.js
61
62
  - vendor/assets/javascripts/jquery.drappers.slider.js
62
63
  - vendor/assets/javascripts/jquery.drappers.sortable.js