kolo 0.5.0 → 0.5.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 +7 -0
- data/lib/assets/javascripts/data-access.js.coffee +24 -1
- data/lib/kolo/version.rb +1 -1
- metadata +9 -21
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: f2649ea90e8f6d4c69e6992f153c4b2778f3cdec
|
4
|
+
data.tar.gz: b6d9242e66590f02731cbc020b044a4a42ec1e98
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: e4cf1637e2af49a9fd860c0bff1d87e19e7979c421f45529f39b7c5790f0e15d796e9a13ec78255cc61e3e677b8e28a7b161ba414dcd3e21ef7c71e66a6f2082
|
7
|
+
data.tar.gz: 5fac2549da412032f75e0d0ce8209fc39820ec109dfe1250843b9094471eb1baaa766f46b82ebeb4cfc8d8ac5bb95da241382d8c0821059a81adef8adb7b07ec
|
@@ -36,8 +36,13 @@ class ViewModel
|
|
36
36
|
#
|
37
37
|
# It expects models to have an updateAttributes(data) method and a valid method
|
38
38
|
#
|
39
|
-
# After instantiation you can also set the following hooks:
|
39
|
+
# After instantiation you can also set the following hooks (some of these have callback equivalents):
|
40
40
|
# db.sortFunction = function(a, b) { ... }
|
41
|
+
# db.onAfterLoad = function(data) { ... }
|
42
|
+
# db.onBeforeLoad = function() { ... }
|
43
|
+
# db.onAfterDelete = function(data) { ... }
|
44
|
+
# db.onAfterSave = function(data) { ... }
|
45
|
+
# db.onAfterPost = function(data) { ... }
|
41
46
|
|
42
47
|
class Db
|
43
48
|
constructor: (@viewModel, @name, url, @pushStateUri)->
|
@@ -47,6 +52,11 @@ class Db
|
|
47
52
|
@selected = ko.observable null
|
48
53
|
@plural = "#{@name}s"
|
49
54
|
@sortFunction = null
|
55
|
+
@onAfterLoad = null
|
56
|
+
@onBeforeLoad = null
|
57
|
+
@onAfterDelete = null
|
58
|
+
@onAfterSave = null
|
59
|
+
@onAfterPost = null
|
50
60
|
@autoLoading = false
|
51
61
|
|
52
62
|
@url.subscribe (newValue)=>
|
@@ -81,9 +91,11 @@ class Db
|
|
81
91
|
if !@selected()
|
82
92
|
@viewModel.systemNotification @plural, 'loading'
|
83
93
|
@viewModel.loading true
|
94
|
+
@onBeforeLoad() if @onBeforeLoad?
|
84
95
|
$.get @url(), (data)=>
|
85
96
|
@doLoad(data)
|
86
97
|
afterLoad(data) if afterLoad?
|
98
|
+
@onAfterLoad(data) if @onAfterLoad?
|
87
99
|
@viewModel.loading false
|
88
100
|
@viewModel.systemNotification @plural, 'loaded'
|
89
101
|
if autoReload
|
@@ -103,6 +115,7 @@ class Db
|
|
103
115
|
data: data
|
104
116
|
success: (data)=>
|
105
117
|
afterPost(data) if afterPost?
|
118
|
+
@onAfterPost(data) if @onAfterPost?
|
106
119
|
@viewModel.loading false
|
107
120
|
@viewModel.systemNotification @name, 'saved'
|
108
121
|
@load(false)
|
@@ -139,6 +152,7 @@ class Db
|
|
139
152
|
success: (data)=>
|
140
153
|
@selected null
|
141
154
|
afterSave(item) if afterSave?
|
155
|
+
@onAfterSave(item) if @onAfterSave?
|
142
156
|
@viewModel.systemNotification @name, 'saved'
|
143
157
|
@viewModel.loading false
|
144
158
|
@load()
|
@@ -155,6 +169,7 @@ class Db
|
|
155
169
|
success: (data)=>
|
156
170
|
@selected null
|
157
171
|
afterSave(item) if afterSave?
|
172
|
+
@onAfterSave(item) if @onAfterSave?
|
158
173
|
@viewModel.systemNotification @name, 'saved'
|
159
174
|
@viewModel.loading false
|
160
175
|
@load()
|
@@ -171,6 +186,7 @@ class Db
|
|
171
186
|
@selected null
|
172
187
|
@items.remove(item)
|
173
188
|
afterDelete() if afterDelete?
|
189
|
+
@onAfterDelete(item) if @onAfterDelete?
|
174
190
|
@viewModel.systemNotification @name, 'deleted'
|
175
191
|
@viewModel.loading false
|
176
192
|
@load()
|
@@ -220,6 +236,13 @@ class Model
|
|
220
236
|
@select()
|
221
237
|
@editing true
|
222
238
|
|
239
|
+
startDeleting: ->
|
240
|
+
@edit()
|
241
|
+
@deleting true
|
242
|
+
|
243
|
+
stopDeleting: ->
|
244
|
+
@deleting false
|
245
|
+
|
223
246
|
save: ->
|
224
247
|
return unless @valid()
|
225
248
|
@deselect()
|
data/lib/kolo/version.rb
CHANGED
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kolo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
5
|
-
prerelease:
|
4
|
+
version: 0.5.1
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Rahoul Baruah
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-
|
11
|
+
date: 2013-07-16 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: bundler
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ~>
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ~>
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,17 +27,15 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rake
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - '>='
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - '>='
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
description: A quick way to set up a Rails app with Bootstrap and KnockoutJS
|
@@ -81,32 +76,25 @@ files:
|
|
81
76
|
homepage: ''
|
82
77
|
licenses:
|
83
78
|
- LGPL
|
79
|
+
metadata: {}
|
84
80
|
post_install_message:
|
85
81
|
rdoc_options: []
|
86
82
|
require_paths:
|
87
83
|
- lib
|
88
84
|
required_ruby_version: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
85
|
requirements:
|
91
|
-
- -
|
86
|
+
- - '>='
|
92
87
|
- !ruby/object:Gem::Version
|
93
88
|
version: '0'
|
94
|
-
segments:
|
95
|
-
- 0
|
96
|
-
hash: 100456755
|
97
89
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
98
|
-
none: false
|
99
90
|
requirements:
|
100
|
-
- -
|
91
|
+
- - '>='
|
101
92
|
- !ruby/object:Gem::Version
|
102
93
|
version: '0'
|
103
|
-
segments:
|
104
|
-
- 0
|
105
|
-
hash: 100456755
|
106
94
|
requirements: []
|
107
95
|
rubyforge_project:
|
108
|
-
rubygems_version:
|
96
|
+
rubygems_version: 2.0.3
|
109
97
|
signing_key:
|
110
|
-
specification_version:
|
98
|
+
specification_version: 4
|
111
99
|
summary: A quick way to set up a Rails app with Bootstrap and KnockoutJS
|
112
100
|
test_files: []
|