rgviz-rails 0.11 → 0.12

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.
Files changed (2) hide show
  1. data/rails/init.rb +19 -2
  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
- original_render :text => "#{responseHandler}({reqId:'#{reqId}',status:'ok',version:'#{version}',table:#{table.to_json}});"
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
- original_render :text => "#{responseHandler}({reqId:'#{reqId}',status:'error',version:'#{version}',errors:[{reason:'invalid_query', message:'#{msg}'}]});"
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: 29
4
+ hash: 19
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
- - 11
9
- version: "0.11"
8
+ - 12
9
+ version: "0.12"
10
10
  platform: ruby
11
11
  authors:
12
12
  - Ary Borenszweig