Sha256: f9d1a4d87ec2e9a11f6f4cc795e0e11732c48f7abb28ad382dd690048c0f6fac
Contents?: true
Size: 913 Bytes
Versions: 1
Compression:
Stored size: 913 Bytes
Contents
module Rails module Redactorjs class Configuration class Function < String def encode_json(encoder) self end end def self.defaults { } end attr_reader :options def initialize(options) @options = options end def options_for_redactorjs result = {} options.each do |key, value| if value.is_a?(Array) && value.all? { |v| v.is_a?(String) } result[key] = value.join(",") elsif value.to_s.starts_with?("function(") result[key] = Function.new(value) else result[key] = value end end result end def merge(options) self.class.new(self.options.merge(options)) end def load(filename) options.merge!(YAML::load(ERB.new(IO.read(filename)).result)) end def self.load(filename) config = new(defaults) config.load(filename) if File.exists?(filename) config end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rails-redactorjs-0.0.1 | lib/rails-redactorjs/configuration.rb |