rgviz-rails 0.11 → 0.12

Sign up to get free protection for your applications and to get access to all the features.
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