Module: MagicReport::Utils
- Defined in:
- lib/magic_report/utils.rb
Class Method Summary collapse
Class Method Details
.derive_class(opts, &block) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/magic_report/utils.rb', line 16 def derive_class(opts, &block) if block raise "name option must be provided" unless opts[:name] cloned_klass = ::MagicReport::Report.clone cloned_klass.define_singleton_method(:name) { opts[:name] } cloned_klass.class_eval(&block) cloned_klass else opts[:class] end end |
.t(name:, key:) ⇒ Object
31 32 33 |
# File 'lib/magic_report/utils.rb', line 31 def t(name:, key:) I18n.translate!("magic_report.#{name}.#{key}") end |
.underscore(klass) ⇒ Object
5 6 7 8 9 10 11 12 13 14 |
# File 'lib/magic_report/utils.rb', line 5 def underscore(klass) return "ded" unless klass klass.gsub(/::/, "/") .gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2') .gsub(/([a-z\d])([A-Z])/, '\1_\2') .tr("-", "_") .tr("/", ".") .downcase end |