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.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/decidim.js.es6 +2 -0
  3. data/app/assets/javascripts/decidim/account_form.js.es6 +27 -0
  4. data/app/assets/javascripts/decidim/editor.js.es6 +9 -2
  5. data/app/assets/javascripts/decidim/form_filter.component.js.es6 +1 -1
  6. data/app/assets/javascripts/decidim/form_filter.component.test.js +2 -2
  7. data/app/assets/javascripts/decidim/history.js.es6 +7 -4
  8. data/app/commands/decidim/create_registration.rb +2 -1
  9. data/app/commands/decidim/destroy_account.rb +47 -0
  10. data/app/constraints/decidim/current_feature.rb +4 -5
  11. data/app/controllers/concerns/decidim/needs_participatory_process.rb +6 -1
  12. data/app/controllers/decidim/account_controller.rb +25 -2
  13. data/app/controllers/decidim/authorizations_controller.rb +2 -2
  14. data/app/controllers/decidim/pages_controller.rb +4 -2
  15. data/app/forms/decidim/delete_account_form.rb +8 -0
  16. data/app/forms/decidim/registration_form.rb +13 -0
  17. data/app/helpers/decidim/action_authorization_helper.rb +10 -4
  18. data/app/helpers/decidim/decidim_form_helper.rb +96 -0
  19. data/app/helpers/decidim/omniauth_helper.rb +1 -1
  20. data/app/helpers/decidim/resource_helper.rb +3 -36
  21. data/app/mailers/decidim/reported_mailer.rb +5 -3
  22. data/app/models/decidim/attachment.rb +1 -1
  23. data/app/models/decidim/authorization.rb +1 -1
  24. data/app/models/decidim/categorization.rb +8 -0
  25. data/app/models/decidim/category.rb +7 -2
  26. data/app/models/decidim/feature.rb +3 -5
  27. data/app/models/decidim/identity.rb +0 -1
  28. data/app/models/decidim/moderation.rb +0 -2
  29. data/app/models/decidim/participatory_process.rb +4 -2
  30. data/app/models/decidim/report.rb +1 -1
  31. data/app/models/decidim/resource_link.rb +1 -2
  32. data/app/models/decidim/static_page.rb +1 -2
  33. data/app/models/decidim/user.rb +16 -3
  34. data/app/models/decidim/user_group.rb +5 -3
  35. data/app/presenters/decidim/resource_locator_presenter.rb +48 -0
  36. data/app/services/decidim/authorization_handler.rb +4 -7
  37. data/app/services/decidim/resource_search.rb +3 -1
  38. data/app/uploaders/decidim/avatar_uploader.rb +2 -2
  39. data/app/uploaders/decidim/image_uploader.rb +1 -1
  40. data/app/uploaders/decidim/official_image_footer_uploader.rb +1 -5
  41. data/app/uploaders/decidim/official_image_header_uploader.rb +1 -5
  42. data/app/uploaders/decidim/organization_logo_uploader.rb +1 -1
  43. data/app/views/decidim/account/delete.html.erb +30 -0
  44. data/app/views/decidim/devise/shared/_omniauth_buttons.html.erb +2 -2
  45. data/app/views/decidim/reported_mailer/hide.html.erb +5 -1
  46. data/app/views/decidim/reported_mailer/report.html.erb +5 -1
  47. data/app/views/layouts/decidim/user_profile.html.erb +2 -1
  48. data/config/initializers/devise.rb +9 -9
  49. data/config/locales/ca.yml +20 -3
  50. data/config/locales/en.yml +20 -3
  51. data/config/locales/es.yml +20 -3
  52. data/config/locales/eu.yml +0 -3
  53. data/config/locales/fi.yml +0 -2
  54. data/config/locales/fr.yml +0 -3
  55. data/config/locales/it.yml +350 -0
  56. data/config/locales/nl.yml +0 -2
  57. data/config/routes.rb +5 -1
  58. data/db/migrate/20160817115213_devise_create_decidim_users.rb +1 -0
  59. data/db/migrate/20160919104837_create_decidim_organizations.rb +2 -0
  60. data/db/migrate/20160920140207_devise_invitable_add_to_decidim_users.rb +2 -0
  61. data/db/migrate/20160920141039_user_belongs_to_organization.rb +2 -0
  62. data/db/migrate/20160920141151_user_has_roles.rb +2 -0
  63. data/db/migrate/20161005130108_add_participatory_processes.rb +4 -2
  64. data/db/migrate/20161005153007_add_description_to_organizations.rb +2 -0
  65. data/db/migrate/20161006085629_add_confirmable_to_devise.rb +2 -0
  66. data/db/migrate/20161010085443_add_name_to_users.rb +2 -0
  67. data/db/migrate/20161010102356_translate_processes.rb +2 -0
  68. data/db/migrate/20161010131544_add_locale_to_users.rb +2 -0
  69. data/db/migrate/20161011125616_add_hero_image_to_processes.rb +2 -0
  70. data/db/migrate/20161011141033_add_banner_image_to_processes.rb +2 -0
  71. data/db/migrate/20161013134732_add_promoted_flag_to_processes.rb +2 -0
  72. data/db/migrate/20161017085822_add_participatory_process_steps.rb +4 -2
  73. data/db/migrate/20161018091013_create_decidim_authorizations.rb +2 -0
  74. data/db/migrate/20161019072016_add_active_flag_to_step.rb +7 -1
  75. data/db/migrate/20161020080756_add_position_to_steps.rb +2 -0
  76. data/db/migrate/20161025125300_add_published_at_to_processes.rb +2 -0
  77. data/db/migrate/20161107152228_remove_not_null_on_step_position.rb +2 -0
  78. data/db/migrate/20161108093802_create_decidim_static_pages.rb +2 -0
  79. data/db/migrate/20161110092735_add_index_for_process_slug_organization.rb +5 -3
  80. data/db/migrate/20161110105712_create_decidim_features.rb +2 -0
  81. data/db/migrate/20161116115156_create_attachments.rb +4 -2
  82. data/db/migrate/20161123085134_add_categories.rb +2 -0
  83. data/db/migrate/20161130105257_create_decidim_scopes.rb +2 -0
  84. data/db/migrate/20161209134715_make_organization_description_optional.rb +2 -0
  85. data/db/migrate/20161213094244_add_avatar_to_users.rb +2 -0
  86. data/db/migrate/20161214152811_add_logo_to_organizations.rb +2 -0
  87. data/db/migrate/20170110133113_add_configuration_to_features.rb +2 -0
  88. data/db/migrate/20170110153807_add_handler_to_organization.rb +2 -0
  89. data/db/migrate/20170113150627_create_resource_links.rb +2 -0
  90. data/db/migrate/20170116110851_create_identities.rb +2 -0
  91. data/db/migrate/20170116135237_loosen_step_requirements.rb +2 -0
  92. data/db/migrate/20170117142904_add_uniqueness_field_to_authorizations.rb +2 -0
  93. data/db/migrate/20170119145359_create_user_groups.rb +2 -0
  94. data/db/migrate/20170119150255_create_user_group_memberships.rb +2 -0
  95. data/db/migrate/20170119150649_add_show_statistics_to_organization.rb +3 -1
  96. data/db/migrate/20170120120733_add_user_groups_verified.rb +2 -0
  97. data/db/migrate/20170123134023_make_attachments_polymorphic.rb +2 -0
  98. data/db/migrate/20170123140857_add_avatar_to_user_groups.rb +2 -0
  99. data/db/migrate/20170125135937_rename_attachable_to_attached_to.rb +3 -1
  100. data/db/migrate/20170125152026_add_weight_to_features.rb +2 -0
  101. data/db/migrate/20170126151123_add_extra_info_to_processes.rb +6 -4
  102. data/db/migrate/20170128140553_add_timestamps_to_identities.rb +2 -0
  103. data/db/migrate/20170130132833_add_favicon_to_decidim_organizations.rb +2 -0
  104. data/db/migrate/20170131134349_add_action_permissions_to_decidim_features.rb +2 -0
  105. data/db/migrate/20170202084913_add_comments_and_replies_notifications_to_users.rb +2 -0
  106. data/db/migrate/20170203150545_add_newsletter_notifications_to_users.rb +2 -0
  107. data/db/migrate/20170206083118_rename_extra_info_on_processes.rb +2 -0
  108. data/db/migrate/20170206142116_add_published_at_to_decidim_features.rb +2 -0
  109. data/db/migrate/20170207091021_add_social_media_handlers_to_organization.rb +2 -0
  110. data/db/migrate/20170207093048_add_organization_logo_and_url.rb +3 -1
  111. data/db/migrate/20170213081133_create_decidim_newsletters.rb +2 -0
  112. data/db/migrate/20170215115407_add_organization_custom_reference.rb +2 -0
  113. data/db/migrate/20170220110740_remove_steps_short_description.rb +2 -0
  114. data/db/migrate/20170221094835_add_scopes_to_processes.rb +2 -0
  115. data/db/migrate/20170228142440_add_participatory_process_groups.rb +2 -0
  116. data/db/migrate/20170306144354_add_secondary_hosts_to_organizations.rb +2 -0
  117. data/db/migrate/20170307084957_create_reports.rb +2 -0
  118. data/db/migrate/20170308091316_create_moderations.rb +2 -0
  119. data/db/migrate/20170313095436_add_available_authorizations_to_organization.rb +2 -0
  120. data/db/migrate/20170404132616_change_steps_end_and_start_date_to_date.rb +2 -0
  121. data/db/migrate/20170405091801_change_decidim_user_email_index_uniqueness.rb +2 -0
  122. data/db/migrate/20170405094028_add_organization_to_identities.rb +2 -0
  123. data/db/migrate/20170405094258_change_decidim_identities_provider_uid_index_uniqueness.rb +3 -1
  124. data/db/migrate/20170529150743_add_rejected_at_to_user_groups.rb +2 -0
  125. data/db/migrate/20170605140421_add_deleted_fields_to_users.rb +8 -0
  126. data/db/migrate/20170606102659_set_email_unique_in_organization_conditional.rb +8 -0
  127. data/db/migrate/20170608142521_add_organization_to_user_groups.rb +14 -0
  128. data/db/migrate/20170612070905_add_uniqueness_to_name_and_document_number_to_user_groups.rb +8 -0
  129. data/db/migrate/20170612100253_create_decidim_categorizations.rb +12 -0
  130. data/db/seeds.rb +10 -8
  131. data/lib/decidim/authorable.rb +2 -2
  132. data/lib/decidim/core.rb +1 -1
  133. data/lib/decidim/core/api/author_interface.rb +6 -0
  134. data/lib/decidim/core/api/user_group_type.rb +14 -0
  135. data/lib/decidim/core/api/user_type.rb +10 -0
  136. data/lib/decidim/core/engine.rb +1 -1
  137. data/lib/decidim/core/test/factories.rb +12 -0
  138. data/lib/decidim/core/test/shared_examples/manage_moderations_examples.rb +3 -3
  139. data/lib/decidim/core/version.rb +2 -2
  140. data/lib/decidim/feature_manifest.rb +2 -3
  141. data/lib/decidim/form_builder.rb +3 -2
  142. data/lib/decidim/has_category.rb +3 -1
  143. data/lib/decidim/has_scope.rb +5 -2
  144. data/lib/decidim/query_extensions.rb +2 -2
  145. data/lib/decidim/reportable.rb +3 -3
  146. data/lib/decidim/stats_registry.rb +2 -2
  147. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.fr.js +14 -0
  148. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.it.js +14 -0
  149. data/vendor/assets/javascripts/datepicker-locales/foundation-datepicker.nl.js +14 -0
  150. metadata +45 -17
  151. data/app/models/decidim/component.rb +0 -52
@@ -8,7 +8,9 @@ module Decidim
8
8
  extend ActiveSupport::Concern
9
9
 
10
10
  included do
11
- belongs_to :category, foreign_key: "decidim_category_id", class_name: "Decidim::Category"
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
@@ -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 be have a scope.
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, foreign_key: "decidim_scope_id", class_name: "Decidim::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 ->(_obj, _args, ctx) {
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 ->(_obj, _args, ctx) {
27
+ resolve lambda { |_obj, _args, ctx|
28
28
  ctx[:current_user]
29
29
  }
30
30
  end
@@ -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 html content
42
- def reported_content
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: Wether the stat is primary or not.
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: Wether the stat is primary or not.
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.2.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-02 00:00:00.000000000 Z
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.0.2
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.0.2
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.2'
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.2'
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.2.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.2.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.2.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.2.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.2.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.2.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.2.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.2.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.2.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.2.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