chosen-rails 0.9.7.1 → 0.9.8
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.
- data/LICENSE +1 -1
- data/lib/chosen-rails/version.rb +2 -2
- data/vendor/assets/images/chosen-sprite.png +0 -0
- data/vendor/assets/javascripts/chosen.jquery.coffee +7 -4
- data/vendor/assets/javascripts/chosen.proto.coffee +7 -4
- data/vendor/assets/javascripts/lib/abstract-chosen.coffee +1 -0
- data/vendor/assets/stylesheets/chosen.css.sass +3 -0
- metadata +13 -15
data/LICENSE
CHANGED
data/lib/chosen-rails/version.rb
CHANGED
Binary file
|
@@ -40,7 +40,7 @@ class Chosen extends AbstractChosen
|
|
40
40
|
if @is_multiple
|
41
41
|
container_div.html '<ul class="chzn-choices"><li class="search-field"><input type="text" value="' + @default_text + '" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chzn-drop" style="left:-9000px;"><ul class="chzn-results"></ul></div>'
|
42
42
|
else
|
43
|
-
container_div.html '<a href="javascript:void(0)" class="chzn-single"><span>' + @default_text + '</span><div><b></b></div></a><div class="chzn-drop" style="left:-9000px;"><div class="chzn-search"><input type="text" autocomplete="off" /></div><ul class="chzn-results"></ul></div>'
|
43
|
+
container_div.html '<a href="javascript:void(0)" class="chzn-single chzn-default"><span>' + @default_text + '</span><div><b></b></div></a><div class="chzn-drop" style="left:-9000px;"><div class="chzn-search"><input type="text" autocomplete="off" /></div><ul class="chzn-results"></ul></div>'
|
44
44
|
|
45
45
|
@form_field_jq.hide().after container_div
|
46
46
|
@container = ($ '#' + @container_id)
|
@@ -108,7 +108,7 @@ class Chosen extends AbstractChosen
|
|
108
108
|
container_mousedown: (evt) ->
|
109
109
|
if !@is_disabled
|
110
110
|
target_closelink = if evt? then ($ evt.target).hasClass "search-choice-close" else false
|
111
|
-
if evt and evt.type is "mousedown"
|
111
|
+
if evt and evt.type is "mousedown" and not @results_showing
|
112
112
|
evt.stopPropagation()
|
113
113
|
if not @pending_destroy_click and not target_closelink
|
114
114
|
if not @active_field
|
@@ -187,7 +187,7 @@ class Chosen extends AbstractChosen
|
|
187
187
|
if data.selected and @is_multiple
|
188
188
|
this.choice_build data
|
189
189
|
else if data.selected and not @is_multiple
|
190
|
-
@selected_item.find("span").text data.text
|
190
|
+
@selected_item.removeClass("chzn-default").find("span").text data.text
|
191
191
|
this.single_deselect_control_build() if @allow_single_deselect
|
192
192
|
|
193
193
|
this.search_field_disabled()
|
@@ -315,6 +315,7 @@ class Chosen extends AbstractChosen
|
|
315
315
|
results_reset: (evt) ->
|
316
316
|
@form_field.options[0].selected = true
|
317
317
|
@selected_item.find("span").text @default_text
|
318
|
+
@selected_item.addClass("chzn-default") if not @is_multiple
|
318
319
|
this.show_search_field_default()
|
319
320
|
$(evt.target).remove();
|
320
321
|
@form_field_jq.trigger "change"
|
@@ -332,6 +333,7 @@ class Chosen extends AbstractChosen
|
|
332
333
|
else
|
333
334
|
@search_results.find(".result-selected").removeClass "result-selected"
|
334
335
|
@result_single_selected = high
|
336
|
+
@selected_item.removeClass("chzn-default")
|
335
337
|
|
336
338
|
high.addClass "result-selected"
|
337
339
|
|
@@ -383,7 +385,8 @@ class Chosen extends AbstractChosen
|
|
383
385
|
results = 0
|
384
386
|
|
385
387
|
searchText = if @search_field.val() is @default_text then "" else $('<div/>').text($.trim(@search_field.val())).html()
|
386
|
-
|
388
|
+
regexAnchor = if @search_contains then "" else "^"
|
389
|
+
regex = new RegExp(regexAnchor + searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i')
|
387
390
|
zregex = new RegExp(searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i')
|
388
391
|
|
389
392
|
for option in @results_data
|
@@ -16,7 +16,7 @@ class Chosen extends AbstractChosen
|
|
16
16
|
super()
|
17
17
|
|
18
18
|
# HTML Templates
|
19
|
-
@single_temp = new Template('<a href="javascript:void(0)" class="chzn-single"><span>#{default}</span><div><b></b></div></a><div class="chzn-drop" style="left:-9000px;"><div class="chzn-search"><input type="text" autocomplete="off" /></div><ul class="chzn-results"></ul></div>')
|
19
|
+
@single_temp = new Template('<a href="javascript:void(0)" class="chzn-single chzn-default"><span>#{default}</span><div><b></b></div></a><div class="chzn-drop" style="left:-9000px;"><div class="chzn-search"><input type="text" autocomplete="off" /></div><ul class="chzn-results"></ul></div>')
|
20
20
|
@multi_temp = new Template('<ul class="chzn-choices"><li class="search-field"><input type="text" value="#{default}" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chzn-drop" style="left:-9000px;"><ul class="chzn-results"></ul></div>')
|
21
21
|
@choice_temp = new Template('<li class="search-choice" id="#{id}"><span>#{choice}</span><a href="javascript:void(0)" class="search-choice-close" rel="#{position}"></a></li>')
|
22
22
|
@no_results_temp = new Template('<li class="no-results">' + @results_none_found + ' "<span>#{terms}</span>"</li>')
|
@@ -101,7 +101,7 @@ class Chosen extends AbstractChosen
|
|
101
101
|
container_mousedown: (evt) ->
|
102
102
|
if !@is_disabled
|
103
103
|
target_closelink = if evt? then evt.target.hasClassName "search-choice-close" else false
|
104
|
-
if evt and evt.type is "mousedown"
|
104
|
+
if evt and evt.type is "mousedown" and not @results_showing
|
105
105
|
evt.stop()
|
106
106
|
if not @pending_destroy_click and not target_closelink
|
107
107
|
if not @active_field
|
@@ -179,7 +179,7 @@ class Chosen extends AbstractChosen
|
|
179
179
|
if data.selected and @is_multiple
|
180
180
|
this.choice_build data
|
181
181
|
else if data.selected and not @is_multiple
|
182
|
-
@selected_item.down("span").update( data.html )
|
182
|
+
@selected_item.removeClassName("chzn-default").down("span").update( data.html )
|
183
183
|
this.single_deselect_control_build() if @allow_single_deselect
|
184
184
|
|
185
185
|
this.search_field_disabled()
|
@@ -308,6 +308,7 @@ class Chosen extends AbstractChosen
|
|
308
308
|
results_reset: (evt) ->
|
309
309
|
@form_field.options[0].selected = true
|
310
310
|
@selected_item.down("span").update(@default_text)
|
311
|
+
@selected_item.addClassName("chzn-default") if not @is_multiple
|
311
312
|
this.show_search_field_default()
|
312
313
|
evt.target.remove()
|
313
314
|
@form_field.simulate("change") if typeof Event.simulate is 'function'
|
@@ -322,6 +323,7 @@ class Chosen extends AbstractChosen
|
|
322
323
|
this.result_deactivate high
|
323
324
|
else
|
324
325
|
@search_results.descendants(".result-selected").invoke "removeClassName", "result-selected"
|
326
|
+
@selected_item.removeClassName("chzn-default")
|
325
327
|
@result_single_selected = high
|
326
328
|
|
327
329
|
high.addClassName("result-selected")
|
@@ -374,7 +376,8 @@ class Chosen extends AbstractChosen
|
|
374
376
|
results = 0
|
375
377
|
|
376
378
|
searchText = if @search_field.value is @default_text then "" else @search_field.value.strip().escapeHTML()
|
377
|
-
|
379
|
+
regexAnchor = if @search_contains then "" else "^"
|
380
|
+
regex = new RegExp(regexAnchor + searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i')
|
378
381
|
zregex = new RegExp(searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i')
|
379
382
|
|
380
383
|
for option in @results_data
|
@@ -29,6 +29,7 @@ class AbstractChosen
|
|
29
29
|
@result_single_selected = null
|
30
30
|
@allow_single_deselect = if @options.allow_single_deselect? and @form_field.options[0]? and @form_field.options[0].text is "" then @options.allow_single_deselect else false
|
31
31
|
@disable_search_threshold = @options.disable_search_threshold || 0
|
32
|
+
@search_contains = @options.search_contains || false
|
32
33
|
@choices = 0
|
33
34
|
@results_none_found = @options.no_results_text or "No results match"
|
34
35
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chosen-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,12 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
13
|
-
default_executable:
|
12
|
+
date: 2012-03-15 00:00:00.000000000Z
|
14
13
|
dependencies:
|
15
14
|
- !ruby/object:Gem::Dependency
|
16
15
|
name: railties
|
17
|
-
requirement: &
|
16
|
+
requirement: &70127787354960 !ruby/object:Gem::Requirement
|
18
17
|
none: false
|
19
18
|
requirements:
|
20
19
|
- - ~>
|
@@ -22,10 +21,10 @@ dependencies:
|
|
22
21
|
version: '3.0'
|
23
22
|
type: :runtime
|
24
23
|
prerelease: false
|
25
|
-
version_requirements: *
|
24
|
+
version_requirements: *70127787354960
|
26
25
|
- !ruby/object:Gem::Dependency
|
27
26
|
name: thor
|
28
|
-
requirement: &
|
27
|
+
requirement: &70127787354420 !ruby/object:Gem::Requirement
|
29
28
|
none: false
|
30
29
|
requirements:
|
31
30
|
- - ~>
|
@@ -33,10 +32,10 @@ dependencies:
|
|
33
32
|
version: '0.14'
|
34
33
|
type: :runtime
|
35
34
|
prerelease: false
|
36
|
-
version_requirements: *
|
35
|
+
version_requirements: *70127787354420
|
37
36
|
- !ruby/object:Gem::Dependency
|
38
37
|
name: bundler
|
39
|
-
requirement: &
|
38
|
+
requirement: &70127787353860 !ruby/object:Gem::Requirement
|
40
39
|
none: false
|
41
40
|
requirements:
|
42
41
|
- - ~>
|
@@ -44,10 +43,10 @@ dependencies:
|
|
44
43
|
version: '1.0'
|
45
44
|
type: :development
|
46
45
|
prerelease: false
|
47
|
-
version_requirements: *
|
46
|
+
version_requirements: *70127787353860
|
48
47
|
- !ruby/object:Gem::Dependency
|
49
48
|
name: rails
|
50
|
-
requirement: &
|
49
|
+
requirement: &70127787353280 !ruby/object:Gem::Requirement
|
51
50
|
none: false
|
52
51
|
requirements:
|
53
52
|
- - ~>
|
@@ -55,10 +54,10 @@ dependencies:
|
|
55
54
|
version: '3.0'
|
56
55
|
type: :development
|
57
56
|
prerelease: false
|
58
|
-
version_requirements: *
|
57
|
+
version_requirements: *70127787353280
|
59
58
|
- !ruby/object:Gem::Dependency
|
60
59
|
name: sass
|
61
|
-
requirement: &
|
60
|
+
requirement: &70127787348600 !ruby/object:Gem::Requirement
|
62
61
|
none: false
|
63
62
|
requirements:
|
64
63
|
- - ~>
|
@@ -66,7 +65,7 @@ dependencies:
|
|
66
65
|
version: '3.1'
|
67
66
|
type: :development
|
68
67
|
prerelease: false
|
69
|
-
version_requirements: *
|
68
|
+
version_requirements: *70127787348600
|
70
69
|
description: Chosen is a javascript library of select box enhancer for jQuery and
|
71
70
|
Protoype. This gem integrates Chosen with Rails asset pipeline for easy of use.
|
72
71
|
email:
|
@@ -94,7 +93,6 @@ files:
|
|
94
93
|
- vendor/assets/javascripts/lib/abstract-chosen.coffee
|
95
94
|
- vendor/assets/javascripts/lib/select-parser.coffee
|
96
95
|
- vendor/assets/stylesheets/chosen.css.sass
|
97
|
-
has_rdoc: true
|
98
96
|
homepage: https://github.com/tsechingho/chosen-rails
|
99
97
|
licenses: []
|
100
98
|
post_install_message:
|
@@ -115,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
115
113
|
version: '0'
|
116
114
|
requirements: []
|
117
115
|
rubyforge_project:
|
118
|
-
rubygems_version: 1.
|
116
|
+
rubygems_version: 1.8.17
|
119
117
|
signing_key:
|
120
118
|
specification_version: 3
|
121
119
|
summary: Integrate Chosen javascript library with Rails asset pipeline
|