# don't look at object tags if redacted, so as to avoid giving
# away redacted version tag information.
unless object.redacted?
- if object.tags.include? "name:#{I18n.locale}"
- name = t 'printable_name.with_name_html', :name => content_tag(:bdi, object.tags["name:#{I18n.locale}"].to_s ), :id => content_tag(:bdi, name)
+ locale = I18n.locale.to_s
+
+ while locale =~ /-[^-]+/ and not object.tags.include? "name:#{I18n.locale}"
+ locale = locale.sub(/-[^-]+/, "")
+ end
+
+ if object.tags.include? "name:#{locale}"
+ name = t 'printable_name.with_name_html', :name => content_tag(:bdi, object.tags["name:#{locale}"].to_s ), :id => content_tag(:bdi, name)
elsif object.tags.include? 'name'
name = t 'printable_name.with_name_html', :name => content_tag(:bdi, object.tags['name'].to_s ), :id => content_tag(:bdi, name)
end
assert_equal "<bdi>проверки узла</bdi> (<bdi>18, v2</bdi>)", printable_name(nodes(:node_with_name_current_version), true)
assert_equal "18, v1", printable_name(nodes(:node_with_name_redacted_version), true)
+ I18n.locale = "ru-RU"
+
+ assert_equal "17", printable_name(current_nodes(:redacted_node))
+ assert_equal "<bdi>проверки узла</bdi> (<bdi>18</bdi>)", printable_name(current_nodes(:node_with_name))
+ assert_equal "<bdi>проверки узла</bdi> (<bdi>18</bdi>)", printable_name(nodes(:node_with_name_current_version))
+ assert_equal "18", printable_name(nodes(:node_with_name_redacted_version))
+ assert_equal "<bdi>проверки узла</bdi> (<bdi>18, v2</bdi>)", printable_name(nodes(:node_with_name_current_version), true)
+ assert_equal "18, v1", printable_name(nodes(:node_with_name_redacted_version), true)
+
I18n.locale = "de"
assert_equal "17", printable_name(current_nodes(:redacted_node))