Sha256: c7cf813ab26ec023c3ff2e485f6564da07f5c3c8abfd83cb74986fbe71038b1a
Contents?: true
Size: 1.15 KB
Versions: 6
Compression:
Stored size: 1.15 KB
Contents
module DqAdmin class FieldService def self.config @@config ||= self.load end def self.load File.open(Rails.root + "config/fields.json") do |file| @@config = JSON.parse(file.read) end rescue => e Rails.logger.info e.message throw e if Rails.env.development? [] end def self.render(group, key, lang: I18n.locale.to_s) raise "key is required for render field" if key.blank? raise "group is required for render field" if group.blank? raise "lang is required for render field" if lang.blank? field_config = config.find {|item| item['key'] == key && item['group'] == group} field = DynamicField.find_by(key: key, lang: lang, group: group) if field.blank? if block_given? yield.html_safe end return nil end case field_config['type'] when Field::TEXTAREA field.data.html_safe when Field::INPUT field.data when Field::SLIDE else nil end rescue => e Rails.logger.info e.message if Rails.env.development? raise e end nil end end end
Version data entries
6 entries across 6 versions & 1 rubygems