decidim-core 0.31.0.rc1 → 0.31.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/cells/decidim/activity_cell.rb +6 -0
- data/app/cells/decidim/author/avatar.erb +1 -7
- data/app/cells/decidim/author/badge.erb +6 -0
- data/app/cells/decidim/author/name.erb +1 -5
- data/app/cells/decidim/author/show.erb +47 -15
- data/app/cells/decidim/author_cell.rb +10 -0
- data/app/cells/decidim/profile/avatar.erb +0 -2
- data/app/cells/decidim/profile/badge.erb +3 -3
- data/app/cells/decidim/profile/details.erb +2 -1
- data/app/cells/decidim/user_activity_cell.rb +6 -1
- data/app/controllers/decidim/download_your_data_controller.rb +5 -2
- data/app/helpers/decidim/map_helper.rb +1 -1
- data/app/helpers/decidim/menu_helper.rb +8 -2
- data/app/mailers/decidim/user_group_mailer.rb +21 -0
- data/app/models/decidim/private_export.rb +4 -0
- data/app/models/decidim/user.rb +2 -2
- data/app/packs/src/decidim/controllers/dropdown/controller.js +2 -2
- data/app/packs/src/decidim/controllers/editor/controller.js +4 -1
- data/app/packs/src/decidim/controllers/form_filter/controller.js +6 -0
- data/app/packs/src/decidim/datepicker/generate_datepicker.js +6 -0
- data/app/packs/src/decidim/datepicker/generate_timepicker.js +9 -0
- data/app/packs/src/decidim/index.js +10 -5
- data/app/packs/src/decidim/map/controller/markers.js +3 -1
- data/app/packs/src/decidim/refactor/moved/check_boxes_tree.js +1 -0
- data/app/packs/stylesheets/decidim/_accordion.scss +4 -4
- data/app/packs/stylesheets/decidim/_author.scss +15 -1
- data/app/packs/stylesheets/decidim/_cards.scss +5 -1
- data/app/packs/stylesheets/decidim/_dropdown.scss +22 -5
- data/app/packs/stylesheets/decidim/_filters.scss +1 -1
- data/app/packs/stylesheets/decidim/_footer.scss +5 -0
- data/app/packs/stylesheets/decidim/_profile.scss +6 -6
- data/app/packs/stylesheets/decidim/editor.scss +3 -1
- data/app/services/decidim/download_your_data_exporter.rb +15 -4
- data/app/services/decidim/open_data_exporter.rb +2 -1
- data/app/validators/etiquette_validator.rb +2 -2
- data/app/validators/password_validator.rb +3 -1
- data/app/views/decidim/application/_document.html.erb +2 -2
- data/app/views/decidim/download_your_data/_export.html.erb +1 -1
- data/app/views/decidim/export_mailer/download_your_data_export.html.erb +1 -1
- data/app/views/decidim/export_mailer/export.html.erb +1 -1
- data/app/views/decidim/shared/_filters.html.erb +1 -1
- data/app/views/decidim/user_group_mailer/notify_deprecation_to_member.html.erb +4 -1
- data/app/views/decidim/user_group_mailer/notify_deprecation_to_owner.html.erb +1 -4
- data/app/views/decidim/user_group_mailer/notify_user_group_patched.html.erb +21 -0
- data/app/views/layouts/decidim/_application.html.erb +1 -1
- data/config/locales/ca-IT.yml +30 -18
- data/config/locales/ca.yml +28 -16
- data/config/locales/cs.yml +6 -7
- data/config/locales/de.yml +2 -11
- data/config/locales/en.yml +22 -10
- data/config/locales/es-MX.yml +20 -8
- data/config/locales/es-PY.yml +20 -8
- data/config/locales/es.yml +20 -8
- data/config/locales/eu.yml +60 -48
- data/config/locales/fi-plain.yml +20 -9
- data/config/locales/fi.yml +20 -9
- data/config/locales/fr-CA.yml +22 -10
- data/config/locales/fr.yml +22 -10
- data/config/locales/it.yml +2 -0
- data/config/locales/ja.yml +22 -10
- data/config/locales/ro-RO.yml +1 -1
- data/config/locales/ru.yml +0 -1
- data/config/locales/sl.yml +0 -1
- data/db/data/20251108232118_add_dummy_migration.rb +11 -0
- data/db/migrate/20250217192438_convert_user_groups_into_users.rb +19 -1
- data/db/migrate/20250819110800_convert_private_exports_id_to_uuid.rb +55 -0
- data/decidim-core.gemspec +1 -0
- data/lib/decidim/asset_router/storage.rb +8 -8
- data/lib/decidim/core/engine.rb +9 -0
- data/lib/decidim/core/test/factories.rb +7 -2
- data/lib/decidim/core/test/shared_examples/comments_examples.rb +24 -0
- data/lib/decidim/core/version.rb +1 -1
- data/lib/decidim/form_builder.rb +1 -1
- data/lib/decidim/shakapacker/configuration.rb +5 -1
- data/lib/tasks/upgrade/clean.rake +11 -0
- data/lib/tasks/upgrade/decidim_fix_action_log.rake +28 -0
- data/lib/tasks/upgrade/user_groups_migration.rake +33 -0
- metadata +25 -6
|
@@ -5,6 +5,7 @@ namespace :decidim do
|
|
|
5
5
|
namespace :user_groups do
|
|
6
6
|
desc "Main task to notify users and change references to groups"
|
|
7
7
|
task remove: [
|
|
8
|
+
:"decidim:upgrade:user_groups:perform_patches_on_emails",
|
|
8
9
|
:"decidim:upgrade:user_groups:send_reset_password_instructions",
|
|
9
10
|
:"decidim:upgrade:user_groups:send_user_group_changes_notification_to_members",
|
|
10
11
|
:"decidim:upgrade:user_groups:transfer_user_groups_authorships",
|
|
@@ -12,6 +13,36 @@ namespace :decidim do
|
|
|
12
13
|
:"decidim:upgrade:user_groups:remove_groups_notifications"
|
|
13
14
|
]
|
|
14
15
|
|
|
16
|
+
desc "Patch users migrated from user groups with invalid emails"
|
|
17
|
+
task perform_patches_on_emails: :environment do
|
|
18
|
+
class UserGroupMembership < ApplicationRecord
|
|
19
|
+
self.table_name = "decidim_user_group_memberships"
|
|
20
|
+
|
|
21
|
+
belongs_to :user, class_name: "Decidim::User", foreign_key: :decidim_user_id
|
|
22
|
+
belongs_to :group, class_name: "Decidim::User", foreign_key: :decidim_user_group_id
|
|
23
|
+
|
|
24
|
+
scope :member, -> { where(role: %w(creator admin member)) }
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
Decidim::User.where("extended_data @> ?", { group: true, patched: true }.to_json).where(encrypted_password: "").find_each do |group|
|
|
28
|
+
next if group.blocked?
|
|
29
|
+
|
|
30
|
+
password = Random.alphanumeric(15)
|
|
31
|
+
|
|
32
|
+
group.skip_password_change_notification!
|
|
33
|
+
group.password = password
|
|
34
|
+
group.extended_data = (group.extended_data || {}).merge("patched" => false)
|
|
35
|
+
group.save!
|
|
36
|
+
|
|
37
|
+
UserGroupMembership.where(group:).member.find_each do |membership|
|
|
38
|
+
user = membership.user
|
|
39
|
+
next if user.deleted? || user.blocked? || !user.confirmed?
|
|
40
|
+
|
|
41
|
+
Decidim::UserGroupMailer.notify_user_group_patched(group, user, password).deliver_later
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
15
46
|
desc "Send reset password instructions to groups"
|
|
16
47
|
task send_reset_password_instructions: :environment do
|
|
17
48
|
Decidim::User.user_group.where(encrypted_password: "").find_each do |group|
|
|
@@ -104,6 +135,8 @@ namespace :decidim do
|
|
|
104
135
|
# rubocop:enable Rails/SkipsModelValidations
|
|
105
136
|
|
|
106
137
|
puts "Transferred authorship in #{a[:model]} with id #{a[:id]} and gid #{a[:gid]} from #{a[:author_type]} with id #{a[:author_id]} to user with id #{a[:group_id]}"
|
|
138
|
+
rescue NameError
|
|
139
|
+
puts "Error on #{a[:id]}"
|
|
107
140
|
end
|
|
108
141
|
puts "===== Transfer finished."
|
|
109
142
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: decidim-core
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.31.0
|
|
4
|
+
version: 0.31.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Josep Jaume Rey Peroy
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date: 2025-
|
|
13
|
+
date: 2025-11-20 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: concurrent-ruby
|
|
@@ -138,6 +138,20 @@ dependencies:
|
|
|
138
138
|
- - "~>"
|
|
139
139
|
- !ruby/object:Gem::Version
|
|
140
140
|
version: 5.1.2
|
|
141
|
+
- !ruby/object:Gem::Dependency
|
|
142
|
+
name: data_migrate
|
|
143
|
+
requirement: !ruby/object:Gem::Requirement
|
|
144
|
+
requirements:
|
|
145
|
+
- - "~>"
|
|
146
|
+
- !ruby/object:Gem::Version
|
|
147
|
+
version: '11.3'
|
|
148
|
+
type: :runtime
|
|
149
|
+
prerelease: false
|
|
150
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
151
|
+
requirements:
|
|
152
|
+
- - "~>"
|
|
153
|
+
- !ruby/object:Gem::Version
|
|
154
|
+
version: '11.3'
|
|
141
155
|
- !ruby/object:Gem::Dependency
|
|
142
156
|
name: date_validator
|
|
143
157
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -800,28 +814,28 @@ dependencies:
|
|
|
800
814
|
requirements:
|
|
801
815
|
- - '='
|
|
802
816
|
- !ruby/object:Gem::Version
|
|
803
|
-
version: 0.31.0
|
|
817
|
+
version: 0.31.0
|
|
804
818
|
type: :development
|
|
805
819
|
prerelease: false
|
|
806
820
|
version_requirements: !ruby/object:Gem::Requirement
|
|
807
821
|
requirements:
|
|
808
822
|
- - '='
|
|
809
823
|
- !ruby/object:Gem::Version
|
|
810
|
-
version: 0.31.0
|
|
824
|
+
version: 0.31.0
|
|
811
825
|
- !ruby/object:Gem::Dependency
|
|
812
826
|
name: decidim-dev
|
|
813
827
|
requirement: !ruby/object:Gem::Requirement
|
|
814
828
|
requirements:
|
|
815
829
|
- - '='
|
|
816
830
|
- !ruby/object:Gem::Version
|
|
817
|
-
version: 0.31.0
|
|
831
|
+
version: 0.31.0
|
|
818
832
|
type: :development
|
|
819
833
|
prerelease: false
|
|
820
834
|
version_requirements: !ruby/object:Gem::Requirement
|
|
821
835
|
requirements:
|
|
822
836
|
- - '='
|
|
823
837
|
- !ruby/object:Gem::Version
|
|
824
|
-
version: 0.31.0
|
|
838
|
+
version: 0.31.0
|
|
825
839
|
description: Adds core features so other engines can hook into the framework.
|
|
826
840
|
email:
|
|
827
841
|
- josepjaume@gmail.com
|
|
@@ -858,6 +872,7 @@ files:
|
|
|
858
872
|
- app/cells/decidim/attachments_link_tab_cell.rb
|
|
859
873
|
- app/cells/decidim/author/avatar.erb
|
|
860
874
|
- app/cells/decidim/author/avatar_image.erb
|
|
875
|
+
- app/cells/decidim/author/badge.erb
|
|
861
876
|
- app/cells/decidim/author/cancelled_on.erb
|
|
862
877
|
- app/cells/decidim/author/comments.erb
|
|
863
878
|
- app/cells/decidim/author/contact.erb
|
|
@@ -2053,6 +2068,7 @@ files:
|
|
|
2053
2068
|
- app/views/decidim/user_activities/index.js.erb
|
|
2054
2069
|
- app/views/decidim/user_group_mailer/notify_deprecation_to_member.html.erb
|
|
2055
2070
|
- app/views/decidim/user_group_mailer/notify_deprecation_to_owner.html.erb
|
|
2071
|
+
- app/views/decidim/user_group_mailer/notify_user_group_patched.html.erb
|
|
2056
2072
|
- app/views/decidim/user_report_mailer/notify.html.erb
|
|
2057
2073
|
- app/views/decidim/user_update_mailer/notify.html.erb
|
|
2058
2074
|
- app/views/decidim/widgets/_data_picker.html.erb
|
|
@@ -2225,6 +2241,7 @@ files:
|
|
|
2225
2241
|
- config/locales/zh-CN.yml
|
|
2226
2242
|
- config/locales/zh-TW.yml
|
|
2227
2243
|
- config/routes.rb
|
|
2244
|
+
- db/data/20251108232118_add_dummy_migration.rb
|
|
2228
2245
|
- db/migrate/20160817115213_devise_create_decidim_users.rb
|
|
2229
2246
|
- db/migrate/20160919104837_create_decidim_organizations.rb
|
|
2230
2247
|
- db/migrate/20160920140207_devise_invitable_add_to_decidim_users.rb
|
|
@@ -2470,6 +2487,7 @@ files:
|
|
|
2470
2487
|
- db/migrate/20250603103953_add_refresh_tokens_enabled_to_doorkeeper_applications.rb
|
|
2471
2488
|
- db/migrate/20250609073104_remove_not_null_on_active_storage_blobs_checksum.active_storage.rb
|
|
2472
2489
|
- db/migrate/20250613122148_remove_hashtag_table_from_core.rb
|
|
2490
|
+
- db/migrate/20250819110800_convert_private_exports_id_to_uuid.rb
|
|
2473
2491
|
- db/seeds.rb
|
|
2474
2492
|
- db/seeds/Exampledocument.pdf
|
|
2475
2493
|
- db/seeds/avatars/001.jpg
|
|
@@ -3032,6 +3050,7 @@ files:
|
|
|
3032
3050
|
- lib/tasks/upgrade/decidim_change_valuator_tasks.rake
|
|
3033
3051
|
- lib/tasks/upgrade/decidim_content_blocks_tasks.rake
|
|
3034
3052
|
- lib/tasks/upgrade/decidim_deduplicate_likes.rake
|
|
3053
|
+
- lib/tasks/upgrade/decidim_fix_action_log.rake
|
|
3035
3054
|
- lib/tasks/upgrade/decidim_fix_nickname_uniqueness.rake
|
|
3036
3055
|
- lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
|
|
3037
3056
|
- lib/tasks/upgrade/decidim_migrate_wysiwyg_content.rake
|