Sha256: 4a2d13ad411d123826cb8ffca3daba17f9f4b8002037cfeaf78a863e06841b2d
Contents?: true
Size: 931 Bytes
Versions: 18
Compression:
Stored size: 931 Bytes
Contents
module ActiveadminSelleoCms class Locale < ActiveRecord::Base attr_protected :id validates :name, presence: true validates :code, presence: true, uniqueness: true scope :enabled, where(enabled: true) scope :available_locales, enabled scope :popular, where(code: %w(da de el en es fr hu it lt lv nl no pl pt ru sk sl sv)) def to_s code end def code read_attribute(:code).to_sym end def url "/#{to_s}" end class << self def except(locale_codes) locale_codes = [locale_codes] unless locale_codes.is_a? Array enabled.where("code NOT IN (?)", locale_codes).map(&:code) end def available_locale_codes enabled.map(&:to_s) end def method_missing(sym, *args) if sym.to_s =~ /^[a-z]{2}$/ Locale.where(code: sym).first else super end end end end end
Version data entries
18 entries across 18 versions & 1 rubygems