Sha256: 996b666561aeef5513be65987a1be41898fce17df95f4cc8d7073d06ab8fded0
Contents?: true
Size: 827 Bytes
Versions: 1
Compression:
Stored size: 827 Bytes
Contents
class Translation < String attr_accessor :keys def initialize(*args) super @keys = {} @keys["default"] = "en" end def []=(lang, text) @keys[lang.to_s] = text end def [](lang) @keys[lang.to_s] end def languages langs = @keys.keys langs.delete("default") langs end def default_language=(lang) @keys["default"] = lang self.replace(@keys[lang.to_s]) end def self.build(keys, default = "en") tr = self.new tr.keys = keys tr.default_language = default tr end def self.mongoize(value) return value.keys if value.kind_of?(self) @keys end def self.demongoize(value) return value if value.kind_of?(self) result = self.new result.keys = value result.default_language = value["default"] || "en" result end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
mongoid_ext-0.9.0 | lib/mongoid_ext/types/translation.rb |