decidim-assemblies 0.29.1 → 0.30.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/assemblies/assembly_metadata_g_cell.rb +1 -14
  3. data/app/cells/decidim/assemblies/content_blocks/extra_data_cell.rb +2 -12
  4. data/app/cells/decidim/assemblies/content_blocks/highlighted_assemblies_settings_form/show.erb +1 -1
  5. data/app/commands/decidim/assemblies/admin/copy_assembly.rb +2 -14
  6. data/app/commands/decidim/assemblies/admin/create_assembly.rb +2 -2
  7. data/app/commands/decidim/assemblies/admin/import_assembly.rb +0 -2
  8. data/app/commands/decidim/assemblies/admin/update_assembly.rb +2 -2
  9. data/app/controllers/concerns/decidim/assemblies/admin/filterable.rb +2 -11
  10. data/app/controllers/decidim/assemblies/admin/assemblies_controller.rb +19 -4
  11. data/app/controllers/decidim/assemblies/admin/assembly_copies_controller.rb +1 -1
  12. data/app/controllers/decidim/assemblies/admin/assembly_landing_page_content_blocks_controller.rb +6 -0
  13. data/app/controllers/decidim/assemblies/admin/assembly_share_tokens_controller.rb +18 -0
  14. data/app/controllers/decidim/assemblies/admin/component_share_tokens_controller.rb +18 -0
  15. data/app/controllers/decidim/assemblies/assemblies_controller.rb +1 -3
  16. data/app/controllers/decidim/assemblies/{assembly_members_controller.rb → participatory_space_private_users_controller.rb} +3 -11
  17. data/app/forms/decidim/assemblies/admin/assembly_copy_form.rb +0 -1
  18. data/app/forms/decidim/assemblies/admin/assembly_form.rb +13 -48
  19. data/app/forms/decidim/assemblies/admin/assembly_import_form.rb +0 -1
  20. data/app/helpers/decidim/assemblies/admin/assemblies_helper.rb +26 -4
  21. data/app/helpers/decidim/assemblies/assemblies_helper.rb +4 -4
  22. data/app/helpers/decidim/assemblies/filter_assemblies_helper.rb +11 -15
  23. data/app/models/decidim/assembly.rb +26 -11
  24. data/app/packs/entrypoints/decidim_assemblies_admin.js +0 -1
  25. data/app/packs/entrypoints/decidim_assemblies_admin_list.js +1 -0
  26. data/app/packs/src/decidim/assemblies/admin/assemblies_list.js +72 -0
  27. data/app/permissions/decidim/assemblies/permissions.rb +9 -20
  28. data/app/presenters/decidim/assemblies/admin_log/assembly_presenter.rb +1 -1
  29. data/app/presenters/decidim/assemblies/assembly_presenter.rb +2 -8
  30. data/app/queries/decidim/assemblies/metrics/assemblies_metric_manage.rb +2 -2
  31. data/app/serializers/decidim/assemblies/assembly_importer.rb +0 -35
  32. data/app/serializers/decidim/assemblies/assembly_serializer.rb +11 -135
  33. data/app/serializers/decidim/assemblies/open_data_assembly_serializer.rb +59 -0
  34. data/app/views/decidim/assemblies/admin/assemblies/_assemblies_thead.html.erb +19 -0
  35. data/app/views/decidim/assemblies/admin/assemblies/_assembly_row.html.erb +101 -0
  36. data/app/views/decidim/assemblies/admin/assemblies/_form.html.erb +29 -41
  37. data/app/views/decidim/assemblies/admin/assemblies/index.html.erb +18 -92
  38. data/app/views/decidim/assemblies/admin/assemblies/index.js.erb +10 -0
  39. data/app/views/decidim/assemblies/admin/assemblies/manage_trash.html.erb +20 -0
  40. data/app/views/decidim/assemblies/admin/assembly_copies/_form.html.erb +0 -4
  41. data/app/views/decidim/assemblies/admin/assembly_imports/_form.html.erb +0 -3
  42. data/app/views/decidim/assemblies/assemblies/index.html.erb +3 -1
  43. data/app/views/decidim/assemblies/assemblies/show.html.erb +5 -6
  44. data/app/views/decidim/assemblies/{assembly_members → participatory_space_private_users}/index.html.erb +6 -5
  45. data/config/assets.rb +2 -1
  46. data/config/locales/ar.yml +1 -72
  47. data/config/locales/bg.yml +0 -74
  48. data/config/locales/bn-BD.yml +1 -0
  49. data/config/locales/bs-BA.yml +29 -0
  50. data/config/locales/ca.yml +70 -74
  51. data/config/locales/cs.yml +70 -74
  52. data/config/locales/de.yml +72 -76
  53. data/config/locales/el.yml +0 -72
  54. data/config/locales/en.yml +71 -75
  55. data/config/locales/es-MX.yml +70 -74
  56. data/config/locales/es-PY.yml +70 -74
  57. data/config/locales/es.yml +70 -74
  58. data/config/locales/eu.yml +108 -112
  59. data/config/locales/fi-plain.yml +71 -75
  60. data/config/locales/fi.yml +75 -79
  61. data/config/locales/fr-CA.yml +22 -74
  62. data/config/locales/fr.yml +22 -74
  63. data/config/locales/ga-IE.yml +0 -23
  64. data/config/locales/gl.yml +0 -70
  65. data/config/locales/he-IL.yml +143 -23
  66. data/config/locales/hu.yml +0 -74
  67. data/config/locales/id-ID.yml +0 -58
  68. data/config/locales/is-IS.yml +0 -45
  69. data/config/locales/it.yml +0 -71
  70. data/config/locales/ja.yml +70 -74
  71. data/config/locales/kaa.yml +0 -9
  72. data/config/locales/ko.yml +0 -13
  73. data/config/locales/lb.yml +0 -66
  74. data/config/locales/lt.yml +0 -72
  75. data/config/locales/lv.yml +0 -69
  76. data/config/locales/nl.yml +0 -70
  77. data/config/locales/no.yml +0 -70
  78. data/config/locales/pl.yml +0 -75
  79. data/config/locales/pt-BR.yml +0 -74
  80. data/config/locales/pt.yml +0 -70
  81. data/config/locales/ro-RO.yml +5 -72
  82. data/config/locales/ru.yml +0 -57
  83. data/config/locales/sk.yml +0 -28
  84. data/config/locales/sl.yml +0 -39
  85. data/config/locales/sq-AL.yml +0 -74
  86. data/config/locales/sr-CS.yml +0 -15
  87. data/config/locales/sv.yml +75 -79
  88. data/config/locales/tr-TR.yml +0 -75
  89. data/config/locales/uk.yml +0 -57
  90. data/config/locales/zh-CN.yml +0 -69
  91. data/config/locales/zh-TW.yml +0 -72
  92. data/db/migrate/20190215093700_reset_negative_children_count_counters.rb +2 -2
  93. data/db/migrate/20210310120444_add_followable_counter_cache_to_assemblies.rb +1 -1
  94. data/db/migrate/20240822161222_add_deleted_at_to_decidim_assemblies.rb +8 -0
  95. data/db/migrate/20241016101151_migrate_assembly_members_to_private_users.rb +53 -0
  96. data/db/migrate/20241108141651_remove_column_show_statistics_from_assemblies.rb +7 -0
  97. data/decidim-assemblies.gemspec +2 -2
  98. data/lib/decidim/api/assemblies_type_type.rb +2 -2
  99. data/lib/decidim/api/assembly_type.rb +32 -34
  100. data/lib/decidim/assemblies/admin_engine.rb +77 -54
  101. data/lib/decidim/assemblies/api.rb +0 -1
  102. data/lib/decidim/assemblies/content_blocks/registry_manager.rb +11 -0
  103. data/lib/decidim/assemblies/engine.rb +9 -3
  104. data/lib/decidim/assemblies/menu.rb +9 -22
  105. data/lib/decidim/assemblies/participatory_space.rb +7 -3
  106. data/lib/decidim/assemblies/seeds.rb +9 -33
  107. data/lib/decidim/assemblies/test/factories.rb +15 -36
  108. data/lib/decidim/assemblies/version.rb +1 -1
  109. metadata +31 -49
  110. data/app/cells/decidim/assemblies/assembly_member/data.erb +0 -19
  111. data/app/cells/decidim/assemblies/assembly_member/name_and_position.erb +0 -11
  112. data/app/cells/decidim/assemblies/assembly_member/show.erb +0 -9
  113. data/app/cells/decidim/assemblies/assembly_member_cell.rb +0 -21
  114. data/app/commands/decidim/assemblies/admin/create_assembly_member.rb +0 -55
  115. data/app/commands/decidim/assemblies/admin/destroy_assembly_member.rb +0 -24
  116. data/app/commands/decidim/assemblies/admin/update_assembly_member.rb +0 -29
  117. data/app/controllers/concerns/decidim/assemblies/admin/assembly_members/filterable.rb +0 -39
  118. data/app/controllers/decidim/assemblies/admin/assemblies_types_controller.rb +0 -107
  119. data/app/controllers/decidim/assemblies/admin/assembly_members_controller.rb +0 -83
  120. data/app/controllers/decidim/assemblies/admin/categories_controller.rb +0 -13
  121. data/app/events/decidim/assemblies/create_assembly_member_event.rb +0 -17
  122. data/app/forms/decidim/assemblies/admin/assembly_member_form.rb +0 -64
  123. data/app/helpers/decidim/assemblies/admin/assembly_members_helper.rb +0 -11
  124. data/app/models/decidim/assembly_member.rb +0 -34
  125. data/app/packs/src/decidim/assemblies/admin/assembly_members.js +0 -47
  126. data/app/packs/src/decidim/assemblies/orgchart.js +0 -0
  127. data/app/presenters/decidim/admin/assembly_member_presenter.rb +0 -24
  128. data/app/presenters/decidim/assemblies/admin_log/assembly_member_presenter.rb +0 -51
  129. data/app/presenters/decidim/assemblies/admin_log/value_types/member_position_presenter.rb +0 -22
  130. data/app/presenters/decidim/assembly_member_presenter.rb +0 -68
  131. data/app/views/decidim/assemblies/admin/assemblies_types/_form.html.erb +0 -9
  132. data/app/views/decidim/assemblies/admin/assemblies_types/edit.html.erb +0 -13
  133. data/app/views/decidim/assemblies/admin/assemblies_types/index.html.erb +0 -44
  134. data/app/views/decidim/assemblies/admin/assemblies_types/new.html.erb +0 -18
  135. data/app/views/decidim/assemblies/admin/assembly_members/_form.html.erb +0 -62
  136. data/app/views/decidim/assemblies/admin/assembly_members/edit.html.erb +0 -18
  137. data/app/views/decidim/assemblies/admin/assembly_members/index.html.erb +0 -55
  138. data/app/views/decidim/assemblies/admin/assembly_members/new.html.erb +0 -18
  139. data/app/views/decidim/assembly_members/_assembly_member.html.erb +0 -1
  140. data/app/views/layouts/decidim/admin/assemblies_types.html.erb +0 -17
  141. data/lib/decidim/api/assembly_member_type.rb +0 -27
@@ -1,62 +0,0 @@
1
- <div class="form__wrapper">
2
- <div class="card pt-4">
3
- <div class="card-section">
4
- <div class="user-fields">
5
- <div class="row column">
6
- <%= form.select :existing_user, [[t(".non_user"), false], [t(".existing_user"), true]], label: t(".user_type") %>
7
- </div>
8
-
9
- <div class="row column user-fields--full-name">
10
- <%= form.text_field :full_name, autofocus: true %>
11
- </div>
12
-
13
- <div class="row column user-fields--non-user-avatar">
14
- <%= form.upload :non_user_avatar, help_i18n_messages: %w(non_user_avatar_help image_guide), help_i18n_scope: "decidim.assemblies.admin.assembly_members.form", button_class: "button button__sm button__transparent-secondary" %>
15
- </div>
16
-
17
- <div class="row column user-fields--user-picker">
18
- <% prompt_options = { url: decidim_admin.user_entities_organization_url, placeholder: t(".select_user") } %>
19
- <%= form.autocomplete_select(:user_id, form.object.user.presence, { multiple: false }, prompt_options) do |user|
20
- { value: user.id, label: "#{user.name} (@#{user.nickname})" }
21
- end %>
22
- </div>
23
- </div>
24
-
25
- <div class="position-fields">
26
- <div class="row column">
27
- <%= form.select :position, @form.positions_for_select, { include_blank: t(".select_a_position") }, { multiple: false } %>
28
- </div>
29
-
30
- <div class="row column position-fields--position-other">
31
- <%= form.text_field :position_other %>
32
- </div>
33
- </div>
34
-
35
- <div class="row column">
36
- <%= form.number_field :weight %>
37
- </div>
38
-
39
- <div class="row column">
40
- <%= form.date_field :designation_date %>
41
- </div>
42
-
43
- <div class="row column">
44
- <%= form.date_field :ceased_date %>
45
- </div>
46
-
47
- <div class="row column">
48
- <%= form.text_field :gender %>
49
- </div>
50
-
51
- <div class="row column">
52
- <%= form.date_field :birthday %>
53
- </div>
54
-
55
- <div class="row column">
56
- <%= form.text_field :birthplace %>
57
- </div>
58
- </div>
59
- </div>
60
-
61
- <%= append_javascript_pack_tag "decidim_assemblies_admin" %>
62
- </div>
@@ -1,18 +0,0 @@
1
- <% add_decidim_page_title(t("assembly_members.edit.title", scope: "decidim.admin")) %>
2
- <div class="item_show__header">
3
- <h1 class="item_show__header-title">
4
- <%= t("assembly_members.edit.title", scope: "decidim.admin") %>
5
- </h1>
6
- </div>
7
- <div class="item__edit item__edit-1col">
8
- <div class="item__edit-form">
9
- <%= decidim_form_for(@form, url: assembly_member_path(@assembly_member.assembly, @assembly_member), html: { class: "form form-defaults edit_assembly_member" }) do |f| %>
10
- <%= render partial: "form", object: f %>
11
- <div class="item__edit-sticky">
12
- <div class="item__edit-sticky-container">
13
- <%= f.submit t("assembly_members.edit.update", scope: "decidim.admin"), class: "button button__sm button__secondary" %>
14
- </div>
15
- </div>
16
- <% end %>
17
- </div>
18
- </div>
@@ -1,55 +0,0 @@
1
- <% add_decidim_page_title(t("assembly_members_title", scope: "decidim.admin.assembly_members.index")) %>
2
- <div class="item_show__header">
3
- <h1 class="item_show__header-title">
4
- <%= t("assembly_members_title", scope: "decidim.admin.assembly_members.index") %>
5
- <% if allowed_to? :create, :assembly_member %>
6
- <%= link_to t("actions.new_assembly_member", scope: "decidim.admin"), new_assembly_member_path(current_assembly), class: "button button__sm button__secondary new" %>
7
- <% end %>
8
- </h1>
9
- </div>
10
-
11
- <div class="card" id="assembly_members">
12
- <%= admin_filter_selector %>
13
- <div class="table-scroll">
14
- <table class="table-list">
15
- <thead>
16
- <tr>
17
- <th><%= t("models.assembly_member.fields.full_name", scope: "decidim.admin") %></th>
18
- <th><%= t("models.assembly_member.fields.position", scope: "decidim.admin") %></th>
19
- <th><%= t("models.assembly_member.fields.designation_date", scope: "decidim.admin") %></th>
20
- <th><%= t("models.assembly_member.fields.ceased_date", scope: "decidim.admin") %></th>
21
- <th></th>
22
- </tr>
23
- </thead>
24
- <tbody>
25
- <% @assembly_members.each do |member| %>
26
- <% member_presenter = Decidim::Admin::AssemblyMemberPresenter.new(member) %>
27
- <tr>
28
- <td>
29
- <%= member_presenter.name %>
30
- </td>
31
- <td>
32
- <%= member_presenter.position %>
33
- </td>
34
- <td>
35
- <%= l member.designation_date, format: :decidim_short %>
36
- </td>
37
- <td>
38
- <%= member.ceased_date ? l(member.ceased_date, format: :decidim_short) : nil %>
39
- </td>
40
- <td class="table-list__actions">
41
- <% if allowed_to? :update, :assembly_member, member: member %>
42
- <%= icon_link_to "pencil-line", edit_assembly_member_path(current_assembly, member), t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit" %>
43
- <% end %>
44
-
45
- <% if allowed_to? :destroy, :assembly_member, member: member %>
46
- <%= icon_link_to "delete-bin-line", assembly_member_path(current_assembly, member), t("actions.destroy", scope: "decidim.admin"), class: "action-icon--remove", method: :delete, data: { confirm: t("actions.confirm_destroy", scope: "decidim.admin") } %>
47
- <% end %>
48
- </td>
49
- </tr>
50
- <% end %>
51
- </tbody>
52
- </table>
53
- </div>
54
- <%= decidim_paginate @assembly_members %>
55
- </div>
@@ -1,18 +0,0 @@
1
- <% add_decidim_page_title(t("assembly_members.new.title", scope: "decidim.admin")) %>
2
- <div class="item_show__header">
3
- <h1 class="item_show__header-title">
4
- <%= t("assembly_members.new.title", scope: "decidim.admin") %>
5
- </h1>
6
- </div>
7
- <div class="item__edit item__edit-1col">
8
- <div class="item__edit-form">
9
- <%= decidim_form_for(@form, html: { class: "form-defaults form new_assembly_member" }) do |f| %>
10
- <%= render partial: "form", object: f %>
11
- <div class="item__edit-sticky">
12
- <div class="item__edit-sticky-container">
13
- <%= f.submit t("assembly_members.new.create", scope: "decidim.admin"), class: "button button__sm button__secondary" %>
14
- </div>
15
- </div>
16
- <% end %>
17
- </div>
18
- </div>
@@ -1 +0,0 @@
1
- <%= cell "decidim/assemblies/assembly_member", Decidim::AssemblyMemberPresenter.new(assembly_member) %>
@@ -1,17 +0,0 @@
1
- <% content_for :breadcrumb_context_menu do %>
2
- <div class="process-title-content-breadcrumb-container-right">
3
- <% if allowed_to? :create, :assembly_type %>
4
- <%= link_to [:new, :assemblies_type], class: "button button__sm button__transparent process-title-content-breadcrumb-container-right-link" do %>
5
- <%= icon "add-line", class: "w-4 h-4" %>
6
- <span>
7
- <%= t("actions.new_assembly_type", scope: "decidim.admin") %>
8
- </span>
9
- <% end %>
10
- <% end %>
11
- <%= render partial: "layouts/decidim/admin/manage_assemblies" %>
12
- </div>
13
- <% end %>
14
-
15
- <%= render "layouts/decidim/admin/application" do %>
16
- <%= yield %>
17
- <% end %>
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Decidim
4
- module Assemblies
5
- # This type represents an AssemblyMember instance.
6
- class AssemblyMemberType < Decidim::Api::Types::BaseObject
7
- description "An assembly member"
8
-
9
- field :id, GraphQL::Types::ID, "Internal ID of the member", null: false
10
- field :full_name, GraphQL::Types::String, "Full name of the member", null: true
11
- field :position, GraphQL::Types::String, "Position of the member in the assembly", null: true
12
-
13
- field :user, Decidim::Core::UserType, "The corresponding decidim user", null: true
14
-
15
- field :created_at, Decidim::Core::DateTimeType, "The time this member was created", null: true
16
- field :updated_at, Decidim::Core::DateTimeType, "The time this member was updated", null: true
17
-
18
- field :weight, GraphQL::Types::Int, "Order of appearance in which it should be represented", null: true
19
- field :gender, GraphQL::Types::String, "Gender of the member", null: true
20
- # field :birthday, Decidim::Core::DateType, "Birthday date of the member" # non-public currently
21
- field :birthplace, GraphQL::Types::String, "Birthplace of the member", null: true
22
- field :designation_date, Decidim::Core::DateType, "Date of designation of the member", null: true
23
- field :position_other, GraphQL::Types::String, "Custom position name", null: true
24
- field :ceased_date, Decidim::Core::DateType, "Date of cease for the member", null: true
25
- end
26
- end
27
- end