class Tr8n::Config

Public Class Methods

admin_helpers() click to toggle source
# File lib/tr8n/config.rb, line 413
def self.admin_helpers
  return [] unless site_info[:admin_helpers]
  @admin_helpers ||= site_info[:admin_helpers].collect{|helper| helper.to_sym}
end
admin_level() click to toggle source
# File lib/tr8n/config.rb, line 736
def self.admin_level
  10000
end
admin_user?(user = Tr8n::Config.current_user) click to toggle source
# File lib/tr8n/config.rb, line 510
def self.admin_user?(user = Tr8n::Config.current_user)
  return false unless user
  user.send(site_user_info[:methods][:admin])
rescue Exception => ex
  Tr8n::Logger.error("Failed to fetch #{user_class_name} admin flag: #{ex.to_s}")
  false
end
after_filters() click to toggle source
# File lib/tr8n/config.rb, line 428
def self.after_filters
  return [] unless site_info[:after_filters]
  @after_filters ||= site_info[:after_filters].collect{|filter| filter.to_sym}
end
allow_nil_token_values?() click to toggle source
# File lib/tr8n/config.rb, line 595
def self.allow_nil_token_values?
  rules_engine[:allow_nil_token_values]
end
api() click to toggle source
# File lib/tr8n/config.rb, line 323
def self.api
  config[:api]
end
api_after_filters() click to toggle source
# File lib/tr8n/config.rb, line 781
def self.api_after_filters
  return [] unless api[:after_filters]
  @api_after_filters ||= api[:after_filters].collect{|filter| filter.to_sym}
end
api_before_filters() click to toggle source
# File lib/tr8n/config.rb, line 776
def self.api_before_filters
  return [] unless api[:before_filters]
  @api_before_filters ||= api[:before_filters].collect{|filter| filter.to_sym}
end
api_skip_before_filters() click to toggle source
# File lib/tr8n/config.rb, line 771
def self.api_skip_before_filters
  return [] unless api[:skip_before_filters]
  @api_skip_before_filters ||= api[:skip_before_filters].collect{|filter| filter.to_sym}
end
application_level() click to toggle source
# File lib/tr8n/config.rb, line 740
def self.application_level
  100000
end
application_translator_for(user) click to toggle source

only one allowed per application

# File lib/tr8n/config.rb, line 80
def self.application_translator_for(user)
  Tr8n::Translator.where(:user_id => user.id, :level => application_level).first || Tr8n::Translator.create(:user_id => user.id, :level => application_level)
end
before_filters() click to toggle source
# File lib/tr8n/config.rb, line 423
def self.before_filters
  return [] unless site_info[:before_filters]
  @before_filters ||= site_info[:before_filters].collect{|filter| filter.to_sym}
end
block_options() click to toggle source
# File lib/tr8n/config.rb, line 58
def self.block_options
  Thread.current[:tr8n_block_options] ||= {}
end
cache_adapter() click to toggle source
# File lib/tr8n/config.rb, line 337
def self.cache_adapter
  caching[:adapter]
end
cache_store() click to toggle source
# File lib/tr8n/config.rb, line 341
def self.cache_store
  caching[:store]
end
cache_version() click to toggle source
# File lib/tr8n/config.rb, line 345
def self.cache_version
  caching[:version]
end
caching() click to toggle source

Config Sections

# File lib/tr8n/config.rb, line 303
def self.caching
  config[:caching]
end
config() click to toggle source
# File lib/tr8n/config.rb, line 169
def self.config
  @config ||= load_yml("/config/tr8n/config.yml")
end
current_language() click to toggle source
# File lib/tr8n/config.rb, line 50
def self.current_language
  Thread.current[:tr8n_current_language] ||= default_language
end
current_locale_method() click to toggle source
# File lib/tr8n/config.rb, line 388
def self.current_locale_method
  site_info[:current_locale_method]
end
current_source() click to toggle source
# File lib/tr8n/config.rb, line 46
def self.current_source
  Thread.current[:tr8n_current_source]
end
current_translator() click to toggle source

when this method is called, we create the translator record right away and from this point on, will track the user this can happen any time user tries to translate something or enables inline translations

# File lib/tr8n/config.rb, line 65
def self.current_translator
  Thread.current[:tr8n_current_translator] ||= Tr8n::Translator.register
end
current_user() click to toggle source
# File lib/tr8n/config.rb, line 42
def self.current_user
  Thread.current[:tr8n_current_user]
end
current_user_is_admin?() click to toggle source
# File lib/tr8n/config.rb, line 518
def self.current_user_is_admin?
  admin_user?
end
current_user_is_guest?() click to toggle source
# File lib/tr8n/config.rb, line 530
def self.current_user_is_guest?
  guest_user?
end
current_user_is_translator?() click to toggle source
# File lib/tr8n/config.rb, line 54
def self.current_user_is_translator?
  Thread.current[:tr8n_current_translator] != nil
end
current_user_method() click to toggle source
# File lib/tr8n/config.rb, line 441
def self.current_user_method
  site_user_info[:current_user_method]
end
data_token_classes() click to toggle source
# File lib/tr8n/config.rb, line 599
def self.data_token_classes
  @data_token_classes ||= rules_engine[:data_token_classes].collect{|tc| tc.constantize}
end
decoration_token_classes() click to toggle source
# File lib/tr8n/config.rb, line 603
def self.decoration_token_classes
  @decoration_token_classes ||= rules_engine[:decoration_token_classes].collect{|tc| tc.constantize}
end
default_abbr_day_names() click to toggle source
# File lib/tr8n/config.rb, line 699
def self.default_abbr_day_names
  localization[:default_abbr_day_names]
end
default_abbr_month_names() click to toggle source
# File lib/tr8n/config.rb, line 707
def self.default_abbr_month_names
  localization[:default_abbr_month_names]
end
default_client_interval() click to toggle source
# File lib/tr8n/config.rb, line 767
def self.default_client_interval
  5000
end
default_data_tokens() click to toggle source
# File lib/tr8n/config.rb, line 181
def self.default_data_tokens
  @default_data_tokens ||= load_yml("/config/tr8n/tokens/data.yml", nil)
end
default_date_formats() click to toggle source
# File lib/tr8n/config.rb, line 711
def self.default_date_formats
  localization[:custom_date_formats]
end
default_date_rules(locale = default_locale) click to toggle source
# File lib/tr8n/config.rb, line 653
def self.default_date_rules(locale = default_locale)
  load_default_rules("date", locale)
end
default_day_names() click to toggle source
# File lib/tr8n/config.rb, line 695
def self.default_day_names
  localization[:default_day_names]
end
default_decoration_tokens() click to toggle source
# File lib/tr8n/config.rb, line 177
def self.default_decoration_tokens
  @default_decoration_tokens ||= load_yml("/config/tr8n/tokens/decorations.yml", nil)
end
default_gender_list_rules(locale = default_locale) click to toggle source
# File lib/tr8n/config.rb, line 641
def self.default_gender_list_rules(locale = default_locale)
  load_default_rules("gender_list", locale)
end
default_gender_rules(locale = default_locale) click to toggle source
# File lib/tr8n/config.rb, line 637
def self.default_gender_rules(locale = default_locale)
  load_default_rules("gender", locale)
end
default_glossary() click to toggle source
# File lib/tr8n/config.rb, line 185
def self.default_glossary
  @default_glossary ||= load_yml("/config/tr8n/site/default_glossary.yml", nil)
end
default_language() click to toggle source
# File lib/tr8n/config.rb, line 69
def self.default_language
  return Tr8n::Language.new(:locale => default_locale) if disabled?
  @default_language ||= Tr8n::Language.for(default_locale) || Tr8n::Language.new(:locale => default_locale)
end
default_language_cases_for(locale = default_locale) click to toggle source
# File lib/tr8n/config.rb, line 661
def self.default_language_cases_for(locale = default_locale)
  @default_cases ||= load_yml("/config/tr8n/rules/default_language_cases.yml", nil)
  return [] unless @default_cases[locale.to_s]
  @default_cases[locale.to_s].values
end
default_languages() click to toggle source
# File lib/tr8n/config.rb, line 173
def self.default_languages
  @default_languages ||= load_yml("/config/tr8n/site/default_languages.yml", nil)
end
default_list_rules(locale = default_locale) click to toggle source
# File lib/tr8n/config.rb, line 645
def self.default_list_rules(locale = default_locale)
  load_default_rules("list", locale)
end
default_locale() click to toggle source
# File lib/tr8n/config.rb, line 375
def self.default_locale
  return block_options[:default_locale] if block_options[:default_locale]
  site_info[:default_locale]
end
default_month_names() click to toggle source
# File lib/tr8n/config.rb, line 703
def self.default_month_names
  localization[:default_month_names]
end
default_numeric_rules(locale = default_locale) click to toggle source
# File lib/tr8n/config.rb, line 649
def self.default_numeric_rules(locale = default_locale)
  load_default_rules("numeric", locale)
end
default_rank_styles() click to toggle source
# File lib/tr8n/config.rb, line 615
def self.default_rank_styles
  @default_rank_styles ||= begin
    styles = {}
    rules_engine[:translation_rank_styles].each do |key, value|
      range = Range.new(*(key.to_s.split("..").map{|v| v.to_i}))
      styles[range] = value
    end
    styles  
  end
end
default_shortcuts() click to toggle source
# File lib/tr8n/config.rb, line 217
def self.default_shortcuts
  @default_shortcuts ||= load_yml("/config/tr8n/site/shortcuts.yml", nil)
end
default_translation_key_level() click to toggle source
# File lib/tr8n/config.rb, line 748
def self.default_translation_key_level
  config[:default_translation_key_level] || 0
end
default_url() click to toggle source
# File lib/tr8n/config.rb, line 384
def self.default_url
  site_info[:default_url]
end
default_value_rules(locale = default_locale) click to toggle source
# File lib/tr8n/config.rb, line 657
def self.default_value_rules(locale = default_locale)
  load_default_rules("value", locale)
end
disabled?() click to toggle source
# File lib/tr8n/config.rb, line 205
def self.disabled?
  not enabled?
end
dump_config() click to toggle source
# File lib/tr8n/config.rb, line 165
def self.dump_config
  save_to_yaml("config.yaml", config)
end
effects_library_path() click to toggle source
# File lib/tr8n/config.rb, line 400
def self.effects_library_path
  site_info[:effects_library_path]
end
enable_admin_inline_mode?() click to toggle source
# File lib/tr8n/config.rb, line 289
def self.enable_admin_inline_mode?
  config[:enable_admin_inline_mode]
end
enable_admin_translations?() click to toggle source
# File lib/tr8n/config.rb, line 285
def self.enable_admin_translations?
  config[:enable_admin_translations]
end
enable_api?() click to toggle source

API

# File lib/tr8n/config.rb, line 755
def self.enable_api?
  api[:enabled]
end
enable_browser_cache?() click to toggle source
# File lib/tr8n/config.rb, line 763
def self.enable_browser_cache?
  config[:enable_browser_cache]
end
enable_caching?() click to toggle source

Caching

# File lib/tr8n/config.rb, line 333
def self.enable_caching?
  caching[:enabled]
end
enable_client_sdk?() click to toggle source
# File lib/tr8n/config.rb, line 759
def self.enable_client_sdk?
  config[:enable_client_sdk]
end
enable_country_tracking?() click to toggle source
# File lib/tr8n/config.rb, line 293
def self.enable_country_tracking?
  config[:enable_country_tracking]
end
enable_dictionary_lookup?() click to toggle source
# File lib/tr8n/config.rb, line 253
def self.enable_dictionary_lookup?
  config[:enable_dictionary_lookup]
end
enable_effects?() click to toggle source
# File lib/tr8n/config.rb, line 404
def self.enable_effects?
  site_info[:enable_effects]
end
enable_fallback_languages?() click to toggle source
# File lib/tr8n/config.rb, line 277
def self.enable_fallback_languages?
  config[:enable_fallback_languages]
end
enable_glossary_hints?() click to toggle source
# File lib/tr8n/config.rb, line 249
def self.enable_glossary_hints?
  config[:enable_glossary_hints]
end
enable_google_suggestions?() click to toggle source
# File lib/tr8n/config.rb, line 241
def self.enable_google_suggestions?
  config[:enable_google_suggestions]
end
enable_inline_translations?() click to toggle source
# File lib/tr8n/config.rb, line 221
def self.enable_inline_translations?
  config[:enable_inline_translations]
end
enable_key_caller_tracking?() click to toggle source
# File lib/tr8n/config.rb, line 233
def self.enable_key_caller_tracking?
  config[:enable_key_caller_tracking]
end
enable_key_source_tracking?() click to toggle source
# File lib/tr8n/config.rb, line 229
def self.enable_key_source_tracking?
  config[:enable_key_source_tracking]
end
enable_key_verification?() click to toggle source
# File lib/tr8n/config.rb, line 237
def self.enable_key_verification?
  config[:enable_key_verification]
end
enable_keyboard_shortcuts?() click to toggle source
# File lib/tr8n/config.rb, line 213
def self.enable_keyboard_shortcuts?
  config[:enable_keyboard_shortcuts]
end
enable_language_cases?() click to toggle source
# File lib/tr8n/config.rb, line 225
def self.enable_language_cases?
  config[:enable_language_cases]
end
enable_language_flags?() click to toggle source
# File lib/tr8n/config.rb, line 257
def self.enable_language_flags?
  config[:enable_language_flags]
end
enable_language_stats?() click to toggle source
# File lib/tr8n/config.rb, line 261
def self.enable_language_stats?
  config[:enable_language_stats]
end
enable_logger?() click to toggle source

Logger

# File lib/tr8n/config.rb, line 352
def self.enable_logger?
  logger[:enabled]
end
enable_paranoia_mode?() click to toggle source
# File lib/tr8n/config.rb, line 360
def self.enable_paranoia_mode?
  logger[:enable_paranoia_mode]
end
enable_registration_disclaimer?() click to toggle source
# File lib/tr8n/config.rb, line 269
def self.enable_registration_disclaimer?
  config[:enable_registration_disclaimer]
end
enable_software_keyboard?() click to toggle source
# File lib/tr8n/config.rb, line 209
def self.enable_software_keyboard?
  config[:enable_software_keyboard]
end
enable_tr8n_method() click to toggle source
# File lib/tr8n/config.rb, line 392
def self.enable_tr8n_method
  site_info[:enable_tr8n_method]
end
enable_translator_language?() click to toggle source
# File lib/tr8n/config.rb, line 281
def self.enable_translator_language?
  config[:enable_translator_language]
end
enable_translator_tabs?() click to toggle source
# File lib/tr8n/config.rb, line 297
def self.enable_translator_tabs?
  config[:enable_translator_tabs]
end
enabled?() click to toggle source
# File lib/tr8n/config.rb, line 201
def self.enabled?
  config[:enable_tr8n] 
end
env() click to toggle source
# File lib/tr8n/config.rb, line 147
def self.env
  Rails.env
end
features() click to toggle source
# File lib/tr8n/config.rb, line 189
def self.features
  @features ||= begin
    defs = load_yml("/config/tr8n/site/features.yml")
    feats = []
    defs[:enabled_features].each do |key|
      defs[key][:key] = key
      feats << defs[key] 
    end
    feats
  end
end
google_api_key() click to toggle source
# File lib/tr8n/config.rb, line 245
def self.google_api_key
  config[:google_api_key]
end
guest_user?(user = Tr8n::Config.current_user) click to toggle source
# File lib/tr8n/config.rb, line 522
def self.guest_user?(user = Tr8n::Config.current_user)
  return true unless user
  user.send(site_user_info[:methods][:guest])
rescue Exception => ex
  Tr8n::Logger.error("Failed to fetch #{user_class_name} guest flag: #{ex.to_s}")
  true
end
init(site_current_locale, site_current_user = nil, site_current_source = nil) click to toggle source

initializes language, user and translator the variables are kept in a thread safe form throughout the request

# File lib/tr8n/config.rb, line 34
def self.init(site_current_locale, site_current_user = nil, site_current_source = nil)
  Thread.current[:tr8n_current_language]   = Tr8n::Language.for(site_current_locale) || default_language
  Thread.current[:tr8n_current_user]       = site_current_user
  Thread.current[:tr8n_current_translator] = Tr8n::Translator.for(site_current_user)
  Thread.current[:tr8n_current_source]     = site_current_source
  Thread.current[:tr8n_block_options]      = {}
end
init_default_languages() click to toggle source
# File lib/tr8n/config.rb, line 123
def self.init_default_languages
  puts "Initializing default languages..."
  default_languages.each do |locale, info|
    puts ">> Initializing #{info[:english_name]}..."
    lang = Tr8n::Language.find_or_create(locale, info[:english_name])
    info[:right_to_left] = false if info[:right_to_left].nil?
    fallback_key = info.delete(:fallback_key)
    lang.update_attributes(info)
    lang.reset!
  end
  puts "Created #{default_languages.size} languages."    
end
init_glossary() click to toggle source
# File lib/tr8n/config.rb, line 136
def self.init_glossary
  puts "Initializing default glossary..."
  default_glossary.each do |keyword, description|
    Tr8n::Glossary.create(:keyword => keyword, :description => description)
  end    
end
language_rule_classes() click to toggle source

rules engine

# File lib/tr8n/config.rb, line 545
def self.language_rule_classes
  @language_rule_classes ||= rules_engine[:language_rule_classes].collect{|lrc| lrc.constantize}
end
language_rule_dependencies() click to toggle source
# File lib/tr8n/config.rb, line 549
def self.language_rule_dependencies
  @language_rule_dependencies ||= begin
    depts = HashWithIndifferentAccess.new
    language_rule_classes.each do |cls|
      if depts[cls.dependency]
        raise Tr8n::Exception.new("The same dependency key #{cls.dependency} has been registered for multiple rules. This is not allowed.")
      end  
      depts[cls.dependency] = cls
    end
    depts
  end
end
language_rule_suffixes() click to toggle source
# File lib/tr8n/config.rb, line 573
def self.language_rule_suffixes
  @language_rule_suffixes ||= begin
    sfx = {}
    language_rule_classes.each do |cls|
      next unless cls.suffixes.is_a?(Array)
      cls.suffixes.each do |suffix|
        if suffix.index("_")
          raise Tr8n::Exception.new("Incorrect rule suffix: #{suffix}. Suffix may not have '_' in it.")
        end
        sfx[suffix] ||= []
        sfx[suffix] << cls
      end
    end
    sfx
  end
end
language_rules_for_suffix(suffix) click to toggle source
# File lib/tr8n/config.rb, line 590
def self.language_rules_for_suffix(suffix)
  suffix_rules = language_rule_suffixes[suffix] || []
  suffix_rules + universal_language_rules
end
load_default_rules(rules_type, locale = default_locale) click to toggle source

get rules for specified locale, or get default language rules

# File lib/tr8n/config.rb, line 627
def self.load_default_rules(rules_type, locale = default_locale)
  @default_rules ||= {}
  @default_rules[rules_type] ||= load_yml("/config/tr8n/rules/default_#{rules_type}_rules.yml", nil)
  rules_for_locale = @default_rules[rules_type][locale.to_s]

  return rules_for_locale.values unless rules_for_locale.nil?
  return [] if @default_rules[rules_type][default_locale].nil?
  @default_rules[rules_type][default_locale].values
end
load_json(file_path) click to toggle source

json support

# File lib/tr8n/config.rb, line 152
def self.load_json(file_path)
  json = JSON.parse(File.read("#{root}#{file_path}"))
  return HashWithIndifferentAccess.new(json) if json.is_a?(Hash)
  map = {"map" => json}
  HashWithIndifferentAccess.new(map)[:map]
end
load_yml(file_path, for_env = env) click to toggle source
# File lib/tr8n/config.rb, line 159
def self.load_yml(file_path, for_env = env)
  yml = YAML.load_file("#{root}#{file_path}")
  yml = yml['defaults'].rmerge(yml[for_env] || {}) unless for_env.nil?
  HashWithIndifferentAccess.new(yml)
end
localization() click to toggle source
# File lib/tr8n/config.rb, line 319
def self.localization
  config[:localization]
end
log_path() click to toggle source
# File lib/tr8n/config.rb, line 356
def self.log_path
  logger[:log_path]
end
logger() click to toggle source
# File lib/tr8n/config.rb, line 307
def self.logger
  config[:logger]
end
manager_level() click to toggle source
# File lib/tr8n/config.rb, line 732
def self.manager_level
  1000
end
models() click to toggle source
# File lib/tr8n/config.rb, line 93
def self.models
  [ 
     Tr8n::LanguageRule, Tr8n::LanguageUser, Tr8n::Language, Tr8n::LanguageMetric,
     Tr8n::LanguageCase, Tr8n::LanguageCaseValueMap, Tr8n::LanguageCaseRule,
     Tr8n::TranslationKey, Tr8n::TranslationKeySource, Tr8n::TranslationKeyComment, Tr8n::TranslationKeyLock,
     Tr8n::TranslationSource, Tr8n::TranslationDomain, Tr8n::TranslationSourceLanguage,
     Tr8n::Translation, Tr8n::TranslationVote,
     Tr8n::Translator, Tr8n::TranslatorLog, Tr8n::TranslatorMetric, 
     Tr8n::TranslatorFollowing, Tr8n::TranslatorReport, 
     Tr8n::LanguageForumTopic, Tr8n::LanguageForumMessage, Tr8n::LanguageForumAbuseReport,
     Tr8n::Glossary, Tr8n::IpLocation, Tr8n::SyncLog
  ]    
end
multiple_base_languages?() click to toggle source
# File lib/tr8n/config.rb, line 380
def self.multiple_base_languages?
  'en-US' == default_locale
end
open_registration_mode?() click to toggle source
# File lib/tr8n/config.rb, line 265
def self.open_registration_mode?
  config[:open_registration_mode]
end
registration_disclaimer_path() click to toggle source
# File lib/tr8n/config.rb, line 273
def self.registration_disclaimer_path
  config[:registration_disclaimer_path] || "/tr8n/common/terms_of_service"
end
reset!() click to toggle source
# File lib/tr8n/config.rb, line 84
def self.reset!
  # thread based variables
  Thread.current[:tr8n_current_language]  = nil
  Thread.current[:tr8n_current_user] = nil
  Thread.current[:tr8n_current_translator] = nil
  Thread.current[:tr8n_block_options]  = nil
  Thread.current[:tr8n_current_source] = nil
end
reset_all!() click to toggle source

will clean all tables and initialize default values never ever do it on live !!!

# File lib/tr8n/config.rb, line 109
def self.reset_all!
  puts "Resetting tr8n tables..."
  models.each do |cls|
    puts ">> Resetting #{cls.name}..."
    cls.delete_all
  end
  puts "Done."

  init_default_languages
  init_glossary

  puts "Done."
end
root() click to toggle source
# File lib/tr8n/config.rb, line 143
def self.root
  Rails.root
end
rules_engine() click to toggle source
# File lib/tr8n/config.rb, line 315
def self.rules_engine
  config[:rules_engine]
end
silhouette_image() click to toggle source
# File lib/tr8n/config.rb, line 534
def self.silhouette_image
  "/assets/tr8n/photo_silhouette.gif"
end
site_info() click to toggle source
# File lib/tr8n/config.rb, line 311
def self.site_info
  config[:site_info]
end
site_title() click to toggle source

Site Info

# File lib/tr8n/config.rb, line 367
def self.site_title
  site_info[:title] 
end
site_user_info() click to toggle source

site user info The following methods could be overloaded in the initializer

# File lib/tr8n/config.rb, line 437
def self.site_user_info
  site_info[:user_info]
end
site_user_info_disabled?() click to toggle source
# File lib/tr8n/config.rb, line 449
def self.site_user_info_disabled?
  !site_user_info_enabled?
end
site_user_info_enabled?() click to toggle source
# File lib/tr8n/config.rb, line 445
def self.site_user_info_enabled?
  site_user_info[:enabled].nil? ? true : site_user_info[:enabled]
end
sitemap_sections() click to toggle source
# File lib/tr8n/config.rb, line 396
def self.sitemap_sections
  @sitemap_sections ||= load_json(site_info[:sitemap_path])
end
skip_before_filters() click to toggle source
# File lib/tr8n/config.rb, line 418
def self.skip_before_filters
  return [] unless site_info[:skip_before_filters]
  @skip_before_filters ||= site_info[:skip_before_filters].collect{|filter| filter.to_sym}
end
splash_screen() click to toggle source
# File lib/tr8n/config.rb, line 371
def self.splash_screen
  site_info[:splash_screen]  
end
strftime_symbol_to_token(symbol) click to toggle source

localization

# File lib/tr8n/config.rb, line 671
def self.strftime_symbol_to_token(symbol)
  {
    "%a" => "{short_week_day_name}",
    "%A" => "{week_day_name}",
    "%b" => "{short_month_name}",
    "%B" => "{month_name}",
    "%p" => "{am_pm}",
    "%d" => "{days}",
    "%e" => "{day_of_month}", 
    "%j" => "{year_days}",
    "%m" => "{months}",
    "%W" => "{week_num}",
    "%w" => "{week_days}",
    "%y" => "{short_years}",
    "%Y" => "{years}",
    "%l" => "{trimed_hour}", 
    "%H" => "{full_hours}", 
    "%I" => "{short_hours}", 
    "%M" => "{minutes}", 
    "%S" => "{seconds}", 
    "%s" => "{since_epoch}"
  }[symbol]
end
synchronization() click to toggle source
# File lib/tr8n/config.rb, line 327
def self.synchronization
  config[:synchronization]
end
synchronization_all_languages?() click to toggle source
# File lib/tr8n/config.rb, line 806
def self.synchronization_all_languages?
  synchronization[:all_languages]
end
synchronization_batch_size() click to toggle source

Sync Process

# File lib/tr8n/config.rb, line 790
def self.synchronization_batch_size
  synchronization[:batch_size]
end
synchronization_key() click to toggle source
# File lib/tr8n/config.rb, line 798
def self.synchronization_key
  synchronization[:key]
end
synchronization_push_enabled?() click to toggle source
# File lib/tr8n/config.rb, line 810
def self.synchronization_push_enabled?
  synchronization[:enable_push]
end
synchronization_push_servers() click to toggle source
# File lib/tr8n/config.rb, line 814
def self.synchronization_push_servers
  synchronization[:push_servers]
end
synchronization_secret() click to toggle source
# File lib/tr8n/config.rb, line 802
def self.synchronization_secret
  synchronization[:secret]
end
synchronization_server() click to toggle source
# File lib/tr8n/config.rb, line 794
def self.synchronization_server
  synchronization[:server]
end
system_image() click to toggle source
# File lib/tr8n/config.rb, line 538
def self.system_image
  "/assets/tr8n/photo_system.gif"
end
system_level() click to toggle source
# File lib/tr8n/config.rb, line 744
def self.system_level
  1000000
end
system_translator() click to toggle source

only one allowed per system

# File lib/tr8n/config.rb, line 75
def self.system_translator
  @system_translator ||= Tr8n::Translator.where(:level => system_level).first || Tr8n::Translator.create(:user_id => 0, :level => system_level)
end
tr8n_helpers() click to toggle source
# File lib/tr8n/config.rb, line 408
def self.tr8n_helpers
  return [] unless site_info[:tr8n_helpers]
  @tr8n_helpers ||= site_info[:tr8n_helpers].collect{|helper| helper.to_sym}
end
translation_threshold() click to toggle source
# File lib/tr8n/config.rb, line 611
def self.translation_threshold
  rules_engine[:translation_threshold]
end
translator_levels() click to toggle source
# File lib/tr8n/config.rb, line 722
def self.translator_levels
  @translator_levels ||= begin
    levels = HashWithIndifferentAccess.new
    translator_roles.each do |key, val|
      levels[val] = key
    end
    levels
  end
end
translator_roles() click to toggle source

Translator Roles and Levels

# File lib/tr8n/config.rb, line 718
def self.translator_roles
  config[:translator_roles]
end
universal_language_rules() click to toggle source
# File lib/tr8n/config.rb, line 562
def self.universal_language_rules
  @universal_language_rules ||= begin
    urs = []
    language_rule_classes.each do |cls|
      next unless cls.suffixes.is_a?(String)
      urs << cls if cls.suffixes == "*"
    end
    urs
  end
end
user_class() click to toggle source
# File lib/tr8n/config.rb, line 458
def self.user_class
  user_class_name.constantize
end
user_class_name() click to toggle source
# File lib/tr8n/config.rb, line 453
def self.user_class_name
  return site_user_info[:class_name] if site_user_info_enabled?
  "Tr8n::Translator"  
end
user_gender(user) click to toggle source
# File lib/tr8n/config.rb, line 478
def self.user_gender(user)
  return "unknown" unless user
  user.send(site_user_info[:methods][:gender])
rescue Exception => ex
  Tr8n::Logger.error("Failed to fetch #{user_class_name} name: #{ex.to_s}")
  "unknown"
end
user_id(user) click to toggle source
# File lib/tr8n/config.rb, line 462
def self.user_id(user)
  return 0 unless user
  user.send(site_user_info[:methods][:id])
rescue Exception => ex
  Tr8n::Logger.error("Failed to fetch user id: #{ex.to_s}")
  0
end
user_locale(user) click to toggle source
# File lib/tr8n/config.rb, line 502
def self.user_locale(user)
  return default_locale unless user
  user.send(site_user_info[:methods][:locale])
rescue Exception => ex
  Tr8n::Logger.error("Failed to fetch #{user_class_name} locale: #{ex.to_s}")
  default_locale
end
user_mugshot(user) click to toggle source
# File lib/tr8n/config.rb, line 486
def self.user_mugshot(user)
  return silhouette_image unless user
  user.send(site_user_info[:methods][:mugshot])
rescue Exception => ex
  Tr8n::Logger.error("Failed to fetch #{user_class_name} image: #{ex.to_s}")
  silhouette_image
end
user_name(user) click to toggle source
# File lib/tr8n/config.rb, line 470
def self.user_name(user)
  return "Unknown user" unless user
  user.send(site_user_info[:methods][:name])
rescue Exception => ex
  Tr8n::Logger.error("Failed to fetch #{user_class_name} name: #{ex.to_s}")
  "Invalid user"
end
viewing_user_token_for(label) click to toggle source
# File lib/tr8n/config.rb, line 607
def self.viewing_user_token_for(label)
  Tr8n::Tokens::DataToken.new(label, "{#{rules_engine[:viewing_user_token]}:gender}")
end