Skip to content
This repository
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 36 lines (31 sloc) 1.001 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
# coding: utf-8
module Formtastic
  module I18n
    
    DEFAULT_SCOPE = [:formtastic].freeze
    DEFAULT_VALUES = {
        :required => 'required',
        :yes => 'Yes',
        :no => 'No',
        :create => 'Create {{model}}',
        :update => 'Update {{model}}'
      }.freeze
    SCOPES = [
        '{{model}}.{{nested_model}}.{{action}}.{{attribute}}',
        '{{model}}.{{action}}.{{attribute}}',
        '{{model}}.{{nested_model}}.{{attribute}}',
        '{{model}}.{{attribute}}',
        '{{nested_model}}.{{attribute}}',
        '{{attribute}}'
      ]
      
    class << self
      
      def translate(*args)
        key = args.shift.to_sym
        options = args.extract_options!
        options.reverse_merge!(:default => DEFAULT_VALUES[key])
        options[:scope] = [DEFAULT_SCOPE, options[:scope]].flatten.compact
        ::I18n.translate(key, *(args << options))
      end
      alias :t :translate
      
    end
    
  end
end
Something went wrong with that request. Please try again.