tabulatr2 0.9.0 → 0.9.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -0
- data/README.md +1 -1
- data/app/assets/images/pacman-loader.gif +0 -0
- data/app/assets/images/standard-loader.gif +0 -0
- data/app/assets/javascripts/tabulatr/application.js +12 -2
- data/app/assets/stylesheets/tabulatr/application.css.scss +8 -0
- data/app/views/tabulatr/_tabulatr_actual_table.html.slim +2 -0
- data/lib/tabulatr/json_builder.rb +2 -3
- data/lib/tabulatr/version.rb +1 -1
- data/lib/tabulatr.rb +4 -0
- data/spec/lib/tabulatr/json_builder_spec.rb +16 -0
- metadata +5 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3a100eb6202380170c5e957e104a93d5b359f3ba
|
4
|
+
data.tar.gz: 65259c8ffd88e967eaf1d51dcd888d4446f379e7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f9516e1047006e55ba663b9a86d6f31bff0d45733e0da4ae78fb0c0cf13d562b8dcf4d5bfbc88daaed98613633d29c3061ba532dcff1b93fb12c670abb2615a9
|
7
|
+
data.tar.gz: ebb911b6ce9d4abcf4003abc1898745a03b4f9167b082516ef023c0592bfd12a76dbea9d7998b76390d4d579d43887a0fd950d9c07752486be6f93a40261d911
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,17 @@
|
|
1
|
+
## 0.9.1
|
2
|
+
|
3
|
+
* Show spinner when data is loading. Type of spinner can be overriden via
|
4
|
+
`Tabulatr.spinner` option. Possible values are :standard and :pacman.
|
5
|
+
|
6
|
+
Example:
|
7
|
+
```
|
8
|
+
Tabulatr.config do |tc|
|
9
|
+
tc.spinner = :pacman
|
10
|
+
end
|
11
|
+
```
|
12
|
+
|
13
|
+
* does not complain when no id is manually provided in TabulatrData
|
14
|
+
|
1
15
|
## 0.9
|
2
16
|
|
3
17
|
* Added `row` to the TabulatrData DSL to provide HTML attributes for the
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Tabulatr2 - Index Tables made easy
|
2
2
|
[![Code Climate](https://codeclimate.com/github/provideal/tabulatr2.png)](https://codeclimate.com/github/provideal/tabulatr2)
|
3
|
-
|
3
|
+
[![Gem Version](https://badge.fury.io/rb/tabulatr2.png)](http://badge.fury.io/rb/tabulatr2)
|
4
4
|
**WARNING: Tabulatr2 is not production ready yet!**
|
5
5
|
|
6
6
|
## Installation
|
Binary file
|
Binary file
|
@@ -98,7 +98,7 @@ Tabulatr.prototype = {
|
|
98
98
|
var $table = $('#'+ this.id);
|
99
99
|
if(hash.page !== undefined && !forceReload){
|
100
100
|
//old page should be stored
|
101
|
-
|
101
|
+
this.storePage = true;
|
102
102
|
// check if this page was already loaded
|
103
103
|
if($table.find('tbody tr[data-page='+ hash.page +']').length > 0){
|
104
104
|
$table.find('tbody tr').hide();
|
@@ -115,12 +115,14 @@ Tabulatr.prototype = {
|
|
115
115
|
if(this.locked){ return; }
|
116
116
|
this.locked = true;
|
117
117
|
var curTable = this;
|
118
|
+
this.showLoadingSpinner();
|
118
119
|
$.ajax({
|
119
120
|
context: this,
|
120
121
|
type: 'GET',
|
121
122
|
url: $('table#'+ this.id).data('path') + '.json',
|
122
123
|
data: this.createParameterString(hash, this.id),
|
123
|
-
success: this.handleResponse
|
124
|
+
success: this.handleResponse,
|
125
|
+
complete: this.hideLoadingSpinner
|
124
126
|
});
|
125
127
|
},
|
126
128
|
|
@@ -241,6 +243,14 @@ Tabulatr.prototype = {
|
|
241
243
|
|
242
244
|
localDate: function(value, $td, $tr, obj){
|
243
245
|
return new Date(value).toLocaleString();
|
246
|
+
},
|
247
|
+
|
248
|
+
showLoadingSpinner: function(){
|
249
|
+
$('.tabulatr-spinner-box[data-table='+ this.id +']').show();
|
250
|
+
},
|
251
|
+
|
252
|
+
hideLoadingSpinner: function(){
|
253
|
+
$('.tabulatr-spinner-box[data-table='+ this.id +']').hide();
|
244
254
|
}
|
245
255
|
|
246
256
|
}
|
@@ -35,5 +35,7 @@ table.table.tabulatr_table id=table_id data-path=table_options[:path] data-pages
|
|
35
35
|
- classes = column.sortable ? ['tabulatr-sortable'] : []
|
36
36
|
- classes = [classes, column.classes].flatten.compact.join(' ')
|
37
37
|
td data-tabulatr-column-name=column.full_name data-tabulatr-type=column.coltype style=column.cell_style class=classes
|
38
|
+
.tabulatr-spinner-box data-table=table_id
|
39
|
+
= image_tag "#{Tabulatr.spinner}-loader.gif"
|
38
40
|
span.pagination_trigger data-table="#{table_id}"
|
39
41
|
|
@@ -29,7 +29,6 @@ module Tabulatr::JsonBuilder
|
|
29
29
|
each_serializer: klass
|
30
30
|
}).as_json
|
31
31
|
else
|
32
|
-
id_included = false
|
33
32
|
attrs = build_hash_from requested_attributes, id
|
34
33
|
result = []
|
35
34
|
data.each do |f|
|
@@ -77,7 +76,7 @@ module Tabulatr::JsonBuilder
|
|
77
76
|
# end
|
78
77
|
begin
|
79
78
|
raise Tabulatr::RequestDataNotIncludedError.raise_error(rel, f) if !f.has_key?(rel)
|
80
|
-
raise Tabulatr::RequestDataNotIncludedError.raise_error(action, rel) if !f[rel].has_key?(action)
|
79
|
+
raise Tabulatr::RequestDataNotIncludedError.raise_error(action, rel) if !f[rel].has_key?(action) && action != :id
|
81
80
|
r["#{at[:relation]}:#{at[:action]}"] = f[rel][action]
|
82
81
|
rescue TypeError, NoMethodError => e
|
83
82
|
Tabulatr::RequestDataNotIncludedError.raise_error(at[:action], at[:relation])
|
@@ -85,7 +84,7 @@ module Tabulatr::JsonBuilder
|
|
85
84
|
else
|
86
85
|
begin
|
87
86
|
action = at[:action].to_sym
|
88
|
-
raise Tabulatr::RequestDataNotIncludedError.raise_error(action, f) if !f.has_key?(action) &&
|
87
|
+
raise Tabulatr::RequestDataNotIncludedError.raise_error(action, f) if !f.has_key?(action) && [:checkbox, :id].exclude?(action)
|
89
88
|
r[at[:action]] = f[action]
|
90
89
|
rescue TypeError, NoMethodError => e
|
91
90
|
raise Tabulatr::RequestDataNotIncludedError.raise_error(action, f)
|
data/lib/tabulatr/version.rb
CHANGED
data/lib/tabulatr.rb
CHANGED
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Tabulatr::JsonBuilder do
|
4
|
+
|
5
|
+
it "does not complain when no id is manually provided" do
|
6
|
+
attribute = {action: :id}
|
7
|
+
data = {title: 'test', price: '7.0 EUR'}
|
8
|
+
expect{Tabulatr::JsonBuilder.insert_attribute_in_hash(attribute, data)}.to_not raise_error
|
9
|
+
end
|
10
|
+
|
11
|
+
it "complains when a non given attribute other than id is requested" do
|
12
|
+
attribute = {action: :bar}
|
13
|
+
data = {title: 'test', price: '7.0 EUR'}
|
14
|
+
expect{Tabulatr::JsonBuilder.insert_attribute_in_hash(attribute, data)}.to raise_error
|
15
|
+
end
|
16
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tabulatr2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Horn
|
@@ -70,6 +70,8 @@ files:
|
|
70
70
|
- LICENSE
|
71
71
|
- README.md
|
72
72
|
- Rakefile
|
73
|
+
- app/assets/images/pacman-loader.gif
|
74
|
+
- app/assets/images/standard-loader.gif
|
73
75
|
- app/assets/javascripts/tabulatr.js
|
74
76
|
- app/assets/javascripts/tabulatr/application.js
|
75
77
|
- app/assets/javascripts/tabulatr/jquery.inview.min.js
|
@@ -178,6 +180,7 @@ files:
|
|
178
180
|
- spec/dummy/public/favicon.ico
|
179
181
|
- spec/features/tabulatrs_spec.rb
|
180
182
|
- spec/lib/tabulatr/data/data_spec.rb
|
183
|
+
- spec/lib/tabulatr/json_builder_spec.rb
|
181
184
|
- spec/spec_helper.rb
|
182
185
|
- tabulatr.gemspec
|
183
186
|
homepage: http://github.com/provideal/tabulatr2
|
@@ -267,5 +270,6 @@ test_files:
|
|
267
270
|
- spec/dummy/public/favicon.ico
|
268
271
|
- spec/features/tabulatrs_spec.rb
|
269
272
|
- spec/lib/tabulatr/data/data_spec.rb
|
273
|
+
- spec/lib/tabulatr/json_builder_spec.rb
|
270
274
|
- spec/spec_helper.rb
|
271
275
|
has_rdoc:
|