decidim-meetings 0.27.8 → 0.28.0.rc4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (251) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/meetings/attending_organizations_list_cell.rb +32 -0
  3. data/app/cells/decidim/meetings/cancel_registration_meeting_button/cancelation_modal.erb +21 -0
  4. data/app/cells/decidim/meetings/cancel_registration_meeting_button/show.erb +10 -13
  5. data/app/cells/decidim/meetings/cancel_registration_meeting_button_cell.rb +2 -2
  6. data/app/cells/decidim/meetings/content_blocks/highlighted_meetings_cell.rb +8 -18
  7. data/app/cells/decidim/meetings/dates_and_map/show.erb +25 -0
  8. data/app/cells/decidim/meetings/dates_and_map/static_map.erb +1 -0
  9. data/app/cells/decidim/meetings/dates_and_map_cell.rb +35 -0
  10. data/app/cells/decidim/meetings/highlighted_meetings_for_component/show.erb +32 -30
  11. data/app/cells/decidim/meetings/highlighted_meetings_for_component_cell.rb +76 -16
  12. data/app/cells/decidim/meetings/join_meeting_button/registration_modal.erb +25 -0
  13. data/app/cells/decidim/meetings/join_meeting_button/remaining_slots.erb +4 -0
  14. data/app/cells/decidim/meetings/join_meeting_button/show.erb +6 -4
  15. data/app/cells/decidim/meetings/join_meeting_button_cell.rb +3 -7
  16. data/app/cells/decidim/meetings/meeting_activity_cell.rb +1 -12
  17. data/app/cells/decidim/meetings/meeting_card_metadata_cell.rb +64 -0
  18. data/app/cells/decidim/meetings/meeting_cell.rb +2 -6
  19. data/app/cells/decidim/meetings/meeting_l/image.erb +5 -0
  20. data/app/cells/decidim/meetings/meeting_l_cell.rb +33 -0
  21. data/app/cells/decidim/meetings/meeting_month/show.erb +33 -0
  22. data/app/cells/decidim/meetings/meeting_month_cell.rb +72 -0
  23. data/app/cells/decidim/meetings/meeting_s_cell.rb +5 -37
  24. data/app/cells/decidim/meetings/meetings_map/show.erb +9 -24
  25. data/app/cells/decidim/meetings/meetings_map_cell.rb +1 -1
  26. data/app/cells/decidim/meetings/online_meeting_cell.rb +1 -0
  27. data/app/cells/decidim/meetings/online_meeting_link/show.erb +18 -41
  28. data/app/cells/decidim/meetings/public_participants_list/show.erb +4 -15
  29. data/app/commands/decidim/meetings/admin/copy_meeting.rb +1 -1
  30. data/app/commands/decidim/meetings/admin/create_meeting.rb +1 -1
  31. data/app/commands/decidim/meetings/admin/invite_user_to_join_meeting.rb +5 -5
  32. data/app/commands/decidim/meetings/admin/publish_meeting.rb +1 -1
  33. data/app/commands/decidim/meetings/admin/unpublish_meeting.rb +1 -1
  34. data/app/commands/decidim/meetings/create_meeting.rb +14 -3
  35. data/app/commands/decidim/meetings/decline_invitation.rb +1 -1
  36. data/app/commands/decidim/meetings/join_meeting.rb +5 -5
  37. data/app/commands/decidim/meetings/update_meeting.rb +13 -3
  38. data/app/controllers/concerns/decidim/meetings/component_filterable.rb +4 -4
  39. data/app/controllers/decidim/meetings/admin/agenda_controller.rb +6 -6
  40. data/app/controllers/decidim/meetings/admin/invites_controller.rb +3 -3
  41. data/app/controllers/decidim/meetings/admin/meeting_closes_controller.rb +2 -4
  42. data/app/controllers/decidim/meetings/admin/meeting_copies_controller.rb +3 -3
  43. data/app/controllers/decidim/meetings/admin/meetings_controller.rb +7 -7
  44. data/app/controllers/decidim/meetings/admin/meetings_poll_controller.rb +4 -4
  45. data/app/controllers/decidim/meetings/admin/registrations_controller.rb +6 -6
  46. data/app/controllers/decidim/meetings/application_controller.rb +11 -0
  47. data/app/controllers/decidim/meetings/calendars_controller.rb +0 -1
  48. data/app/controllers/decidim/meetings/directory/application_controller.rb +12 -0
  49. data/app/controllers/decidim/meetings/directory/meetings_controller.rb +5 -30
  50. data/app/controllers/decidim/meetings/live_events_controller.rb +1 -0
  51. data/app/controllers/decidim/meetings/meeting_closes_controller.rb +2 -3
  52. data/app/controllers/decidim/meetings/meetings_controller.rb +75 -7
  53. data/app/controllers/decidim/meetings/polls/answers_controller.rb +2 -2
  54. data/app/controllers/decidim/meetings/polls/questions_controller.rb +1 -1
  55. data/app/controllers/decidim/meetings/registrations_controller.rb +5 -5
  56. data/app/events/decidim/meetings/close_meeting_event.rb +1 -1
  57. data/app/events/decidim/meetings/meeting_event.rb +1 -1
  58. data/app/events/decidim/meetings/meeting_registration_notification_event.rb +3 -3
  59. data/app/events/decidim/meetings/meeting_registrations_enabled_event.rb +1 -1
  60. data/app/events/decidim/meetings/meeting_registrations_over_percentage_event.rb +1 -1
  61. data/app/events/decidim/meetings/registration_code_validated_event.rb +1 -1
  62. data/app/forms/decidim/meetings/admin/meeting_form.rb +5 -1
  63. data/app/forms/decidim/meetings/admin/meeting_registrations_form.rb +2 -2
  64. data/app/forms/decidim/meetings/admin/validate_registration_code_form.rb +1 -1
  65. data/app/forms/decidim/meetings/base_meeting_form.rb +1 -1
  66. data/app/forms/decidim/meetings/meeting_form.rb +3 -3
  67. data/app/helpers/decidim/meetings/admin/application_helper.rb +1 -0
  68. data/app/helpers/decidim/meetings/application_helper.rb +18 -25
  69. data/app/helpers/decidim/meetings/directory/application_helper.rb +11 -59
  70. data/app/helpers/decidim/meetings/map_helper.rb +2 -9
  71. data/app/helpers/decidim/meetings/meetings_helper.rb +6 -5
  72. data/app/jobs/decidim/meetings/hide_all_created_by_author_job.rb +13 -0
  73. data/app/mailers/decidim/meetings/admin/invite_join_meeting_mailer.rb +1 -1
  74. data/app/mailers/decidim/meetings/registration_mailer.rb +1 -1
  75. data/app/models/decidim/meetings/meeting.rb +11 -32
  76. data/app/models/decidim/meetings/question.rb +1 -1
  77. data/app/packs/entrypoints/decidim_meetings.js +3 -0
  78. data/app/packs/images/decidim/gamification/badges/decidim_gamification_badges_attended_meetings.svg +42 -1
  79. data/app/packs/src/decidim/meetings/admin/agendas.js +3 -4
  80. data/app/packs/src/decidim/meetings/admin/registrations_form.js +12 -4
  81. data/app/packs/src/decidim/meetings/meetings_form.js +1 -1
  82. data/app/packs/src/decidim/meetings/poll.component.js +1 -28
  83. data/app/packs/stylesheets/decidim/meetings/_calendar.scss +47 -0
  84. data/app/packs/stylesheets/decidim/meetings/_item.scss +177 -0
  85. data/app/packs/stylesheets/decidim/meetings/_list.scss +58 -0
  86. data/app/packs/stylesheets/decidim/meetings/_live_event.scss +128 -0
  87. data/app/packs/stylesheets/decidim/meetings/meetings.scss +4 -0
  88. data/app/permissions/decidim/meetings/permissions.rb +15 -12
  89. data/app/presenters/decidim/meetings/admin_log/invite_presenter.rb +2 -2
  90. data/app/presenters/decidim/meetings/admin_log/meeting_presenter.rb +6 -2
  91. data/app/presenters/decidim/meetings/admin_log/questionnaire_presenter.rb +2 -2
  92. data/app/presenters/decidim/meetings/admin_log/value_types/meeting_title_description_presenter.rb +1 -1
  93. data/app/presenters/decidim/meetings/log/resource_presenter.rb +18 -0
  94. data/app/presenters/decidim/meetings/meeting_presenter.rb +8 -2
  95. data/app/services/decidim/meetings/calendar/component_calendar.rb +1 -1
  96. data/app/services/decidim/meetings/close_meeting_reminder_generator.rb +7 -13
  97. data/app/services/decidim/meetings/meeting_iframe_embedder.rb +1 -1
  98. data/app/views/decidim/meetings/_calendar_modal.html.erb +19 -21
  99. data/app/views/decidim/meetings/admin/agenda/_agenda_item.html.erb +12 -12
  100. data/app/views/decidim/meetings/admin/agenda/_agenda_item_child.html.erb +8 -8
  101. data/app/views/decidim/meetings/admin/agenda/_agenda_item_child_template.html.erb +1 -1
  102. data/app/views/decidim/meetings/admin/agenda/_agenda_item_fields.html.erb +3 -3
  103. data/app/views/decidim/meetings/admin/agenda/_form.html.erb +54 -50
  104. data/app/views/decidim/meetings/admin/agenda/edit.html.erb +18 -6
  105. data/app/views/decidim/meetings/admin/agenda/new.html.erb +17 -5
  106. data/app/views/decidim/meetings/admin/invite_join_meeting_mailer/invite.html.erb +11 -2
  107. data/app/views/decidim/meetings/admin/invites/_form.html.erb +38 -28
  108. data/app/views/decidim/meetings/admin/invites/index.html.erb +77 -81
  109. data/app/views/decidim/meetings/admin/meeting_closes/_form.html.erb +26 -28
  110. data/app/views/decidim/meetings/admin/meeting_closes/edit.html.erb +17 -5
  111. data/app/views/decidim/meetings/admin/meeting_copies/new.html.erb +17 -6
  112. data/app/views/decidim/meetings/admin/meetings/_form.html.erb +76 -83
  113. data/app/views/decidim/meetings/admin/meetings/_service.html.erb +14 -10
  114. data/app/views/decidim/meetings/admin/meetings/_services.html.erb +9 -5
  115. data/app/views/decidim/meetings/admin/meetings/edit.html.erb +17 -7
  116. data/app/views/decidim/meetings/admin/meetings/index.html.erb +133 -129
  117. data/app/views/decidim/meetings/admin/meetings/new.html.erb +16 -6
  118. data/app/views/decidim/meetings/admin/poll/_answer_option.html.erb +1 -1
  119. data/app/views/decidim/meetings/admin/poll/_answer_option_template.html.erb +1 -1
  120. data/app/views/decidim/meetings/admin/poll/_form.html.erb +17 -32
  121. data/app/views/decidim/meetings/admin/poll/_question.html.erb +81 -75
  122. data/app/views/decidim/meetings/admin/poll/edit.html.erb +28 -8
  123. data/app/views/decidim/meetings/admin/registrations/_form.html.erb +32 -55
  124. data/app/views/decidim/meetings/admin/registrations/edit.html.erb +59 -26
  125. data/app/views/decidim/meetings/directory/meetings/index.html.erb +15 -20
  126. data/app/views/decidim/meetings/directory/meetings/index.js.erb +1 -23
  127. data/app/views/decidim/meetings/layouts/_aside_block.html.erb +8 -0
  128. data/app/views/decidim/meetings/layouts/live_event.html.erb +20 -19
  129. data/app/views/decidim/meetings/live_events/show.html.erb +4 -5
  130. data/app/views/decidim/meetings/meeting_closes/_form.html.erb +3 -10
  131. data/app/views/decidim/meetings/meeting_closes/edit.html.erb +17 -21
  132. data/app/views/decidim/meetings/meetings/_actions.html.erb +6 -0
  133. data/app/views/decidim/meetings/meetings/_add_to_calendar_modal.html.erb +17 -0
  134. data/app/views/decidim/meetings/meetings/_form.html.erb +26 -34
  135. data/app/views/decidim/meetings/meetings/_linked_meetings.html.erb +3 -22
  136. data/app/views/decidim/meetings/meetings/_meeting.html.erb +74 -0
  137. data/app/views/decidim/meetings/meetings/_meeting_agenda.html.erb +28 -26
  138. data/app/views/decidim/meetings/meetings/_meeting_aside.html.erb +98 -0
  139. data/app/views/decidim/meetings/meetings/_meeting_minutes.html.erb +23 -36
  140. data/app/views/decidim/meetings/meetings/edit.html.erb +17 -21
  141. data/app/views/decidim/meetings/meetings/index.html.erb +15 -33
  142. data/app/views/decidim/meetings/meetings/index.js.erb +1 -23
  143. data/app/views/decidim/meetings/meetings/new.html.erb +17 -21
  144. data/app/views/decidim/meetings/meetings/show.html.erb +8 -167
  145. data/app/views/decidim/meetings/polls/answers/_multiple_option.html.erb +9 -13
  146. data/app/views/decidim/meetings/polls/answers/_single_option.html.erb +4 -4
  147. data/app/views/decidim/meetings/polls/answers/create.js.erb +1 -1
  148. data/app/views/decidim/meetings/polls/questions/_index.html.erb +1 -1
  149. data/app/views/decidim/meetings/polls/questions/_index_admin.html.erb +5 -5
  150. data/app/views/decidim/meetings/polls/questions/_published_question.html.erb +9 -11
  151. data/app/views/decidim/meetings/polls/questions/_question.html.erb +3 -3
  152. data/app/views/decidim/meetings/polls/questions/index_admin.js.erb +1 -1
  153. data/app/views/decidim/meetings/shared/_filters.html.erb +20 -0
  154. data/app/views/decidim/meetings/shared/_index.html.erb +24 -0
  155. data/app/views/decidim/meetings/shared/_index.js.erb +16 -0
  156. data/app/views/decidim/meetings/shared/_meetings.html.erb +33 -0
  157. data/app/views/decidim/meetings/shared/_meetings_aside.html.erb +18 -0
  158. data/app/views/decidim/meetings/versions/show.html.erb +14 -4
  159. data/app/views/decidim/participatory_spaces/_conference_venues.html.erb +13 -15
  160. data/config/assets.rb +0 -2
  161. data/config/locales/ar.yml +6 -94
  162. data/config/locales/bg.yml +0 -673
  163. data/config/locales/ca.yml +52 -75
  164. data/config/locales/cs.yml +49 -71
  165. data/config/locales/de.yml +53 -76
  166. data/config/locales/el.yml +48 -51
  167. data/config/locales/en.yml +51 -74
  168. data/config/locales/es-MX.yml +50 -73
  169. data/config/locales/es-PY.yml +48 -71
  170. data/config/locales/es.yml +53 -76
  171. data/config/locales/eu.yml +52 -75
  172. data/config/locales/fi-plain.yml +46 -69
  173. data/config/locales/fi.yml +44 -67
  174. data/config/locales/fr-CA.yml +43 -69
  175. data/config/locales/fr.yml +48 -71
  176. data/config/locales/ga-IE.yml +2 -16
  177. data/config/locales/gl.yml +5 -63
  178. data/config/locales/hu.yml +6 -92
  179. data/config/locales/id-ID.yml +4 -60
  180. data/config/locales/is-IS.yml +1 -22
  181. data/config/locales/it.yml +6 -86
  182. data/config/locales/ja.yml +44 -73
  183. data/config/locales/lb.yml +6 -67
  184. data/config/locales/lt.yml +42 -65
  185. data/config/locales/lv.yml +4 -61
  186. data/config/locales/nl.yml +4 -92
  187. data/config/locales/no.yml +4 -80
  188. data/config/locales/pl.yml +2 -199
  189. data/config/locales/pt-BR.yml +4 -200
  190. data/config/locales/pt.yml +5 -85
  191. data/config/locales/ro-RO.yml +11 -81
  192. data/config/locales/ru.yml +5 -60
  193. data/config/locales/sk.yml +4 -61
  194. data/config/locales/sl.yml +0 -3
  195. data/config/locales/sr-CS.yml +0 -6
  196. data/config/locales/sv.yml +10 -90
  197. data/config/locales/tr-TR.yml +5 -78
  198. data/config/locales/uk.yml +5 -53
  199. data/config/locales/zh-CN.yml +3 -70
  200. data/config/locales/zh-TW.yml +24 -51
  201. data/db/migrate/20201016065302_fix_meetings_registration_terms.rb +1 -1
  202. data/db/migrate/20230427105701_change_types_and_registration_types_on_meetings.rb +49 -0
  203. data/lib/decidim/meetings/admin_engine.rb +2 -2
  204. data/lib/decidim/meetings/component.rb +4 -216
  205. data/lib/decidim/meetings/content_blocks/registry_manager.rb +17 -0
  206. data/lib/decidim/meetings/directory_engine.rb +4 -6
  207. data/lib/decidim/meetings/engine.rb +62 -27
  208. data/lib/decidim/meetings/meeting_serializer.rb +3 -3
  209. data/lib/decidim/meetings/seeds.rb +188 -0
  210. data/lib/decidim/meetings/test/factories.rb +124 -54
  211. data/lib/decidim/meetings/test/notifications_handling.rb +3 -3
  212. data/lib/decidim/meetings/test/translated_event.rb +1 -1
  213. data/lib/decidim/meetings/version.rb +1 -1
  214. metadata +58 -58
  215. data/app/cells/decidim/meetings/content_blocks/highlighted_meetings/elements.erb +0 -16
  216. data/app/cells/decidim/meetings/content_blocks/highlighted_meetings/heading.erb +0 -1
  217. data/app/cells/decidim/meetings/content_blocks/upcoming_meetings/show.erb +0 -26
  218. data/app/cells/decidim/meetings/content_blocks/upcoming_meetings_cell.rb +0 -63
  219. data/app/cells/decidim/meetings/join_meeting_button/registration_confirm.erb +0 -31
  220. data/app/cells/decidim/meetings/meeting_highlighted_list_item/show.erb +0 -21
  221. data/app/cells/decidim/meetings/meeting_highlighted_list_item_cell.rb +0 -10
  222. data/app/cells/decidim/meetings/meeting_list_item/show.erb +0 -14
  223. data/app/cells/decidim/meetings/meeting_list_item_cell.rb +0 -44
  224. data/app/cells/decidim/meetings/meeting_m/address.erb +0 -5
  225. data/app/cells/decidim/meetings/meeting_m/data.erb +0 -2
  226. data/app/cells/decidim/meetings/meeting_m/date.erb +0 -8
  227. data/app/cells/decidim/meetings/meeting_m/footer.erb +0 -9
  228. data/app/cells/decidim/meetings/meeting_m/multiple_dates.erb +0 -17
  229. data/app/cells/decidim/meetings/meeting_m/single_date.erb +0 -9
  230. data/app/cells/decidim/meetings/meeting_m/tags.erb +0 -1
  231. data/app/cells/decidim/meetings/meeting_m_cell.rb +0 -121
  232. data/app/cells/decidim/meetings/meeting_s/show.erb +0 -27
  233. data/app/controllers/concerns/decidim/meetings/filterable.rb +0 -27
  234. data/app/controllers/decidim/meetings/widgets_controller.rb +0 -30
  235. data/app/packs/stylesheets/decidim/meetings/_header.scss +0 -52
  236. data/app/packs/stylesheets/decidim/meetings/_main.scss +0 -178
  237. data/app/packs/stylesheets/decidim/meetings/_meetings.scss +0 -2
  238. data/app/queries/decidim/meetings/admin/invites.rb +0 -60
  239. data/app/views/decidim/meetings/admin/meeting_closes/proposals_picker.html.erb +0 -1
  240. data/app/views/decidim/meetings/directory/meetings/_filters.html.erb +0 -34
  241. data/app/views/decidim/meetings/directory/meetings/_meetings.html.erb +0 -26
  242. data/app/views/decidim/meetings/meeting_closes/proposals_picker.html.erb +0 -1
  243. data/app/views/decidim/meetings/meetings/_calendar_modal.html.erb +0 -26
  244. data/app/views/decidim/meetings/meetings/_filters.html.erb +0 -40
  245. data/app/views/decidim/meetings/meetings/_filters_small_view.html.erb +0 -18
  246. data/app/views/decidim/meetings/meetings/_meetings.html.erb +0 -48
  247. data/app/views/decidim/meetings/versions/index.html.erb +0 -8
  248. data/app/views/decidim/participatory_spaces/_upcoming_meeting_for_card.html.erb +0 -4
  249. data/config/locales/he-IL.yml +0 -1
  250. data/decidim-meetings.gemspec +0 -36
  251. data/lib/decidim/meetings/seeds/city.jpeg +0 -0
@@ -1,42 +1,42 @@
1
1
  <% agenda_item = form.object %>
2
- <div class="card meeting-agenda-item" id="<%= tabs_id %>-field">
2
+ <div class="card meeting-agenda-item p-4" id="<%= tabs_id %>-field">
3
3
  <div class="card-divider agenda-item-divider">
4
4
  <h2 class="card-title">
5
5
  <span>
6
- <%== "#{icon("move")} #{t(".agenda_item")}" %>
6
+ <%== "#{icon("drag-move-2-fill")} #{t(".agenda_item")}" %>
7
7
  </span>
8
8
 
9
- <button class="button small alert hollow move-up-agenda-item button--title">
10
- <%== "#{icon("arrow-top")} #{t(".up")}" %>
9
+ <button class="button button__sm button__transparent-secondary small alert hollow move-up-agenda-item button--title">
10
+ <%== "#{icon("arrow-up-line")} #{t(".up")}" %>
11
11
  </button>
12
12
 
13
- <button class="button small alert hollow move-down-agenda-item button--title">
14
- <%== "#{icon("arrow-bottom")} #{t(".down")}" %>
13
+ <button class="button button__sm button__transparent-secondary small alert hollow move-down-agenda-item button--title">
14
+ <%== "#{icon("arrow-down-line")} #{t(".down")}" %>
15
15
  </button>
16
16
 
17
- <button class="button small alert hollow remove-agenda-item button--title">
17
+ <button class="button button__sm button__transparent-secondary small alert hollow remove-agenda-item button--title">
18
18
  <%= t(".remove") %>
19
19
  </button>
20
20
  </h2>
21
21
  </div>
22
22
 
23
23
  <div class="card-section">
24
- <%= render "agenda_item_fields", tabs_id: tabs_id, form: form, agenda_item: agenda_item %>
24
+ <%= render "agenda_item_fields", tabs_id:, form:, agenda_item: %>
25
25
 
26
- <div class="card">
26
+ <div class="card my-4">
27
27
  <div class="card-divider">
28
28
  <h2 class="card-title"><%= t(".agenda_item_children") %></h2>
29
29
  </div>
30
- <div class="card-section">
30
+ <div class="row column">
31
31
  <div class="meeting-agenda-item-childs" data-template="<%= child_template_selector %>">
32
32
  <div class="meeting-agenda-item-childs-list">
33
33
  <% agenda_item.agenda_item_children.each do |agenda_item_child| %>
34
34
  <%= fields_for "meeting_agenda[agenda_items][#{agenda_item.to_param}][agenda_item_children][]", agenda_item_child do |agenda_item_child_form| %>
35
- <%= render "agenda_item_child", form: agenda_item_child_form, tabs_id: tabs_id, tabs_id_child: tabs_id_for_agenda_item_child(agenda_item_child), editable: true %>
35
+ <%= render "agenda_item_child", form: agenda_item_child_form, tabs_id:, tabs_id_child: tabs_id_for_agenda_item_child(agenda_item_child), editable: true %>
36
36
  <% end %>
37
37
  <% end %>
38
38
  </div>
39
- <button class="button add-agenda-item-child"><%= t(".add_agenda_item_child") %></button>
39
+ <button class="button button__sm button__secondary add-agenda-item-child"><%= t(".add_agenda_item_child") %></button>
40
40
  </div>
41
41
  </div>
42
42
  </div>
@@ -1,26 +1,26 @@
1
1
  <% agenda_item_child = form.object %>
2
- <div class="card meeting-agenda-item-child" id="<%= tabs_id %>-child-<%= tabs_id_child %>-field">
2
+ <div class="card meeting-agenda-item-child p-4" id="<%= tabs_id %>-child-<%= tabs_id_child %>-field">
3
3
  <div class="card-divider agenda-item-child-divider">
4
4
  <h2 class="card-title">
5
5
  <span>
6
- <%== "#{icon("move")} #{t(".agenda_item_child")}" %>
6
+ <%== "#{icon("drag-move-2-fill")} #{t(".agenda_item_child")}" %>
7
7
  </span>
8
8
 
9
- <button class="button small alert hollow move-up-agenda-item-child button--title">
10
- <%== "#{icon("arrow-top")} #{t(".up")}" %>
9
+ <button class="button button__sm button__transparent-secondary small alert hollow move-up-agenda-item-child button--title">
10
+ <%== "#{icon("arrow-up-line")} #{t(".up")}" %>
11
11
  </button>
12
12
 
13
- <button class="button small alert hollow move-down-agenda-item-child button--title">
14
- <%== "#{icon("arrow-bottom")} #{t(".down")}" %>
13
+ <button class="button button__sm button__transparent-secondary small alert hollow move-down-agenda-item-child button--title">
14
+ <%== "#{icon("arrow-down-line")} #{t(".down")}" %>
15
15
  </button>
16
16
 
17
- <button class="button small alert hollow remove-agenda-item-child button--title">
17
+ <button class="button button__sm button__transparent-secondary small alert hollow remove-agenda-item-child button--title">
18
18
  <%= t(".remove") %>
19
19
  </button>
20
20
  </h2>
21
21
  </div>
22
22
 
23
23
  <div class="card-section">
24
- <%= render "agenda_item_fields", tabs_id: tabs_id_child, form: form, agenda_item: agenda_item_child %>
24
+ <%= render "agenda_item_fields", tabs_id: tabs_id_child, form:, agenda_item: agenda_item_child %>
25
25
  </div>
26
26
  </div>
@@ -2,6 +2,6 @@
2
2
 
3
3
  <script type="text/template" class="decidim-template" id="<%= template_id %>">
4
4
  <%= fields_for "meeting_agenda[agenda_items][#{agenda_item.to_param}][agenda_item_children][#{blank_agenda_item.to_param_child}]", blank_agenda_item do |agenda_item_child_form| %>
5
- <%= render "agenda_item_child", form: agenda_item_child_form, tabs_id: tabs_id_for_agenda_item(blank_agenda_item), tabs_id_child: tabs_id_for_agenda_item_child(blank_agenda_item), editable: editable %>
5
+ <%= render "agenda_item_child", form: agenda_item_child_form, tabs_id: tabs_id_for_agenda_item(blank_agenda_item), tabs_id_child: tabs_id_for_agenda_item_child(blank_agenda_item), editable: %>
6
6
  <% end %>
7
7
  </script>
@@ -1,15 +1,15 @@
1
1
  <div class="grid-x">
2
2
  <div class="cell auto">
3
- <%= form.translated :text_field, :title, tabs_id: tabs_id %>
3
+ <%= form.translated :text_field, :title, tabs_id:, aria: { label: :title } %>
4
4
  </div>
5
5
  <div class="cell small-2">
6
- <%= form.number_field :duration, tabs_id: tabs_id, min: 0 %>
6
+ <%= form.number_field :duration, tabs_id:, min: 0 %>
7
7
  </div>
8
8
  </div>
9
9
 
10
10
  <div class="grid-x">
11
11
  <div class="cell auto">
12
- <%= form.translated :editor, :description, tabs_id: tabs_id, rows: 6 %>
12
+ <%= form.translated :editor, :description, tabs_id:, rows: 6, aria: { label: :description } %>
13
13
  </div>
14
14
  </div>
15
15
 
@@ -1,68 +1,72 @@
1
- <div class="card">
2
- <div class="card-divider">
3
- <h2 class="card-title">
4
- <div class="flex--sbc">
5
- <div class="grid-x align-middle">
6
- <u> <%= present(@meeting).title(html_escape: true) %> </u> &nbsp;<%= icon "arrow-right" %>&nbsp;<%= title %>
1
+ <div class="form__wrapper">
2
+ <div class="card">
3
+ <div class="card-divider">
4
+ <h2 class="card-title">
5
+ <div>
6
+ <div class="grid-x align-middle">
7
+ <u> <%= present(@meeting).title(html_escape: true) %> </u> &nbsp;<%= icon "arrow-right-line" %>&nbsp;<%= title %>
8
+ </div>
7
9
  </div>
8
- </div>
9
- </h2>
10
- </div>
11
- <div class="card-section">
12
- <div class="grid-x card-title">
13
- <div class="cell small-2"><strong><%= t(".start_date") %></strong></div>
14
- <div class="cell small-2"><strong><%= t(".end_date") %></strong></div>
10
+ </h2>
15
11
  </div>
16
- <div class="grid-x text-muted">
17
- <div class="cell small-2"><%= meeting.start_time.strftime("%m/%d/%Y %R") %></div>
18
- <div class="cell small-2"><%= meeting.end_time.strftime("%m/%d/%Y %R") %></div>
12
+ <div class="row column">
13
+ <div class="flex items-center gap-x-4">
14
+ <div>
15
+ <div><strong><%= t(".start_date") %></strong></div>
16
+ <div><%= meeting.start_time.strftime("%m/%d/%Y %R") %></div>
17
+ </div>
18
+ <div>
19
+ <div><strong><%= t(".end_date") %></strong></div>
20
+ <div><%= meeting.end_time.strftime("%m/%d/%Y %R") %></div>
21
+ </div>
22
+ </div>
19
23
  </div>
20
24
  </div>
21
- </div>
22
-
23
- <div class="card">
24
- <div class="card-divider">
25
- <h2 class="card-title">
26
- <%= title %>
27
- </h2>
28
- </div>
29
25
 
30
- <div class="card-section">
31
- <div class="row column">
32
- <%= form.translated :text_field, :title, autofocus: true %>
26
+ <div class="card">
27
+ <div class="card-divider">
28
+ <h2 class="card-title">
29
+ <%= title %>
30
+ </h2>
33
31
  </div>
34
32
 
35
- <div class="row column">
36
- <%= form.check_box :visible %>
33
+ <div class="card-section">
34
+ <div class="row column">
35
+ <%= form.translated :text_field, :title, autofocus: true, aria: { label: :title } %>
36
+ </div>
37
+
38
+ <div class="row column">
39
+ <%= form.check_box :visible %>
40
+ </div>
37
41
  </div>
38
42
  </div>
39
- </div>
40
43
 
41
- <div class="card">
42
- <div class="card-divider">
43
- <h2 class="card-title"><%= t(".agenda_items") %></h2>
44
- </div>
44
+ <div class="card">
45
+ <div class="card-divider">
46
+ <h2 class="card-title"><%= t(".agenda_items") %></h2>
47
+ </div>
45
48
 
46
- <div class="card-section">
47
- <div class="meeting-agenda-items">
48
- <%= fields_for "meeting_agenda[agenda_items][#{blank_agenda_item.to_param}]", blank_agenda_item do |agenda_item_form| %>
49
- <script type="text/template" class="decidim-template">
50
- <%= render "agenda_item", form: agenda_item_form, tabs_id: tabs_id_for_agenda_item(blank_agenda_item), editable: true, child_template_selector: "#agenda-item-child-template-dummy" %>
51
- </script>
52
- <%= render "agenda_item_child_template", form: agenda_item_form, editable: true, template_id: "agenda-item-child-template-dummy" %>
53
- <% end %>
49
+ <div class="row column">
50
+ <div class="meeting-agenda-items">
51
+ <%= fields_for "meeting_agenda[agenda_items][#{blank_agenda_item.to_param}]", blank_agenda_item do |agenda_item_form| %>
52
+ <script type="text/template" class="decidim-template">
53
+ <%= render "agenda_item", form: agenda_item_form, tabs_id: tabs_id_for_agenda_item(blank_agenda_item), editable: true, child_template_selector: "#agenda-item-child-template-dummy" %>
54
+ </script>
55
+ <%= render "agenda_item_child_template", form: agenda_item_form, editable: true, template_id: "agenda-item-child-template-dummy" %>
56
+ <% end %>
54
57
 
55
- <div class="meeting-agenda-items-list">
56
- <% @form.agenda_items.each_with_index do |agenda_item, index| %>
57
- <%= fields_for "meeting_agenda[agenda_items][]", agenda_item do |agenda_item_form| %>
58
- <%= render "agenda_item", form: agenda_item_form, tabs_id: tabs_id_for_agenda_item(agenda_item), editable: true, child_template_selector: "#agenda-item-child-template-#{index}" %>
59
- <%= render "agenda_item_child_template", form: agenda_item_form, editable: true, template_id: "agenda-item-child-template-#{index}" %>
58
+ <div class="meeting-agenda-items-list">
59
+ <% @form.agenda_items.each_with_index do |agenda_item, index| %>
60
+ <%= fields_for "meeting_agenda[agenda_items][]", agenda_item do |agenda_item_form| %>
61
+ <%= render "agenda_item", form: agenda_item_form, tabs_id: tabs_id_for_agenda_item(agenda_item), editable: true, child_template_selector: "#agenda-item-child-template-#{index}" %>
62
+ <%= render "agenda_item_child_template", form: agenda_item_form, editable: true, template_id: "agenda-item-child-template-#{index}" %>
63
+ <% end %>
60
64
  <% end %>
61
- <% end %>
65
+ </div>
66
+ <button class="button button__sm button__secondary add-agenda-item"><%= t(".add_agenda_item") %></button>
62
67
  </div>
63
- <button class="button add-agenda-item"><%= t(".add_agenda_item") %></button>
64
68
  </div>
65
69
  </div>
66
70
  </div>
67
71
 
68
- <%= javascript_pack_tag "decidim_meetings_admin" %>
72
+ <%= append_javascript_pack_tag "decidim_meetings_admin" %>
@@ -1,7 +1,19 @@
1
- <%= decidim_form_for(@form, url: meeting_agenda_path(meeting, agenda), html: { class: "form edit_agenda" }) do |f| %>
2
- <%= render partial: "form", object: f, locals: { title: t(".title") } %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+ <div class="item_show__header">
3
+ <h2 class="item_show__header-title">
4
+ <%= t(".title") %>
5
+ </h2>
6
+ </div>
3
7
 
4
- <div class="button--double form-general-submit">
5
- <%= f.submit t(".update") %>
6
- </div>
7
- <% end %>
8
+ <div class="item__edit item__edit-1col">
9
+ <div class="item__edit-form">
10
+ <%= decidim_form_for(@form, url: meeting_agenda_path(meeting, agenda), html: { class: "form-defaults form edit_agenda" }) do |f| %>
11
+ <%= render partial: "form", object: f, locals: { title: t(".title") } %>
12
+ <div class="item__edit-sticky">
13
+ <div class="item__edit-sticky-container">
14
+ <%= f.submit t(".update"), class: "button button__sm button__secondary" %>
15
+ </div>
16
+ </div>
17
+ <% end %>
18
+ </div>
19
+ </div>
@@ -1,8 +1,20 @@
1
- <%= decidim_form_for(@form, url: meeting_agenda_index_path(meeting), html: { method: :post, class: "form new_agenda" }) do |f| %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
2
 
3
- <%= render partial: "form", object: f, locals: { title: t(".title") } %>
3
+ <div class="item_show__header">
4
+ <h2 class="item_show__header-title">
5
+ <%= t(".title") %>
6
+ </h2>
7
+ </div>
8
+ <div class="item__edit-1col">
9
+ <div class="item__edit-form">
10
+ <%= decidim_form_for(@form, url: meeting_agenda_index_path(meeting), html: { method: :post, class: "form form-defaults new_agenda" }) do |f| %>
4
11
 
5
- <div class="button--double form-general-submit">
6
- <%= f.submit t(".create") %>
12
+ <%= render partial: "form", object: f, locals: { title: t(".title") } %>
13
+ <div class="item__edit-sticky">
14
+ <div class="item__edit-sticky-container">
15
+ <%= f.submit t(".create"), class: "button button__sm button__secondary" %>
16
+ </div>
17
+ </div>
18
+ <% end %>
7
19
  </div>
8
- <% end %>
20
+ </div>
@@ -4,5 +4,14 @@
4
4
  <%= t ".invited_you_to_join_a_meeting", invited_by: @invited_by.name, application: @user.organization.name %>
5
5
  </p>
6
6
 
7
- <p class="email-button email-button__cta cta-decline"><%= link_to t(".decline", meeting_title: present(@meeting).title),routes.decline_invitation_meeting_registration_url(meeting_id: @meeting, participatory_space_id: @meeting.component.participatory_space) %>
8
- <p class="email-button email-button__cta cta-accept"><%= link_to t(".join", meeting_title: present(@meeting).title),routes.meeting_registration_url(meeting_id: @meeting, participatory_space_id: @meeting.component.participatory_space) %>
7
+ <p class="email-button email-button__cta cta-decline">
8
+ <%= link_to t(".decline", meeting_title: present(@meeting).title),
9
+ routes.decline_invitation_meeting_registration_url(meeting_id: @meeting,
10
+ participatory_space_id: @meeting.component.participatory_space
11
+ ) %>
12
+ </p>
13
+ <p class="email-button email-button__cta cta-accept">
14
+ <%= link_to t(".join", meeting_title: present(@meeting).title),
15
+ routes.meeting_registration_url(meeting_id: @meeting,
16
+ participatory_space_id: @meeting.component.participatory_space) %>
17
+ </p>
@@ -1,36 +1,46 @@
1
- <div class="attendee-fields">
2
- <div class="row column">
3
- <fieldset class="check-radio-collection">
4
- <legend><%= t(".attendee_type") %></legend>
5
- <%= form.collection_radio_buttons(:existing_user, [[t(".non_user"), false], [t(".existing_user"), true]], :last, :first) %>
6
- </fieldset>
7
- </div>
1
+ <div class="form__wrapper attendee-fields">
2
+ <div class="card" data-component="accordion" id="accordion-attendee">
3
+ <div class="card-divider">
4
+ <button class="card-divider-button" data-open="true" data-controls="panel-attendee" type="button">
5
+ <%= icon "arrow-right-s-line" %>
6
+ <h2 class="card-title" id="attendee">
7
+ <%= t(".attendee_type") %>
8
+ </h2>
9
+ </button>
10
+ </div>
8
11
 
9
- <div class="text-warning attendee-fields--new-user">
10
- <p><%= t(".invite_explanation") %></p>
11
- </div>
12
+ <div id="panel-attendee" class="card-section">
12
13
 
13
- <div class="grid-x grid-margin-x">
14
- <div class="auto cell attendee-fields--new-user">
15
- <%= form.text_field :name, disabled: disabled %>
16
- </div>
17
- <div class="auto cell attendee-fields--new-user">
18
- <%= form.text_field :email, disabled: disabled %>
19
- </div>
14
+ <div class="row column">
15
+ <fieldset class="check-radio-collection">
16
+ <%= form.collection_radio_buttons(:existing_user, [[t(".non_user"), false], [t(".existing_user"), true]], :last, :first) %>
17
+ </fieldset>
18
+ </div>
20
19
 
21
- <div class="auto cell attendee-fields--user-picker">
22
- <% prompt_options = { url: decidim_admin.users_organization_url, placeholder: t(".select_user") } %>
23
- <%= form.autocomplete_select(:user_id, form.object.user.presence, { multiple: false, class: "autocomplete-field--results-inline" }, prompt_options) do |user|
24
- { value: user.id, label: "#{user.name} (@#{user.nickname})" }
25
- end %>
26
- </div>
20
+ <div class="row column">
21
+ <p><%= t(".invite_explanation") %></p>
22
+ </div>
23
+
24
+ <div class="row column">
25
+ <div class="auto cell attendee-fields--new-user">
26
+ <%= form.text_field :name, disabled: %>
27
+ </div>
28
+ <div class="auto cell attendee-fields--new-user">
29
+ <%= form.text_field :email, disabled: %>
30
+ </div>
27
31
 
28
- <div class="shrink cell">
29
- <div class="text-center mt-sm">
30
- <%= form.submit t(".invite"), disabled: disabled %>
32
+ <div class="auto cell attendee-fields--user-picker">
33
+ <% prompt_options = { url: decidim_admin.users_organization_url, placeholder: t(".select_user") } %>
34
+ <%= form.autocomplete_select(:user_id, form.object.user.presence, { multiple: false, class: "autocomplete-field--results-inline" }, prompt_options) do |user|
35
+ { value: user.id, label: "#{user.name} (@#{user.nickname})" }
36
+ end %>
37
+ </div>
38
+
39
+ </div>
40
+ <div class="row column">
41
+ <%= form.submit t(".invite"), class: "button button__sm button__secondary", disabled: %>
31
42
  </div>
32
43
  </div>
33
44
  </div>
34
45
  </div>
35
-
36
- <%= javascript_pack_tag "decidim_meetings_admin" %>
46
+ <%= append_javascript_pack_tag "decidim_meetings_admin" %>
@@ -1,10 +1,13 @@
1
- <div class="card">
2
- <div class="card-divider">
3
- <h2 class="card-title"><%= t(".invite_attendee") %></h2>
4
- </div>
5
- <div class="card-section">
6
- <%= decidim_form_for(@form, url: meeting_registrations_invites_path, method: :post, html: { class: "form new_meeting_registration_invite" }) do |f| %>
7
- <% disable_form = !allowed_to?(:invite_attendee, :meeting, meeting: meeting) %>
1
+ <% add_decidim_page_title(t(".invite_attendee")) %>
2
+ <div class="item_show__header">
3
+ <h2 class="item_show__header-title">
4
+ <%= t(".invite_attendee") %>
5
+ </h2>
6
+ </div>
7
+ <div class="item__edit item__edit-1col">
8
+ <div class="item__edit-form">
9
+ <%= decidim_form_for(@form, url: meeting_registrations_invites_path, method: :post, html: { class: "form form-defaults new_meeting_registration_invite" }) do |f| %>
10
+ <% disable_form = !allowed_to?(:invite_attendee, :meeting, meeting:) %>
8
11
 
9
12
  <%= render partial: "form", object: f, locals: { disabled: disable_form } %>
10
13
 
@@ -14,86 +17,79 @@
14
17
  </div>
15
18
  <% end %>
16
19
  <% end %>
17
- </div>
18
- </div>
19
20
 
20
- <div class="filters grid-x mt-m">
21
- <div class="medium-7">
22
- <span class="dropdown-menu-inverted_label"><%= t(".filter_by") %> :</span>
23
- <ul class="dropdown menu dropdown-inverted" data-dropdown-menu data-click-open="true" data-close-on-click-inside="false">
24
- <li class="is-dropdown-submenu-parent">
25
- <a href="#">
26
- <% if @status.present? %>
27
- <%= t(".filter.#{@status}") %>
28
- <% else %>
29
- <%= t(".filter.all") %>
30
- <% end %>
31
- </a>
32
- <ul class="menu is-dropdown-submenu">
33
- <li><%= link_to t(".filter.sent"), url_for(status: "sent", q: @query) %></li>
34
- <li><%= link_to t(".filter.accepted"), url_for(status: "accepted", q: @query) %></li>
35
- <li><%= link_to t(".filter.rejected"), url_for(status: "rejected", q: @query) %></li>
36
- <li><%= link_to t(".filter.all"), url_for(q: @query) %></li>
21
+ <%# NOTE: this old filters section should be refactorized in order to use the shared admin_filter_selector method
22
+ it would require the definition of concerns similar to decidim-conferences/app/controllers/concerns/decidim/conferences/admin/filterable.rb %>
23
+ <div class="filters__section mt-4">
24
+ <div class="fcell">
25
+ <ul class="dropdown menu" data-dropdown-menu data-click-open="true" data-close-on-click-inside="false">
26
+ <li class="is-dropdown-submenu-parent">
27
+ <a href="#" class="dropdown button">
28
+ <%= t("filter_label", scope: "decidim.admin.filters") %>
29
+ <%= icon "arrow-down-s-line", class: "dropdown-filter-icon" %>
30
+ </a>
31
+ <ul class="menu is-dropdown-submenu">
32
+ <li><%= link_to t(".filter.sent"), url_for(status: "sent", q: @query) %></li>
33
+ <li><%= link_to t(".filter.accepted"), url_for(status: "accepted", q: @query) %></li>
34
+ <li><%= link_to t(".filter.rejected"), url_for(status: "rejected", q: @query) %></li>
35
+ <li><%= link_to t(".filter.all"), url_for(q: @query) %></li>
36
+ </ul>
37
+ </li>
37
38
  </ul>
38
- </li>
39
- </ul>
40
- </div>
41
- <div class="medium-5">
42
- <%= form_tag "", method: :get do %>
43
- <div class="filters__search">
44
- <div class="input-group">
45
- <%= search_field_tag :q, @query,label: false, class: "input-group-field", placeholder: t(".search") %>
46
- <%= hidden_field_tag :state, @state %>
47
- <div class="input-group-button">
48
- <button type="submit" class="button">
49
- <%= icon "magnifying-glass", aria_label: t(".search"), role: "img" %>
50
- </button>
39
+ </div>
40
+ <div class="fcell search">
41
+ <%= form_tag "", method: :get do %>
42
+ <div class="input-group">
43
+ <%= search_field_tag :q, @query,label: false, class: "input-group-field", placeholder: t(".search") %>
44
+ <%= hidden_field_tag :state, @state %>
45
+ <div class="input-group-button">
46
+ <button type="submit" class="text-secondary" aria-label="<%= t("decidim.search.term_input_placeholder") %>">
47
+ <%= icon "search-line", class: "fill-secondary w-4 h-4" %>
48
+ </button>
49
+ </div>
51
50
  </div>
52
- </div>
51
+ <% end %>
53
52
  </div>
54
- <% end %>
55
- </div>
56
- </div>
57
-
58
- <div class="card" id="meeting-invites">
59
- <div class="card-divider">
60
- <h2 class="card-title"><%= t(".invites") %></h2>
61
- </div>
53
+ </div>
62
54
 
63
- <div class="card-section">
64
- <div class="table-scroll">
65
- <table class="table-list">
66
- <thead>
67
- <tr>
68
- <th><%= t("models.invite.fields.name", scope: "decidim.meetings") %></th>
69
- <th><%= t("models.invite.fields.email", scope: "decidim.meetings") %></th>
70
- <th><%= t("models.invite.fields.sent_at", scope: "decidim.meetings") %></th>
71
- <th><%= t("models.invite.fields.status", scope: "decidim.meetings") %></th>
72
- </tr>
73
- </thead>
74
- <tbody>
75
- <% invites.each do |invite| %>
76
- <% presenter = Decidim::Meetings::InvitePresenter.new(invite) %>
77
- <tr data-id="<%= invite.id %>">
78
- <td>
79
- <%= invite.user.name %>
80
- </td>
81
- <td>
82
- <%= invite.user.email %>
83
- </td>
84
- <td>
85
- <% if invite.sent_at %>
86
- <%= l invite.sent_at, format: :long %>
87
- <% end %>
88
- </td>
89
- <td class="<%= presenter.status_html_class %>">
90
- <%= presenter.status %>
91
- </td>
55
+ <div class="card" id="meeting-invites">
56
+ <div class="card-divider">
57
+ <h2 class="card-title"><%= t(".invites") %></h2>
58
+ </div>
59
+ <div class="table-scroll">
60
+ <table class="table-list">
61
+ <thead>
62
+ <tr>
63
+ <th><%= t("models.invite.fields.name", scope: "decidim.meetings") %></th>
64
+ <th><%= t("models.invite.fields.email", scope: "decidim.meetings") %></th>
65
+ <th><%= t("models.invite.fields.sent_at", scope: "decidim.meetings") %></th>
66
+ <th><%= t("models.invite.fields.status", scope: "decidim.meetings") %></th>
92
67
  </tr>
93
- <% end %>
94
- </tbody>
95
- </table>
96
- <%= paginate invites, theme: "decidim" %>
68
+ </thead>
69
+ <tbody>
70
+ <% invites.each do |invite| %>
71
+ <% presenter = Decidim::Meetings::InvitePresenter.new(invite) %>
72
+ <tr data-id="<%= invite.id %>">
73
+ <td>
74
+ <%= invite.user.name %>
75
+ </td>
76
+ <td>
77
+ <%= invite.user.email %>
78
+ </td>
79
+ <td>
80
+ <% if invite.sent_at %>
81
+ <%= l invite.sent_at, format: :long %>
82
+ <% end %>
83
+ </td>
84
+ <td class="<%= presenter.status_html_class %>">
85
+ <%= presenter.status %>
86
+ </td>
87
+ </tr>
88
+ <% end %>
89
+ </tbody>
90
+ </table>
91
+ </div>
97
92
  </div>
93
+ <%= decidim_paginate invites %>
98
94
  </div>
99
95
  </div>