decidim-core 0.27.3 → 0.27.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/cells/decidim/activities_cell.rb +1 -7
- data/app/cells/decidim/collapsible_list/show.erb +1 -1
- data/app/cells/decidim/content_blocks/last_activity_cell.rb +1 -4
- data/app/cells/decidim/tags_cell.rb +13 -2
- data/app/cells/decidim/upload_modal/modal.erb +4 -1
- data/app/cells/decidim/upload_modal_cell.rb +8 -4
- data/app/cells/decidim/version_cell.rb +1 -1
- data/app/cells/decidim/versions_list_cell.rb +1 -1
- data/app/commands/decidim/create_omniauth_registration.rb +2 -2
- data/app/commands/decidim/endorse_resource.rb +2 -0
- data/app/commands/decidim/search.rb +1 -1
- data/app/commands/decidim/unendorse_resource.rb +1 -1
- data/app/controllers/concerns/decidim/force_authentication.rb +6 -2
- data/app/controllers/decidim/authorization_modals_controller.rb +1 -1
- data/app/controllers/decidim/devise/registrations_controller.rb +1 -1
- data/app/controllers/decidim/last_activities_controller.rb +1 -7
- data/app/controllers/decidim/links_controller.rb +1 -1
- data/app/controllers/decidim/searches_controller.rb +1 -1
- data/app/controllers/decidim/short_links_controller.rb +1 -1
- data/app/controllers/decidim/user_timeline_controller.rb +1 -1
- data/app/forms/decidim/account_form.rb +1 -1
- data/app/forms/decidim/notifications_settings_form.rb +1 -9
- data/app/forms/decidim/registration_form.rb +1 -1
- data/app/forms/url_validator.rb +1 -1
- data/app/helpers/decidim/decidim_form_helper.rb +1 -0
- data/app/helpers/decidim/layout_helper.rb +4 -1
- data/app/helpers/decidim/omniauth_helper.rb +2 -0
- data/app/helpers/decidim/resource_helper.rb +2 -0
- data/app/helpers/decidim/short_link_helper.rb +1 -1
- data/app/jobs/decidim/download_your_data_export_job.rb +2 -1
- data/app/jobs/decidim/open_data_job.rb +2 -0
- data/app/models/decidim/organization.rb +6 -0
- data/app/models/decidim/user.rb +13 -3
- data/app/packs/images/decidim/icons.svg +1 -1
- data/app/packs/images/decidim/vendor/social-share-button/x.svg +6 -0
- data/app/packs/src/decidim/autocomplete.js +11 -2
- data/app/packs/src/decidim/data_picker.js +1 -0
- data/app/packs/src/decidim/direct_uploads/upload_field.js +6 -4
- data/app/packs/src/decidim/direct_uploads/upload_modal.js +10 -8
- data/app/packs/src/decidim/direct_uploads/uploader.js +4 -1
- data/app/packs/src/decidim/geocoding/attach_input.js +4 -1
- data/app/packs/src/decidim/geocoding/provider/here.js +17 -21
- data/app/packs/src/decidim/geocoding/provider/photon.js +1 -1
- data/app/packs/src/decidim/input_character_counter.js +1 -1
- data/app/packs/src/decidim/map/controller/drag_marker.js +0 -2
- data/app/packs/src/decidim/map/controller/markers.js +0 -1
- data/app/packs/src/decidim/map/controller/static.js +0 -1
- data/app/packs/src/decidim/map/controller.js +0 -2
- data/app/packs/src/decidim/map/factory.js +4 -1
- data/app/packs/src/decidim/map/icon.js +0 -1
- data/app/packs/src/decidim/map/legacy.js +0 -1
- data/app/packs/src/decidim/map/provider/default.js +2 -0
- data/app/packs/src/decidim/map/provider/here.js +2 -1
- data/app/packs/src/decidim/utilities/text.js +17 -0
- data/app/packs/stylesheets/decidim/_variables.scss +1 -1
- data/app/packs/stylesheets/decidim/vendor/_social_share_button.scss +4 -0
- data/app/queries/decidim/last_activity.rb +96 -0
- data/app/queries/decidim/metrics/users_metric_manage.rb +6 -6
- data/app/queries/decidim/public_activities.rb +5 -57
- data/app/services/decidim/email_notification_generator.rb +7 -1
- data/app/services/decidim/send_push_notification.rb +1 -1
- data/app/uploaders/decidim/application_uploader.rb +2 -0
- data/app/views/decidim/notifications_settings/show.html.erb +1 -1
- data/app/views/decidim/scopes/_scopes_picker_input.html.erb +1 -1
- data/app/views/decidim/searches/_filters.html.erb +3 -1
- data/app/views/decidim/shared/_share_modal.html.erb +1 -1
- data/app/views/decidim/shared/participatory_space_filters/_filters.html.erb +1 -1
- data/app/views/layouts/decidim/_social_media_links.html.erb +2 -2
- data/config/environment.rb +3 -0
- data/config/locales/ar.yml +11 -17
- data/config/locales/bg.yml +8 -16
- data/config/locales/ca.yml +19 -14
- data/config/locales/cs.yml +31 -11
- data/config/locales/de.yml +113 -46
- data/config/locales/el.yml +157 -13
- data/config/locales/en.yml +6 -1
- data/config/locales/eo.yml +5 -3
- data/config/locales/es-MX.yml +16 -11
- data/config/locales/es-PY.yml +18 -13
- data/config/locales/es.yml +17 -12
- data/config/locales/eu.yml +494 -345
- data/config/locales/fi-plain.yml +29 -3
- data/config/locales/fi.yml +19 -14
- data/config/locales/fr-CA.yml +16 -11
- data/config/locales/fr.yml +17 -12
- data/config/locales/ga-IE.yml +9 -5
- data/config/locales/gl.yml +10 -20
- data/config/locales/hu.yml +46 -18
- data/config/locales/id-ID.yml +12 -19
- data/config/locales/is-IS.yml +7 -3
- data/config/locales/it.yml +14 -10
- data/config/locales/ja.yml +39 -21
- data/config/locales/kaa.yml +10 -0
- data/config/locales/lb.yml +16 -12
- data/config/locales/lt.yml +57 -9
- data/config/locales/lv.yml +8 -16
- data/config/locales/nl.yml +8 -8
- data/config/locales/no.yml +15 -11
- data/config/locales/pl.yml +24 -6
- data/config/locales/pt-BR.yml +164 -7
- data/config/locales/pt.yml +12 -8
- data/config/locales/ro-RO.yml +8 -7
- data/config/locales/ru.yml +6 -17
- data/config/locales/sk.yml +21 -19
- data/config/locales/sl.yml +0 -5
- data/config/locales/sq-AL.yml +1 -0
- data/config/locales/sr-CS.yml +8 -0
- data/config/locales/sv.yml +34 -16
- data/config/locales/th-TH.yml +1 -0
- data/config/locales/tr-TR.yml +21 -12
- data/config/locales/uk.yml +5 -14
- data/config/locales/zh-CN.yml +10 -7
- data/config/locales/zh-TW.yml +17 -9
- data/db/migrate/20181030090144_destroy_deleted_users_follows.rb +1 -1
- data/db/migrate/20181204110723_remove_following_users_count_from_users.rb +11 -2
- data/db/migrate/20181214101250_add_notification_types_to_users.rb +6 -1
- data/db/migrate/20190412131728_fix_user_names.rb +9 -2
- data/db/migrate/20200211173227_add_direct_message_types_to_users.rb +6 -1
- data/db/migrate/20210302150803_invalidate_all_sessions_for_deleted_users.rb +10 -3
- data/db/migrate/20210310120640_add_followable_counter_cache_to_users.rb +13 -3
- data/db/migrate/20231027142329_change_default_value_for_decidim_endorsements.rb +11 -0
- data/db/seeds.rb +5 -3
- data/lib/decidim/core/test/factories.rb +2 -1
- data/lib/decidim/core/test/shared_examples/comments_examples.rb +24 -0
- data/lib/decidim/core/test/shared_examples/errors.rb +2 -0
- data/lib/decidim/core/test/shared_examples/map_examples.rb +4 -1
- data/lib/decidim/core/version.rb +1 -1
- data/lib/decidim/core.rb +18 -1
- data/lib/decidim/endorsable.rb +1 -1
- data/lib/decidim/exporters.rb +10 -1
- data/lib/decidim/form_builder.rb +7 -13
- data/lib/decidim/has_category.rb +2 -2
- data/lib/tasks/upgrade/decidim_deduplicate_endorsements.rake +53 -0
- data/lib/tasks/upgrade/decidim_fix_short_url_resolver.rake +22 -0
- data/lib/tasks/upgrade/decidim_user_moderation.rake +14 -0
- metadata +22 -12
@@ -0,0 +1,53 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
namespace :decidim do
|
4
|
+
namespace :upgrade do
|
5
|
+
desc "Remove duplicated endorsements"
|
6
|
+
task fix_duplicate_endorsements: :environment do
|
7
|
+
logger = Logger.new($stdout)
|
8
|
+
logger.info("Removing duplicate endorsements...")
|
9
|
+
has_count = 0
|
10
|
+
|
11
|
+
columns = [:resource_type, :resource_id, :decidim_author_type, :decidim_author_id, :decidim_user_group_id]
|
12
|
+
|
13
|
+
get_duplicates(columns).each do |issue|
|
14
|
+
while row_count(issue) > 1
|
15
|
+
find_next(issue)&.destroy
|
16
|
+
has_count += 1
|
17
|
+
logger.info("Removed duplicate endorsement for #{issue.resource_type} #{issue.resource_id}")
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
logger.info("Patch remaining endorsements.")
|
22
|
+
Decidim::Endorsement.where(decidim_user_group_id: nil).update(decidim_user_group_id: 0)
|
23
|
+
logger.info("Process terminated, #{has_count} endorsements have been removed.")
|
24
|
+
logger.info("Done")
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
def get_duplicates(*columns)
|
30
|
+
Decidim::Endorsement.select("#{columns.join(",")}, COUNT(*)").group(columns).having("COUNT(*) > 1")
|
31
|
+
end
|
32
|
+
|
33
|
+
def row_count(issue)
|
34
|
+
Decidim::Endorsement.where(
|
35
|
+
resource_type: issue.resource_type,
|
36
|
+
resource_id: issue.resource_id,
|
37
|
+
decidim_author_type: issue.decidim_author_type,
|
38
|
+
decidim_author_id: issue.decidim_author_id,
|
39
|
+
decidim_user_group_id: issue.decidim_user_group_id
|
40
|
+
).count
|
41
|
+
end
|
42
|
+
|
43
|
+
def find_next(issue)
|
44
|
+
Decidim::Endorsement.find_by(
|
45
|
+
resource_type: issue.resource_type,
|
46
|
+
resource_id: issue.resource_id,
|
47
|
+
decidim_author_type: issue.decidim_author_type,
|
48
|
+
decidim_author_id: issue.decidim_author_id,
|
49
|
+
decidim_user_group_id: issue.decidim_user_group_id
|
50
|
+
)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
namespace :decidim do
|
4
|
+
namespace :upgrade do
|
5
|
+
desc "Fix wrongly mapped short links components"
|
6
|
+
task fix_short_urls: :environment do
|
7
|
+
logger = Logger.new($stdout)
|
8
|
+
logger.info("Fixing wrongly mapped short links...")
|
9
|
+
|
10
|
+
Decidim::ShortLink.where(target_type: "Decidim::Component").find_each do |short_url|
|
11
|
+
real_component = Decidim::Component.find_by(id: short_url.target_id)
|
12
|
+
|
13
|
+
next if real_component.nil?
|
14
|
+
next if short_url.mounted_engine_name == real_component.mounted_engine
|
15
|
+
|
16
|
+
logger.info("Fixing #{short_url.identifier}: #{short_url.mounted_engine_name} to #{real_component.mounted_engine}")
|
17
|
+
short_url.update(mounted_engine_name: real_component.mounted_engine)
|
18
|
+
end
|
19
|
+
logger.info("Done fixing wrongly mapped short links.")
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
namespace :decidim do
|
4
|
+
namespace :upgrade do
|
5
|
+
namespace :moderation do
|
6
|
+
desc "Add all blocked users to global moderation panel"
|
7
|
+
task fix_blocked_user_panel: :environment do
|
8
|
+
Decidim::UserBlock.find_each do |blocked_user|
|
9
|
+
Decidim::UserModeration.where(user: blocked_user.user).first_or_create!
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
metadata
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: decidim-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.27.
|
4
|
+
version: 0.27.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josep Jaume Rey Peroy
|
8
8
|
- Marc Riera Casals
|
9
9
|
- Oriol Gual Oliva
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2023-
|
13
|
+
date: 2023-12-20 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: active_link_to
|
@@ -324,14 +324,14 @@ dependencies:
|
|
324
324
|
requirements:
|
325
325
|
- - "~>"
|
326
326
|
- !ruby/object:Gem::Version
|
327
|
-
version: 2.
|
327
|
+
version: 2.19.0
|
328
328
|
type: :runtime
|
329
329
|
prerelease: false
|
330
330
|
version_requirements: !ruby/object:Gem::Requirement
|
331
331
|
requirements:
|
332
332
|
- - "~>"
|
333
333
|
- !ruby/object:Gem::Version
|
334
|
-
version: 2.
|
334
|
+
version: 2.19.0
|
335
335
|
- !ruby/object:Gem::Dependency
|
336
336
|
name: mime-types
|
337
337
|
requirement: !ruby/object:Gem::Requirement
|
@@ -740,28 +740,28 @@ dependencies:
|
|
740
740
|
requirements:
|
741
741
|
- - '='
|
742
742
|
- !ruby/object:Gem::Version
|
743
|
-
version: 0.27.
|
743
|
+
version: 0.27.5
|
744
744
|
type: :runtime
|
745
745
|
prerelease: false
|
746
746
|
version_requirements: !ruby/object:Gem::Requirement
|
747
747
|
requirements:
|
748
748
|
- - '='
|
749
749
|
- !ruby/object:Gem::Version
|
750
|
-
version: 0.27.
|
750
|
+
version: 0.27.5
|
751
751
|
- !ruby/object:Gem::Dependency
|
752
752
|
name: decidim-dev
|
753
753
|
requirement: !ruby/object:Gem::Requirement
|
754
754
|
requirements:
|
755
755
|
- - '='
|
756
756
|
- !ruby/object:Gem::Version
|
757
|
-
version: 0.27.
|
757
|
+
version: 0.27.5
|
758
758
|
type: :development
|
759
759
|
prerelease: false
|
760
760
|
version_requirements: !ruby/object:Gem::Requirement
|
761
761
|
requirements:
|
762
762
|
- - '='
|
763
763
|
- !ruby/object:Gem::Version
|
764
|
-
version: 0.27.
|
764
|
+
version: 0.27.5
|
765
765
|
description: Adds core features so other engines can hook into the framework.
|
766
766
|
email:
|
767
767
|
- josepjaume@gmail.com
|
@@ -1395,6 +1395,7 @@ files:
|
|
1395
1395
|
- app/packs/images/decidim/vendor/social-share-button/wechat.svg
|
1396
1396
|
- app/packs/images/decidim/vendor/social-share-button/weibo.svg
|
1397
1397
|
- app/packs/images/decidim/vendor/social-share-button/whatsapp.svg
|
1398
|
+
- app/packs/images/decidim/vendor/social-share-button/x.svg
|
1398
1399
|
- app/packs/images/decidim/vendor/social-share-button/xing.svg
|
1399
1400
|
- app/packs/src/decidim/account_form.js
|
1400
1401
|
- app/packs/src/decidim/ajax_modals.js
|
@@ -1494,6 +1495,7 @@ files:
|
|
1494
1495
|
- app/packs/src/decidim/sw/sw.js
|
1495
1496
|
- app/packs/src/decidim/tooltip_keep_on_hover.js
|
1496
1497
|
- app/packs/src/decidim/user_registrations.js
|
1498
|
+
- app/packs/src/decidim/utilities/text.js
|
1497
1499
|
- app/packs/src/decidim/vendor/foundation-datepicker.js
|
1498
1500
|
- app/packs/src/decidim/vendor/image-resize.min.js
|
1499
1501
|
- app/packs/src/decidim/vendor/image-upload.min.js
|
@@ -1701,6 +1703,7 @@ files:
|
|
1701
1703
|
- app/presenters/decidim/user_group_presenter.rb
|
1702
1704
|
- app/presenters/decidim/user_presenter.rb
|
1703
1705
|
- app/presenters/decidim/validation_errors_presenter.rb
|
1706
|
+
- app/queries/decidim/last_activity.rb
|
1704
1707
|
- app/queries/decidim/messaging/user_conversations.rb
|
1705
1708
|
- app/queries/decidim/metric_manage.rb
|
1706
1709
|
- app/queries/decidim/metric_measure.rb
|
@@ -1997,6 +2000,7 @@ files:
|
|
1997
2000
|
- app/views/layouts/decidim/widget.html.erb
|
1998
2001
|
- config/assets.rb
|
1999
2002
|
- config/brakeman.ignore
|
2003
|
+
- config/environment.rb
|
2000
2004
|
- config/initializers/active_support.rb
|
2001
2005
|
- config/initializers/browser.rb
|
2002
2006
|
- config/initializers/carrierwave.rb
|
@@ -2071,9 +2075,11 @@ files:
|
|
2071
2075
|
- config/locales/sk.yml
|
2072
2076
|
- config/locales/sl.yml
|
2073
2077
|
- config/locales/so-SO.yml
|
2078
|
+
- config/locales/sq-AL.yml
|
2074
2079
|
- config/locales/sr-CS.yml
|
2075
2080
|
- config/locales/sv.yml
|
2076
2081
|
- config/locales/sw-KE.yml
|
2082
|
+
- config/locales/th-TH.yml
|
2077
2083
|
- config/locales/ti-ER.yml
|
2078
2084
|
- config/locales/tr-TR.yml
|
2079
2085
|
- config/locales/uk.yml
|
@@ -2291,6 +2297,7 @@ files:
|
|
2291
2297
|
- db/migrate/20220427142214_drop_emails_on_notifications_flag_from_user.rb
|
2292
2298
|
- db/migrate/20220518094535_add_previous_passwords_to_users.rb
|
2293
2299
|
- db/migrate/20220524195530_create_decidim_short_links.rb
|
2300
|
+
- db/migrate/20231027142329_change_default_value_for_decidim_endorsements.rb
|
2294
2301
|
- db/seeds.rb
|
2295
2302
|
- db/seeds/homepage_image.jpg
|
2296
2303
|
- lib/decidim/action_authorization.rb
|
@@ -2683,13 +2690,16 @@ files:
|
|
2683
2690
|
- lib/tasks/decidim_reminders_tasks.rake
|
2684
2691
|
- lib/tasks/decidim_tasks.rake
|
2685
2692
|
- lib/tasks/decidim_webpacker_tasks.rake
|
2693
|
+
- lib/tasks/upgrade/decidim_deduplicate_endorsements.rake
|
2686
2694
|
- lib/tasks/upgrade/decidim_fix_nickname_uniqueness.rake
|
2695
|
+
- lib/tasks/upgrade/decidim_fix_short_url_resolver.rake
|
2687
2696
|
- lib/tasks/upgrade/decidim_moderation_tasks.rake
|
2697
|
+
- lib/tasks/upgrade/decidim_user_moderation.rake
|
2688
2698
|
homepage: https://github.com/decidim/decidim
|
2689
2699
|
licenses:
|
2690
2700
|
- AGPL-3.0
|
2691
2701
|
metadata: {}
|
2692
|
-
post_install_message:
|
2702
|
+
post_install_message:
|
2693
2703
|
rdoc_options: []
|
2694
2704
|
require_paths:
|
2695
2705
|
- lib
|
@@ -2704,8 +2714,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
2704
2714
|
- !ruby/object:Gem::Version
|
2705
2715
|
version: '0'
|
2706
2716
|
requirements: []
|
2707
|
-
rubygems_version: 3.
|
2708
|
-
signing_key:
|
2717
|
+
rubygems_version: 3.4.22
|
2718
|
+
signing_key:
|
2709
2719
|
specification_version: 4
|
2710
2720
|
summary: The core of the Decidim framework.
|
2711
2721
|
test_files: []
|