from_clause_translate 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a49a163f455c3977eebfcb19c3fe4051946f941d4968ee9115bb1616866b1f35
4
- data.tar.gz: 5f66fc0c7a4900e120c76ef2552294047b8a20bb29af1f6cf00cf3755a3674c5
3
+ metadata.gz: 61a7a0b83c04d5cc4e15a088c9a56ad2388700bc1a6de3c477860501fdcfd16e
4
+ data.tar.gz: 1fd848f0dda4626997dc32742616117b4fcc3017219a30133d3c585ec0408a2a
5
5
  SHA512:
6
- metadata.gz: dd41de9c31b39e159fac6256e35dc1e5787a42270596b4c2f068c3c5f3819416c35071ed037759409265aa781742feb95e98ace2818d78b49f699329d8df4b2f
7
- data.tar.gz: c515c69c704ff0363eec07844ba60b9b31deaaa0f5eef9d32382d0ed1aa11a136ace7b1ae03226b72aa60e20170e9a341b9382deb80abc996f01670b26ab468a
6
+ metadata.gz: 85e5ab0a94cd12927ed91ac819d4c4775374dbb217cf23d4511d9c4f292ba11ff5470c1d444b01fff500c51c737dc52904ff0a60f3dac75cdb695dfab8779c45
7
+ data.tar.gz: 4e032681587d35263fbae5bdf3f70b06f51f10104c3495ffa311d0fef8ec195759825d2b36a239c4a04a609fa19966376a9a14fbfe9f7fe4d0b479a642bb7b3a
@@ -24,14 +24,10 @@ module ClassMethods
24
24
  column = plural.to_s.singularize.to_sym
25
25
  selection = I18n.available_locales.map do |locale|
26
26
  "#{quoted_table_name}.\"#{column}_#{locale}\""
27
- end
28
- I18n.available_locales.each do |locale|
29
- self::TRANSLATED_SELECTION[locale][plural] = selection
30
- end
31
- selection = selection.join ','
27
+ end.join ','
32
28
  self::TRANSLATED_PLURALS[plural] = selection
33
29
  I18n.available_locales.each do |locale|
34
- self::TRANSLATED_SELECTION_AS[locale][plural] = selection
30
+ self::TRANSLATED_SELECTION[locale][plural] = selection
35
31
  end
36
32
  end
37
33
  end
@@ -69,8 +65,7 @@ module ClassMethods
69
65
  selection = "#{quoted_table_name}.\"#{column}_#{locale}\""
70
66
  selection = translated_fallbacks_wrap selection, fallback[locale]
71
67
  selection = translated_fallbacks_wrap selection, fallback[:_]
72
- self::TRANSLATED_SELECTION[locale][column] = selection
73
- self::TRANSLATED_SELECTION_AS[locale][column] = "#{selection} AS #{column}"
68
+ self::TRANSLATED_SELECTION[locale][column] = "#{selection} AS #{column}"
74
69
  end
75
70
  end
76
71
 
@@ -27,7 +27,7 @@ class FromClauseTranslate::TranslatedColumnsBuilder
27
27
 
28
28
  @has_translated = true
29
29
  translated.each do |column|
30
- next translated_selection(column) if !column.is_a? Hash
30
+ next translated_selection(column) unless column.is_a? Hash
31
31
 
32
32
  column.each do |key, value|
33
33
  @skip_translated << key.to_s
@@ -40,24 +40,17 @@ class FromClauseTranslate::TranslatedColumnsBuilder
40
40
  return if @without_projections
41
41
 
42
42
  @arel.projections.each do |column|
43
+ next if column.is_a?(String) && column[0] != '"'
44
+
43
45
  arel_projection_translation column
44
46
  end
45
47
  end
46
48
 
47
49
  def arel_projection_translation column
48
- return if column.is_a?(String) && column[0] != '"'
49
-
50
50
  column = column.name if column.is_a? Arel::Attributes::Attribute
51
51
  column = column.to_s unless column.is_a? String
52
52
 
53
- if column.first == '"'
54
- name = column[1...-1]
55
- elsif column == '*'
56
- @select_all = true
57
- return column
58
- else
59
- name = column
60
- end
53
+ name = column.first == '"' ? column[1...-1] : column
61
54
 
62
55
  return if @skip_translated.include? name
63
56
 
@@ -116,11 +109,13 @@ class FromClauseTranslate::TranslatedColumnsBuilder
116
109
  sym = name.to_sym
117
110
  translates = @klass.translates? sym
118
111
  @has_translated = true
119
- select = translates ? @klass::TRANSLATED_SELECTION[I18n.locale][sym] : false
120
- if select
121
- @columns << select
122
- elsif !@select_all && @klass.columns_hash[name.to_s]
123
- @columns << (original || name)
112
+ if translates
113
+ return @columns << @klass::TRANSLATED_SELECTION[I18n.locale][sym]
124
114
  end
115
+
116
+ @select_all = true if sym == :*
117
+ return if @select_all || !@klass.columns_hash[name.to_s]
118
+
119
+ @columns << (original || name)
125
120
  end
126
121
  end
@@ -1,3 +1,3 @@
1
1
  module FromClauseTranslate
2
- VERSION = '0.2.5'.freeze
2
+ VERSION = '0.2.6'.freeze
3
3
  end
@@ -11,6 +11,5 @@ module FromClauseTranslate
11
11
  model.const_set :TRANSLATED_SELECTION, Hash[
12
12
  I18n.available_locales.map { |locale| [locale, {}] }
13
13
  ]
14
- model.const_set :TRANSLATED_SELECTION_AS, model::TRANSLATED_SELECTION.dup
15
14
  end
16
15
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: from_clause_translate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roman Kushin