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 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