Module: ActionView::Helpers::TranslationHelper

Defined in:
lib/moirai/translation_helper.rb

Overview

rubocop:disable Lint/ConstantDefinitionInBlock

Instance Method Summary collapse

Instance Method Details

#moirai_edit_enabled?Boolean

Returns:

  • (Boolean)


27
28
29
30
31
# File 'lib/moirai/translation_helper.rb', line 27

def moirai_edit_enabled?
  return false unless Moirai.enable_inline_editing.present?

  instance_exec(params: defined?(params) ? (params || {}) : {}, &Moirai.enable_inline_editing)
end

#original_translateObject



2
# File 'lib/moirai/translation_helper.rb', line 2

alias_method :original_translate, :translate

#translate(key) ⇒ Object Also known as: t



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/moirai/translation_helper.rb', line 4

def translate(key, **)
  value = original_translate(key, **)

  is_missing_translation = value.is_a?(String) && value.include?('class="translation_missing"')
  if is_missing_translation
    value = extract_inner_content(value)
  end

  if moirai_edit_enabled?
    @key_finder ||= Moirai::KeyFinder.new

    render(partial: "moirai/translation_files/form",
      locals: {key: scope_key_by_partial(key),
               locale: I18n.locale,
               is_missing_translation: is_missing_translation,
               value: value})
  else
    value
  end
end