decidim-assemblies 0.27.9 → 0.28.0.rc4
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/assemblies/assemblies/show.erb +16 -0
- data/app/cells/decidim/assemblies/assemblies_cell.rb +24 -0
- data/app/cells/decidim/assemblies/assembly_cell.rb +7 -2
- data/app/cells/decidim/assemblies/assembly_dropdown_metadata_cell.rb +19 -0
- data/app/cells/decidim/assemblies/assembly_g_cell.rb +23 -0
- data/app/cells/decidim/assemblies/assembly_member/data.erb +19 -0
- data/app/cells/decidim/assemblies/assembly_member/name_and_position.erb +11 -0
- data/app/cells/decidim/assemblies/assembly_member/show.erb +8 -52
- data/app/cells/decidim/assemblies/assembly_metadata_g_cell.rb +46 -0
- data/app/cells/decidim/assemblies/assembly_s_cell.rb +15 -0
- data/app/cells/decidim/assemblies/content_block_cell.rb +21 -0
- data/app/cells/decidim/assemblies/content_blocks/children_assemblies_cell.rb +27 -0
- data/app/cells/decidim/assemblies/content_blocks/dates_metadata_cell.rb +23 -0
- data/app/cells/decidim/assemblies/content_blocks/extra_data_cell.rb +39 -0
- data/app/cells/decidim/assemblies/content_blocks/highlighted_assemblies_cell.rb +15 -23
- data/app/cells/decidim/assemblies/content_blocks/highlighted_assemblies_settings_form/show.erb +1 -1
- data/app/cells/decidim/assemblies/content_blocks/main_data_cell.rb +52 -0
- data/app/cells/decidim/assemblies/content_blocks/metadata_cell.rb +23 -0
- data/app/cells/decidim/assemblies/content_blocks/related_assemblies/content.erb +1 -0
- data/app/cells/decidim/assemblies/content_blocks/related_assemblies_cell.rb +34 -0
- data/app/cells/decidim/assemblies/content_blocks/stats_cell.rb +15 -0
- data/app/commands/decidim/assemblies/admin/copy_assembly.rb +2 -2
- data/app/commands/decidim/assemblies/admin/create_assemblies_type.rb +1 -1
- data/app/commands/decidim/assemblies/admin/create_assembly.rb +2 -1
- data/app/commands/decidim/assemblies/admin/create_assembly_member.rb +3 -3
- data/app/commands/decidim/assemblies/admin/destroy_assemblies_type.rb +1 -1
- data/app/commands/decidim/assemblies/admin/destroy_assembly_member.rb +1 -1
- data/app/commands/decidim/assemblies/admin/import_assembly.rb +1 -1
- data/app/commands/decidim/assemblies/admin/update_assemblies_type.rb +1 -1
- data/app/commands/decidim/assemblies/admin/update_assembly.rb +1 -1
- data/app/commands/decidim/assemblies/admin/update_assembly_member.rb +1 -1
- data/app/constraints/decidim/assemblies/current_assembly.rb +1 -1
- data/app/controllers/concerns/decidim/assemblies/admin/assembly_context.rb +1 -1
- data/app/controllers/concerns/decidim/assemblies/admin/assembly_members/filterable.rb +39 -0
- data/app/controllers/concerns/decidim/assemblies/assembly_breadcrumb.rb +36 -0
- data/app/controllers/decidim/assemblies/admin/assemblies_controller.rb +1 -0
- data/app/controllers/decidim/assemblies/admin/assemblies_types_controller.rb +1 -1
- data/app/controllers/decidim/assemblies/admin/assembly_attachment_collections_controller.rb +5 -0
- data/app/controllers/decidim/assemblies/admin/assembly_attachments_controller.rb +5 -0
- data/app/controllers/decidim/assemblies/admin/assembly_imports_controller.rb +2 -0
- data/app/controllers/decidim/assemblies/admin/assembly_landing_page_content_blocks_controller.rb +35 -0
- data/app/controllers/decidim/assemblies/admin/assembly_landing_page_controller.rb +37 -0
- data/app/controllers/decidim/assemblies/admin/assembly_members_controller.rb +2 -6
- data/app/controllers/decidim/assemblies/admin/assembly_publications_controller.rb +9 -29
- data/app/controllers/decidim/assemblies/admin/assembly_user_roles_controller.rb +8 -91
- data/app/controllers/decidim/assemblies/admin/concerns/assembly_admin.rb +1 -1
- data/app/controllers/decidim/assemblies/assemblies_controller.rb +12 -7
- data/app/controllers/decidim/assemblies/assembly_members_controller.rb +2 -0
- data/app/events/decidim/assemblies/create_assembly_member_event.rb +1 -1
- data/app/events/decidim/role_assigned_to_assembly_event.rb +11 -6
- data/app/forms/decidim/assemblies/admin/assembly_copy_form.rb +1 -1
- data/app/forms/decidim/assemblies/admin/assembly_form.rb +1 -1
- data/app/forms/decidim/assemblies/admin/assembly_import_form.rb +1 -1
- data/app/forms/decidim/assemblies/admin/assembly_user_role_form.rb +2 -18
- data/app/helpers/decidim/assemblies/admin/assembly_members_helper.rb +11 -0
- data/app/helpers/decidim/assemblies/application_helper.rb +12 -0
- data/app/helpers/decidim/assemblies/assemblies_helper.rb +21 -19
- data/app/helpers/decidim/assemblies/filter_assemblies_helper.rb +15 -30
- data/app/models/decidim/assembly.rb +6 -5
- data/app/models/decidim/assembly_user_role.rb +5 -33
- data/app/packs/entrypoints/decidim_assemblies.js +0 -1
- data/app/packs/src/decidim/assemblies/admin/assemblies.js +2 -2
- data/app/packs/src/decidim/assemblies/orgchart.js +0 -701
- data/app/permissions/decidim/assemblies/permissions.rb +14 -27
- data/app/presenters/decidim/assemblies/admin_log/assemblies_setting_presenter.rb +2 -2
- data/app/presenters/decidim/assemblies/admin_log/assemblies_type_presenter.rb +2 -2
- data/app/presenters/decidim/assemblies/admin_log/assembly_member_presenter.rb +2 -2
- data/app/presenters/decidim/assemblies/admin_log/assembly_presenter.rb +2 -2
- data/app/presenters/decidim/assemblies/admin_log/assembly_user_role_presenter.rb +2 -2
- data/app/presenters/decidim/assemblies/assembly_presenter.rb +38 -0
- data/app/presenters/decidim/assemblies/assembly_stats_presenter.rb +2 -41
- data/app/presenters/decidim/assembly_member_presenter.rb +18 -4
- data/app/queries/decidim/assemblies/admin/admin_users.rb +1 -1
- data/app/queries/decidim/assemblies/assemblies_with_user_role.rb +2 -2
- data/app/serializers/decidim/assemblies/assembly_importer.rb +3 -3
- data/app/serializers/decidim/assemblies/assembly_serializer.rb +1 -1
- data/app/views/decidim/assemblies/admin/assemblies/_form.html.erb +218 -176
- data/app/views/decidim/assemblies/admin/assemblies/edit.html.erb +25 -11
- data/app/views/decidim/assemblies/admin/assemblies/index.html.erb +105 -115
- data/app/views/decidim/assemblies/admin/assemblies/new.html.erb +16 -9
- data/app/views/decidim/assemblies/admin/assemblies_types/_form.html.erb +6 -8
- data/app/views/decidim/assemblies/admin/assemblies_types/edit.html.erb +11 -5
- data/app/views/decidim/assemblies/admin/assemblies_types/index.html.erb +34 -35
- data/app/views/decidim/assemblies/admin/assemblies_types/new.html.erb +16 -6
- data/app/views/decidim/assemblies/admin/assembly_copies/_form.html.erb +12 -20
- data/app/views/decidim/assemblies/admin/assembly_copies/new.html.erb +17 -5
- data/app/views/decidim/assemblies/admin/assembly_imports/_form.html.erb +28 -37
- data/app/views/decidim/assemblies/admin/assembly_imports/new.html.erb +17 -5
- data/app/views/decidim/assemblies/admin/assembly_members/_form.html.erb +45 -49
- data/app/views/decidim/assemblies/admin/assembly_members/edit.html.erb +17 -6
- data/app/views/decidim/assemblies/admin/assembly_members/index.html.erb +51 -88
- data/app/views/decidim/assemblies/admin/assembly_members/new.html.erb +17 -6
- data/app/views/decidim/assemblies/admin/assembly_user_roles/_form.html.erb +14 -18
- data/app/views/decidim/assemblies/admin/assembly_user_roles/edit.html.erb +17 -6
- data/app/views/decidim/assemblies/admin/assembly_user_roles/index.html.erb +54 -55
- data/app/views/decidim/assemblies/admin/assembly_user_roles/new.html.erb +17 -6
- data/app/views/decidim/assemblies/assemblies/_collection.html.erb +7 -0
- data/app/views/decidim/assemblies/assemblies/index.html.erb +20 -19
- data/app/views/decidim/assemblies/assemblies/index.js.erb +1 -8
- data/app/views/decidim/assemblies/assemblies/show.html.erb +17 -207
- data/app/views/decidim/assemblies/assembly_members/index.html.erb +7 -5
- data/app/views/decidim/assemblies/pages/user_profile/_member_of.html.erb +6 -9
- data/app/views/layouts/decidim/admin/_manage_assemblies.html.erb +36 -0
- data/app/views/layouts/decidim/admin/assemblies.html.erb +13 -11
- data/app/views/layouts/decidim/admin/assemblies_imports.html.erb +9 -0
- data/app/views/layouts/decidim/admin/assemblies_types.html.erb +17 -0
- data/app/views/layouts/decidim/admin/assembly.html.erb +12 -13
- data/app/views/layouts/decidim/assembly.html.erb +7 -14
- data/config/locales/ar.yml +7 -68
- data/config/locales/bg.yml +0 -466
- data/config/locales/ca.yml +62 -71
- data/config/locales/cs.yml +59 -66
- data/config/locales/de.yml +60 -69
- data/config/locales/el.yml +11 -61
- data/config/locales/en.yml +57 -66
- data/config/locales/es-MX.yml +57 -66
- data/config/locales/es-PY.yml +57 -66
- data/config/locales/es.yml +63 -72
- data/config/locales/eu.yml +57 -70
- data/config/locales/fi-plain.yml +58 -67
- data/config/locales/fi.yml +57 -66
- data/config/locales/fr-CA.yml +57 -66
- data/config/locales/fr.yml +57 -66
- data/config/locales/ga-IE.yml +4 -15
- data/config/locales/gl.yml +4 -62
- data/config/locales/hu.yml +33 -65
- data/config/locales/id-ID.yml +6 -47
- data/config/locales/is-IS.yml +5 -40
- data/config/locales/it.yml +5 -62
- data/config/locales/ja.yml +51 -66
- data/config/locales/kaa.yml +0 -8
- data/config/locales/ko.yml +0 -92
- data/config/locales/lb.yml +5 -61
- data/config/locales/lt.yml +40 -63
- data/config/locales/lv.yml +5 -57
- data/config/locales/nl.yml +4 -62
- data/config/locales/no.yml +5 -62
- data/config/locales/pl.yml +3 -93
- data/config/locales/pt-BR.yml +77 -132
- data/config/locales/pt.yml +5 -62
- data/config/locales/ro-RO.yml +20 -63
- data/config/locales/ru.yml +4 -44
- data/config/locales/sk.yml +0 -26
- data/config/locales/sl.yml +5 -48
- data/config/locales/sq-AL.yml +0 -364
- data/config/locales/sr-CS.yml +0 -5
- data/config/locales/sv.yml +132 -193
- data/config/locales/tr-TR.yml +8 -69
- data/config/locales/uk.yml +4 -44
- data/config/locales/zh-CN.yml +5 -60
- data/config/locales/zh-TW.yml +7 -63
- data/db/migrate/20200108123050_migrate_decidim_assembly_types.rb +1 -1
- data/lib/decidim/api/assemblies_type_type.rb +1 -1
- data/lib/decidim/api/assembly_member_type.rb +1 -1
- data/lib/decidim/api/assembly_type.rb +1 -1
- data/lib/decidim/assemblies/admin_engine.rb +21 -126
- data/lib/decidim/assemblies/content_blocks/registry_manager.rb +184 -0
- data/lib/decidim/assemblies/engine.rb +15 -21
- data/lib/decidim/assemblies/menu.rb +161 -0
- data/lib/decidim/assemblies/participatory_space.rb +7 -229
- data/lib/decidim/assemblies/query_extensions.rb +6 -6
- data/lib/decidim/assemblies/seeds.rb +161 -0
- data/lib/decidim/assemblies/test/factories.rb +47 -55
- data/lib/decidim/assemblies/version.rb +1 -1
- metadata +54 -51
- data/app/cells/decidim/assemblies/assembly_m/footer.erb +0 -15
- data/app/cells/decidim/assemblies/assembly_m/tags.erb +0 -1
- data/app/cells/decidim/assemblies/assembly_m_cell.rb +0 -77
- data/app/cells/decidim/assemblies/content_blocks/highlighted_assemblies/show.erb +0 -30
- data/app/commands/decidim/assemblies/admin/create_assembly_admin.rb +0 -54
- data/app/commands/decidim/assemblies/admin/destroy_assembly_admin.rb +0 -58
- data/app/commands/decidim/assemblies/admin/notify_role_assigned_to_assembly.rb +0 -22
- data/app/commands/decidim/assemblies/admin/publish_assembly.rb +0 -39
- data/app/commands/decidim/assemblies/admin/unpublish_assembly.rb +0 -39
- data/app/commands/decidim/assemblies/admin/update_assemblies_setting.rb +0 -46
- data/app/commands/decidim/assemblies/admin/update_assembly_admin.rb +0 -53
- data/app/controllers/decidim/assemblies/admin/assemblies_settings_controller.rb +0 -49
- data/app/controllers/decidim/assemblies/widgets_controller.rb +0 -33
- data/app/forms/decidim/assemblies/admin/assemblies_setting_form.rb +0 -14
- data/app/models/decidim/assemblies_setting.rb +0 -17
- data/app/queries/decidim/assemblies/admin/assembly_members.rb +0 -56
- data/app/views/decidim/assemblies/_filter_by_type.html.erb +0 -19
- data/app/views/decidim/assemblies/admin/assemblies_settings/_form.html.erb +0 -10
- data/app/views/decidim/assemblies/admin/assemblies_settings/edit.html.erb +0 -7
- data/app/views/decidim/assemblies/assemblies/_count.html.erb +0 -1
- data/app/views/decidim/assemblies/assemblies/_nav_breadcumb.html.erb +0 -11
- data/app/views/decidim/assemblies/assemblies/_parent_assemblies.html.erb +0 -15
- data/app/views/decidim/assemblies/assemblies/_promoted_assembly.html.erb +0 -27
- data/app/views/layouts/decidim/_assembly_header.html.erb +0 -27
- data/app/views/layouts/decidim/_assembly_navigation.html.erb +0 -24
- data/app/views/layouts/decidim/admin/assembly_members.html.erb +0 -18
- data/config/locales/he-IL.yml +0 -110
- data/db/seeds/Exampledocument.pdf +0 -0
- data/db/seeds/city.jpeg +0 -0
- data/db/seeds/city2.jpeg +0 -0
- data/db/seeds/homepage_image.jpg +0 -0
- data/decidim-assemblies.gemspec +0 -32
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: decidim-assemblies
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.28.0.rc4
|
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:
|
13
|
+
date: 2023-12-11 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: decidim-core
|
@@ -18,70 +18,70 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - '='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.
|
21
|
+
version: 0.28.0.rc4
|
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: 0.
|
28
|
+
version: 0.28.0.rc4
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: decidim-admin
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
33
|
- - '='
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version: 0.
|
35
|
+
version: 0.28.0.rc4
|
36
36
|
type: :development
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
40
|
- - '='
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version: 0.
|
42
|
+
version: 0.28.0.rc4
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: decidim-dev
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
47
|
- - '='
|
48
48
|
- !ruby/object:Gem::Version
|
49
|
-
version: 0.
|
49
|
+
version: 0.28.0.rc4
|
50
50
|
type: :development
|
51
51
|
prerelease: false
|
52
52
|
version_requirements: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
54
|
- - '='
|
55
55
|
- !ruby/object:Gem::Version
|
56
|
-
version: 0.
|
56
|
+
version: 0.28.0.rc4
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
58
|
name: decidim-meetings
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
60
60
|
requirements:
|
61
61
|
- - '='
|
62
62
|
- !ruby/object:Gem::Version
|
63
|
-
version: 0.
|
63
|
+
version: 0.28.0.rc4
|
64
64
|
type: :development
|
65
65
|
prerelease: false
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
67
67
|
requirements:
|
68
68
|
- - '='
|
69
69
|
- !ruby/object:Gem::Version
|
70
|
-
version: 0.
|
70
|
+
version: 0.28.0.rc4
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
72
|
name: decidim-proposals
|
73
73
|
requirement: !ruby/object:Gem::Requirement
|
74
74
|
requirements:
|
75
75
|
- - '='
|
76
76
|
- !ruby/object:Gem::Version
|
77
|
-
version: 0.
|
77
|
+
version: 0.28.0.rc4
|
78
78
|
type: :development
|
79
79
|
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
82
|
- - '='
|
83
83
|
- !ruby/object:Gem::Version
|
84
|
-
version: 0.
|
84
|
+
version: 0.28.0.rc4
|
85
85
|
description: Assemblies component for decidim.
|
86
86
|
email:
|
87
87
|
- josepjaume@gmail.com
|
@@ -93,47 +93,56 @@ extra_rdoc_files: []
|
|
93
93
|
files:
|
94
94
|
- README.md
|
95
95
|
- Rakefile
|
96
|
+
- app/cells/decidim/assemblies/assemblies/show.erb
|
97
|
+
- app/cells/decidim/assemblies/assemblies_cell.rb
|
96
98
|
- app/cells/decidim/assemblies/assembly_cell.rb
|
97
|
-
- app/cells/decidim/assemblies/
|
98
|
-
- app/cells/decidim/assemblies/
|
99
|
-
- app/cells/decidim/assemblies/
|
99
|
+
- app/cells/decidim/assemblies/assembly_dropdown_metadata_cell.rb
|
100
|
+
- app/cells/decidim/assemblies/assembly_g_cell.rb
|
101
|
+
- app/cells/decidim/assemblies/assembly_member/data.erb
|
102
|
+
- app/cells/decidim/assemblies/assembly_member/name_and_position.erb
|
100
103
|
- app/cells/decidim/assemblies/assembly_member/show.erb
|
101
104
|
- app/cells/decidim/assemblies/assembly_member_cell.rb
|
102
|
-
- app/cells/decidim/assemblies/
|
105
|
+
- app/cells/decidim/assemblies/assembly_metadata_g_cell.rb
|
106
|
+
- app/cells/decidim/assemblies/assembly_s_cell.rb
|
107
|
+
- app/cells/decidim/assemblies/content_block_cell.rb
|
108
|
+
- app/cells/decidim/assemblies/content_blocks/children_assemblies_cell.rb
|
109
|
+
- app/cells/decidim/assemblies/content_blocks/dates_metadata_cell.rb
|
110
|
+
- app/cells/decidim/assemblies/content_blocks/extra_data_cell.rb
|
103
111
|
- app/cells/decidim/assemblies/content_blocks/highlighted_assemblies_cell.rb
|
104
112
|
- app/cells/decidim/assemblies/content_blocks/highlighted_assemblies_settings_form/show.erb
|
105
113
|
- app/cells/decidim/assemblies/content_blocks/highlighted_assemblies_settings_form_cell.rb
|
114
|
+
- app/cells/decidim/assemblies/content_blocks/main_data_cell.rb
|
115
|
+
- app/cells/decidim/assemblies/content_blocks/metadata_cell.rb
|
116
|
+
- app/cells/decidim/assemblies/content_blocks/related_assemblies/content.erb
|
117
|
+
- app/cells/decidim/assemblies/content_blocks/related_assemblies_cell.rb
|
118
|
+
- app/cells/decidim/assemblies/content_blocks/stats_cell.rb
|
106
119
|
- app/cells/decidim/assembly_activity_cell.rb
|
107
120
|
- app/commands/decidim/assemblies/admin/copy_assembly.rb
|
108
121
|
- app/commands/decidim/assemblies/admin/create_assemblies_type.rb
|
109
122
|
- app/commands/decidim/assemblies/admin/create_assembly.rb
|
110
|
-
- app/commands/decidim/assemblies/admin/create_assembly_admin.rb
|
111
123
|
- app/commands/decidim/assemblies/admin/create_assembly_member.rb
|
112
124
|
- app/commands/decidim/assemblies/admin/destroy_assemblies_type.rb
|
113
|
-
- app/commands/decidim/assemblies/admin/destroy_assembly_admin.rb
|
114
125
|
- app/commands/decidim/assemblies/admin/destroy_assembly_member.rb
|
115
126
|
- app/commands/decidim/assemblies/admin/import_assembly.rb
|
116
|
-
- app/commands/decidim/assemblies/admin/notify_role_assigned_to_assembly.rb
|
117
|
-
- app/commands/decidim/assemblies/admin/publish_assembly.rb
|
118
|
-
- app/commands/decidim/assemblies/admin/unpublish_assembly.rb
|
119
|
-
- app/commands/decidim/assemblies/admin/update_assemblies_setting.rb
|
120
127
|
- app/commands/decidim/assemblies/admin/update_assemblies_type.rb
|
121
128
|
- app/commands/decidim/assemblies/admin/update_assembly.rb
|
122
|
-
- app/commands/decidim/assemblies/admin/update_assembly_admin.rb
|
123
129
|
- app/commands/decidim/assemblies/admin/update_assembly_member.rb
|
124
130
|
- app/constraints/decidim/assemblies/current_assembly.rb
|
125
131
|
- app/constraints/decidim/assemblies/current_component.rb
|
126
132
|
- app/controllers/concerns/decidim/assemblies/admin/assembly_context.rb
|
133
|
+
- app/controllers/concerns/decidim/assemblies/admin/assembly_members/filterable.rb
|
127
134
|
- app/controllers/concerns/decidim/assemblies/admin/filterable.rb
|
135
|
+
- app/controllers/concerns/decidim/assemblies/assembly_breadcrumb.rb
|
128
136
|
- app/controllers/decidim/assemblies/admin/application_controller.rb
|
129
137
|
- app/controllers/decidim/assemblies/admin/assemblies_controller.rb
|
130
|
-
- app/controllers/decidim/assemblies/admin/assemblies_settings_controller.rb
|
131
138
|
- app/controllers/decidim/assemblies/admin/assemblies_types_controller.rb
|
132
139
|
- app/controllers/decidim/assemblies/admin/assembly_attachment_collections_controller.rb
|
133
140
|
- app/controllers/decidim/assemblies/admin/assembly_attachments_controller.rb
|
134
141
|
- app/controllers/decidim/assemblies/admin/assembly_copies_controller.rb
|
135
142
|
- app/controllers/decidim/assemblies/admin/assembly_exports_controller.rb
|
136
143
|
- app/controllers/decidim/assemblies/admin/assembly_imports_controller.rb
|
144
|
+
- app/controllers/decidim/assemblies/admin/assembly_landing_page_content_blocks_controller.rb
|
145
|
+
- app/controllers/decidim/assemblies/admin/assembly_landing_page_controller.rb
|
137
146
|
- app/controllers/decidim/assemblies/admin/assembly_members_controller.rb
|
138
147
|
- app/controllers/decidim/assemblies/admin/assembly_publications_controller.rb
|
139
148
|
- app/controllers/decidim/assemblies/admin/assembly_user_roles_controller.rb
|
@@ -151,10 +160,8 @@ files:
|
|
151
160
|
- app/controllers/decidim/assemblies/application_controller.rb
|
152
161
|
- app/controllers/decidim/assemblies/assemblies_controller.rb
|
153
162
|
- app/controllers/decidim/assemblies/assembly_members_controller.rb
|
154
|
-
- app/controllers/decidim/assemblies/widgets_controller.rb
|
155
163
|
- app/events/decidim/assemblies/create_assembly_member_event.rb
|
156
164
|
- app/events/decidim/role_assigned_to_assembly_event.rb
|
157
|
-
- app/forms/decidim/assemblies/admin/assemblies_setting_form.rb
|
158
165
|
- app/forms/decidim/assemblies/admin/assemblies_type_form.rb
|
159
166
|
- app/forms/decidim/assemblies/admin/assembly_copy_form.rb
|
160
167
|
- app/forms/decidim/assemblies/admin/assembly_form.rb
|
@@ -163,9 +170,10 @@ files:
|
|
163
170
|
- app/forms/decidim/assemblies/admin/assembly_user_role_form.rb
|
164
171
|
- app/helpers/decidim/assemblies/admin/assemblies_admin_menu_helper.rb
|
165
172
|
- app/helpers/decidim/assemblies/admin/assemblies_helper.rb
|
173
|
+
- app/helpers/decidim/assemblies/admin/assembly_members_helper.rb
|
174
|
+
- app/helpers/decidim/assemblies/application_helper.rb
|
166
175
|
- app/helpers/decidim/assemblies/assemblies_helper.rb
|
167
176
|
- app/helpers/decidim/assemblies/filter_assemblies_helper.rb
|
168
|
-
- app/models/decidim/assemblies_setting.rb
|
169
177
|
- app/models/decidim/assemblies_type.rb
|
170
178
|
- app/models/decidim/assembly.rb
|
171
179
|
- app/models/decidim/assembly_member.rb
|
@@ -193,7 +201,6 @@ files:
|
|
193
201
|
- app/presenters/decidim/log/value_types/assembly_presenter.rb
|
194
202
|
- app/presenters/decidim/log/value_types/assembly_type_presenter.rb
|
195
203
|
- app/queries/decidim/assemblies/admin/admin_users.rb
|
196
|
-
- app/queries/decidim/assemblies/admin/assembly_members.rb
|
197
204
|
- app/queries/decidim/assemblies/assemblies_with_user_role.rb
|
198
205
|
- app/queries/decidim/assemblies/filtered_assemblies.rb
|
199
206
|
- app/queries/decidim/assemblies/metrics/assemblies_metric_manage.rb
|
@@ -209,13 +216,10 @@ files:
|
|
209
216
|
- app/serializers/decidim/assemblies/assembly_importer.rb
|
210
217
|
- app/serializers/decidim/assemblies/assembly_serializer.rb
|
211
218
|
- app/views/decidim/assemblies/_assembly.html.erb
|
212
|
-
- app/views/decidim/assemblies/_filter_by_type.html.erb
|
213
219
|
- app/views/decidim/assemblies/admin/assemblies/_form.html.erb
|
214
220
|
- app/views/decidim/assemblies/admin/assemblies/edit.html.erb
|
215
221
|
- app/views/decidim/assemblies/admin/assemblies/index.html.erb
|
216
222
|
- app/views/decidim/assemblies/admin/assemblies/new.html.erb
|
217
|
-
- app/views/decidim/assemblies/admin/assemblies_settings/_form.html.erb
|
218
|
-
- app/views/decidim/assemblies/admin/assemblies_settings/edit.html.erb
|
219
223
|
- app/views/decidim/assemblies/admin/assemblies_types/_form.html.erb
|
220
224
|
- app/views/decidim/assemblies/admin/assemblies_types/edit.html.erb
|
221
225
|
- app/views/decidim/assemblies/admin/assemblies_types/index.html.erb
|
@@ -232,21 +236,18 @@ files:
|
|
232
236
|
- app/views/decidim/assemblies/admin/assembly_user_roles/edit.html.erb
|
233
237
|
- app/views/decidim/assemblies/admin/assembly_user_roles/index.html.erb
|
234
238
|
- app/views/decidim/assemblies/admin/assembly_user_roles/new.html.erb
|
235
|
-
- app/views/decidim/assemblies/assemblies/
|
236
|
-
- app/views/decidim/assemblies/assemblies/_nav_breadcumb.html.erb
|
237
|
-
- app/views/decidim/assemblies/assemblies/_parent_assemblies.html.erb
|
238
|
-
- app/views/decidim/assemblies/assemblies/_promoted_assembly.html.erb
|
239
|
+
- app/views/decidim/assemblies/assemblies/_collection.html.erb
|
239
240
|
- app/views/decidim/assemblies/assemblies/index.html.erb
|
240
241
|
- app/views/decidim/assemblies/assemblies/index.js.erb
|
241
242
|
- app/views/decidim/assemblies/assemblies/show.html.erb
|
242
243
|
- app/views/decidim/assemblies/assembly_members/index.html.erb
|
243
244
|
- app/views/decidim/assemblies/pages/user_profile/_member_of.html.erb
|
244
245
|
- app/views/decidim/assembly_members/_assembly_member.html.erb
|
245
|
-
- app/views/layouts/decidim/
|
246
|
-
- app/views/layouts/decidim/_assembly_navigation.html.erb
|
246
|
+
- app/views/layouts/decidim/admin/_manage_assemblies.html.erb
|
247
247
|
- app/views/layouts/decidim/admin/assemblies.html.erb
|
248
|
+
- app/views/layouts/decidim/admin/assemblies_imports.html.erb
|
249
|
+
- app/views/layouts/decidim/admin/assemblies_types.html.erb
|
248
250
|
- app/views/layouts/decidim/admin/assembly.html.erb
|
249
|
-
- app/views/layouts/decidim/admin/assembly_members.html.erb
|
250
251
|
- app/views/layouts/decidim/assembly.html.erb
|
251
252
|
- config/assets.rb
|
252
253
|
- config/locales/am-ET.yml
|
@@ -281,7 +282,6 @@ files:
|
|
281
282
|
- config/locales/ga-IE.yml
|
282
283
|
- config/locales/gl.yml
|
283
284
|
- config/locales/gn-PY.yml
|
284
|
-
- config/locales/he-IL.yml
|
285
285
|
- config/locales/hr-HR.yml
|
286
286
|
- config/locales/hr.yml
|
287
287
|
- config/locales/hu.yml
|
@@ -351,11 +351,6 @@ files:
|
|
351
351
|
- db/migrate/20210310120444_add_followable_counter_cache_to_assemblies.rb
|
352
352
|
- db/migrate/20210507063604_add_announcement_to_assemblies.rb
|
353
353
|
- db/migrate/20210907120249_remove_designation_mode_from_assembly_members.rb
|
354
|
-
- db/seeds/Exampledocument.pdf
|
355
|
-
- db/seeds/city.jpeg
|
356
|
-
- db/seeds/city2.jpeg
|
357
|
-
- db/seeds/homepage_image.jpg
|
358
|
-
- decidim-assemblies.gemspec
|
359
354
|
- lib/decidim/api/assemblies_type_type.rb
|
360
355
|
- lib/decidim/api/assembly_member_type.rb
|
361
356
|
- lib/decidim/api/assembly_type.rb
|
@@ -363,31 +358,39 @@ files:
|
|
363
358
|
- lib/decidim/assemblies/admin.rb
|
364
359
|
- lib/decidim/assemblies/admin_engine.rb
|
365
360
|
- lib/decidim/assemblies/api.rb
|
361
|
+
- lib/decidim/assemblies/content_blocks/registry_manager.rb
|
366
362
|
- lib/decidim/assemblies/engine.rb
|
363
|
+
- lib/decidim/assemblies/menu.rb
|
367
364
|
- lib/decidim/assemblies/participatory_space.rb
|
368
365
|
- lib/decidim/assemblies/query_extensions.rb
|
366
|
+
- lib/decidim/assemblies/seeds.rb
|
369
367
|
- lib/decidim/assemblies/test/factories.rb
|
370
368
|
- lib/decidim/assemblies/version.rb
|
371
|
-
homepage: https://
|
369
|
+
homepage: https://decidim.org
|
372
370
|
licenses:
|
373
371
|
- AGPL-3.0
|
374
|
-
metadata:
|
372
|
+
metadata:
|
373
|
+
bug_tracker_uri: https://github.com/decidim/decidim/issues
|
374
|
+
documentation_uri: https://docs.decidim.org/
|
375
|
+
funding_uri: https://opencollective.com/decidim
|
376
|
+
homepage_uri: https://decidim.org
|
377
|
+
source_code_uri: https://github.com/decidim/decidim
|
375
378
|
post_install_message:
|
376
379
|
rdoc_options: []
|
377
380
|
require_paths:
|
378
381
|
- lib
|
379
382
|
required_ruby_version: !ruby/object:Gem::Requirement
|
380
383
|
requirements:
|
381
|
-
- - "
|
384
|
+
- - ">="
|
382
385
|
- !ruby/object:Gem::Version
|
383
|
-
version: 3.
|
386
|
+
version: '3.1'
|
384
387
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
385
388
|
requirements:
|
386
|
-
- - "
|
389
|
+
- - ">"
|
387
390
|
- !ruby/object:Gem::Version
|
388
|
-
version:
|
391
|
+
version: 1.3.1
|
389
392
|
requirements: []
|
390
|
-
rubygems_version: 3.
|
393
|
+
rubygems_version: 3.4.20
|
391
394
|
signing_key:
|
392
395
|
specification_version: 4
|
393
396
|
summary: Decidim assemblies module
|
@@ -1,15 +0,0 @@
|
|
1
|
-
<div class="card__footer card__footer--spaces">
|
2
|
-
<div class="card__support">
|
3
|
-
<% if has_assembly_type? %>
|
4
|
-
<div class="card__support__data--left">
|
5
|
-
<div><%= t("assemblies.show.assembly_type", scope: "decidim") %></div>
|
6
|
-
<div class="text-ellipsis"><strong><%= assembly_type %></strong></div>
|
7
|
-
</div>
|
8
|
-
<% end %>
|
9
|
-
<%= link_to(
|
10
|
-
t(model.cta_button_text_key, scope: "layouts.decidim.assemblies.assembly"),
|
11
|
-
resource_path,
|
12
|
-
class: "card__button button button--sc small"
|
13
|
-
) %>
|
14
|
-
</div>
|
15
|
-
</div>
|
@@ -1 +0,0 @@
|
|
1
|
-
<%= render_hook :upcoming_meeting_for_card %>
|
@@ -1,77 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Assemblies
|
5
|
-
# This cell renders the Medium (:m) assembyl card
|
6
|
-
# for an given instance of an Assembly
|
7
|
-
class AssemblyMCell < Decidim::CardMCell
|
8
|
-
include Decidim::ViewHooksHelper
|
9
|
-
|
10
|
-
# Needed for the view hooks
|
11
|
-
def current_participatory_space
|
12
|
-
model
|
13
|
-
end
|
14
|
-
|
15
|
-
private
|
16
|
-
|
17
|
-
def has_image?
|
18
|
-
true
|
19
|
-
end
|
20
|
-
|
21
|
-
def has_children?
|
22
|
-
model.children.any?
|
23
|
-
end
|
24
|
-
|
25
|
-
def resource_path
|
26
|
-
Decidim::Assemblies::Engine.routes.url_helpers.assembly_path(model)
|
27
|
-
end
|
28
|
-
|
29
|
-
def resource_image_path
|
30
|
-
model.attached_uploader(:hero_image).path
|
31
|
-
end
|
32
|
-
|
33
|
-
def statuses
|
34
|
-
return super unless has_children?
|
35
|
-
|
36
|
-
[:creation_date, :follow, :children_count]
|
37
|
-
end
|
38
|
-
|
39
|
-
def creation_date_status
|
40
|
-
l(model.creation_date, format: :decidim_short) if model.creation_date
|
41
|
-
end
|
42
|
-
|
43
|
-
def children_count_status
|
44
|
-
# rubocop: disable Style/StringConcatenation
|
45
|
-
content_tag(
|
46
|
-
:strong,
|
47
|
-
t("layouts.decidim.assemblies.index.children")
|
48
|
-
) + " " + children_assemblies_visible_for_user
|
49
|
-
# rubocop: enable Style/StringConcatenation
|
50
|
-
end
|
51
|
-
|
52
|
-
def children_assemblies_visible_for_user
|
53
|
-
assemblies = model.children.published
|
54
|
-
|
55
|
-
if current_user
|
56
|
-
return assemblies.count.to_s if current_user.admin
|
57
|
-
|
58
|
-
assemblies.visible_for(current_user).count.to_s
|
59
|
-
else
|
60
|
-
assemblies.public_spaces.count.to_s
|
61
|
-
end
|
62
|
-
end
|
63
|
-
|
64
|
-
def resource_icon
|
65
|
-
icon "assemblies", class: "icon--big"
|
66
|
-
end
|
67
|
-
|
68
|
-
def has_assembly_type?
|
69
|
-
model.assembly_type.present?
|
70
|
-
end
|
71
|
-
|
72
|
-
def assembly_type
|
73
|
-
decidim_sanitize_translated model.assembly_type.title
|
74
|
-
end
|
75
|
-
end
|
76
|
-
end
|
77
|
-
end
|
@@ -1,30 +0,0 @@
|
|
1
|
-
<section id="highlighted_assemblies" class="wrapper-home home-section" xmlns="http://www.w3.org/1999/xhtml">
|
2
|
-
<div class="row" id="highlighted-assemblies">
|
3
|
-
<h3 class="section-heading"><%= t("active_assemblies", scope: i18n_scope) %></h3>
|
4
|
-
<div class="row collapse">
|
5
|
-
<div class="row small-up-1 smallmedium-up-2 mediumlarge-up-3
|
6
|
-
large-up-4 card-grid">
|
7
|
-
<% highlighted_assemblies.each do |assembly| %>
|
8
|
-
<div class="column">
|
9
|
-
<%= link_to decidim_assemblies.assembly_path(assembly), class: "card card--assembly card--mini" do %>
|
10
|
-
<div aria-hidden="true" class="card__image-top"
|
11
|
-
style="background-image:url('<%= assembly.attached_uploader(:hero_image).path %>')"></div>
|
12
|
-
<div class="card__content">
|
13
|
-
<span class="card__title card__link"><%= decidim_escape_translated assembly.title %></span>
|
14
|
-
</div>
|
15
|
-
<% end %>
|
16
|
-
</div>
|
17
|
-
<% end %>
|
18
|
-
</div>
|
19
|
-
</div>
|
20
|
-
</div>
|
21
|
-
<div class="row" id="see-all-assemblies">
|
22
|
-
<div class="columns small-centered small-12
|
23
|
-
smallmedium-8 medium-6 large-4">
|
24
|
-
<%= link_to t("see_all_assemblies", scope: i18n_scope),
|
25
|
-
decidim_assemblies.assemblies_path,
|
26
|
-
class: "button expanded hollow button--sc home-section__cta",
|
27
|
-
title: t("assemblies_button_title", scope: i18n_scope) %>
|
28
|
-
</div>
|
29
|
-
</div>
|
30
|
-
</section>
|
@@ -1,54 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Assemblies
|
5
|
-
module Admin
|
6
|
-
# A command with all the business logic when creating a new participatory
|
7
|
-
# process admin in the system.
|
8
|
-
class CreateAssemblyAdmin < NotifyRoleAssignedToAssembly
|
9
|
-
include ::Decidim::Admin::CreateParticipatorySpaceAdminUserActions
|
10
|
-
|
11
|
-
# Public: Initializes the command.
|
12
|
-
#
|
13
|
-
# form - A form object with the params.
|
14
|
-
# assembly - The Assembly that will hold the
|
15
|
-
# user role
|
16
|
-
def initialize(form, current_user, assembly)
|
17
|
-
@form = form
|
18
|
-
@current_user = current_user
|
19
|
-
@participatory_space = assembly
|
20
|
-
end
|
21
|
-
|
22
|
-
private
|
23
|
-
|
24
|
-
attr_reader :form, :participatory_space, :current_user, :user
|
25
|
-
|
26
|
-
def existing_role
|
27
|
-
Decidim::AssemblyUserRole.exists?(
|
28
|
-
role: form.role.to_sym,
|
29
|
-
user: user,
|
30
|
-
assembly: @participatory_process
|
31
|
-
)
|
32
|
-
end
|
33
|
-
|
34
|
-
def create_role
|
35
|
-
Decidim.traceability.perform_action!(
|
36
|
-
:create,
|
37
|
-
Decidim::AssemblyUserRole,
|
38
|
-
current_user,
|
39
|
-
resource: {
|
40
|
-
title: user.name
|
41
|
-
}
|
42
|
-
) do
|
43
|
-
Decidim::AssemblyUserRole.find_or_create_by!(
|
44
|
-
role: form.role.to_sym,
|
45
|
-
user: user,
|
46
|
-
assembly: participatory_space
|
47
|
-
)
|
48
|
-
end
|
49
|
-
send_notification user
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
@@ -1,58 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Assemblies
|
5
|
-
module Admin
|
6
|
-
# A command with all the business logic when destroying an assembly
|
7
|
-
# admin in the system.
|
8
|
-
class DestroyAssemblyAdmin < Decidim::Command
|
9
|
-
# Public: Initializes the command.
|
10
|
-
#
|
11
|
-
# role - the AssemblyUserRole to destroy
|
12
|
-
# current_user - the user performing this action
|
13
|
-
def initialize(role, current_user)
|
14
|
-
@role = role
|
15
|
-
@current_user = current_user
|
16
|
-
end
|
17
|
-
|
18
|
-
# Executes the command. Broadcasts these events:
|
19
|
-
#
|
20
|
-
# - :ok when everything is valid.
|
21
|
-
# - :invalid if the form wasn't valid and we couldn't proceed.
|
22
|
-
#
|
23
|
-
# Returns nothing.
|
24
|
-
def call
|
25
|
-
destroy_role!
|
26
|
-
dispatch_system_event
|
27
|
-
broadcast(:ok)
|
28
|
-
end
|
29
|
-
|
30
|
-
private
|
31
|
-
|
32
|
-
attr_reader :role, :current_user
|
33
|
-
|
34
|
-
def dispatch_system_event
|
35
|
-
ActiveSupport::Notifications.publish("decidim.system.participatory_space.admin.destroyed", role.class.name, role.id)
|
36
|
-
end
|
37
|
-
|
38
|
-
def destroy_role!
|
39
|
-
extra_info = {
|
40
|
-
resource: {
|
41
|
-
title: role.user.name
|
42
|
-
}
|
43
|
-
}
|
44
|
-
|
45
|
-
Decidim.traceability.perform_action!(
|
46
|
-
"delete",
|
47
|
-
role,
|
48
|
-
current_user,
|
49
|
-
extra_info
|
50
|
-
) do
|
51
|
-
role.destroy!
|
52
|
-
role
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Assemblies
|
5
|
-
module Admin
|
6
|
-
# A command to notify users when a role is assigned for an assembly
|
7
|
-
class NotifyRoleAssignedToAssembly < Decidim::Command
|
8
|
-
def send_notification(user)
|
9
|
-
Decidim::EventsManager.publish(
|
10
|
-
event: "decidim.events.assembly.role_assigned",
|
11
|
-
event_class: Decidim::RoleAssignedToAssemblyEvent,
|
12
|
-
resource: form.current_participatory_space,
|
13
|
-
affected_users: [user],
|
14
|
-
extra: {
|
15
|
-
role: form.role
|
16
|
-
}
|
17
|
-
)
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Assemblies
|
5
|
-
module Admin
|
6
|
-
# A command that sets an assembly as published.
|
7
|
-
class PublishAssembly < Decidim::Command
|
8
|
-
# Public: Initializes the command.
|
9
|
-
#
|
10
|
-
# assembly - A Assembly that will be published
|
11
|
-
# current_user - the user performing the action
|
12
|
-
def initialize(assembly, current_user)
|
13
|
-
@assembly = assembly
|
14
|
-
@current_user = current_user
|
15
|
-
end
|
16
|
-
|
17
|
-
# Executes the command. Broadcasts these events:
|
18
|
-
#
|
19
|
-
# - :ok when everything is valid.
|
20
|
-
# - :invalid if the data wasn't valid and we couldn't proceed.
|
21
|
-
#
|
22
|
-
# Returns nothing.
|
23
|
-
def call
|
24
|
-
return broadcast(:invalid) if assembly.nil? || assembly.published?
|
25
|
-
|
26
|
-
Decidim.traceability.perform_action!("publish", assembly, current_user, visibility: "all") do
|
27
|
-
assembly.publish!
|
28
|
-
end
|
29
|
-
|
30
|
-
broadcast(:ok)
|
31
|
-
end
|
32
|
-
|
33
|
-
private
|
34
|
-
|
35
|
-
attr_reader :assembly, :current_user
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Decidim
|
4
|
-
module Assemblies
|
5
|
-
module Admin
|
6
|
-
# A command that sets an assembly as unpublished.
|
7
|
-
class UnpublishAssembly < Decidim::Command
|
8
|
-
# Public: Initializes the command.
|
9
|
-
#
|
10
|
-
# assembly - A Assembly that will be published
|
11
|
-
# current_user - the user performing the action
|
12
|
-
def initialize(assembly, current_user)
|
13
|
-
@assembly = assembly
|
14
|
-
@current_user = current_user
|
15
|
-
end
|
16
|
-
|
17
|
-
# Executes the command. Broadcasts these events:
|
18
|
-
#
|
19
|
-
# - :ok when everything is valid.
|
20
|
-
# - :invalid if the data wasn't valid and we couldn't proceed.
|
21
|
-
#
|
22
|
-
# Returns nothing.
|
23
|
-
def call
|
24
|
-
return broadcast(:invalid) if assembly.nil? || !assembly.published?
|
25
|
-
|
26
|
-
Decidim.traceability.perform_action!("unpublish", assembly, current_user) do
|
27
|
-
assembly.unpublish!
|
28
|
-
end
|
29
|
-
|
30
|
-
broadcast(:ok)
|
31
|
-
end
|
32
|
-
|
33
|
-
private
|
34
|
-
|
35
|
-
attr_reader :assembly, :current_user
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|