atlas_assets 0.8.0 → 0.8.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NmYzYjMyNGQ0NWU0MTdiNmI1YzVlZGZhYmY5OWU4NDM2N2E0ZWNkYg==
4
+ ZDA0YmFkNWNmZWExNzY4ZTQ5OWU3NzAwZmE1MDMwM2Q0NjUzNWM5Yw==
5
5
  data.tar.gz: !binary |-
6
- MDY1YTEzNTViNWUyMTFlODU0ZDU5ZTEzNjgxYmY4MjE2MmZmMTBlYQ==
6
+ YzlmNjg2OGY3ZGYwNjA2YjM3MzNlMDFlM2I2ZDdiMWQzMjViZGQ0ZQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MWE3MWNlMzRkNzZjYmQ1NzVkNGIzYjYzYzJmN2VlYjU2MjdhZjI4MGJiOTZk
10
- Yzg2M2RlNDA2MmY0MzBiMTIwMjcyN2M1ZjYwMTZjYzQzZDcwOTFhNzE3YmY1
11
- NTk1YjEzNTQzZmMwZTVhYjRkMDUyNGIzOWZhYzljMjdmYWY4MjY=
9
+ ZmJlYmU5ZTYxZWFkOGUwOTUzNGMyMDNjZjBhOWE2N2NlYTVmZWVmZDc1ZjAz
10
+ YzNkOTQ0ZThlMDAwYmEyZjlkMDgzNzlmYzkzZTMxMTk2NmZkNWQ1OWQzMzc2
11
+ YWMzOWMxYzQxNGUxODk1MzQxMDg1NGVkNGJmYTQxOTY2MDc0M2E=
12
12
  data.tar.gz: !binary |-
13
- MGUzMzUzMTJhYjgwZDcyNjBkYmRlNTA4NTFlZTk4MDllOTcxYjFlM2Y2ODEz
14
- ZDM5OTk2ZThjOGE4ODQ1NDJlNzMwYzg0OWQ3N2YyODcwYjVmZThkZWM5NDZm
15
- NTY5OWVkNWJlMzA1ZWYxMDc2YmFlYTlmN2ZhOWZjNzg1NjA2ZWE=
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: 1bcbf61539f139a6c4d85728f84a6414ba352141
3
+ revision: ab60a35479b683258bef7ca5b4692964c5659589
4
4
  specs:
5
- jekyll-assets (0.7.8)
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.7.3)
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.2)
35
+ execjs (2.1.0)
36
36
  fast-stemmer (1.0.2)
37
- handlebars_assets (0.15)
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.1)
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","Steve","Zach"],
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","Steve","Zach"],
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 select3 = new classes.SelectView({
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(select3.render().el)
137
+ $('#helper-example').html(select4.render().el)
103
138
  ~~~
104
139
 
105
140
  <script>
106
- var select3 = new classes.SelectView({
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(select3.render().el)
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().append("<option>#{m.get('label')}</option>")
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
- @$el.html(@template({models:@collection.models, helper:@helper}))
81
+ render: =>
82
+ @collection.comparator = "label"
83
+ @$el.html(@template({models:@collection.sort().models, helper:@helper}))
73
84
  @trigger('rendered') if !@rendered
74
85
  @
@@ -1,5 +1,5 @@
1
1
  module Atlas
2
2
  module Assets
3
- VERSION = "0.8.0"
3
+ VERSION = "0.8.1"
4
4
  end
5
5
  end
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.0
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-05-28 00:00:00.000000000 Z
11
+ date: 2014-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: handlebars_assets