decidim-core 0.30.0.rc3 → 0.30.1
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/address/show.erb +3 -3
- data/app/cells/decidim/author/show.erb +1 -1
- data/app/cells/decidim/content_blocks/participatory_space_extra_data/extra_data.erb +2 -2
- data/app/cells/decidim/participatory_space_dropdown_metadata/metadata.erb +4 -4
- data/app/cells/decidim/participatory_space_dropdown_metadata/show.erb +5 -3
- data/app/commands/decidim/create_report.rb +6 -7
- data/app/commands/decidim/invite_user.rb +1 -1
- data/app/commands/decidim/search.rb +14 -0
- data/app/controllers/concerns/decidim/participatory_space_context.rb +4 -1
- data/app/controllers/decidim/reports_controller.rb +7 -2
- data/app/forms/decidim/account_form.rb +4 -1
- data/app/forms/decidim/ephemeral_user_form.rb +1 -1
- data/app/forms/decidim/omniauth_registration_form.rb +1 -1
- data/app/forms/decidim/registration_form.rb +1 -1
- data/app/helpers/decidim/menu_helper.rb +2 -2
- data/app/helpers/decidim/paginate_helper.rb +1 -1
- data/app/helpers/decidim/tooltip_helper.rb +4 -1
- data/app/mailers/decidim/notifications_digest_mailer.rb +7 -1
- data/app/mailers/decidim/reported_mailer.rb +18 -2
- data/app/models/decidim/action_log.rb +1 -9
- data/app/packs/src/decidim/datepicker/datepicker_functions.js +3 -3
- data/app/packs/src/decidim/index.js +4 -2
- data/app/packs/src/decidim/input_character_counter.js +1 -1
- data/app/packs/stylesheets/decidim/_cards.scss +1 -1
- data/app/packs/stylesheets/decidim/_content_blocks.scss +4 -0
- data/app/packs/stylesheets/decidim/_header.scss +60 -37
- data/app/packs/stylesheets/decidim/resource_history.scss +14 -4
- data/app/permissions/decidim/default_permissions.rb +2 -0
- data/app/presenters/decidim/log/user_presenter.rb +1 -0
- data/app/presenters/decidim/notification_to_mailer_presenter.rb +7 -3
- data/app/presenters/decidim/user_presenter.rb +1 -1
- data/app/queries/decidim/last_activity.rb +25 -0
- data/app/services/decidim/base_diff_renderer.rb +2 -0
- data/app/views/decidim/messaging/conversations/_reply_form.html.erb +1 -2
- data/app/views/decidim/messaging/conversations/_start.html.erb +1 -1
- data/app/views/decidim/reported_mailer/hidden_automatically.html.erb +25 -0
- data/app/views/decidim/reported_mailer/hidden_manually.html.erb +25 -0
- data/app/views/decidim/reported_mailer/report.html.erb +1 -1
- data/app/views/decidim/searches/_count.html.erb +1 -1
- data/app/views/decidim/searches/_filters.html.erb +40 -38
- data/app/views/decidim/shared/_results_per_page.html.erb +1 -1
- data/app/views/kaminari/decidim/_page.html.erb +1 -1
- data/app/views/kaminari/decidim/_paginator.html.erb +1 -1
- data/app/views/layouts/decidim/_logo.html.erb +2 -2
- data/app/views/layouts/decidim/footer/_main_legal.html.erb +1 -1
- data/app/views/layouts/decidim/header/_menu_breadcrumb_main_dropdown_desktop.html.erb +5 -11
- data/app/views/layouts/decidim/header/_menu_breadcrumb_mobile_tablet.html.erb +5 -5
- data/config/locales/ar.yml +3 -10
- data/config/locales/bg.yml +2 -9
- data/config/locales/bs-BA.yml +2 -0
- data/config/locales/ca-IT.yml +2411 -0
- data/config/locales/ca.yml +36 -3
- data/config/locales/cs.yml +33 -14
- data/config/locales/de.yml +39 -15
- data/config/locales/el.yml +2 -9
- data/config/locales/en.yml +34 -1
- data/config/locales/es-MX.yml +38 -5
- data/config/locales/es-PY.yml +38 -5
- data/config/locales/es.yml +35 -2
- data/config/locales/eu.yml +68 -35
- data/config/locales/fi-plain.yml +4 -18
- data/config/locales/fi.yml +4 -18
- data/config/locales/fr-CA.yml +30 -12
- data/config/locales/fr.yml +29 -11
- data/config/locales/ga-IE.yml +2 -0
- data/config/locales/gl.yml +3 -6
- data/config/locales/hu.yml +2 -9
- data/config/locales/id-ID.yml +2 -7
- data/config/locales/is-IS.yml +0 -5
- data/config/locales/it.yml +12 -11
- data/config/locales/ja.yml +87 -23
- data/config/locales/lb.yml +5 -8
- data/config/locales/lt.yml +0 -7
- data/config/locales/lv.yml +2 -7
- data/config/locales/nl.yml +2 -5
- data/config/locales/no.yml +2 -5
- data/config/locales/pl.yml +2 -9
- data/config/locales/pt-BR.yml +3 -10
- data/config/locales/pt.yml +2 -5
- data/config/locales/ro-RO.yml +165 -7
- data/config/locales/ru.yml +0 -5
- data/config/locales/sk.yml +2 -7
- data/config/locales/sr-CS.yml +2 -0
- data/config/locales/sv.yml +54 -12
- data/config/locales/tr-TR.yml +3 -8
- data/config/locales/uk.yml +0 -5
- data/config/locales/zh-CN.yml +2 -7
- data/config/locales/zh-TW.yml +2 -7
- data/db/migrate/20171212103803_create_unique_nicknames.rb +1 -1
- data/db/migrate/20180221101934_fix_nickname_index.rb +1 -1
- data/db/migrate/20180706104107_add_nickname_to_managed_users.rb +1 -1
- data/db/migrate/20181001124950_move_users_groups_to_users_table.rb +1 -1
- data/db/migrate/20190412131728_fix_user_names.rb +1 -1
- data/lib/decidim/asset_router/storage.rb +7 -2
- data/lib/decidim/attributes/time_with_zone.rb +5 -1
- data/lib/decidim/content_parsers/blob_parser.rb +10 -8
- data/lib/decidim/core/test/factories.rb +12 -0
- data/lib/decidim/core/test/shared_examples/map_examples.rb +2 -2
- data/lib/decidim/core/test/shared_examples/reports_examples.rb +8 -15
- data/lib/decidim/core/test/shared_examples/uncommentable_component_examples.rb +26 -0
- data/lib/decidim/core/test/shared_examples/versions_controller_examples.rb +26 -0
- data/lib/decidim/core/version.rb +1 -1
- data/lib/decidim/moderation_tools.rb +14 -8
- data/lib/decidim/nicknamizable.rb +6 -9
- data/lib/decidim/participatory_space_user.rb +1 -3
- data/lib/decidim/private_download_helper.rb +3 -3
- data/lib/decidim/reportable.rb +6 -2
- data/lib/decidim/translatable_attributes.rb +5 -1
- data/lib/tasks/upgrade/clean.rake +9 -1
- data/lib/tasks/upgrade/decidim_fix_nickname_uniqueness.rake +4 -4
- data/lib/tasks/upgrade/migrations.rake +2 -0
- metadata +9 -8
- data/app/views/decidim/reported_mailer/hide.html.erb +0 -9
- data/lib/tasks/upgrade/clean_hidden_resources.rake +0 -33
@@ -37,9 +37,7 @@ module Decidim
|
|
37
37
|
raise "Not implemented"
|
38
38
|
end
|
39
39
|
|
40
|
-
def self.ransackable_attributes(
|
41
|
-
return [] unless auth_object&.admin?
|
42
|
-
|
40
|
+
def self.ransackable_attributes(_auth_object = nil)
|
43
41
|
%w(name nickname email invitation_accepted_at last_sign_in_at role)
|
44
42
|
end
|
45
43
|
|
@@ -2,10 +2,10 @@
|
|
2
2
|
|
3
3
|
module Decidim
|
4
4
|
module PrivateDownloadHelper
|
5
|
-
def attach_archive(export_data,
|
5
|
+
def attach_archive(export_data, file_name, user, export_type = nil)
|
6
6
|
private_exports = user.private_exports.build
|
7
|
-
private_exports.export_type =
|
8
|
-
private_exports.file.attach(io: StringIO.open(FileZipper.new(export_data.filename(
|
7
|
+
private_exports.export_type = export_type || file_name
|
8
|
+
private_exports.file.attach(io: StringIO.open(FileZipper.new(export_data.filename(file_name), export_data.read).zip), filename: "#{file_name}.zip")
|
9
9
|
private_exports.expires_at = Decidim.download_your_data_expiry_time.from_now
|
10
10
|
private_exports.metadata = {}
|
11
11
|
private_exports.save!
|
data/lib/decidim/reportable.rb
CHANGED
@@ -53,8 +53,12 @@ module Decidim
|
|
53
53
|
# Public: The reported content url
|
54
54
|
#
|
55
55
|
# Returns String
|
56
|
-
def reported_content_url
|
57
|
-
|
56
|
+
def reported_content_url(options = {})
|
57
|
+
if hidden?
|
58
|
+
ResourceLocatorPresenter.new(self).index(options)
|
59
|
+
else
|
60
|
+
ResourceLocatorPresenter.new(self).url(options)
|
61
|
+
end
|
58
62
|
end
|
59
63
|
|
60
64
|
# Public: The collection of attribute names that are considered
|
@@ -62,7 +62,7 @@ module Decidim
|
|
62
62
|
final = super(value)
|
63
63
|
return unless final # Do not set the `nil` values for the parent hash
|
64
64
|
|
65
|
-
final = value_type.serialize(final) if value_type
|
65
|
+
final = value_type.serialize(final) if value_type && !attachment?(final)
|
66
66
|
|
67
67
|
public_send("#{name}=", field.merge(locale => final))
|
68
68
|
end
|
@@ -127,5 +127,9 @@ module Decidim
|
|
127
127
|
locale.to_s == try(:default_locale).to_s ||
|
128
128
|
locale.to_s == try(:current_organization).try(:default_locale).to_s
|
129
129
|
end
|
130
|
+
|
131
|
+
def attachment?(value)
|
132
|
+
value.is_a?(String) && value.include?(ActiveStorage.routes_prefix)
|
133
|
+
end
|
130
134
|
end
|
131
135
|
end
|
@@ -11,7 +11,8 @@ namespace :decidim do
|
|
11
11
|
:"decidim:upgrade:clean:categories",
|
12
12
|
:"decidim:upgrade:clean:action_logs",
|
13
13
|
:"decidim:upgrade:clean:clean_deleted_users",
|
14
|
-
:"decidim:upgrade:clean:fix_blocked_user_notification"
|
14
|
+
:"decidim:upgrade:clean:fix_blocked_user_notification",
|
15
|
+
:"decidim:upgrade:clean:invalid_private_exports"
|
15
16
|
]
|
16
17
|
|
17
18
|
desc "Remove data from deleted users"
|
@@ -140,6 +141,13 @@ namespace :decidim do
|
|
140
141
|
logger.info("===== Updated #{blocked_users} blocked users")
|
141
142
|
end
|
142
143
|
|
144
|
+
desc "Removes all the invalid records from private downloads"
|
145
|
+
task invalid_private_exports: :environment do
|
146
|
+
invalid_private_exports = Decidim::PrivateExport.where("export_type ~ '^survey_user_answers_[0-9a-f]{64}$'")
|
147
|
+
logger.info("=== Removing #{invalid_private_exports.length} private exports")
|
148
|
+
invalid_private_exports.delete_all
|
149
|
+
end
|
150
|
+
|
143
151
|
def logger
|
144
152
|
@logger ||= Logger.new($stdout)
|
145
153
|
end
|
@@ -7,7 +7,7 @@ namespace :decidim do
|
|
7
7
|
logger.info("Fixing user nicknames case...")
|
8
8
|
|
9
9
|
has_changed = []
|
10
|
-
Decidim::
|
10
|
+
Decidim::UserBaseEntity.not_deleted.find_each do |user|
|
11
11
|
user.nickname.downcase!
|
12
12
|
|
13
13
|
begin
|
@@ -15,11 +15,11 @@ namespace :decidim do
|
|
15
15
|
user.save!
|
16
16
|
has_changed << user.id
|
17
17
|
end
|
18
|
-
rescue ActiveRecord::RecordInvalid
|
19
|
-
update_user_nickname(user, Decidim::UserBaseEntity.nicknamize(user.nickname,
|
18
|
+
rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotUnique
|
19
|
+
update_user_nickname(user, Decidim::UserBaseEntity.nicknamize(user.nickname, user.decidim_organization_id))
|
20
20
|
has_changed << user.id
|
21
21
|
rescue ActiveRecord::RecordInvalid # rubocop:disable Lint/DuplicateRescueException
|
22
|
-
logger.warn("User ID (#{
|
22
|
+
logger.warn("User ID (#{user.id}) : #{e}")
|
23
23
|
end
|
24
24
|
end
|
25
25
|
logger.info("Process terminated, #{has_changed.count} users nickname have been updated.")
|
@@ -75,7 +75,9 @@ namespace :decidim do
|
|
75
75
|
end
|
76
76
|
|
77
77
|
new_source = "#{magic_comments}#{inserted_comment}#{source}"
|
78
|
+
|
78
79
|
old_source = File.binread(target_file)
|
80
|
+
old_source = old_source.gsub(/# This file has been modified by `decidim upgrade:migrations` task on (.*)\n/, "")
|
79
81
|
|
80
82
|
return if old_source == new_source
|
81
83
|
|
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.30.
|
4
|
+
version: 0.30.1
|
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-06-17 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: concurrent-ruby
|
@@ -780,28 +780,28 @@ dependencies:
|
|
780
780
|
requirements:
|
781
781
|
- - '='
|
782
782
|
- !ruby/object:Gem::Version
|
783
|
-
version: 0.30.
|
783
|
+
version: 0.30.1
|
784
784
|
type: :development
|
785
785
|
prerelease: false
|
786
786
|
version_requirements: !ruby/object:Gem::Requirement
|
787
787
|
requirements:
|
788
788
|
- - '='
|
789
789
|
- !ruby/object:Gem::Version
|
790
|
-
version: 0.30.
|
790
|
+
version: 0.30.1
|
791
791
|
- !ruby/object:Gem::Dependency
|
792
792
|
name: decidim-dev
|
793
793
|
requirement: !ruby/object:Gem::Requirement
|
794
794
|
requirements:
|
795
795
|
- - '='
|
796
796
|
- !ruby/object:Gem::Version
|
797
|
-
version: 0.30.
|
797
|
+
version: 0.30.1
|
798
798
|
type: :development
|
799
799
|
prerelease: false
|
800
800
|
version_requirements: !ruby/object:Gem::Requirement
|
801
801
|
requirements:
|
802
802
|
- - '='
|
803
803
|
- !ruby/object:Gem::Version
|
804
|
-
version: 0.30.
|
804
|
+
version: 0.30.1
|
805
805
|
description: Adds core features so other engines can hook into the framework.
|
806
806
|
email:
|
807
807
|
- josepjaume@gmail.com
|
@@ -2080,7 +2080,8 @@ files:
|
|
2080
2080
|
- app/views/decidim/pages/show.html.erb
|
2081
2081
|
- app/views/decidim/participatory_space_private_users/_participatory_space_private_user.html.erb
|
2082
2082
|
- app/views/decidim/profiles/show.html.erb
|
2083
|
-
- app/views/decidim/reported_mailer/
|
2083
|
+
- app/views/decidim/reported_mailer/hidden_automatically.html.erb
|
2084
|
+
- app/views/decidim/reported_mailer/hidden_manually.html.erb
|
2084
2085
|
- app/views/decidim/reported_mailer/report.html.erb
|
2085
2086
|
- app/views/decidim/searches/_count.html.erb
|
2086
2087
|
- app/views/decidim/searches/_filters.html.erb
|
@@ -2199,6 +2200,7 @@ files:
|
|
2199
2200
|
- config/locales/bg.yml
|
2200
2201
|
- config/locales/bn-BD.yml
|
2201
2202
|
- config/locales/bs-BA.yml
|
2203
|
+
- config/locales/ca-IT.yml
|
2202
2204
|
- config/locales/ca.yml
|
2203
2205
|
- config/locales/cs-CZ.yml
|
2204
2206
|
- config/locales/cs.yml
|
@@ -3079,7 +3081,6 @@ files:
|
|
3079
3081
|
- lib/tasks/decidim_taxonomies.rake
|
3080
3082
|
- lib/tasks/decidim_webpacker_tasks.rake
|
3081
3083
|
- lib/tasks/upgrade/clean.rake
|
3082
|
-
- lib/tasks/upgrade/clean_hidden_resources.rake
|
3083
3084
|
- lib/tasks/upgrade/decidim_active_storage_migration_tasks.rake
|
3084
3085
|
- lib/tasks/upgrade/decidim_attachments.rake
|
3085
3086
|
- lib/tasks/upgrade/decidim_content_blocks_tasks.rake
|
@@ -1,9 +0,0 @@
|
|
1
|
-
<p class="email-greeting"><%= t(".hello", name: @user.name) %></p>
|
2
|
-
|
3
|
-
<p class="email-instructions">
|
4
|
-
<%= t(".report_html", url: reported_content_url ) %>
|
5
|
-
</p>
|
6
|
-
|
7
|
-
<p class="email-button email-button__cta">
|
8
|
-
<%= link_to t(".manage_moderations"), manage_moderations_url %>
|
9
|
-
</p>
|
@@ -1,33 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
namespace :decidim do
|
4
|
-
namespace :upgrade do
|
5
|
-
namespace :clean do
|
6
|
-
desc "Removes all related resources from hidden resource"
|
7
|
-
task hidden_resources: :environment do
|
8
|
-
logger.info("Removing child resources for hidden parents...")
|
9
|
-
Decidim::Moderation.hidden.find_each do |moderation_for_hidden_resource|
|
10
|
-
reportable = moderation_for_hidden_resource.reportable
|
11
|
-
|
12
|
-
current_user = if Decidim.module_installed?(:ai)
|
13
|
-
reportable.organization.users.find_by!(email: Decidim::Ai::SpamDetection.reporting_user_email)
|
14
|
-
else
|
15
|
-
reportable.organization.admins.first
|
16
|
-
end
|
17
|
-
|
18
|
-
tool = Decidim::ModerationTools.new(reportable, current_user)
|
19
|
-
tool.hide!
|
20
|
-
rescue NameError => e
|
21
|
-
log_error "Could not hide child resources for reportable id #{moderation_for_hidden_resource.id} because: #{e.message}"
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
private
|
26
|
-
|
27
|
-
def log_error(msg)
|
28
|
-
puts msg
|
29
|
-
Rails.logger.error(msg)
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|