decidim-core 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/decidim.js.es6 +2 -0
- data/app/assets/javascripts/decidim/account_form.js.es6 +27 -0
- data/app/assets/javascripts/decidim/editor.js.es6 +9 -2
- data/app/assets/javascripts/decidim/form_filter.component.js.es6 +1 -1
- data/app/assets/javascripts/decidim/form_filter.component.test.js +2 -2
- data/app/assets/javascripts/decidim/history.js.es6 +7 -4
- data/app/commands/decidim/create_registration.rb +2 -1
- data/app/commands/decidim/destroy_account.rb +47 -0
- data/app/constraints/decidim/current_feature.rb +4 -5
- data/app/controllers/concerns/decidim/needs_participatory_process.rb +6 -1
- data/app/controllers/decidim/account_controller.rb +25 -2
- data/app/controllers/decidim/authorizations_controller.rb +2 -2
- data/app/controllers/decidim/pages_controller.rb +4 -2
- data/app/forms/decidim/delete_account_form.rb +8 -0
- data/app/forms/decidim/registration_form.rb +13 -0
- data/app/helpers/decidim/action_authorization_helper.rb +10 -4
- data/app/helpers/decidim/decidim_form_helper.rb +96 -0
- data/app/helpers/decidim/omniauth_helper.rb +1 -1
- data/app/helpers/decidim/resource_helper.rb +3 -36
- data/app/mailers/decidim/reported_mailer.rb +5 -3
- data/app/models/decidim/attachment.rb +1 -1
- data/app/models/decidim/authorization.rb +1 -1
- data/app/models/decidim/categorization.rb +8 -0
- data/app/models/decidim/category.rb +7 -2
- data/app/models/decidim/feature.rb +3 -5
- data/app/models/decidim/identity.rb +0 -1
- data/app/models/decidim/moderation.rb +0 -2
- data/app/models/decidim/participatory_process.rb +4 -2
- data/app/models/decidim/report.rb +1 -1
- data/app/models/decidim/resource_link.rb +1 -2
- data/app/models/decidim/static_page.rb +1 -2
- data/app/models/decidim/user.rb +16 -3
- data/app/models/decidim/user_group.rb +5 -3
- data/app/presenters/decidim/resource_locator_presenter.rb +48 -0
- data/app/services/decidim/authorization_handler.rb +4 -7
- data/app/services/decidim/resource_search.rb +3 -1
- data/app/uploaders/decidim/avatar_uploader.rb +2 -2
- data/app/uploaders/decidim/image_uploader.rb +1 -1
- data/app/uploaders/decidim/official_image_footer_uploader.rb +1 -5
- data/app/uploaders/decidim/official_image_header_uploader.rb +1 -5
- data/app/uploaders/decidim/organization_logo_uploader.rb +1 -1
- data/app/views/decidim/account/delete.html.erb +30 -0
- data/app/views/decidim/devise/shared/_omniauth_buttons.html.erb +2 -2
- data/app/views/decidim/reported_mailer/hide.html.erb +5 -1
- data/app/views/decidim/reported_mailer/report.html.erb +5 -1
- data/app/views/layouts/decidim/user_profile.html.erb +2 -1
- data/config/initializers/devise.rb +9 -9
- data/config/locales/ca.yml +20 -3
- data/config/locales/en.yml +20 -3
- data/config/locales/es.yml +20 -3
- data/config/locales/eu.yml +0 -3
- data/config/locales/fi.yml +0 -2
- data/config/locales/fr.yml +0 -3
- data/config/locales/it.yml +350 -0
- data/config/locales/nl.yml +0 -2
- data/config/routes.rb +5 -1
- data/db/migrate/20160817115213_devise_create_decidim_users.rb +1 -0
- data/db/migrate/20160919104837_create_decidim_organizations.rb +2 -0
- data/db/migrate/20160920140207_devise_invitable_add_to_decidim_users.rb +2 -0
- data/db/migrate/20160920141039_user_belongs_to_organization.rb +2 -0
- data/db/migrate/20160920141151_user_has_roles.rb +2 -0
- data/db/migrate/20161005130108_add_participatory_processes.rb +4 -2
- data/db/migrate/20161005153007_add_description_to_organizations.rb +2 -0
- data/db/migrate/20161006085629_add_confirmable_to_devise.rb +2 -0
- data/db/migrate/20161010085443_add_name_to_users.rb +2 -0
- data/db/migrate/20161010102356_translate_processes.rb +2 -0
- data/db/migrate/20161010131544_add_locale_to_users.rb +2 -0
- data/db/migrate/20161011125616_add_hero_image_to_processes.rb +2 -0
- data/db/migrate/20161011141033_add_banner_image_to_processes.rb +2 -0
- data/db/migrate/20161013134732_add_promoted_flag_to_processes.rb +2 -0
- data/db/migrate/20161017085822_add_participatory_process_steps.rb +4 -2
- data/db/migrate/20161018091013_create_decidim_authorizations.rb +2 -0
- data/db/migrate/20161019072016_add_active_flag_to_step.rb +7 -1
- data/db/migrate/20161020080756_add_position_to_steps.rb +2 -0
- data/db/migrate/20161025125300_add_published_at_to_processes.rb +2 -0
- data/db/migrate/20161107152228_remove_not_null_on_step_position.rb +2 -0
- data/db/migrate/20161108093802_create_decidim_static_pages.rb +2 -0
- data/db/migrate/20161110092735_add_index_for_process_slug_organization.rb +5 -3
- data/db/migrate/20161110105712_create_decidim_features.rb +2 -0
- data/db/migrate/20161116115156_create_attachments.rb +4 -2
- data/db/migrate/20161123085134_add_categories.rb +2 -0
- data/db/migrate/20161130105257_create_decidim_scopes.rb +2 -0
- data/db/migrate/20161209134715_make_organization_description_optional.rb +2 -0
- data/db/migrate/20161213094244_add_avatar_to_users.rb +2 -0
- data/db/migrate/20161214152811_add_logo_to_organizations.rb +2 -0
- data/db/migrate/20170110133113_add_configuration_to_features.rb +2 -0
- data/db/migrate/20170110153807_add_handler_to_organization.rb +2 -0
- data/db/migrate/20170113150627_create_resource_links.rb +2 -0
- data/db/migrate/20170116110851_create_identities.rb +2 -0
- data/db/migrate/20170116135237_loosen_step_requirements.rb +2 -0
- data/db/migrate/20170117142904_add_uniqueness_field_to_authorizations.rb +2 -0
- data/db/migrate/20170119145359_create_user_groups.rb +2 -0
- data/db/migrate/20170119150255_create_user_group_memberships.rb +2 -0
- data/db/migrate/20170119150649_add_show_statistics_to_organization.rb +3 -1
- data/db/migrate/20170120120733_add_user_groups_verified.rb +2 -0
- data/db/migrate/20170123134023_make_attachments_polymorphic.rb +2 -0
- data/db/migrate/20170123140857_add_avatar_to_user_groups.rb +2 -0
- data/db/migrate/20170125135937_rename_attachable_to_attached_to.rb +3 -1
- data/db/migrate/20170125152026_add_weight_to_features.rb +2 -0
- data/db/migrate/20170126151123_add_extra_info_to_processes.rb +6 -4
- data/db/migrate/20170128140553_add_timestamps_to_identities.rb +2 -0
- data/db/migrate/20170130132833_add_favicon_to_decidim_organizations.rb +2 -0
- data/db/migrate/20170131134349_add_action_permissions_to_decidim_features.rb +2 -0
- data/db/migrate/20170202084913_add_comments_and_replies_notifications_to_users.rb +2 -0
- data/db/migrate/20170203150545_add_newsletter_notifications_to_users.rb +2 -0
- data/db/migrate/20170206083118_rename_extra_info_on_processes.rb +2 -0
- data/db/migrate/20170206142116_add_published_at_to_decidim_features.rb +2 -0
- data/db/migrate/20170207091021_add_social_media_handlers_to_organization.rb +2 -0
- data/db/migrate/20170207093048_add_organization_logo_and_url.rb +3 -1
- data/db/migrate/20170213081133_create_decidim_newsletters.rb +2 -0
- data/db/migrate/20170215115407_add_organization_custom_reference.rb +2 -0
- data/db/migrate/20170220110740_remove_steps_short_description.rb +2 -0
- data/db/migrate/20170221094835_add_scopes_to_processes.rb +2 -0
- data/db/migrate/20170228142440_add_participatory_process_groups.rb +2 -0
- data/db/migrate/20170306144354_add_secondary_hosts_to_organizations.rb +2 -0
- data/db/migrate/20170307084957_create_reports.rb +2 -0
- data/db/migrate/20170308091316_create_moderations.rb +2 -0
- data/db/migrate/20170313095436_add_available_authorizations_to_organization.rb +2 -0
- data/db/migrate/20170404132616_change_steps_end_and_start_date_to_date.rb +2 -0
- data/db/migrate/20170405091801_change_decidim_user_email_index_uniqueness.rb +2 -0
- data/db/migrate/20170405094028_add_organization_to_identities.rb +2 -0
- data/db/migrate/20170405094258_change_decidim_identities_provider_uid_index_uniqueness.rb +3 -1
- data/db/migrate/20170529150743_add_rejected_at_to_user_groups.rb +2 -0
- data/db/migrate/20170605140421_add_deleted_fields_to_users.rb +8 -0
- data/db/migrate/20170606102659_set_email_unique_in_organization_conditional.rb +8 -0
- data/db/migrate/20170608142521_add_organization_to_user_groups.rb +14 -0
- data/db/migrate/20170612070905_add_uniqueness_to_name_and_document_number_to_user_groups.rb +8 -0
- data/db/migrate/20170612100253_create_decidim_categorizations.rb +12 -0
- data/db/seeds.rb +10 -8
- data/lib/decidim/authorable.rb +2 -2
- data/lib/decidim/core.rb +1 -1
- data/lib/decidim/core/api/author_interface.rb +6 -0
- data/lib/decidim/core/api/user_group_type.rb +14 -0
- data/lib/decidim/core/api/user_type.rb +10 -0
- data/lib/decidim/core/engine.rb +1 -1
- data/lib/decidim/core/test/factories.rb +12 -0
- data/lib/decidim/core/test/shared_examples/manage_moderations_examples.rb +3 -3
- data/lib/decidim/core/version.rb +2 -2
- data/lib/decidim/feature_manifest.rb +2 -3
- data/lib/decidim/form_builder.rb +3 -2
- data/lib/decidim/has_category.rb +3 -1
- data/lib/decidim/has_scope.rb +5 -2
- data/lib/decidim/query_extensions.rb +2 -2
- data/lib/decidim/reportable.rb +3 -3
- data/lib/decidim/stats_registry.rb +2 -2
- data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.fr.js +14 -0
- data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.it.js +14 -0
- data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.nl.js +14 -0
- metadata +45 -17
- data/app/models/decidim/component.rb +0 -52
data/lib/decidim/has_category.rb
CHANGED
@@ -8,7 +8,9 @@ module Decidim
|
|
8
8
|
extend ActiveSupport::Concern
|
9
9
|
|
10
10
|
included do
|
11
|
-
|
11
|
+
has_one :categorization, as: :categorizable
|
12
|
+
has_one :category, through: :categorization
|
13
|
+
|
12
14
|
validate :category_belongs_to_organization
|
13
15
|
|
14
16
|
private
|
data/lib/decidim/has_scope.rb
CHANGED
@@ -3,12 +3,15 @@
|
|
3
3
|
require "active_support/concern"
|
4
4
|
|
5
5
|
module Decidim
|
6
|
-
# A concern with the features needed when you want a model to
|
6
|
+
# A concern with the features needed when you want a model to have a scope.
|
7
7
|
module HasScope
|
8
8
|
extend ActiveSupport::Concern
|
9
9
|
|
10
10
|
included do
|
11
|
-
belongs_to :scope,
|
11
|
+
belongs_to :scope,
|
12
|
+
foreign_key: "decidim_scope_id",
|
13
|
+
class_name: "Decidim::Scope",
|
14
|
+
optional: true
|
12
15
|
validate :scope_belongs_to_organization
|
13
16
|
|
14
17
|
private
|
@@ -15,7 +15,7 @@ module Decidim
|
|
15
15
|
type !types[ProcessType]
|
16
16
|
description "Lists all processes."
|
17
17
|
|
18
|
-
resolve
|
18
|
+
resolve lambda { |_obj, _args, ctx|
|
19
19
|
OrganizationParticipatoryProcesses.new(ctx[:current_organization])
|
20
20
|
}
|
21
21
|
end
|
@@ -24,7 +24,7 @@ module Decidim
|
|
24
24
|
type SessionType
|
25
25
|
description "Return's information about the logged in user"
|
26
26
|
|
27
|
-
resolve
|
27
|
+
resolve lambda { |_obj, _args, ctx|
|
28
28
|
ctx[:current_user]
|
29
29
|
}
|
30
30
|
end
|
data/lib/decidim/reportable.rb
CHANGED
@@ -36,10 +36,10 @@ module Decidim
|
|
36
36
|
moderation&.report_count&.positive?
|
37
37
|
end
|
38
38
|
|
39
|
-
# Public: The reported content
|
39
|
+
# Public: The reported content url
|
40
40
|
#
|
41
|
-
# Returns
|
42
|
-
def
|
41
|
+
# Returns String
|
42
|
+
def reported_content_url
|
43
43
|
raise NotImplementedError
|
44
44
|
end
|
45
45
|
end
|
@@ -20,7 +20,7 @@ module Decidim
|
|
20
20
|
#
|
21
21
|
# name - The name of the stat
|
22
22
|
# options - A hash of options
|
23
|
-
# * primary:
|
23
|
+
# * primary: Whether the stat is primary or not.
|
24
24
|
# * priority: The priority of the stat used for render issues.
|
25
25
|
# block - A block that receive the features to filter out the stat.
|
26
26
|
def register(name, options = {}, &block)
|
@@ -69,7 +69,7 @@ module Decidim
|
|
69
69
|
# Public: Creates a new registry with the filtered stats
|
70
70
|
#
|
71
71
|
# conditions - A hash of conditions
|
72
|
-
# * primary:
|
72
|
+
# * primary: Whether the stat is primary or not.
|
73
73
|
# * priority: The priority of the stat used for render issues.
|
74
74
|
#
|
75
75
|
# Returns a new StatsRegistry with the filtered stats
|
@@ -0,0 +1,14 @@
|
|
1
|
+
/**
|
2
|
+
* French translation for foundation-datepicker
|
3
|
+
* Nico Mollet <nico.mollet@gmail.com>
|
4
|
+
*/
|
5
|
+
;(function($){
|
6
|
+
$.fn.fdatepicker.dates['fr'] = {
|
7
|
+
days: ["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche"],
|
8
|
+
daysShort: ["Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam", "Dim"],
|
9
|
+
daysMin: ["D", "L", "Ma", "Me", "J", "V", "S", "D"],
|
10
|
+
months: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"],
|
11
|
+
monthsShort: ["Jan", "Fev", "Mar", "Avr", "Mai", "Jui", "Jul", "Aou", "Sep", "Oct", "Nov", "Dec"],
|
12
|
+
today: "Aujourd'hui"
|
13
|
+
};
|
14
|
+
}(jQuery));
|
@@ -0,0 +1,14 @@
|
|
1
|
+
/**
|
2
|
+
* Italian translation for foundation-datepicker
|
3
|
+
* Enrico Rubboli <rubboli@gmail.com>
|
4
|
+
*/
|
5
|
+
;(function($){
|
6
|
+
$.fn.fdatepicker.dates['it'] = {
|
7
|
+
days: ["Domenica", "Lunedi", "Martedi", "Mercoledi", "Giovedi", "Venerdi", "Sabato", "Domenica"],
|
8
|
+
daysShort: ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab", "Dom"],
|
9
|
+
daysMin: ["Do", "Lu", "Ma", "Me", "Gi", "Ve", "Sa", "Do"],
|
10
|
+
months: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"],
|
11
|
+
monthsShort: ["Gen", "Feb", "Mar", "Apr", "Mag", "Giu", "Lug", "Ago", "Set", "Ott", "Nov", "Dic"],
|
12
|
+
today: "Oggi"
|
13
|
+
};
|
14
|
+
}(jQuery));
|
@@ -0,0 +1,14 @@
|
|
1
|
+
/**
|
2
|
+
* Dutch translation for foundation-datepicker
|
3
|
+
* Reinier Goltstein <mrgoltstein@gmail.com>
|
4
|
+
*/
|
5
|
+
;(function($){
|
6
|
+
$.fn.fdatepicker.dates['nl'] = {
|
7
|
+
days: ["Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag", "Zondag"],
|
8
|
+
daysShort: ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za", "Zo"],
|
9
|
+
daysMin: ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za", "Zo"],
|
10
|
+
months: ["Januari", "Februari", "Maart", "April", "Mei", "Juni", "Juli", "Augustus", "September", "Oktober", "November", "December"],
|
11
|
+
monthsShort: ["Jan", "Feb", "Mrt", "Apr", "Mei", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"],
|
12
|
+
today: "Vandaag"
|
13
|
+
};
|
14
|
+
}(jQuery));
|
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.3.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: 2017-06-
|
13
|
+
date: 2017-06-16 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rails
|
@@ -18,28 +18,42 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - "~>"
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 5.
|
21
|
+
version: 5.1.1
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
26
|
- - "~>"
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version: 5.
|
28
|
+
version: 5.1.1
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: rails-i18n
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '0'
|
36
|
+
type: :runtime
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '0'
|
29
43
|
- !ruby/object:Gem::Dependency
|
30
44
|
name: devise
|
31
45
|
requirement: !ruby/object:Gem::Requirement
|
32
46
|
requirements:
|
33
47
|
- - "~>"
|
34
48
|
- !ruby/object:Gem::Version
|
35
|
-
version: '4.
|
49
|
+
version: '4.3'
|
36
50
|
type: :runtime
|
37
51
|
prerelease: false
|
38
52
|
version_requirements: !ruby/object:Gem::Requirement
|
39
53
|
requirements:
|
40
54
|
- - "~>"
|
41
55
|
- !ruby/object:Gem::Version
|
42
|
-
version: '4.
|
56
|
+
version: '4.3'
|
43
57
|
- !ruby/object:Gem::Dependency
|
44
58
|
name: devise-i18n
|
45
59
|
requirement: !ruby/object:Gem::Requirement
|
@@ -438,70 +452,70 @@ dependencies:
|
|
438
452
|
requirements:
|
439
453
|
- - '='
|
440
454
|
- !ruby/object:Gem::Version
|
441
|
-
version: 0.
|
455
|
+
version: 0.3.0
|
442
456
|
type: :runtime
|
443
457
|
prerelease: false
|
444
458
|
version_requirements: !ruby/object:Gem::Requirement
|
445
459
|
requirements:
|
446
460
|
- - '='
|
447
461
|
- !ruby/object:Gem::Version
|
448
|
-
version: 0.
|
462
|
+
version: 0.3.0
|
449
463
|
- !ruby/object:Gem::Dependency
|
450
464
|
name: decidim-dev
|
451
465
|
requirement: !ruby/object:Gem::Requirement
|
452
466
|
requirements:
|
453
467
|
- - '='
|
454
468
|
- !ruby/object:Gem::Version
|
455
|
-
version: 0.
|
469
|
+
version: 0.3.0
|
456
470
|
type: :development
|
457
471
|
prerelease: false
|
458
472
|
version_requirements: !ruby/object:Gem::Requirement
|
459
473
|
requirements:
|
460
474
|
- - '='
|
461
475
|
- !ruby/object:Gem::Version
|
462
|
-
version: 0.
|
476
|
+
version: 0.3.0
|
463
477
|
- !ruby/object:Gem::Dependency
|
464
478
|
name: decidim-proposals
|
465
479
|
requirement: !ruby/object:Gem::Requirement
|
466
480
|
requirements:
|
467
481
|
- - '='
|
468
482
|
- !ruby/object:Gem::Version
|
469
|
-
version: 0.
|
483
|
+
version: 0.3.0
|
470
484
|
type: :development
|
471
485
|
prerelease: false
|
472
486
|
version_requirements: !ruby/object:Gem::Requirement
|
473
487
|
requirements:
|
474
488
|
- - '='
|
475
489
|
- !ruby/object:Gem::Version
|
476
|
-
version: 0.
|
490
|
+
version: 0.3.0
|
477
491
|
- !ruby/object:Gem::Dependency
|
478
492
|
name: decidim-meetings
|
479
493
|
requirement: !ruby/object:Gem::Requirement
|
480
494
|
requirements:
|
481
495
|
- - '='
|
482
496
|
- !ruby/object:Gem::Version
|
483
|
-
version: 0.
|
497
|
+
version: 0.3.0
|
484
498
|
type: :development
|
485
499
|
prerelease: false
|
486
500
|
version_requirements: !ruby/object:Gem::Requirement
|
487
501
|
requirements:
|
488
502
|
- - '='
|
489
503
|
- !ruby/object:Gem::Version
|
490
|
-
version: 0.
|
504
|
+
version: 0.3.0
|
491
505
|
- !ruby/object:Gem::Dependency
|
492
506
|
name: decidim-results
|
493
507
|
requirement: !ruby/object:Gem::Requirement
|
494
508
|
requirements:
|
495
509
|
- - '='
|
496
510
|
- !ruby/object:Gem::Version
|
497
|
-
version: 0.
|
511
|
+
version: 0.3.0
|
498
512
|
type: :development
|
499
513
|
prerelease: false
|
500
514
|
version_requirements: !ruby/object:Gem::Requirement
|
501
515
|
requirements:
|
502
516
|
- - '='
|
503
517
|
- !ruby/object:Gem::Version
|
504
|
-
version: 0.
|
518
|
+
version: 0.3.0
|
505
519
|
description: Adds core features so other engines can hook into the framework.
|
506
520
|
email:
|
507
521
|
- josepjaume@gmail.com
|
@@ -534,6 +548,7 @@ files:
|
|
534
548
|
- app/assets/images/decidim/icons.svg
|
535
549
|
- app/assets/images/decidim/process.svg
|
536
550
|
- app/assets/javascripts/decidim.js.es6
|
551
|
+
- app/assets/javascripts/decidim/account_form.js.es6
|
537
552
|
- app/assets/javascripts/decidim/append_elements.js.es6
|
538
553
|
- app/assets/javascripts/decidim/editor.js.es6
|
539
554
|
- app/assets/javascripts/decidim/filters.js.es6
|
@@ -612,6 +627,7 @@ files:
|
|
612
627
|
- app/commands/decidim/create_omniauth_registration.rb
|
613
628
|
- app/commands/decidim/create_registration.rb
|
614
629
|
- app/commands/decidim/create_report.rb
|
630
|
+
- app/commands/decidim/destroy_account.rb
|
615
631
|
- app/commands/decidim/invite_user.rb
|
616
632
|
- app/commands/decidim/invite_user_again.rb
|
617
633
|
- app/commands/decidim/remove_user_role.rb
|
@@ -652,6 +668,7 @@ files:
|
|
652
668
|
- app/controllers/decidim/static_map_controller.rb
|
653
669
|
- app/controllers/decidim/widgets_controller.rb
|
654
670
|
- app/forms/decidim/account_form.rb
|
671
|
+
- app/forms/decidim/delete_account_form.rb
|
655
672
|
- app/forms/decidim/form.rb
|
656
673
|
- app/forms/decidim/invite_admin_form.rb
|
657
674
|
- app/forms/decidim/notifications_settings_form.rb
|
@@ -700,8 +717,8 @@ files:
|
|
700
717
|
- app/models/decidim/application_record.rb
|
701
718
|
- app/models/decidim/attachment.rb
|
702
719
|
- app/models/decidim/authorization.rb
|
720
|
+
- app/models/decidim/categorization.rb
|
703
721
|
- app/models/decidim/category.rb
|
704
|
-
- app/models/decidim/component.rb
|
705
722
|
- app/models/decidim/feature.rb
|
706
723
|
- app/models/decidim/identity.rb
|
707
724
|
- app/models/decidim/moderation.rb
|
@@ -720,6 +737,7 @@ files:
|
|
720
737
|
- app/presenters/decidim/home_stats_presenter.rb
|
721
738
|
- app/presenters/decidim/menu_item_presenter.rb
|
722
739
|
- app/presenters/decidim/menu_presenter.rb
|
740
|
+
- app/presenters/decidim/resource_locator_presenter.rb
|
723
741
|
- app/queries/decidim/highlighted_participatory_processes.rb
|
724
742
|
- app/queries/decidim/organization_participatory_processes.rb
|
725
743
|
- app/queries/decidim/organization_prioritized_participatory_processes.rb
|
@@ -745,6 +763,7 @@ files:
|
|
745
763
|
- app/validators/geocoding_validator.rb
|
746
764
|
- app/views/decidim/account/_password_fields.html.erb
|
747
765
|
- app/views/decidim/account/_user_groups.html.erb
|
766
|
+
- app/views/decidim/account/delete.html.erb
|
748
767
|
- app/views/decidim/account/show.html.erb
|
749
768
|
- app/views/decidim/application/_attachments.html.erb
|
750
769
|
- app/views/decidim/application/_documents.html.erb
|
@@ -846,6 +865,7 @@ files:
|
|
846
865
|
- config/locales/eu.yml
|
847
866
|
- config/locales/fi.yml
|
848
867
|
- config/locales/fr.yml
|
868
|
+
- config/locales/it.yml
|
849
869
|
- config/locales/nl.yml
|
850
870
|
- config/routes.rb
|
851
871
|
- config/secrets.yml
|
@@ -916,6 +936,11 @@ files:
|
|
916
936
|
- db/migrate/20170405094028_add_organization_to_identities.rb
|
917
937
|
- db/migrate/20170405094258_change_decidim_identities_provider_uid_index_uniqueness.rb
|
918
938
|
- db/migrate/20170529150743_add_rejected_at_to_user_groups.rb
|
939
|
+
- db/migrate/20170605140421_add_deleted_fields_to_users.rb
|
940
|
+
- db/migrate/20170606102659_set_email_unique_in_organization_conditional.rb
|
941
|
+
- db/migrate/20170608142521_add_organization_to_user_groups.rb
|
942
|
+
- db/migrate/20170612070905_add_uniqueness_to_name_and_document_number_to_user_groups.rb
|
943
|
+
- db/migrate/20170612100253_create_decidim_categorizations.rb
|
919
944
|
- db/seeds.rb
|
920
945
|
- db/seeds/Exampledocument.pdf
|
921
946
|
- db/seeds/city.jpeg
|
@@ -993,6 +1018,9 @@ files:
|
|
993
1018
|
- vendor/assets/javascripts/datepicker-locales/foundation-datepicker.es.js
|
994
1019
|
- vendor/assets/javascripts/datepicker-locales/foundation-datepicker.eu.js
|
995
1020
|
- vendor/assets/javascripts/datepicker-locales/foundation-datepicker.fi.js
|
1021
|
+
- vendor/assets/javascripts/datepicker-locales/foundation-datepicker.fr.js
|
1022
|
+
- vendor/assets/javascripts/datepicker-locales/foundation-datepicker.it.js
|
1023
|
+
- vendor/assets/javascripts/datepicker-locales/foundation-datepicker.nl.js
|
996
1024
|
- vendor/assets/javascripts/form_datepicker.js.es6
|
997
1025
|
- vendor/assets/javascripts/foundation-datepicker.js
|
998
1026
|
- vendor/assets/javascripts/leaflet-svg-icon.js
|
@@ -1,52 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
# A Component represents the association between a participatory process and a
|
5
|
-
# Component Engine. It configures how that component should behave, its name,
|
6
|
-
# and other relevant fields.
|
7
|
-
class Component < ApplicationRecord
|
8
|
-
belongs_to :feature, foreign_key: "decidim_feature_id"
|
9
|
-
|
10
|
-
belongs_to :step,
|
11
|
-
foreign_key: "decidim_participatory_process_step_id",
|
12
|
-
class_name: "Decidim::ParticipatoryProcessStep"
|
13
|
-
|
14
|
-
has_one :participatory_process, through: :feature
|
15
|
-
|
16
|
-
validates :feature, :step, :manifest, presence: true
|
17
|
-
|
18
|
-
validate :manifest_belongs_to_feature
|
19
|
-
validate :participatory_process_is_valid
|
20
|
-
|
21
|
-
# Public: Finds the manifest this particular component is associated to.
|
22
|
-
#
|
23
|
-
# Returns a ComponentManifest.
|
24
|
-
def manifest
|
25
|
-
Decidim.find_component_manifest(manifest_name)
|
26
|
-
end
|
27
|
-
|
28
|
-
# Public: Assigns a manifest to this component.
|
29
|
-
#
|
30
|
-
# manifest - The ComponentManifest for this Component.
|
31
|
-
#
|
32
|
-
# Returns nothing.
|
33
|
-
def manifest=(manifest)
|
34
|
-
self.manifest_name = manifest.name
|
35
|
-
end
|
36
|
-
|
37
|
-
private
|
38
|
-
|
39
|
-
def manifest_belongs_to_feature
|
40
|
-
return if feature&.manifest&.component_manifests&.include?(manifest)
|
41
|
-
|
42
|
-
errors.add(:manifest, I18n.t("errors.messages.invalid_manifest"))
|
43
|
-
end
|
44
|
-
|
45
|
-
def participatory_process_is_valid
|
46
|
-
return if !step&.participatory_process || !feature&.participatory_process
|
47
|
-
return if feature.participatory_process == step.participatory_process
|
48
|
-
|
49
|
-
errors.add(:manifest, I18n.t("errors.messages.invalid_participatory_process"))
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|