rgviz-rails 0.11 → 0.12
Sign up to get free protection for your applications and to get access to all the features.
- data/rails/init.rb +19 -2
- metadata +3 -3
data/rails/init.rb
CHANGED
@@ -15,6 +15,7 @@ config.after_initialize do
|
|
15
15
|
reqId = '0'
|
16
16
|
version = '0.6'
|
17
17
|
responseHandler = 'google.visualization.Query.setResponse'
|
18
|
+
out = 'json'
|
18
19
|
pieces.each do |p|
|
19
20
|
key_value = p.split ':'
|
20
21
|
if key_value.length == 2
|
@@ -25,6 +26,8 @@ config.after_initialize do
|
|
25
26
|
version = key_value[1]
|
26
27
|
when 'responseHandler'
|
27
28
|
responseHandler = key_value[1]
|
29
|
+
when 'out'
|
30
|
+
out = key_value[1]
|
28
31
|
end
|
29
32
|
end
|
30
33
|
end
|
@@ -34,10 +37,24 @@ config.after_initialize do
|
|
34
37
|
options = {}
|
35
38
|
options[:conditions] = conditions if conditions
|
36
39
|
table = executor.execute options
|
37
|
-
|
40
|
+
|
41
|
+
if out == 'json'
|
42
|
+
original_render :text => "#{responseHandler}({reqId:'#{reqId}',status:'ok',version:'#{version}',table:#{table.to_json}});"
|
43
|
+
elsif out == 'html'
|
44
|
+
original_render :text => Rgviz::HtmlRenderer.render(table)
|
45
|
+
else
|
46
|
+
original_render :text => "#{responseHandler}({reqId:'#{reqId}',status:'error',version:'#{version}',errors:[{reason:'not_supported', message:'Unsupported output type: #{out}'}]});"
|
47
|
+
end
|
38
48
|
rescue ParseException => e
|
39
49
|
msg = e.message.gsub("'", "\\'")
|
40
|
-
|
50
|
+
|
51
|
+
if out == 'json'
|
52
|
+
original_render :text => "#{responseHandler}({reqId:'#{reqId}',status:'error',version:'#{version}',errors:[{reason:'invalid_query', message:'#{msg}'}]});"
|
53
|
+
elsif out == 'html'
|
54
|
+
original_render :text => "<b>Error:</b> #{msg}"
|
55
|
+
else
|
56
|
+
original_render :text => "<b>Unsupported output type:</b> #{out}"
|
57
|
+
end
|
41
58
|
end
|
42
59
|
end
|
43
60
|
else
|
metadata
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rgviz-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
version: "0.
|
8
|
+
- 12
|
9
|
+
version: "0.12"
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Ary Borenszweig
|