azahara_schema 0.2.6 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ded2c6d31f576f6352ac1a71aa199652a02291d012c6ff46a0dee6cdba9ecebd
4
- data.tar.gz: 230a4c8a4c4167edad95506997195b173eedbd81f45e3194058e6930493ee682
3
+ metadata.gz: 855ce45cd183a323fc4b01598cc8ed54b2440284cbe2e888baaf4940d8566d19
4
+ data.tar.gz: 9450e8a3f0d8d95baf2166f5ff0afe54e0558b71d9b49a91c6c8e09b01c3dc83
5
5
  SHA512:
6
- metadata.gz: a672e53ee815b9b9f4d5ce4212153175d7c2013e45b4945f39ba3c2129d9dcfec7cba1e0d609a6365193143655c60a3e834b2b004ba539d02e770f3582955c92
7
- data.tar.gz: 03aba7ed60de1e7ad8437ca25631c4325c0cd476bb8a9aad1a95aa3baa8191ef8103208427f227822956c26f833cb9086a316167beee0b3c2786b7d44abb73d8
6
+ metadata.gz: 115e3da2d1d6023c94f3a6052b7c4c5e817e7ffd81579a8ecbba6937d478731faa0dfa4bbb045d388293173d6d489945ab3eb2a74fdac0fa518ca7ca3494271a
7
+ data.tar.gz: 3084ce3dab7bd6d5f5845d3e5997ab93996af302ca16bd3764f196f23dc7ebd563d856b7f8f2f6a966ba4a03a634cf03b330e6214a17e53ce5611d0975489fac
@@ -5,6 +5,15 @@ module AzaharaSchema
5
5
  schema.operators_for(filter_name).collect{|o| [o, o]}
6
6
  end
7
7
 
8
+ def azahara_operators_tag(schema, filter, name)
9
+ field_name = "f[#{name}]"
10
+ if schema.operators_for(name).count > 1
11
+ select_tag field_name, options_for_select(operators_for_select(schema, name), schema.operator_for(name)), class: 'form-control operator-field'
12
+ else
13
+ hidden_field_tag field_name, schema.operators_for(name).first, class: 'operator-field'
14
+ end
15
+ end
16
+
8
17
  def filter_field(schema, filter)
9
18
  case filter.format.format_name
10
19
  when 'list', 'love'
@@ -14,12 +23,29 @@ module AzaharaSchema
14
23
  end
15
24
  end
16
25
 
26
+ def azahara_filter_row(schema, filter, name=nil)
27
+ name ||= filter.filter_name
28
+ content_tag(:div, class: 'form-group row filter', data: {name: name}) do
29
+ s = ''.html_safe
30
+ s << content_tag(:div, label_tag("f[#{name}]", filter.attribute_name.human), class: 'col-md-2 control-label')
31
+
32
+ operators_tag = azahara_operators_tag(schema, filter, name)
33
+ if schema.operators_for(name).count > 1
34
+ s << content_tag(:div, operators_tag, class: 'col-md-2')
35
+ s << content_tag(:div, filter_field(schema, filter), class: 'col-md-8')
36
+ else
37
+ s << content_tag(:div, operators_tag + filter_field(schema, filter), class: 'col-md-10')
38
+ end
39
+ s
40
+ end
41
+ end
42
+
17
43
  # translates values to list_values
18
44
  # TODO: not needed to do it for every value - for example districts are not translatable
19
45
  def list_values_for_select(attribute)
20
46
  if attribute.format.format_name == 'list'
21
47
  attribute.available_values.collect do |l, val|
22
- [t(l, scope: [:activerecord, :attributes, attribute.model.model_name.i18n_key, attribute.name.to_s.pluralize], default: l.to_s), val]
48
+ [attribute.attribute_name.human_list_value(l), val]
23
49
  end
24
50
  else
25
51
  attribute.available_values
@@ -1,39 +1,13 @@
1
1
  <div id="filters" class="schema-filters">
2
2
  <div id="filters_uncollapsable">
3
3
  <% schema.uncollapsable_filters.each do |name, filter| %>
4
- <div class="form-group row filter" data-name="<%= name %>">
5
- <div class="col-md-2 control-label"><%= label_tag "f[#{name}]", filter.attribute_name.human %></div>
6
- <% if schema.operators_for(name).count > 1 %>
7
- <div class="col-md-2"><%= select_tag "f[#{name}]", options_for_select(operators_for_select(schema, name), schema.operator_for(name)), class: 'form-control operator-field' %></div>
8
- <div class="col-md-8">
9
- <%= filter_field(schema, filter) %>
10
- </div>
11
- <% else %>
12
- <div class="col-md-10">
13
- <%= hidden_field_tag "f[#{name}]", schema.operators_for(name).first, class: 'operator-field' %>
14
- <%= filter_field(schema, filter) %>
15
- </div>
16
- <% end %>
17
- </div>
4
+ <%= azahara_filter_row(schema, filter, name) %>
18
5
  <% end %>
19
6
  </div>
20
7
  <% if schema.collapsable_filters.any? || lookup_context.template_exists?("#{schema.model.model_name.plural}/_additional_filters") %>
21
8
  <div id="filters_collapsable" class="collapse">
22
9
  <% schema.collapsable_filters.each do |name, filter| %>
23
- <div class="form-group row filter" data-name="<%= name %>">
24
- <div class="col-md-2 control-label"><%= label_tag "f[#{name}]", t('activerecord.attributes.'+schema.model.name.underscore+'.'+name, default: name.humanize) %></div>
25
- <% if schema.operators_for(name).count > 1 %>
26
- <div class="col-md-2"><%= select_tag "f[#{name}]", options_for_select(operators_for_select(schema, name), schema.operator_for(name)), class: 'form-control operator-field' %></div>
27
- <div class="col-md-8">
28
- <%= filter_field(schema, filter) %>
29
- </div>
30
- <% else %>
31
- <div class="col-md-10">
32
- <%= hidden_field_tag "f[#{name}]", schema.operators_for(name).first, class: 'operator-field' %>
33
- <%= filter_field(schema, filter) %>
34
- </div>
35
- <% end %>
36
- </div>
10
+ <%= azahara_filter_row(schema, filter, name) %>
37
11
  <% end %>
38
12
  <% if lookup_context.template_exists?("#{schema.model.model_name.plural}/_additional_filters") %>
39
13
  <%= render "#{schema.model.model_name.plural}/additional_filters", schema: schema %>
@@ -37,7 +37,7 @@ module AzaharaSchema
37
37
  end
38
38
 
39
39
  def i18n_scoped_list_key(value, prefix=self.i18n_scoped_list_prefix)
40
- prefix + '.' + value.to_s
40
+ (prefix + '.' + value.to_s).to_sym
41
41
  end
42
42
 
43
43
  def i18n_fallback_keys
@@ -1,3 +1,3 @@
1
1
  module AzaharaSchema
2
- VERSION = '0.2.6'
2
+ VERSION = '0.2.7'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: azahara_schema
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ondřej Ezr
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-10 00:00:00.000000000 Z
11
+ date: 2018-02-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails