egov_utils 1.0.1 → 1.1.0
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 +4 -4
- data/app/assets/javascripts/egov_utils/eGovUtilities.coffee.erb +1 -0
- data/app/controllers/egov_utils/people_controller.rb +18 -2
- data/app/models/egov_utils/person.rb +12 -1
- data/app/models/egov_utils/user.rb +7 -0
- data/app/services/egov_utils/refresh_user_groups.rb +1 -8
- data/config/routes.rb +3 -1
- data/db/migrate/20220624070709_migrate_person_residence_to_addresses.rb +20 -0
- data/lib/egov_utils/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: c3af04b2760bc38581e430b5ad1195fbf621e0ac1e2d013fb256be44ca6a3ce4
|
|
4
|
+
data.tar.gz: bee321a601dfc6cd190770b16f58dc10c001d75588ae25274f5d7ee33061863c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3fb0a3419d585ab1cb4b5d8abf72204839fdb4d182720cefd0a2a2c0452b512fe6e52778676644e7a085bbedc21c1a3dd2e1b0437c691343e8b83f955529950f
|
|
7
|
+
data.tar.gz: e147fd2ecbee0e689636b62cec8865f3041f12a9aa9e3b8871d18e334bd61ba7498b883d08a021c0fff58598ac916e3f69df22201b8c08afc50cdc1a01a5a4d2
|
|
@@ -78,6 +78,7 @@ window.eGovUtilities =
|
|
|
78
78
|
initSelect2: ($container)->
|
|
79
79
|
$container ||= $(document)
|
|
80
80
|
$('[data-provide="select2"]', $container).select2(width: null)
|
|
81
|
+
$('[data-provide="select2"]', $container).trigger("select2:initialized")
|
|
81
82
|
|
|
82
83
|
destroySelect2: ($container)->
|
|
83
84
|
$container ||= $(document)
|
|
@@ -9,8 +9,8 @@ module EgovUtils
|
|
|
9
9
|
respond_to do |format|
|
|
10
10
|
if params['_type'] == 'query'
|
|
11
11
|
format.json{ render json: {
|
|
12
|
-
results: @people_schema.entities.includes(:residence).collect do |p|
|
|
13
|
-
{id: p.id, text: p.to_s, residence: p.residence.to_s}
|
|
12
|
+
results: @people_schema.entities.includes(:residence, :addresses).collect do |p|
|
|
13
|
+
{id: p.id, text: p.to_s, residence: p.residence.to_s, addresses: p.addresses}
|
|
14
14
|
end
|
|
15
15
|
}}
|
|
16
16
|
else
|
|
@@ -22,5 +22,21 @@ module EgovUtils
|
|
|
22
22
|
def show
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
+
def addresses
|
|
26
|
+
addresses = Address.where(person_id: params[:person_id])
|
|
27
|
+
|
|
28
|
+
render json: {
|
|
29
|
+
results: addresses.map do |a|
|
|
30
|
+
{
|
|
31
|
+
id: a.id,
|
|
32
|
+
text: a.to_s,
|
|
33
|
+
street: a.street,
|
|
34
|
+
number: a.number,
|
|
35
|
+
postcode: a.postcode,
|
|
36
|
+
city: a.city
|
|
37
|
+
}
|
|
38
|
+
end
|
|
39
|
+
}
|
|
40
|
+
end
|
|
25
41
|
end
|
|
26
42
|
end
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
module EgovUtils
|
|
2
2
|
class Person < ApplicationRecord
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
# This is kept for accepts_nested_attributes_for compatibility, but
|
|
5
|
+
# overloaded below.
|
|
6
|
+
has_one :residence, class_name: 'EgovUtils::Address'
|
|
7
|
+
has_many :addresses
|
|
5
8
|
has_one :natural_person, dependent: :destroy
|
|
6
9
|
has_one :legal_person, dependent: :destroy
|
|
7
10
|
|
|
@@ -22,6 +25,14 @@ module EgovUtils
|
|
|
22
25
|
end
|
|
23
26
|
end
|
|
24
27
|
|
|
28
|
+
def residence
|
|
29
|
+
addresses.order(created_at: :desc).first
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def residence=(address)
|
|
33
|
+
addresses << address
|
|
34
|
+
end
|
|
35
|
+
|
|
25
36
|
def to_s
|
|
26
37
|
person_entity.to_s
|
|
27
38
|
end
|
|
@@ -142,6 +142,13 @@ module EgovUtils
|
|
|
142
142
|
all_role_names.map{|rn| EgovUtils::UserUtils::Role.find(rn) }.compact.collect{|cls| cls.new }
|
|
143
143
|
end
|
|
144
144
|
|
|
145
|
+
def ldap_dn
|
|
146
|
+
@ldap_dn ||= begin
|
|
147
|
+
dn = auth_source.send(:get_user_dn, login)
|
|
148
|
+
dn[:dn] if dn
|
|
149
|
+
end
|
|
150
|
+
end
|
|
151
|
+
|
|
145
152
|
def ldap_groups
|
|
146
153
|
groups.where.not(ldap_uid: nil)
|
|
147
154
|
end
|
|
@@ -15,19 +15,12 @@ module EgovUtils
|
|
|
15
15
|
|
|
16
16
|
attr_reader :user
|
|
17
17
|
|
|
18
|
-
def ldap_dn
|
|
19
|
-
@ldap_dn ||= begin
|
|
20
|
-
dn = user.auth_source.send(:get_user_dn, user.login)
|
|
21
|
-
dn[:dn] if dn
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
|
|
25
18
|
def ldap_groups
|
|
26
19
|
return [] if user.provider.blank?
|
|
27
20
|
|
|
28
21
|
@ldap_groups ||= begin
|
|
29
22
|
EgovUtils::Group.where(provider: user.provider).to_a.select do |g|
|
|
30
|
-
user.auth_source.member?(ldap_dn, g.external_uid)
|
|
23
|
+
user.auth_source.member?(user.ldap_dn, g.external_uid)
|
|
31
24
|
end
|
|
32
25
|
end
|
|
33
26
|
end
|
data/config/routes.rb
CHANGED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
class MigratePersonResidenceToAddresses < ActiveRecord::Migration[6.1]
|
|
2
|
+
def up
|
|
3
|
+
add_column :egov_utils_addresses, :person_id, :bigint, index: true
|
|
4
|
+
add_foreign_key :egov_utils_addresses, :egov_utils_people, column: :person_id
|
|
5
|
+
|
|
6
|
+
execute <<-SQL
|
|
7
|
+
UPDATE egov_utils_addresses
|
|
8
|
+
SET person_id = egov_utils_people.id
|
|
9
|
+
FROM egov_utils_people
|
|
10
|
+
WHERE egov_utils_addresses.id = egov_utils_people.residence_id;
|
|
11
|
+
SQL
|
|
12
|
+
|
|
13
|
+
remove_index :egov_utils_people, :residence_id
|
|
14
|
+
remove_column :egov_utils_people, :residence_id
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def down
|
|
18
|
+
raise ActiveRecord::IrreversibleMigration
|
|
19
|
+
end
|
|
20
|
+
end
|
data/lib/egov_utils/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: egov_utils
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0
|
|
4
|
+
version: 1.1.0
|
|
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: 2022-
|
|
11
|
+
date: 2022-06-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rails
|
|
@@ -616,6 +616,7 @@ files:
|
|
|
616
616
|
- db/migrate/20180403150556_create_egov_utils_legal_people.rb
|
|
617
617
|
- db/migrate/20180424143207_add_titles_to_natural_people.rb
|
|
618
618
|
- db/migrate/20220331113917_add_days_before_inactive_to_egov_utils_users.rb
|
|
619
|
+
- db/migrate/20220624070709_migrate_person_residence_to_addresses.rb
|
|
619
620
|
- lib/azahara_schema_currency.rb
|
|
620
621
|
- lib/azahara_schema_currency/aggregation_attribute_patch.rb
|
|
621
622
|
- lib/azahara_schema_currency/association_attribute_patch.rb
|