Class: Gluttonberg::Locale

Inherits:
ActiveRecord::Base
  • Object
show all
Includes:
Content::SlugManagement
Defined in:
app/models/gluttonberg/locale.rb

Constant Summary collapse

SLUG_TYPES =

Currently gluttonberg only supports prefix. TODO Subdomain based localization can be supported later

["prefix"]

Class Method Summary collapse

Methods included from Content::SlugManagement

included

Class Method Details

.all_slug_typesObject



30
31
32
# File 'app/models/gluttonberg/locale.rb', line 30

def self.all_slug_types
  SLUG_TYPES
end

.find_by_locale(locale_slug) ⇒ Object



34
35
36
# File 'app/models/gluttonberg/locale.rb', line 34

def self.find_by_locale(locale_slug)
  where(:slug => locale_slug).first
end

.first_default(opts = {}) ⇒ Object



22
23
24
# File 'app/models/gluttonberg/locale.rb', line 22

def self.first_default(opts={})
  @@first_default ||= self.where(opts.merge(:default => true)).first
end

.generate_default_localeObject

English (en) is the default locale



39
40
41
42
43
44
45
46
47
48
# File 'app/models/gluttonberg/locale.rb', line 39

def self.generate_default_locale
  if Gluttonberg::Locale.where(:slug => "en").count == 0
    locale = Gluttonberg::Locale.create({
      :slug => "en",
      :name => "English",
      :default => true,
      :slug_type => Gluttonberg::Locale.prefix_slug_type
    })
  end
end

.prefix_slug_typeObject



26
27
28
# File 'app/models/gluttonberg/locale.rb', line 26

def self.prefix_slug_type
  SLUG_TYPES.first
end