atlas_assets 0.8.0 → 0.8.1
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.
- checksums.yaml +8 -8
- data/Gemfile.lock +6 -6
- data/docs/_posts/2014-05-05-select.md +42 -7
- data/lib/assets/javascripts/views/select.coffee +14 -3
- data/lib/atlas_assets/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZDA0YmFkNWNmZWExNzY4ZTQ5OWU3NzAwZmE1MDMwM2Q0NjUzNWM5Yw==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YzlmNjg2OGY3ZGYwNjA2YjM3MzNlMDFlM2I2ZDdiMWQzMjViZGQ0ZQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZmJlYmU5ZTYxZWFkOGUwOTUzNGMyMDNjZjBhOWE2N2NlYTVmZWVmZDc1ZjAz
|
10
|
+
YzNkOTQ0ZThlMDAwYmEyZjlkMDgzNzlmYzkzZTMxMTk2NmZkNWQ1OWQzMzc2
|
11
|
+
YWMzOWMxYzQxNGUxODk1MzQxMDg1NGVkNGJmYTQxOTY2MDc0M2E=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
Nzg5ZDVmMDZhMzkyNjBlMTljMGIyNDI0NzgwZjkzZWQ4NWE0ZTEyNDcxMTg2
|
14
|
+
YTZmZGYxNWU5ZTllY2YyODQ1MjVhMjM0YzAzNzY4ZjU3ZGNhMTY0NDQ0ZTQ3
|
15
|
+
NjUzMzVhNGU2YTY3ZGIzMzZkM2RiODBkYzJjNDQxYmI5OTc2NTA=
|
data/Gemfile.lock
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
GIT
|
2
2
|
remote: git://github.com/ixti/jekyll-assets.git
|
3
|
-
revision:
|
3
|
+
revision: ab60a35479b683258bef7ca5b4692964c5659589
|
4
4
|
specs:
|
5
|
-
jekyll-assets (0.7.
|
5
|
+
jekyll-assets (0.7.9)
|
6
6
|
jekyll (>= 1.0.0, < 3.0.0)
|
7
7
|
sass
|
8
8
|
sprockets (~> 2.10)
|
@@ -10,7 +10,7 @@ GIT
|
|
10
10
|
PATH
|
11
11
|
remote: .
|
12
12
|
specs:
|
13
|
-
atlas_assets (0.
|
13
|
+
atlas_assets (0.8.0)
|
14
14
|
handlebars_assets (~> 0.15)
|
15
15
|
|
16
16
|
GEM
|
@@ -32,9 +32,9 @@ GEM
|
|
32
32
|
eco-source
|
33
33
|
execjs
|
34
34
|
eco-source (1.1.0.rc.1)
|
35
|
-
execjs (2.0
|
35
|
+
execjs (2.1.0)
|
36
36
|
fast-stemmer (1.0.2)
|
37
|
-
handlebars_assets (0.
|
37
|
+
handlebars_assets (0.16)
|
38
38
|
execjs (>= 1.2.9)
|
39
39
|
multi_json
|
40
40
|
sprockets (>= 2.0.3)
|
@@ -53,7 +53,7 @@ GEM
|
|
53
53
|
safe_yaml (~> 0.7.0)
|
54
54
|
kramdown (1.0.2)
|
55
55
|
liquid (2.5.5)
|
56
|
-
maruku (0.7.
|
56
|
+
maruku (0.7.2)
|
57
57
|
multi_json (1.10.1)
|
58
58
|
posix-spawn (0.3.8)
|
59
59
|
puma (2.0.1)
|
@@ -10,13 +10,13 @@ Select View
|
|
10
10
|
|
11
11
|
## Simple Array Example
|
12
12
|
|
13
|
-
The SelectView can be implemented with a simple array. It will construct a Backbone Collection out of the array of values that you pass
|
13
|
+
The SelectView can be implemented with a simple array. It will construct a Backbone Collection out of the array of values that you pass...
|
14
14
|
|
15
15
|
<div id="simple-array"></div>
|
16
16
|
|
17
17
|
~~~js
|
18
18
|
var select1 = new classes.SelectView({
|
19
|
-
values: ["Rune","
|
19
|
+
values: ["Rune","Fred","Zach","Steve"],
|
20
20
|
helper: "Owner"
|
21
21
|
})
|
22
22
|
$('#simple-array').html(select1.render().el)
|
@@ -30,7 +30,7 @@ select1.on("change", function (model) {
|
|
30
30
|
|
31
31
|
<script>
|
32
32
|
var select1 = new classes.SelectView({
|
33
|
-
values: ["Rune","
|
33
|
+
values: ["Rune","Fred","Zach","Steve"],
|
34
34
|
helper: "Owner"
|
35
35
|
})
|
36
36
|
$('#simple-array').html(select1.render().el)
|
@@ -82,6 +82,41 @@ select2.on('change', function (model) {
|
|
82
82
|
})
|
83
83
|
</script>
|
84
84
|
|
85
|
+
## Adding a Model
|
86
|
+
|
87
|
+
Add a model to a select by using the `add_model` function and passing a Backbone Model as the only parameter. The model will be added and the list will be sorted alphabetically.
|
88
|
+
|
89
|
+
<div id="add-model"></div>
|
90
|
+
|
91
|
+
~~~javascript
|
92
|
+
var select3 = new classes.SelectView({
|
93
|
+
values: ["Rune","Fred","Zach","Steve"],
|
94
|
+
helper: "Owner"
|
95
|
+
})
|
96
|
+
$('#add-model').html(select3.render().el)
|
97
|
+
|
98
|
+
// Listen for change events
|
99
|
+
select3.on("change", function (model) {
|
100
|
+
$('#simple-array').append(model.get('label'))
|
101
|
+
})
|
102
|
+
|
103
|
+
select3.add_model(new Backbone.Model({label:"Andrew"}))
|
104
|
+
~~~
|
105
|
+
|
106
|
+
<script>
|
107
|
+
var select3 = new classes.SelectView({
|
108
|
+
values: ["Rune","Fred","Zach","Steve"],
|
109
|
+
helper: "Owner"
|
110
|
+
})
|
111
|
+
$('#add-model').html(select3.render().el)
|
112
|
+
|
113
|
+
// Listen for change events
|
114
|
+
select3.on("change", function (model) {
|
115
|
+
$('#simple-array').append(model.get('label'))
|
116
|
+
})
|
117
|
+
|
118
|
+
select3.add_model(new Backbone.Model({label:"Andrew"}))
|
119
|
+
</script>
|
85
120
|
|
86
121
|
## Helpers
|
87
122
|
|
@@ -90,7 +125,7 @@ You can also add helper text!
|
|
90
125
|
<div id="helper-example"></div>
|
91
126
|
|
92
127
|
~~~js
|
93
|
-
var
|
128
|
+
var select4 = new classes.SelectView({
|
94
129
|
collection: new Backbone.Collection([
|
95
130
|
{name:"Rune", key:"madsen"},
|
96
131
|
{name:"Steve", key:"klise"},
|
@@ -99,11 +134,11 @@ var select3 = new classes.SelectView({
|
|
99
134
|
helper: "NAMES!",
|
100
135
|
label: "name",
|
101
136
|
})
|
102
|
-
$('#helper-example').html(
|
137
|
+
$('#helper-example').html(select4.render().el)
|
103
138
|
~~~
|
104
139
|
|
105
140
|
<script>
|
106
|
-
var
|
141
|
+
var select4 = new classes.SelectView({
|
107
142
|
collection: new Backbone.Collection([
|
108
143
|
{name:"Rune", key:"madsen"},
|
109
144
|
{name:"Steve", key:"klise"},
|
@@ -112,5 +147,5 @@ var select3 = new classes.SelectView({
|
|
112
147
|
helper: "NAMES!",
|
113
148
|
label: "name",
|
114
149
|
})
|
115
|
-
$('#helper-example').html(
|
150
|
+
$('#helper-example').html(select4.render().el)
|
116
151
|
</script>
|
@@ -40,10 +40,20 @@ class classes.SelectView extends Backbone.View
|
|
40
40
|
@collection = new Backbone.Collection(_.map(values, (v) ->
|
41
41
|
return {"label": v}
|
42
42
|
))
|
43
|
+
@collection.comparator = "label"
|
44
|
+
@collection.sort()
|
43
45
|
|
44
46
|
add_model: (m) ->
|
45
47
|
@set_model_label(m)
|
46
|
-
@$el.find('select').first()
|
48
|
+
select_el = @$el.find('select').first()
|
49
|
+
select_el.append("<option>#{m.get('label')}</option>")
|
50
|
+
|
51
|
+
sort_by_name = (a, b) ->
|
52
|
+
a.innerHTML.toLowerCase().localeCompare(b.innerHTML.toLowerCase())
|
53
|
+
|
54
|
+
options = select_el.children().get().sort(sort_by_name)
|
55
|
+
for opt in options
|
56
|
+
select_el.append(opt)
|
47
57
|
|
48
58
|
set_model_label: (model) =>
|
49
59
|
model.set('label',model.get(@label))
|
@@ -68,7 +78,8 @@ class classes.SelectView extends Backbone.View
|
|
68
78
|
|
69
79
|
set: (value) -> @select.change(value)
|
70
80
|
|
71
|
-
render:
|
72
|
-
|
81
|
+
render: =>
|
82
|
+
@collection.comparator = "label"
|
83
|
+
@$el.html(@template({models:@collection.sort().models, helper:@helper}))
|
73
84
|
@trigger('rendered') if !@rendered
|
74
85
|
@
|
data/lib/atlas_assets/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: atlas_assets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rune Skjoldborg Madsen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-06-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: handlebars_assets
|