brick 1.0.147 → 1.0.149

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: dd317a5512ce3e16edf252482ace8bfbc481b7c47abec2ef6b760ef6100d0f60
4
- data.tar.gz: 804edb51a7b6d88794bd573a0af046dfc51fffedec85238ac2c88d010be648fb
3
+ metadata.gz: 91e6b3d87c423a90e6e6cf62a07235e185373d9bb60990579a13ccea83c6a645
4
+ data.tar.gz: 8670e080c676eb7c5be3bb62b7ce4e7a310e8d30c98c3d189d513bd9e06a2af3
5
5
  SHA512:
6
- metadata.gz: 46b3b122f5a7ff7edfc41b24748e980dc9bea92241d934a5fc9de7a34fe1182058ab7c8d7b90d65329d1d183eec6fd6bf195764aa90f9e32602c46fa2f219d31
7
- data.tar.gz: 41cdd93b08c7cc4f26bceb2a1864a7233f54ce070576738433870185ed4c23b9803f82edc3ba9b4c63eb4ed3888853adeeeba64b2772f86939715d0b4977e5bb
6
+ metadata.gz: 58ff4070f313c577b027f2c83babb99c2aeecaf0cfd05edbed89ed6e5a32485a9bdc8849e303d9eb16fa6f5824beb66e4dbf282843bc4e2b1a00c7ec13e0616a
7
+ data.tar.gz: 20cd0a6b43f267a653923a86ded57b041cbe49adbd1e239236faac18415eab0e8515490e0828dcc67f4d7e4f809efae9ff7249a1ab5d9a9626a8a24dced8d2d9
@@ -95,7 +95,7 @@ module ActiveRecord
95
95
  return @_brick_primary_key if instance_variable_defined?(:@_brick_primary_key)
96
96
 
97
97
  pk = begin
98
- primary_key.is_a?(String) ? [primary_key] : primary_key || []
98
+ primary_key.is_a?(String) ? [primary_key] : primary_key.dup || []
99
99
  rescue
100
100
  []
101
101
  end
@@ -907,7 +907,7 @@ JOIN (SELECT #{hm_selects.map { |s| _br_quoted_name("#{'br_t0.' if from_clause}#
907
907
  s << v
908
908
  end
909
909
  else # String stuff (which defines a custom ORDER BY) just comes straight through
910
- v = v.split('.').map { |x| _br_quoted_name(x) }.join('.')
910
+ # v = v.split('.').map { |x| _br_quoted_name(x) }.join('.')
911
911
  s << v
912
912
  # Avoid "PG::InvalidColumnReference: ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list" in Postgres
913
913
  selects << v if is_distinct
@@ -1695,7 +1695,7 @@ class Object
1695
1695
  when Symbol
1696
1696
  order_tbl[order_default] || order_default
1697
1697
  else
1698
- pk.map { |part| "#{table_name}.#{part}"}.join(', ') # If it's not a custom ORDER BY, just use the key
1698
+ pk.map { |part| "#{table_name}.#{part}"} # If it's not a custom ORDER BY, just use the key
1699
1699
  end
1700
1700
  end
1701
1701
 
@@ -46,12 +46,12 @@ module Brick
46
46
  end
47
47
  end
48
48
  unless val_err || val.nil?
49
- if (geometry = RGeo::WKRep::WKBParser.new.parse(val.pack('c*'))).is_a?(RGeo::Cartesian::PointImpl) &&
50
- !(geometry.y == 0.0 && geometry.x == 0.0)
51
- # Create a POINT link to this style of Google maps URL: https://www.google.com/maps/place/38.7071296+-121.2810649/@38.7071296,-121.2810649,12z
52
- geometry = "<a href=\"https://www.google.com/maps/place/#{geometry.y}+#{geometry.x}/@#{geometry.y},#{geometry.x},12z\" target=\"blank\">#{geometry.to_s}</a>"
53
- end
54
- val = geometry
49
+ val = if ((geometry = RGeo::WKRep::WKBParser.new.parse(val.pack('c*'))).is_a?(RGeo::Cartesian::PointImpl) ||
50
+ geometry.is_a?(RGeo::Geos::CAPIPointImpl)) &&
51
+ !(geometry.y == 0.0 && geometry.x == 0.0)
52
+ # Create a POINT link to this style of Google maps URL: https://www.google.com/maps/place/38.7071296+-121.2810649/@38.7071296,-121.2810649,12z
53
+ "<a href=\"https://www.google.com/maps/place/#{geometry.y}+#{geometry.x}/@#{geometry.y},#{geometry.x},12z\" target=\"blank\">#{geometry.to_s}</a>"
54
+ end
55
55
  end
56
56
  val_err || val
57
57
  else
@@ -1760,14 +1760,17 @@ end
1760
1760
  <tr><td<%= ' class=\"orphan\"'.html_safe if err_msg %>><%= err_msg || '(none)' %></td></tr>
1761
1761
  <% else
1762
1762
  collection2.each do |br_#{hm_singular_name}| %>
1763
- <tr><td><%= br_descrip = if br_#{hm_singular_name}.respond_to?(descrip_cols&.first&.first&.last)
1763
+ <tr><td><%= br_descrip = if (dc = descrip_cols&.first&.first&.last) && br_#{hm_singular_name}.respond_to?(dc)
1764
1764
  br_#{hm_singular_name}.brick_descrip(
1765
1765
  descrip_cols&.first&.map { |col| br_#{hm_singular_name}.send(col.last) }
1766
1766
  )
1767
1767
  else # If the HM association has a scope, might not have picked up our SELECT detail
1768
1768
  pks = (klass = br_#{hm_singular_name}.class).primary_key
1769
- pks = [pks] unless pks.is_a?(Array)
1770
- pks.map! { |pk| br_#{hm_singular_name}.send(pk).to_s }
1769
+ pks = if pks.is_a?(Array)
1770
+ pks.map { |pk| br_#{hm_singular_name}.send(pk).to_s }
1771
+ else
1772
+ [br_#{hm_singular_name}.send(pks).to_s]
1773
+ end
1771
1774
  \"#\{klass.name} ##\{pks.join(', ')}\"
1772
1775
  end
1773
1776
  link_to(br_descrip, #{hm.first.klass._brick_index(:singular)}_path(slashify(#{obj_br_pk}))) %></td></tr>
@@ -104,7 +104,7 @@ module Brick::Rails::FormBuilder
104
104
  out << "<div id=\"_br_json_#{self.field_id(method)}\"></div>"
105
105
  else
106
106
  is_revert = false
107
- out << ::Brick::Rails.display_value(col_type, val).html_safe
107
+ out << (::Brick::Rails.display_value(col_type, val)&.html_safe || '')
108
108
  end
109
109
  end
110
110
  if is_revert
@@ -5,7 +5,7 @@ module Brick
5
5
  module VERSION
6
6
  MAJOR = 1
7
7
  MINOR = 0
8
- TINY = 147
8
+ TINY = 149
9
9
 
10
10
  # PRE is nil unless it's a pre-release (beta, RC, etc.)
11
11
  PRE = nil
data/lib/brick.rb CHANGED
@@ -558,7 +558,7 @@ module Brick
558
558
  ::Brick._add_bt_and_hm([nil, table_name, poly, nil, primary_table, "(brick) #{table_name}_#{poly}"], relations,
559
559
  type, # Polymorphic class
560
560
  is_optional)
561
- else
561
+ elsif relations.present?
562
562
  missing_stis[primary_table] = type unless ::Brick.existing_stis.key?(type)
563
563
  end
564
564
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: brick
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.147
4
+ version: 1.0.149
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lorin Thwaits
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-31 00:00:00.000000000 Z
11
+ date: 2023-06-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord