decidim-core 0.12.2 → 0.13.0.pre1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/stylesheets/decidim/modules/_order-by.scss +4 -1
- data/app/cells/decidim/author/comments.erb +2 -2
- data/app/cells/decidim/author/date.erb +1 -1
- data/app/cells/decidim/author_cell.rb +22 -38
- data/app/cells/decidim/card_m/authors.erb +9 -0
- data/app/cells/decidim/card_m/status.erb +1 -1
- data/app/cells/decidim/card_m_cell.rb +8 -0
- data/app/cells/decidim/collapsible_authors/show.erb +16 -0
- data/app/cells/decidim/collapsible_authors_cell.rb +32 -0
- data/app/cells/decidim/invitations_toggle/content.erb +1 -0
- data/app/cells/decidim/invitations_toggle/label.erb +1 -0
- data/app/cells/decidim/invitations_toggle_cell.rb +27 -0
- data/app/cells/decidim/toggle/show.erb +8 -0
- data/app/cells/decidim/toggle_cell.rb +42 -0
- data/app/cells/decidim/tos_page/refuse_btn_modal.erb +25 -14
- data/app/commands/decidim/create_omniauth_registration.rb +1 -1
- data/app/commands/decidim/create_registration.rb +1 -1
- data/app/commands/decidim/create_report.rb +10 -10
- data/app/commands/decidim/invite_friends.rb +48 -0
- data/app/commands/decidim/invite_user.rb +4 -2
- data/app/commands/decidim/unsubscribe_settings.rb +3 -3
- data/app/commands/decidim/update_notifications_settings.rb +1 -1
- data/app/controllers/concerns/decidim/needs_tos_accepted.rb +6 -1
- data/app/controllers/decidim/data_portability_controller.rb +55 -0
- data/app/controllers/decidim/devise/invitations_controller.rb +1 -0
- data/app/controllers/decidim/invitations_controller.rb +32 -0
- data/app/controllers/decidim/newsletters_opt_in_controller.rb +31 -0
- data/app/forms/decidim/account_form.rb +1 -1
- data/app/forms/decidim/invitations_form.rb +37 -0
- data/app/forms/decidim/notifications_settings_form.rb +5 -0
- data/app/forms/decidim/omniauth_registration_form.rb +1 -1
- data/app/forms/decidim/registration_form.rb +7 -1
- data/app/helpers/decidim/cells_helper.rb +44 -0
- data/app/jobs/decidim/data_portability_export_job.rb +21 -0
- data/app/jobs/decidim/newsletters_opt_in_job.rb +11 -0
- data/app/mailers/decidim/export_mailer.rb +13 -0
- data/app/mailers/decidim/newsletters_opt_in_mailer.rb +15 -0
- data/app/models/decidim/coauthorship.rb +23 -0
- data/app/models/decidim/follow.rb +10 -0
- data/app/models/decidim/identity.rb +10 -0
- data/app/models/decidim/messaging/conversation.rb +10 -0
- data/app/models/decidim/notification.rb +10 -0
- data/app/models/decidim/participatory_space_private_user.rb +10 -0
- data/app/models/decidim/report.rb +10 -0
- data/app/models/decidim/user.rb +16 -1
- data/app/models/decidim/user_group.rb +9 -0
- data/app/services/decidim/action_authorizer.rb +1 -1
- data/app/uploaders/decidim/avatar_uploader.rb +6 -2
- data/app/uploaders/decidim/data_portability_uploader.rb +19 -0
- data/app/views/decidim/data_portability/export.html.erb +1 -0
- data/app/views/decidim/data_portability/show.html.erb +5 -0
- data/app/views/decidim/devise/invitations/edit.html.erb +1 -1
- data/app/views/decidim/devise/shared/_newsletter_modal.html.erb +13 -13
- data/app/views/decidim/export_mailer/data_portability_export.html.erb +2 -0
- data/app/views/decidim/invitations/index.html.erb +48 -0
- data/app/views/decidim/newsletters_opt_in_mailer/notify.html.erb +23 -0
- data/app/views/decidim/profiles/_user.html.erb +1 -1
- data/app/views/devise/mailer/invite_friend.html.erb +27 -0
- data/app/views/devise/mailer/invite_friend.text.erb +19 -0
- data/app/views/layouts/decidim/_user_menu.html.erb +1 -0
- data/config/locales/ca.yml +68 -2
- data/config/locales/en.yml +73 -3
- data/config/locales/es-PY.yml +67 -1
- data/config/locales/es.yml +67 -1
- data/config/locales/eu.yml +68 -2
- data/config/locales/fi.yml +69 -3
- data/config/locales/fr.yml +136 -70
- data/config/locales/gl.yml +69 -3
- data/config/locales/it.yml +69 -3
- data/config/locales/nl.yml +69 -3
- data/config/locales/pl.yml +69 -3
- data/config/locales/pt-BR.yml +69 -3
- data/config/locales/pt.yml +69 -3
- data/config/locales/ru.yml +45 -2
- data/config/locales/sv.yml +69 -3
- data/config/locales/uk.yml +61 -2
- data/config/routes.rb +10 -0
- data/db/migrate/20171212103803_create_unique_nicknames.rb +1 -1
- data/db/migrate/20180221101934_fix_nickname_index.rb +3 -1
- data/db/migrate/20180427141253_create_coauthorships.rb +13 -0
- data/db/migrate/20180611121852_change_newsletter_notification_type_value.rb +21 -0
- data/lib/decidim/api/authorable_interface.rb +10 -1
- data/lib/decidim/authorable.rb +4 -1
- data/lib/decidim/coauthorable.rb +69 -0
- data/lib/decidim/component_manifest.rb +4 -0
- data/lib/decidim/core.rb +10 -0
- data/lib/decidim/core/engine.rb +5 -0
- data/lib/decidim/core/test.rb +1 -0
- data/lib/decidim/core/test/factories.rb +9 -1
- data/lib/decidim/core/test/shared_examples/coauthorable.rb +111 -0
- data/lib/decidim/core/test/shared_examples/coauthorable_interface_examples.rb +31 -0
- data/lib/decidim/core/test/shared_examples/simple_event.rb +7 -1
- data/lib/decidim/core/version.rb +1 -1
- data/lib/decidim/data_portability.rb +29 -0
- data/lib/decidim/data_portability_file_reader.rb +56 -0
- data/lib/decidim/data_portability_file_zipper.rb +55 -0
- data/lib/decidim/data_portability_serializers.rb +23 -0
- data/lib/decidim/data_portability_serializers/data_portability_conversation_serializer.rb +42 -0
- data/lib/decidim/data_portability_serializers/data_portability_follow_serializer.rb +23 -0
- data/lib/decidim/data_portability_serializers/data_portability_identity_serializer.rb +25 -0
- data/lib/decidim/data_portability_serializers/data_portability_notification_serializer.rb +26 -0
- data/lib/decidim/data_portability_serializers/data_portability_participatory_space_private_user_serializer.rb +25 -0
- data/lib/decidim/data_portability_serializers/data_portability_report_serializer.rb +36 -0
- data/lib/decidim/data_portability_serializers/data_portability_user_group_serializer.rb +21 -0
- data/lib/decidim/data_portability_serializers/data_portability_user_serializer.rb +55 -0
- data/lib/decidim/events.rb +1 -0
- data/lib/decidim/events/coauthor_event.rb +42 -0
- data/lib/decidim/exporters/csv.rb +0 -1
- data/lib/decidim/form_builder.rb +1 -2
- data/lib/decidim/nicknamizable.rb +15 -4
- data/lib/decidim/participable.rb +7 -0
- data/lib/decidim/participatory_space_manifest.rb +4 -0
- data/lib/devise/models/decidim_newsletterable.rb +60 -0
- data/lib/tasks/decidim_tasks.rake +29 -0
- metadata +73 -28
data/lib/decidim/form_builder.rb
CHANGED
@@ -261,8 +261,7 @@ module Decidim
|
|
261
261
|
attribute,
|
262
262
|
options.merge(name: nil,
|
263
263
|
id: "date_field_#{@object_name}_#{attribute}",
|
264
|
-
data: data
|
265
|
-
readonly: true)
|
264
|
+
data: data)
|
266
265
|
)
|
267
266
|
template += @template.hidden_field(@object_name, attribute, value: iso_value)
|
268
267
|
template += error_and_help_text(attribute, options)
|
@@ -26,8 +26,19 @@ module Decidim
|
|
26
26
|
# * Trims length so it fits validation constraints.
|
27
27
|
# * Disambiguates it so it's unique.
|
28
28
|
#
|
29
|
-
|
30
|
-
|
29
|
+
# name - the String to nicknamize
|
30
|
+
# scope - a Hash with extra values to scope the nickname to
|
31
|
+
#
|
32
|
+
# Example to nicknamize a user name, scoped to the organization:
|
33
|
+
#
|
34
|
+
# nicknamize(user_name, organization: current_organization)
|
35
|
+
#
|
36
|
+
def nicknamize(name, scope = {})
|
37
|
+
return unless name
|
38
|
+
disambiguate(
|
39
|
+
name.parameterize(separator: "_")[nickname_length_range],
|
40
|
+
scope
|
41
|
+
)
|
31
42
|
end
|
32
43
|
|
33
44
|
private
|
@@ -36,11 +47,11 @@ module Decidim
|
|
36
47
|
(0...nickname_max_length)
|
37
48
|
end
|
38
49
|
|
39
|
-
def disambiguate(name)
|
50
|
+
def disambiguate(name, scope)
|
40
51
|
candidate = name
|
41
52
|
|
42
53
|
2.step do |n|
|
43
|
-
return candidate unless exists?(nickname: candidate)
|
54
|
+
return candidate unless exists?(scope.merge(nickname: candidate))
|
44
55
|
|
45
56
|
candidate = numbered_variation_of(name, n)
|
46
57
|
end
|
data/lib/decidim/participable.rb
CHANGED
@@ -53,6 +53,13 @@ module Decidim
|
|
53
53
|
admins_query.for(self)
|
54
54
|
end
|
55
55
|
|
56
|
+
# Public: Returns an ActiveRecord::Relation of all the users that can
|
57
|
+
# moderate the space. This is used when notifying of flagged/hidden
|
58
|
+
# content.
|
59
|
+
def moderators
|
60
|
+
admins
|
61
|
+
end
|
62
|
+
|
56
63
|
def allows_steps?
|
57
64
|
respond_to?(:steps)
|
58
65
|
end
|
@@ -24,6 +24,10 @@ module Decidim
|
|
24
24
|
|
25
25
|
attribute :query_type, String, default: "Decidim::Core::ParticipatorySpaceType"
|
26
26
|
|
27
|
+
# An array with the name of the classes that will be exported with
|
28
|
+
# the data portability feature for this component. For example, `Decidim::<MyModule>::<MyClass>``
|
29
|
+
attribute :data_portable_entities, Array, default: []
|
30
|
+
|
27
31
|
# A String with the component's icon. The icon must be stored in the
|
28
32
|
# engine's assets path.
|
29
33
|
attribute :icon, String
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Devise
|
4
|
+
module Models
|
5
|
+
# Newsletterable adds all needed validations to acomplish GDPR standards
|
6
|
+
# in newsletter notification mailing
|
7
|
+
#
|
8
|
+
# Validates that all users with notifications activated have Opt-in in
|
9
|
+
# some time
|
10
|
+
module DecidimNewsletterable
|
11
|
+
GDPR_DATE = Time.zone.parse("2018-05-25 00:00 +02:00")
|
12
|
+
|
13
|
+
def newsletter_opt_in_notify
|
14
|
+
unless newsletter_opt_in_valid?
|
15
|
+
set_newsletter_token!
|
16
|
+
Decidim::NewslettersOptInJob.perform_later(self, newsletter_token)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def newsletter_opt_in_validate
|
21
|
+
set_newsletter_opt_in! if newsletter_notifications_at.blank?
|
22
|
+
end
|
23
|
+
|
24
|
+
protected
|
25
|
+
|
26
|
+
# Checks if Opt-in is valid or not
|
27
|
+
# An user with notifications activated, must have an Opt-in
|
28
|
+
def newsletter_opt_in_valid?
|
29
|
+
newsletter_notifications_at > GDPR_DATE
|
30
|
+
end
|
31
|
+
|
32
|
+
# Fill token value with some random value
|
33
|
+
# Removes opt_int timestamp
|
34
|
+
# Deactivate newsletter notifications
|
35
|
+
def set_newsletter_token
|
36
|
+
self.newsletter_notifications_at = nil
|
37
|
+
self.newsletter_token = SecureRandom.base58(24)
|
38
|
+
end
|
39
|
+
|
40
|
+
# Sets token and Opt-in values & saves
|
41
|
+
def set_newsletter_token!
|
42
|
+
set_newsletter_token
|
43
|
+
save
|
44
|
+
end
|
45
|
+
|
46
|
+
# Fill Opt-in value with current time &
|
47
|
+
# removes any token involved
|
48
|
+
def set_newsletter_opt_in
|
49
|
+
self.newsletter_notifications_at = Time.zone.now
|
50
|
+
self.newsletter_token = ""
|
51
|
+
end
|
52
|
+
|
53
|
+
# Sets Opt-in and token values & saves
|
54
|
+
def set_newsletter_opt_in!
|
55
|
+
set_newsletter_opt_in
|
56
|
+
save
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -81,4 +81,33 @@ namespace :decidim do
|
|
81
81
|
log.info "RightToBeForgotten: --------------- END #{Time.current}"
|
82
82
|
end
|
83
83
|
end
|
84
|
+
|
85
|
+
desc "Check and notify users to update her newsletter notifications settings"
|
86
|
+
task check_users_newsletter_opt_in: :environment do
|
87
|
+
print %(
|
88
|
+
> This will send an email to all the users that have marked the newsletter by default. This should only be run if you were using Decidim before v0.11
|
89
|
+
If you have any doubts regarding this feature, please check the releases notes for this version https://github.com/decidim/decidim/releases/tag/v0.12
|
90
|
+
Are you sure you want to do that? [y/N]: )
|
91
|
+
input = $stdin.gets.chomp
|
92
|
+
if input.casecmp("y").zero?
|
93
|
+
puts %( Continue...)
|
94
|
+
Decidim::User.where("newsletter_notifications_at < ?", Time.zone.parse("2018-05-25 00:00 +02:00")).find_each(&:newsletter_opt_in_notify)
|
95
|
+
else
|
96
|
+
puts %( Execution cancelled...)
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
desc "Deletes the data portability file inside tmp/data-portability folder."
|
101
|
+
task delete_data_portability_files: :environment do
|
102
|
+
puts "DELETE DATA PORTABILITY FILES: -------------- START"
|
103
|
+
path = Decidim::DataPortabilityUploader.new.store_dir
|
104
|
+
Dir.glob(Rails.root.join(path, "*")).each do |filename|
|
105
|
+
next unless File.mtime(filename) < Decidim.data_portability_expiry_time.ago
|
106
|
+
File.delete(filename)
|
107
|
+
puts "------"
|
108
|
+
puts "!! deleting #{filename}"
|
109
|
+
puts "------"
|
110
|
+
end
|
111
|
+
puts "DELETE DATA PORTABILITY FILES: --------------- END"
|
112
|
+
end
|
84
113
|
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.
|
4
|
+
version: 0.13.0.pre1
|
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: 2018-
|
13
|
+
date: 2018-06-28 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: active_link_to
|
@@ -290,6 +290,20 @@ dependencies:
|
|
290
290
|
- - "~>"
|
291
291
|
- !ruby/object:Gem::Version
|
292
292
|
version: '4.8'
|
293
|
+
- !ruby/object:Gem::Dependency
|
294
|
+
name: nobspw
|
295
|
+
requirement: !ruby/object:Gem::Requirement
|
296
|
+
requirements:
|
297
|
+
- - "~>"
|
298
|
+
- !ruby/object:Gem::Version
|
299
|
+
version: 0.4.0
|
300
|
+
type: :runtime
|
301
|
+
prerelease: false
|
302
|
+
version_requirements: !ruby/object:Gem::Requirement
|
303
|
+
requirements:
|
304
|
+
- - "~>"
|
305
|
+
- !ruby/object:Gem::Version
|
306
|
+
version: 0.4.0
|
293
307
|
- !ruby/object:Gem::Dependency
|
294
308
|
name: omniauth
|
295
309
|
requirement: !ruby/object:Gem::Requirement
|
@@ -420,14 +434,14 @@ dependencies:
|
|
420
434
|
requirements:
|
421
435
|
- - "~>"
|
422
436
|
- !ruby/object:Gem::Version
|
423
|
-
version: 5.2
|
437
|
+
version: '5.2'
|
424
438
|
type: :runtime
|
425
439
|
prerelease: false
|
426
440
|
version_requirements: !ruby/object:Gem::Requirement
|
427
441
|
requirements:
|
428
442
|
- - "~>"
|
429
443
|
- !ruby/object:Gem::Version
|
430
|
-
version: 5.2
|
444
|
+
version: '5.2'
|
431
445
|
- !ruby/object:Gem::Dependency
|
432
446
|
name: rails
|
433
447
|
requirement: !ruby/object:Gem::Requirement
|
@@ -504,20 +518,6 @@ dependencies:
|
|
504
518
|
- - "~>"
|
505
519
|
- !ruby/object:Gem::Version
|
506
520
|
version: '1.2'
|
507
|
-
- !ruby/object:Gem::Dependency
|
508
|
-
name: sassc
|
509
|
-
requirement: !ruby/object:Gem::Requirement
|
510
|
-
requirements:
|
511
|
-
- - "~>"
|
512
|
-
- !ruby/object:Gem::Version
|
513
|
-
version: 1.11.0
|
514
|
-
type: :runtime
|
515
|
-
prerelease: false
|
516
|
-
version_requirements: !ruby/object:Gem::Requirement
|
517
|
-
requirements:
|
518
|
-
- - "~>"
|
519
|
-
- !ruby/object:Gem::Version
|
520
|
-
version: 1.11.0
|
521
521
|
- !ruby/object:Gem::Dependency
|
522
522
|
name: sassc-rails
|
523
523
|
requirement: !ruby/object:Gem::Requirement
|
@@ -620,30 +620,30 @@ dependencies:
|
|
620
620
|
name: decidim-api
|
621
621
|
requirement: !ruby/object:Gem::Requirement
|
622
622
|
requirements:
|
623
|
-
- -
|
623
|
+
- - "~>"
|
624
624
|
- !ruby/object:Gem::Version
|
625
|
-
version: 0.
|
625
|
+
version: 0.13.a
|
626
626
|
type: :runtime
|
627
627
|
prerelease: false
|
628
628
|
version_requirements: !ruby/object:Gem::Requirement
|
629
629
|
requirements:
|
630
|
-
- -
|
630
|
+
- - "~>"
|
631
631
|
- !ruby/object:Gem::Version
|
632
|
-
version: 0.
|
632
|
+
version: 0.13.a
|
633
633
|
- !ruby/object:Gem::Dependency
|
634
634
|
name: decidim-dev
|
635
635
|
requirement: !ruby/object:Gem::Requirement
|
636
636
|
requirements:
|
637
|
-
- -
|
637
|
+
- - "~>"
|
638
638
|
- !ruby/object:Gem::Version
|
639
|
-
version: 0.
|
639
|
+
version: 0.13.a
|
640
640
|
type: :development
|
641
641
|
prerelease: false
|
642
642
|
version_requirements: !ruby/object:Gem::Requirement
|
643
643
|
requirements:
|
644
|
-
- -
|
644
|
+
- - "~>"
|
645
645
|
- !ruby/object:Gem::Version
|
646
|
-
version: 0.
|
646
|
+
version: 0.13.a
|
647
647
|
description: Adds core features so other engines can hook into the framework.
|
648
648
|
email:
|
649
649
|
- josepjaume@gmail.com
|
@@ -798,6 +798,7 @@ files:
|
|
798
798
|
- app/cells/decidim/card/show.erb
|
799
799
|
- app/cells/decidim/card_cell.rb
|
800
800
|
- app/cells/decidim/card_m/author.erb
|
801
|
+
- app/cells/decidim/card_m/authors.erb
|
801
802
|
- app/cells/decidim/card_m/badge.erb
|
802
803
|
- app/cells/decidim/card_m/comments_counter.erb
|
803
804
|
- app/cells/decidim/card_m/data.erb
|
@@ -809,6 +810,8 @@ files:
|
|
809
810
|
- app/cells/decidim/card_m/status.erb
|
810
811
|
- app/cells/decidim/card_m/tags.erb
|
811
812
|
- app/cells/decidim/card_m_cell.rb
|
813
|
+
- app/cells/decidim/collapsible_authors/show.erb
|
814
|
+
- app/cells/decidim/collapsible_authors_cell.rb
|
812
815
|
- app/cells/decidim/collapsible_list/show.erb
|
813
816
|
- app/cells/decidim/collapsible_list_cell.rb
|
814
817
|
- app/cells/decidim/fingerprint/show.erb
|
@@ -819,6 +822,9 @@ files:
|
|
819
822
|
- app/cells/decidim/followers_cell.rb
|
820
823
|
- app/cells/decidim/following/show.erb
|
821
824
|
- app/cells/decidim/following_cell.rb
|
825
|
+
- app/cells/decidim/invitations_toggle/content.erb
|
826
|
+
- app/cells/decidim/invitations_toggle/label.erb
|
827
|
+
- app/cells/decidim/invitations_toggle_cell.rb
|
822
828
|
- app/cells/decidim/notifications/show.erb
|
823
829
|
- app/cells/decidim/notifications_cell.rb
|
824
830
|
- app/cells/decidim/progress_bar/show.erb
|
@@ -827,6 +833,8 @@ files:
|
|
827
833
|
- app/cells/decidim/tags/scope.erb
|
828
834
|
- app/cells/decidim/tags/show.erb
|
829
835
|
- app/cells/decidim/tags_cell.rb
|
836
|
+
- app/cells/decidim/toggle/show.erb
|
837
|
+
- app/cells/decidim/toggle_cell.rb
|
830
838
|
- app/cells/decidim/tos_page/announcement.erb
|
831
839
|
- app/cells/decidim/tos_page/refuse_btn_modal.erb
|
832
840
|
- app/cells/decidim/tos_page/sticky_form.erb
|
@@ -840,6 +848,7 @@ files:
|
|
840
848
|
- app/commands/decidim/create_report.rb
|
841
849
|
- app/commands/decidim/delete_follow.rb
|
842
850
|
- app/commands/decidim/destroy_account.rb
|
851
|
+
- app/commands/decidim/invite_friends.rb
|
843
852
|
- app/commands/decidim/invite_user.rb
|
844
853
|
- app/commands/decidim/invite_user_again.rb
|
845
854
|
- app/commands/decidim/messaging/reply_to_conversation.rb
|
@@ -868,6 +877,7 @@ files:
|
|
868
877
|
- app/controllers/decidim/application_controller.rb
|
869
878
|
- app/controllers/decidim/components/base_controller.rb
|
870
879
|
- app/controllers/decidim/cookie_policy_controller.rb
|
880
|
+
- app/controllers/decidim/data_portability_controller.rb
|
871
881
|
- app/controllers/decidim/devise/confirmations_controller.rb
|
872
882
|
- app/controllers/decidim/devise/invitations_controller.rb
|
873
883
|
- app/controllers/decidim/devise/omniauth_registrations_controller.rb
|
@@ -880,9 +890,11 @@ files:
|
|
880
890
|
- app/controllers/decidim/doorkeeper/tokens_controller.rb
|
881
891
|
- app/controllers/decidim/errors_controller.rb
|
882
892
|
- app/controllers/decidim/follows_controller.rb
|
893
|
+
- app/controllers/decidim/invitations_controller.rb
|
883
894
|
- app/controllers/decidim/locales_controller.rb
|
884
895
|
- app/controllers/decidim/messaging/conversations_controller.rb
|
885
896
|
- app/controllers/decidim/newsletters_controller.rb
|
897
|
+
- app/controllers/decidim/newsletters_opt_in_controller.rb
|
886
898
|
- app/controllers/decidim/notifications_controller.rb
|
887
899
|
- app/controllers/decidim/notifications_settings_controller.rb
|
888
900
|
- app/controllers/decidim/own_user_groups_controller.rb
|
@@ -900,6 +912,7 @@ files:
|
|
900
912
|
- app/forms/decidim/delete_account_form.rb
|
901
913
|
- app/forms/decidim/follow_form.rb
|
902
914
|
- app/forms/decidim/form.rb
|
915
|
+
- app/forms/decidim/invitations_form.rb
|
903
916
|
- app/forms/decidim/invite_user_form.rb
|
904
917
|
- app/forms/decidim/messaging/conversation_form.rb
|
905
918
|
- app/forms/decidim/messaging/message_form.rb
|
@@ -914,6 +927,7 @@ files:
|
|
914
927
|
- app/helpers/decidim/attachments_helper.rb
|
915
928
|
- app/helpers/decidim/authorization_form_helper.rb
|
916
929
|
- app/helpers/decidim/card_helper.rb
|
930
|
+
- app/helpers/decidim/cells_helper.rb
|
917
931
|
- app/helpers/decidim/cells_paginate_helper.rb
|
918
932
|
- app/helpers/decidim/component_path_helper.rb
|
919
933
|
- app/helpers/decidim/cookies_helper.rb
|
@@ -947,8 +961,10 @@ files:
|
|
947
961
|
- app/helpers/decidim/view_hooks_helper.rb
|
948
962
|
- app/helpers/decidim/widget_urls_helper.rb
|
949
963
|
- app/jobs/decidim/application_job.rb
|
964
|
+
- app/jobs/decidim/data_portability_export_job.rb
|
950
965
|
- app/jobs/decidim/email_notification_generator_job.rb
|
951
966
|
- app/jobs/decidim/export_job.rb
|
967
|
+
- app/jobs/decidim/newsletters_opt_in_job.rb
|
952
968
|
- app/jobs/decidim/notification_generator_for_recipient_job.rb
|
953
969
|
- app/jobs/decidim/notification_generator_job.rb
|
954
970
|
- app/mailers/concerns/decidim/localised_mailer.rb
|
@@ -957,6 +973,7 @@ files:
|
|
957
973
|
- app/mailers/decidim/export_mailer.rb
|
958
974
|
- app/mailers/decidim/messaging/conversation_mailer.rb
|
959
975
|
- app/mailers/decidim/newsletter_mailer.rb
|
976
|
+
- app/mailers/decidim/newsletters_opt_in_mailer.rb
|
960
977
|
- app/mailers/decidim/notification_mailer.rb
|
961
978
|
- app/mailers/decidim/reported_mailer.rb
|
962
979
|
- app/middleware/decidim/current_organization.rb
|
@@ -969,6 +986,7 @@ files:
|
|
969
986
|
- app/models/decidim/authorization.rb
|
970
987
|
- app/models/decidim/categorization.rb
|
971
988
|
- app/models/decidim/category.rb
|
989
|
+
- app/models/decidim/coauthorship.rb
|
972
990
|
- app/models/decidim/component.rb
|
973
991
|
- app/models/decidim/follow.rb
|
974
992
|
- app/models/decidim/identity.rb
|
@@ -1070,6 +1088,7 @@ files:
|
|
1070
1088
|
- app/uploaders/decidim/attachment_uploader.rb
|
1071
1089
|
- app/uploaders/decidim/avatar_uploader.rb
|
1072
1090
|
- app/uploaders/decidim/banner_image_uploader.rb
|
1091
|
+
- app/uploaders/decidim/data_portability_uploader.rb
|
1073
1092
|
- app/uploaders/decidim/hero_image_uploader.rb
|
1074
1093
|
- app/uploaders/decidim/homepage_image_uploader.rb
|
1075
1094
|
- app/uploaders/decidim/image_uploader.rb
|
@@ -1090,6 +1109,8 @@ files:
|
|
1090
1109
|
- app/views/decidim/application/_documents.html.erb
|
1091
1110
|
- app/views/decidim/application/_photos.html.erb
|
1092
1111
|
- app/views/decidim/cookie_policy/accept.js.erb
|
1112
|
+
- app/views/decidim/data_portability/export.html.erb
|
1113
|
+
- app/views/decidim/data_portability/show.html.erb
|
1093
1114
|
- app/views/decidim/devise/confirmations/new.html.erb
|
1094
1115
|
- app/views/decidim/devise/invitations/edit.html.erb
|
1095
1116
|
- app/views/decidim/devise/omniauth_registrations/new.html.erb
|
@@ -1105,8 +1126,10 @@ files:
|
|
1105
1126
|
- app/views/decidim/doorkeeper/authorizations/new.html.erb
|
1106
1127
|
- app/views/decidim/errors/internal_server_error.html.erb
|
1107
1128
|
- app/views/decidim/errors/not_found.html.erb
|
1129
|
+
- app/views/decidim/export_mailer/data_portability_export.html.erb
|
1108
1130
|
- app/views/decidim/export_mailer/export.html.erb
|
1109
1131
|
- app/views/decidim/follows/update_button.js.erb
|
1132
|
+
- app/views/decidim/invitations/index.html.erb
|
1110
1133
|
- app/views/decidim/messaging/conversation_mailer/new_conversation.html.erb
|
1111
1134
|
- app/views/decidim/messaging/conversation_mailer/new_message.html.erb
|
1112
1135
|
- app/views/decidim/messaging/conversations/_message.html.erb
|
@@ -1121,6 +1144,7 @@ files:
|
|
1121
1144
|
- app/views/decidim/newsletter_mailer/newsletter.html.erb
|
1122
1145
|
- app/views/decidim/newsletters/show.html.erb
|
1123
1146
|
- app/views/decidim/newsletters/unsubscribe.html.erb
|
1147
|
+
- app/views/decidim/newsletters_opt_in_mailer/notify.html.erb
|
1124
1148
|
- app/views/decidim/notification_mailer/event_received.html.erb
|
1125
1149
|
- app/views/decidim/notifications_settings/show.html.erb
|
1126
1150
|
- app/views/decidim/own_user_groups/index.html.erb
|
@@ -1176,6 +1200,8 @@ files:
|
|
1176
1200
|
- app/views/devise/mailer/invite_admin.text.erb
|
1177
1201
|
- app/views/devise/mailer/invite_collaborator.html.erb
|
1178
1202
|
- app/views/devise/mailer/invite_collaborator.text.erb
|
1203
|
+
- app/views/devise/mailer/invite_friend.html.erb
|
1204
|
+
- app/views/devise/mailer/invite_friend.text.erb
|
1179
1205
|
- app/views/devise/mailer/invite_private_user.html.erb
|
1180
1206
|
- app/views/devise/mailer/invite_private_user.text.erb
|
1181
1207
|
- app/views/devise/mailer/organization_admin_invitation_instructions.html.erb
|
@@ -1325,8 +1351,10 @@ files:
|
|
1325
1351
|
- db/migrate/20180308113207_doorkeeper_models.rb
|
1326
1352
|
- db/migrate/20180314085339_rename_maximum_votes_per_proposal_to_threshold_per_proposal.rb
|
1327
1353
|
- db/migrate/20180323102631_change_event_name_and_class_to_rename_to_publish_proposal_event.rb
|
1354
|
+
- db/migrate/20180427141253_create_coauthorships.rb
|
1328
1355
|
- db/migrate/20180508111640_add_tos_version_to_organization.rb
|
1329
1356
|
- db/migrate/20180508111710_add_accepted_tos_version_field_to_users.rb
|
1357
|
+
- db/migrate/20180611121852_change_newsletter_notification_type_value.rb
|
1330
1358
|
- db/migrate/20180613080638_rename_missing_features_to_components.rb
|
1331
1359
|
- db/seeds.rb
|
1332
1360
|
- db/seeds/homepage_image.jpg
|
@@ -1341,6 +1369,7 @@ files:
|
|
1341
1369
|
- lib/decidim/attributes/time_with_zone.rb
|
1342
1370
|
- lib/decidim/authorable.rb
|
1343
1371
|
- lib/decidim/authorization_form_builder.rb
|
1372
|
+
- lib/decidim/coauthorable.rb
|
1344
1373
|
- lib/decidim/component_manifest.rb
|
1345
1374
|
- lib/decidim/component_validator.rb
|
1346
1375
|
- lib/decidim/components.rb
|
@@ -1363,6 +1392,8 @@ files:
|
|
1363
1392
|
- lib/decidim/core/test/shared_examples/authorable.rb
|
1364
1393
|
- lib/decidim/core/test/shared_examples/authorable_interface_examples.rb
|
1365
1394
|
- lib/decidim/core/test/shared_examples/categorizable_interface_examples.rb
|
1395
|
+
- lib/decidim/core/test/shared_examples/coauthorable.rb
|
1396
|
+
- lib/decidim/core/test/shared_examples/coauthorable_interface_examples.rb
|
1366
1397
|
- lib/decidim/core/test/shared_examples/comments_examples.rb
|
1367
1398
|
- lib/decidim/core/test/shared_examples/component_type.rb
|
1368
1399
|
- lib/decidim/core/test/shared_examples/errors.rb
|
@@ -1386,10 +1417,23 @@ files:
|
|
1386
1417
|
- lib/decidim/core/test/shared_examples/simple_event.rb
|
1387
1418
|
- lib/decidim/core/test/shared_examples/user_localised_email_examples.rb
|
1388
1419
|
- lib/decidim/core/version.rb
|
1420
|
+
- lib/decidim/data_portability.rb
|
1421
|
+
- lib/decidim/data_portability_file_reader.rb
|
1422
|
+
- lib/decidim/data_portability_file_zipper.rb
|
1423
|
+
- lib/decidim/data_portability_serializers.rb
|
1424
|
+
- lib/decidim/data_portability_serializers/data_portability_conversation_serializer.rb
|
1425
|
+
- lib/decidim/data_portability_serializers/data_portability_follow_serializer.rb
|
1426
|
+
- lib/decidim/data_portability_serializers/data_portability_identity_serializer.rb
|
1427
|
+
- lib/decidim/data_portability_serializers/data_portability_notification_serializer.rb
|
1428
|
+
- lib/decidim/data_portability_serializers/data_portability_participatory_space_private_user_serializer.rb
|
1429
|
+
- lib/decidim/data_portability_serializers/data_portability_report_serializer.rb
|
1430
|
+
- lib/decidim/data_portability_serializers/data_portability_user_group_serializer.rb
|
1431
|
+
- lib/decidim/data_portability_serializers/data_portability_user_serializer.rb
|
1389
1432
|
- lib/decidim/engine_router.rb
|
1390
1433
|
- lib/decidim/events.rb
|
1391
1434
|
- lib/decidim/events/author_event.rb
|
1392
1435
|
- lib/decidim/events/base_event.rb
|
1436
|
+
- lib/decidim/events/coauthor_event.rb
|
1393
1437
|
- lib/decidim/events/email_event.rb
|
1394
1438
|
- lib/decidim/events/notification_event.rb
|
1395
1439
|
- lib/decidim/events/simple_event.rb
|
@@ -1443,6 +1487,7 @@ files:
|
|
1443
1487
|
- lib/decidim/translatable_attributes.rb
|
1444
1488
|
- lib/decidim/view_hooks.rb
|
1445
1489
|
- lib/decidim/view_model.rb
|
1490
|
+
- lib/devise/models/decidim_newsletterable.rb
|
1446
1491
|
- lib/devise/models/decidim_validatable.rb
|
1447
1492
|
- lib/tasks/decidim_tasks.rake
|
1448
1493
|
- vendor/assets/javascripts/appendAround.js
|
@@ -1495,9 +1540,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1495
1540
|
version: '0'
|
1496
1541
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1497
1542
|
requirements:
|
1498
|
-
- - "
|
1543
|
+
- - ">"
|
1499
1544
|
- !ruby/object:Gem::Version
|
1500
|
-
version:
|
1545
|
+
version: 1.3.1
|
1501
1546
|
requirements: []
|
1502
1547
|
rubyforge_project:
|
1503
1548
|
rubygems_version: 2.7.6
|