Ver código fonte

Added ability to inherit smart variables

Andrew Kane 8 anos atrás
pai
commit
a6a317cb5d

+ 1 - 1
app/controllers/blazer/base_controller.rb

@@ -69,7 +69,7 @@ module Blazer
         smart_var = result.rows.map { |v| v.reverse }
         error = result.error if result.error
       end
-      return smart_var, error
+      [smart_var, error]
     end
 
     def extract_vars(statement)

+ 9 - 1
lib/blazer/data_source.rb

@@ -48,7 +48,15 @@ module Blazer
     end
 
     def smart_variables
-      settings["smart_variables"] || {}
+      @smart_variables ||= begin
+        sv = settings["smart_variables"] || {}
+        Array(settings["inherit_smart_variables"]).each do |ds|
+          (Blazer.data_sources[ds].settings["smart_variables"] || {}).each do |k, v|
+            sv[k] ||= v
+          end
+        end
+        sv
+      end
     end
 
     def variable_defaults