decidim-meetings 0.29.2 → 0.30.0.rc2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/cells/decidim/meetings/cancel_registration_meeting_button/cancelation_modal.erb +1 -1
- data/app/cells/decidim/meetings/cancel_registration_meeting_button/show.erb +3 -1
- data/app/cells/decidim/meetings/cancel_registration_meeting_button_cell.rb +1 -1
- data/app/cells/decidim/meetings/dates_and_map/show.erb +1 -1
- data/app/cells/decidim/meetings/highlighted_meetings_for_component/show.erb +1 -1
- data/app/cells/decidim/meetings/join_meeting_button/show.erb +5 -2
- data/app/cells/decidim/meetings/meeting_card_metadata_cell.rb +3 -3
- data/app/cells/decidim/meetings/meeting_l_cell.rb +12 -0
- data/app/commands/decidim/meetings/admin/copy_meeting.rb +1 -2
- data/app/commands/decidim/meetings/admin/create_meeting.rb +8 -2
- data/app/commands/decidim/meetings/admin/update_meeting.rb +8 -2
- data/app/commands/decidim/meetings/create_meeting.rb +2 -2
- data/app/commands/decidim/meetings/update_meeting.rb +2 -3
- data/app/controllers/concerns/decidim/meetings/admin/filterable.rb +9 -5
- data/app/controllers/concerns/decidim/meetings/component_filterable.rb +1 -2
- data/app/controllers/decidim/meetings/admin/meetings_controller.rb +14 -22
- data/app/controllers/decidim/meetings/admin/registration_form_controller.rb +8 -0
- data/app/controllers/decidim/meetings/directory/meetings_controller.rb +2 -4
- data/app/controllers/decidim/meetings/meetings_controller.rb +40 -6
- data/app/forms/decidim/meetings/admin/meeting_form.rb +16 -30
- data/app/forms/decidim/meetings/base_meeting_form.rb +6 -0
- data/app/forms/decidim/meetings/meeting_form.rb +2 -30
- data/app/helpers/decidim/meetings/admin/application_helper.rb +11 -1
- data/app/helpers/decidim/meetings/application_helper.rb +35 -1
- data/app/helpers/decidim/meetings/directory/application_helper.rb +9 -48
- data/app/helpers/decidim/meetings/meetings_helper.rb +5 -0
- data/app/models/decidim/meetings/invite.rb +10 -0
- data/app/models/decidim/meetings/meeting.rb +23 -1
- data/app/models/decidim/meetings/meeting_link.rb +25 -0
- data/app/packs/entrypoints/decidim_meetings_admin.js +1 -0
- data/app/packs/src/decidim/meetings/admin/meetings_components_form.js +77 -0
- data/app/packs/src/decidim/meetings/admin/meetings_form.js +8 -0
- data/app/permissions/decidim/meetings/admin/permissions.rb +1 -1
- data/app/permissions/decidim/meetings/permissions.rb +13 -9
- data/app/presenters/decidim/meetings/admin_log/meeting_presenter.rb +1 -1
- data/app/presenters/decidim/meetings/meeting_presenter.rb +13 -1
- data/app/queries/decidim/meetings/filtered_meetings.rb +2 -2
- data/app/queries/decidim/meetings/metrics/meeting_followers_metric_measure.rb +2 -2
- data/app/queries/decidim/meetings/metrics/meetings_metric_manage.rb +6 -6
- data/app/serializers/decidim/meetings/base_download_your_data_serializer.rb +32 -0
- data/app/serializers/decidim/meetings/download_your_data_invite_serializer.rb +6 -26
- data/app/serializers/decidim/meetings/download_your_data_meeting_serializer.rb +15 -0
- data/app/serializers/decidim/meetings/download_your_data_registration_serializer.rb +6 -24
- data/app/views/decidim/meetings/admin/meetings/_component.html.erb +15 -0
- data/app/views/decidim/meetings/admin/meetings/_form.html.erb +7 -9
- data/app/views/decidim/meetings/admin/meetings/_linked_spaces.html.erb +53 -0
- data/app/views/decidim/meetings/admin/meetings/_meeting-tr.html.erb +42 -0
- data/app/views/decidim/meetings/admin/meetings/_meeting_actions.html.erb +70 -0
- data/app/views/decidim/meetings/admin/meetings/_meetings-thead.html.erb +26 -0
- data/app/views/decidim/meetings/admin/meetings/index.html.erb +16 -142
- data/app/views/decidim/meetings/admin/meetings/manage_trash.html.erb +23 -0
- data/app/views/decidim/meetings/admin/registration_form/edit_questions.html.erb +44 -0
- data/app/views/decidim/meetings/admin/registrations/edit.html.erb +1 -0
- data/app/views/decidim/meetings/directory/meetings/index.html.erb +1 -2
- data/app/views/decidim/meetings/live_events/show.html.erb +5 -5
- data/app/views/decidim/meetings/meetings/_form.html.erb +4 -8
- data/app/views/decidim/meetings/meetings/_meeting.html.erb +51 -26
- data/app/views/decidim/meetings/meetings/_meeting_actions.html.erb +34 -0
- data/app/views/decidim/meetings/meetings/_meeting_aside.html.erb +20 -59
- data/app/views/decidim/meetings/meetings/_meeting_poll_actions.html.erb +2 -5
- data/app/views/decidim/meetings/meetings/_schema_org_event_meeting.html.erb +3 -0
- data/app/views/decidim/meetings/meetings/index.html.erb +10 -2
- data/app/views/decidim/meetings/meetings/show.html.erb +5 -5
- data/app/views/decidim/meetings/polls/answers/index.html.erb +5 -5
- data/app/views/decidim/meetings/shared/_filters.html.erb +1 -13
- data/app/views/decidim/meetings/shared/_index.html.erb +1 -1
- data/app/views/decidim/meetings/shared/_index.js.erb +3 -2
- data/app/views/decidim/meetings/shared/_meetings_aside.html.erb +2 -2
- data/app/views/decidim/participatory_spaces/_conference_venues.html.erb +1 -1
- data/config/locales/ar.yml +17 -17
- data/config/locales/bg.yml +5 -25
- data/config/locales/ca.yml +137 -25
- data/config/locales/cs.yml +138 -28
- data/config/locales/de.yml +138 -26
- data/config/locales/el.yml +1 -22
- data/config/locales/en.yml +133 -21
- data/config/locales/es-MX.yml +137 -25
- data/config/locales/es-PY.yml +137 -25
- data/config/locales/es.yml +137 -25
- data/config/locales/eu.yml +138 -26
- data/config/locales/fi-plain.yml +138 -26
- data/config/locales/fi.yml +138 -26
- data/config/locales/fr-CA.yml +79 -26
- data/config/locales/fr.yml +79 -26
- data/config/locales/ga-IE.yml +0 -13
- data/config/locales/gl.yml +1 -12
- data/config/locales/hu.yml +1 -19
- data/config/locales/id-ID.yml +1 -13
- data/config/locales/is-IS.yml +0 -12
- data/config/locales/it.yml +1 -17
- data/config/locales/ja.yml +95 -25
- data/config/locales/lb.yml +0 -11
- data/config/locales/lt.yml +1 -23
- data/config/locales/lv.yml +1 -13
- data/config/locales/nl.yml +1 -17
- data/config/locales/no.yml +1 -16
- data/config/locales/pl.yml +5 -21
- data/config/locales/pt-BR.yml +1 -21
- data/config/locales/pt.yml +1 -17
- data/config/locales/ro-RO.yml +30 -17
- data/config/locales/ru.yml +1 -13
- data/config/locales/sk.yml +1 -13
- data/config/locales/sv.yml +74 -26
- data/config/locales/tr-TR.yml +1 -19
- data/config/locales/uk.yml +0 -12
- data/config/locales/zh-CN.yml +1 -18
- data/config/locales/zh-TW.yml +1 -21
- data/db/migrate/20181107175558_add_questionnaire_to_existing_meetings.rb +1 -1
- data/db/migrate/20200827153856_add_commentable_counter_cache_to_meetings.rb +1 -1
- data/db/migrate/20201016065302_fix_meetings_registration_terms.rb +1 -1
- data/db/migrate/20210310120731_add_followable_counter_cache_to_meetings.rb +1 -1
- data/db/migrate/20240712104245_create_decidim_meetings_meeting_link.rb +12 -0
- data/db/migrate/20240828103603_add_deleted_at_to_decidim_meetings_meetings.rb +8 -0
- data/decidim-meetings.gemspec +1 -1
- data/lib/decidim/api/agenda_item_type.rb +6 -7
- data/lib/decidim/api/agenda_type.rb +3 -4
- data/lib/decidim/api/meeting_type.rb +33 -41
- data/lib/decidim/api/meetings_type.rb +4 -5
- data/lib/decidim/api/service_type.rb +1 -1
- data/lib/decidim/meetings/admin_engine.rb +9 -1
- data/lib/decidim/meetings/component.rb +14 -4
- data/lib/decidim/meetings/download_your_data_user_answers_serializer.rb +13 -7
- data/lib/decidim/meetings/meeting_serializer.rb +70 -59
- data/lib/decidim/meetings/schema_org_event_meeting_serializer.rb +151 -0
- data/lib/decidim/meetings/seeds.rb +2 -4
- data/lib/decidim/meetings/test/factories.rb +8 -0
- data/lib/decidim/meetings/test/translated_event.rb +3 -3
- data/lib/decidim/meetings/version.rb +1 -1
- data/lib/decidim/meetings.rb +1 -0
- metadata +32 -21
- data/app/cells/decidim/meetings/meetings_map/show.erb +0 -16
- data/app/cells/decidim/meetings/meetings_map_cell.rb +0 -32
- data/app/commands/decidim/meetings/admin/destroy_meeting.rb +0 -21
- data/app/helpers/decidim/meetings/map_helper.rb +0 -21
- data/app/views/decidim/meetings/meetings/_actions.html.erb +0 -6
@@ -1,31 +1,48 @@
|
|
1
1
|
<%= render layout: "layouts/decidim/shared/layout_item" do %>
|
2
|
+
|
3
|
+
<%= render partial: "schema_org_event_meeting" %>
|
4
|
+
|
2
5
|
<section class="layout-main__section layout-main__heading">
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
<%=
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
6
|
+
<h1 class="h2 decorator"><%= present(meeting).title(links: true, html_escape: true ) %></h1>
|
7
|
+
<%= cell "decidim/meetings/dates_and_map", meeting %>
|
8
|
+
<div class="block md:hidden">
|
9
|
+
<%= render partial: "meeting_aside", locals: { hide_modal: true } %>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<%= render partial: "meeting_poll_actions", locals: { mobile: true } %>
|
13
|
+
|
14
|
+
<% if meeting.private_meeting? || meeting.withdrawn? %>
|
15
|
+
<div class="layout-author has_status">
|
16
|
+
<% if meeting.private_meeting? %>
|
17
|
+
<span class="<%= meeting_type_badge_css_class("private") %> label">
|
18
|
+
<%= t("private_meeting", scope: "decidim.meetings.types") %>
|
19
|
+
</span>
|
20
|
+
<% end %>
|
21
|
+
<% if meeting.private_meeting? and meeting.transparent? %>
|
22
|
+
<span class="<%= meeting_type_badge_css_class("transparent") %> label">
|
23
|
+
<%= t("transparent", scope: "decidim.meetings.types") %>
|
24
|
+
</span>
|
25
|
+
<% end %>
|
26
|
+
<% if meeting.withdrawn? %>
|
27
|
+
<span class="<%= meeting_type_badge_css_class("withdraw") %> label">
|
28
|
+
<%= t("withdraw", scope: "decidim.meetings.types") %>
|
29
|
+
</span>
|
30
|
+
<% end %>
|
31
|
+
</div>
|
32
|
+
<% end %>
|
33
|
+
|
34
|
+
<div class="layout-author <%= "has_status" if meeting.private_meeting? || meeting.withdrawn? %>">
|
35
|
+
<div class="relative flex items-center justify-center w-full">
|
36
|
+
<div class="w-10/12 flex items-center gap-4">
|
37
|
+
<%= cell "decidim/author", author_presenter_for(meeting.normalized_author), from: meeting, context_actions: nil, layout: :compact %>
|
38
|
+
</div>
|
39
|
+
<%= render "decidim/shared/resource_actions", resource: meeting do %>
|
40
|
+
<%= render "decidim/meetings/meetings/meeting_actions" %>
|
41
|
+
<% end %>
|
42
|
+
</div>
|
26
43
|
</div>
|
27
|
-
</section>
|
28
44
|
|
45
|
+
</section>
|
29
46
|
<section class="layout-main__section">
|
30
47
|
<div class="editor-content">
|
31
48
|
<%= render_meeting_body(@meeting) %>
|
@@ -52,14 +69,22 @@
|
|
52
69
|
</section>
|
53
70
|
<% end %>
|
54
71
|
|
72
|
+
<%= cell("decidim/tags", meeting) %>
|
73
|
+
|
55
74
|
<section class="layout-main__section layout-main__buttons" data-buttons>
|
56
|
-
<%=
|
75
|
+
<%= cell "decidim/comments_button", nil %>
|
76
|
+
|
77
|
+
<div class="ml-auto lg:ml-0">
|
78
|
+
<%= cell "decidim/share_widget", meeting %>
|
79
|
+
</div>
|
57
80
|
</section>
|
58
81
|
|
59
82
|
<%= pad_iframe_for meeting %>
|
60
83
|
|
61
84
|
<% content_for :aside do %>
|
62
|
-
|
85
|
+
<div class="hidden md:block">
|
86
|
+
<%= render partial: "meeting_aside" %>
|
87
|
+
</div>
|
63
88
|
<% end %>
|
64
89
|
|
65
90
|
<% content_for :item_footer do %>
|
@@ -0,0 +1,34 @@
|
|
1
|
+
<% if allowed_to?(:update, :meeting, meeting: meeting) %>
|
2
|
+
<li role="menuitem">
|
3
|
+
<%= link_to edit_meeting_path(meeting), class: "button button__sm button__text button__text-secondary" do %>
|
4
|
+
<span><%= t("edit_meeting", scope: "decidim.meetings.meetings.meeting") %></span>
|
5
|
+
<%= icon "pencil-line" %>
|
6
|
+
<% end %>
|
7
|
+
</li>
|
8
|
+
<% end %>
|
9
|
+
|
10
|
+
<% if allowed_to?(:close, :meeting, meeting: meeting) %>
|
11
|
+
<% caption = meeting.closed? ? t("edit_close_meeting", scope: "decidim.meetings.meetings.meeting") : t("close_meeting", scope: "decidim.meetings.meetings.meeting") %>
|
12
|
+
<li role="menuitem">
|
13
|
+
<%= link_to edit_meeting_meeting_close_path(meeting_id: meeting.id, id: meeting.id), class: "button button__sm button__text button__text-secondary" do %>
|
14
|
+
<span><%= caption %></span>
|
15
|
+
<%= icon "lock-line" %>
|
16
|
+
<% end %>
|
17
|
+
</li>
|
18
|
+
<% end %>
|
19
|
+
|
20
|
+
<% if meeting.withdrawable_by?(current_user) %>
|
21
|
+
<li role="menuitem">
|
22
|
+
<%= action_authorized_link_to(
|
23
|
+
:withdraw,
|
24
|
+
withdraw_meeting_path(meeting),
|
25
|
+
method: :put,
|
26
|
+
class: "button button__sm button__text button__text-secondary" ,
|
27
|
+
title: t("withdraw_btn_hint", scope: "decidim.meetings.meetings.show"),
|
28
|
+
data: { confirm: t("withdraw_confirmation_html", scope: "decidim.meetings.meetings.show") }
|
29
|
+
) do %>
|
30
|
+
<span><%= t("withdraw_meeting", scope:"decidim.meetings.meetings.show") %></span>
|
31
|
+
<%= icon "arrow-go-back-line" %>
|
32
|
+
<% end %>
|
33
|
+
</li>
|
34
|
+
<% end %>
|
@@ -2,40 +2,7 @@
|
|
2
2
|
|
3
3
|
<% if meeting.can_be_joined_by?(current_user) || meeting.on_different_platform? %>
|
4
4
|
<section class="layout-aside__section layout-aside__buttons layout-aside__ctas-buttons" data-sticky-buttons>
|
5
|
-
<%= cell "decidim/meetings/join_meeting_button", meeting, show_remaining_slots: true %>
|
6
|
-
</section>
|
7
|
-
<% end %>
|
8
|
-
|
9
|
-
<% if allowed_to?(:update, :meeting, meeting: meeting) || allowed_to?(:close, :meeting, meeting: meeting) || meeting.withdrawable_by?(current_user) %>
|
10
|
-
<section class="layout-aside__section layout-aside__buttons">
|
11
|
-
<% if allowed_to?(:update, :meeting, meeting: meeting) %>
|
12
|
-
<%= link_to edit_meeting_path(meeting), class: "button button__sm button__transparent-secondary w-full" do %>
|
13
|
-
<span><%= t("edit_meeting", scope: "decidim.meetings.meetings.meeting") %></span>
|
14
|
-
<%= icon "pencil-line" %>
|
15
|
-
<% end %>
|
16
|
-
<% end %>
|
17
|
-
|
18
|
-
<% if allowed_to?(:close, :meeting, meeting: meeting) %>
|
19
|
-
<% caption = meeting.closed? ? t("edit_close_meeting", scope: "decidim.meetings.meetings.meeting") : t("close_meeting", scope: "decidim.meetings.meetings.meeting") %>
|
20
|
-
|
21
|
-
<%= link_to edit_meeting_meeting_close_path(meeting_id: meeting.id, id: meeting.id), class: "button button__sm button__transparent-secondary w-full" do %>
|
22
|
-
<span><%= caption %></span>
|
23
|
-
<%= icon "pencil-line" %>
|
24
|
-
<% end %>
|
25
|
-
<% end %>
|
26
|
-
|
27
|
-
<% if meeting.withdrawable_by?(current_user) %>
|
28
|
-
<%= action_authorized_link_to(
|
29
|
-
:withdraw,
|
30
|
-
withdraw_meeting_path(meeting),
|
31
|
-
method: :put,
|
32
|
-
class: "button button__sm button__transparent-secondary w-full",
|
33
|
-
title: t("withdraw_btn_hint", scope: "decidim.meetings.meetings.show"),
|
34
|
-
data: { confirm: t("withdraw_confirmation_html", scope: "decidim.meetings.meetings.show") }
|
35
|
-
) do %>
|
36
|
-
<span><%= t("withdraw_meeting", scope:"decidim.meetings.meetings.show") %></span>
|
37
|
-
<% end %>
|
38
|
-
<% end %>
|
5
|
+
<%= cell "decidim/meetings/join_meeting_button", meeting, show_remaining_slots: true, hide_modal: local_assigns[:hide_modal] %>
|
39
6
|
</section>
|
40
7
|
<% end %>
|
41
8
|
|
@@ -63,37 +30,31 @@
|
|
63
30
|
<% meeting.attending_organizations.split("\n").each do |organizations| %>
|
64
31
|
<li><%= organizations %></li>
|
65
32
|
<% end %>
|
66
|
-
|
33
|
+
</ul>
|
34
|
+
<% end %>
|
67
35
|
<% end %>
|
68
36
|
<% end %>
|
69
|
-
<% end %>
|
70
37
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
38
|
+
<% if registration.present? && registration.meeting.component.settings.registration_code_enabled %>
|
39
|
+
<%= render layout: "decidim/meetings/layouts/aside_block", locals: { emoji: "coupon-line" } do %>
|
40
|
+
<h3 class="meeting__aside-block__title"><%= registration_code_help_text %></h3>
|
41
|
+
<div class="meeting__aside-block__large"><%= registration.code %></div>
|
42
|
+
<% if registration.validated? %>
|
43
|
+
<div class="label success"><%= t("validated", scope: "decidim.meetings.meetings.show.registration_state") %></div>
|
44
|
+
<% else %>
|
45
|
+
<div class="label warning"><%= t("validation_pending", scope: "decidim.meetings.meetings.show.registration_state") %></div>
|
46
|
+
<% end %>
|
79
47
|
<% end %>
|
80
48
|
<% end %>
|
81
|
-
<% end %>
|
82
49
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
50
|
+
<% if meeting.services.any? %>
|
51
|
+
<% meeting.services.each do |service| %>
|
52
|
+
<%= render layout: "decidim/meetings/layouts/aside_block", locals: { emoji: "star-line" } do %>
|
53
|
+
<h3 class="meeting__aside-block__title"><%= translated_attribute(service["title"]) %></h3>
|
54
|
+
<div class="meeting__aside-block__text"><%= translated_attribute(service["description"]) %></div>
|
55
|
+
<% end %>
|
88
56
|
<% end %>
|
89
57
|
<% end %>
|
90
|
-
|
91
|
-
</section>
|
58
|
+
<%= cell "decidim/meetings/cancel_registration_meeting_button", meeting, hide_modal: local_assigns[:hide_modal] %>
|
59
|
+
</section>
|
92
60
|
<% end %>
|
93
|
-
|
94
|
-
<section class="layout-aside__section actions__secondary">
|
95
|
-
<%= cell "decidim/meetings/cancel_registration_meeting_button", meeting %>
|
96
|
-
<%= follow_button_for(meeting) %>
|
97
|
-
<%= cell "decidim/share_button", nil %>
|
98
|
-
<%= cell "decidim/report_button", meeting %>
|
99
|
-
</section>
|
@@ -1,11 +1,8 @@
|
|
1
1
|
<% extra_classes = local_assigns.fetch(:mobile, false) ? " block md:hidden" : " hidden md:block" %>
|
2
2
|
<% if meeting.poll&.has_questions? %>
|
3
3
|
<section class="layout-aside__section layout-aside__buttons<%= extra_classes %>">
|
4
|
-
|
5
|
-
|
6
|
-
<%= meeting.poll.has_open_questions? ? t("reply_poll", scope: "decidim.meetings.meetings.meeting") : t("view_poll", scope: "decidim.meetings.meetings.meeting") %>
|
7
|
-
</span>
|
8
|
-
<% end %>
|
4
|
+
<% reply_text = meeting.poll.has_open_questions? ? t("reply_poll", scope: "decidim.meetings.meetings.meeting") : t("view_poll", scope: "decidim.meetings.meetings.meeting") %>
|
5
|
+
<%= action_authorized_link_to :reply_poll, reply_text, meeting_polls_answers_path(meeting), class: "button button__xl button__secondary w-full", data: { "redirect_url" => meeting_polls_answers_path(meeting) }, resource: meeting %>
|
9
6
|
<% if !allowed_to?(:reply_poll, :meeting, meeting:) && allowed_to?(:update, :poll, meeting:) %>
|
10
7
|
<%= link_to admin_meeting_polls_answers_path(meeting), class: "button button__sm button__transparent-secondary w-full" do %>
|
11
8
|
<span><%= t("administrate", scope: "decidim.meetings.polls.answers.index") %></span>
|
@@ -1,3 +1,12 @@
|
|
1
|
+
<% add_decidim_meta_tags(
|
2
|
+
description: translated_attribute(current_component.participatory_space.try(:description)),
|
3
|
+
title: t("decidim.components.pagination.page_title",
|
4
|
+
component_name: translated_attribute(current_component.name),
|
5
|
+
current_page: meetings.current_page,
|
6
|
+
total_pages: meetings.total_pages ),
|
7
|
+
url: meetings_url,
|
8
|
+
resource: current_component) %>
|
9
|
+
|
1
10
|
<%= render partial: "decidim/meetings/shared/index", locals: {
|
2
11
|
display_map: Decidim::Map.available?(:geocoding, :dynamic) && current_component.settings.maps_enabled? && search.result.not_online.exists?,
|
3
12
|
display_announcement: true,
|
@@ -6,8 +15,7 @@
|
|
6
15
|
filter_options: {
|
7
16
|
date: !@forced_past_meetings,
|
8
17
|
type: true,
|
9
|
-
|
10
|
-
categories: current_component.categories.any?,
|
18
|
+
taxonomies: true,
|
11
19
|
origin: component_settings.creation_enabled_for_participants?,
|
12
20
|
space_type: false,
|
13
21
|
activity: current_user.present?
|
@@ -1,10 +1,10 @@
|
|
1
1
|
<% provide(:title, present(meeting).title) %>
|
2
2
|
|
3
|
-
<% add_decidim_meta_tags(
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
3
|
+
<% add_decidim_meta_tags(
|
4
|
+
title: present(meeting).title,
|
5
|
+
description: present(meeting).description,
|
6
|
+
url: meeting_url(meeting.id),
|
7
|
+
resource: meeting) %>
|
8
8
|
|
9
9
|
<%
|
10
10
|
edit_link(
|
@@ -1,8 +1,8 @@
|
|
1
|
-
<% add_decidim_meta_tags(
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
1
|
+
<% add_decidim_meta_tags(
|
2
|
+
title: present(meeting).title,
|
3
|
+
description: present(meeting).description,
|
4
|
+
url: meeting_url(meeting.id),
|
5
|
+
resource: meeting) %>
|
6
6
|
|
7
7
|
<%= append_javascript_pack_tag "decidim_meetings" %>
|
8
8
|
<%= append_stylesheet_pack_tag "decidim_meetings" %>
|
@@ -1,16 +1,4 @@
|
|
1
|
-
|
2
|
-
f.append(method: :with_any_date, collection: filter_date_values, label_scope: "decidim.meetings.meetings.filters", id: "date", type: :radio_buttons) if filter_options[:date]
|
3
|
-
f.append(method: :with_any_type, collection: filter_type_values, label_scope: "decidim.meetings.meetings.filters", id: "type") if filter_options[:type]
|
4
|
-
f.append(method: :with_any_scope, collection: filter_scopes_values, label_scope: "decidim.shared.participatory_space_filters.filters", id: "scope") if filter_options[:scopes]
|
5
|
-
f.append(method: :with_any_scope, collection: filter_global_scopes_values, label_scope: "decidim.shared.participatory_space_filters.filters", id: "scope") if filter_options[:directory_scopes]
|
6
|
-
f.append(method: :with_any_category, collection: filter_categories_values, label_scope: "decidim.meetings.meetings.filters", id: "category") if filter_options[:categories]
|
7
|
-
f.append(method: :with_any_global_category, collection: directory_filter_categories_values, label_scope: "decidim.meetings.meetings.filters", id: "category") if filter_options[:directory_categories]
|
8
|
-
f.append(method: :with_any_origin, collection: filter_origin_values, label_scope: "decidim.meetings.meetings.filters", id: "origin") if filter_options[:origin]
|
9
|
-
f.append(method: :with_any_space, collection: directory_meeting_spaces_values, label_scope: "decidim.meetings.directory.meetings.index", id: "space_type") if filter_options[:space_type]
|
10
|
-
f.append(method: :activity, collection: activity_filter_values, label_scope: "decidim.meetings.meetings.filters", id: "activity", type: :radio_buttons) if filter_options[:activity]
|
11
|
-
end %>
|
12
|
-
|
13
|
-
<%= render layout: "decidim/shared/filters", locals: { filter_sections:, search_variable:, skip_to_id: "meetings" } do %>
|
1
|
+
<%= render layout: "decidim/shared/filters", locals: { filter_sections: filter_sections(**filter_options), search_variable:, skip_to_id: "meetings" } do %>
|
14
2
|
<%= render partial: "decidim/meetings/calendar_modal", locals: {
|
15
3
|
path: short_url(
|
16
4
|
route_name: "calendar",
|
@@ -10,7 +10,7 @@
|
|
10
10
|
<%= render layout: "layouts/decidim/shared/layout_two_col" do %>
|
11
11
|
<% if display_map %>
|
12
12
|
<div class="meeting-list__map">
|
13
|
-
<%= cell "decidim/
|
13
|
+
<%= cell "decidim/map", search.result, metadata_card: "decidim/meetings/meeting_card_metadata" %>
|
14
14
|
</div>
|
15
15
|
<% end %>
|
16
16
|
|
@@ -7,9 +7,10 @@ $urlCalendarUrl.val("<%= short_url(route_name: "calendar", params: { filter: par
|
|
7
7
|
var $map = $("#map");
|
8
8
|
var controller = $map.data("map-controller");
|
9
9
|
if (controller) {
|
10
|
-
var markerData = JSON.parse('<%= escape_javascript
|
10
|
+
var markerData = JSON.parse('<%= escape_javascript cell("decidim/map", search.result, metadata_card: "decidim/meetings/meeting_card_metadata").geocoded_data.to_json.html_safe %>');
|
11
11
|
controller.clearMarkers();
|
12
|
-
|
12
|
+
|
13
|
+
if (markerData.length > 0) {
|
13
14
|
controller.addMarkers(markerData);
|
14
15
|
}
|
15
16
|
}
|
@@ -5,8 +5,8 @@
|
|
5
5
|
<h2 class="title-decorator"><%= t("decidim.components.meetings.name") %></h2>
|
6
6
|
<% end %>
|
7
7
|
|
8
|
-
<% if
|
9
|
-
<%= action_authorized_link_to :create, new_meeting_path, class: "button button__xl button__secondary w-full", data: { "redirect_url" => new_meeting_path } do %>
|
8
|
+
<% if allowed_to?(:create, :meeting) %>
|
9
|
+
<%= action_authorized_link_to :create, new_meeting_path, permissions_holder: current_component, class: "button button__xl button__secondary w-full", data: { "redirect_url" => new_meeting_path } do %>
|
10
10
|
<span><%= t("new_meeting", scope: "decidim.meetings.meetings.index") %></span>
|
11
11
|
<%= icon "add-line" %>
|
12
12
|
<% end %>
|
data/config/locales/ar.yml
CHANGED
@@ -2,6 +2,8 @@
|
|
2
2
|
ar:
|
3
3
|
activemodel:
|
4
4
|
attributes:
|
5
|
+
answer:
|
6
|
+
add_documents: أضف مستندات
|
5
7
|
close_meeting:
|
6
8
|
attendees_count: عدد الحضور
|
7
9
|
attending_organizations: قائمة المنظمات التي حضرت
|
@@ -85,8 +87,6 @@ ar:
|
|
85
87
|
admin:
|
86
88
|
filters:
|
87
89
|
meetings:
|
88
|
-
category_id_eq:
|
89
|
-
label: الفئة
|
90
90
|
closed_at_present:
|
91
91
|
label: الحالة
|
92
92
|
values:
|
@@ -97,8 +97,6 @@ ar:
|
|
97
97
|
values:
|
98
98
|
'false': السابق
|
99
99
|
'true': القادم
|
100
|
-
scope_id_eq:
|
101
|
-
label: نطاق
|
102
100
|
with_any_origin:
|
103
101
|
label: الأصل
|
104
102
|
values:
|
@@ -135,8 +133,6 @@ ar:
|
|
135
133
|
maps_enabled: تم تمكين الخرائط
|
136
134
|
registration_code_enabled: تم تمكين رمز التسجيل
|
137
135
|
resources_permissions_enabled: يمكن تعيين أذونات الإجراءات لكل اجتماع
|
138
|
-
scope_id: نطاق
|
139
|
-
scopes_enabled: النطاقات مفعلة
|
140
136
|
terms_and_conditions_url_for_meeting_creators: أحكام وشروط عناوين URL لمنشئي الاجتماع
|
141
137
|
step:
|
142
138
|
announcement: إعلان
|
@@ -193,7 +189,7 @@ ar:
|
|
193
189
|
badges:
|
194
190
|
attended_meetings:
|
195
191
|
conditions:
|
196
|
-
|
192
|
+
- سجل للاجتماعات التي تريد حضورها
|
197
193
|
description: تُمنح هذه الشارة عند حضور العديد من الاجتماعات المباشرة.
|
198
194
|
description_another: حضر هذا المشارك %{score} جلسة.
|
199
195
|
description_own: لقد حضرت %{score} اجتماع.
|
@@ -205,7 +201,6 @@ ar:
|
|
205
201
|
attachment_collections: المجلدات
|
206
202
|
attachments: مرفقات
|
207
203
|
close: قريب
|
208
|
-
destroy: حذف
|
209
204
|
edit: تعديل
|
210
205
|
invalid_destroy:
|
211
206
|
proposals_count:
|
@@ -273,10 +268,10 @@ ar:
|
|
273
268
|
close: قريب
|
274
269
|
title: اجتماع قريب
|
275
270
|
meetings:
|
271
|
+
component:
|
272
|
+
unlink: إلغاء الربط
|
276
273
|
create:
|
277
274
|
success: تم إنشاء الاجتماع بنجاح. لاحظ أن هذا غير منشور حتى الآن، تحتاج إلى نشره بنفسك.
|
278
|
-
destroy:
|
279
|
-
success: تم حذف الاجتماع بنجاح
|
280
275
|
edit:
|
281
276
|
title: تعديل الاجتماعات
|
282
277
|
update: تحديث
|
@@ -290,7 +285,18 @@ ar:
|
|
290
285
|
select_a_registration_type: الرجاء تحديد نوع التسجيل
|
291
286
|
select_an_iframe_access_level: الرجاء تحديد مستوى الوصول إلى iframe
|
292
287
|
index:
|
288
|
+
linked_meeting_warning_html: يجب تعديل هذا الاجتماع من <br><a href="%{href}">%{name}</a>
|
293
289
|
title: اجتماعات
|
290
|
+
linked_spaces:
|
291
|
+
assign: تعيين
|
292
|
+
link_a_space: اربط مساحة
|
293
|
+
private_meeting_warning: لم يتم تطبيق المساحات المربوطة إذا كان الاجتماع خاص وغير شفاف.
|
294
|
+
private_space_warning: لم يتم تطبيق المساحات المربوطة إذا كان الاجتماع ينتمي إلى مساحه خاصة وغير شفافه.
|
295
|
+
select: اختر مساحه
|
296
|
+
table:
|
297
|
+
actions: الإجراءات
|
298
|
+
component: مساحات مربوطة
|
299
|
+
title: مساحات مربوطة
|
294
300
|
new:
|
295
301
|
create: إنشاء
|
296
302
|
title: إنشاء اجتماع
|
@@ -350,8 +356,6 @@ ar:
|
|
350
356
|
questionnaire:
|
351
357
|
update: "قام %{user_name} بتحديث الاستبيان للاجتماع %{meeting_name}"
|
352
358
|
application_helper:
|
353
|
-
filter_category_values:
|
354
|
-
all: الكل
|
355
359
|
filter_meeting_space_values:
|
356
360
|
all: الكل
|
357
361
|
calendar_modal:
|
@@ -454,7 +458,6 @@ ar:
|
|
454
458
|
location_hints_help: 'توضيح حول الموقع: معلومات إضافية. على سبيل المثال: إدراج طابق المبنى في حال كان الاجتماع شخصيا، أو كلمة مرور الاجتماع إذا كان اجتماعا على الإنترنت يحتوي على تقييد الدخول.'
|
455
459
|
online_meeting_url_help: 'الرابط: السماح للمشاركين بالاتصال مباشرة باجتماعك'
|
456
460
|
registration_url_help: 'الرابط: يتيح للمشاركين استخدام الخدمة الخارجية التي تستخدمها للتسجيل'
|
457
|
-
select_a_category: يُرجى اختيار فئة
|
458
461
|
select_a_meeting_type: الرجاء تحديد نوع الاجتماع
|
459
462
|
select_a_registration_type: الرجاء تحديد نوع التسجيل
|
460
463
|
select_an_iframe_access_level: الرجاء تحديد مستوى الوصول إلى iframe
|
@@ -464,9 +467,6 @@ ar:
|
|
464
467
|
see_all: عرض كافة الاجتماعات
|
465
468
|
see_all_withdrawn: عرض جميع الاجتماعات المسحوبة
|
466
469
|
text_banner: أنت تستعرض قائمة الاجتماعات التي تم سحبها من قبل مؤلفيها. %{go_back_link}.
|
467
|
-
meeting:
|
468
|
-
close_meeting: اجتماع قريب
|
469
|
-
edit_meeting: تعديل الاجتماعات
|
470
470
|
meetings:
|
471
471
|
upcoming_meetings_warning: حاليًا ، لا توجد اجتماعات مجدولة ، ولكن يمكنك هنا العثور على جميع الاجتماعات السابقة المدرجة.
|
472
472
|
new:
|
@@ -489,6 +489,7 @@ ar:
|
|
489
489
|
micro_camera_permissions_warning: عند النقر على الزر أدناه، سيتم طلب أذونات الميكروفون و/أو الكاميرا، وسوف تنضم إلى مؤتمر الفيديو
|
490
490
|
no_slots_available: لا فتحات المتاحة
|
491
491
|
organizations: حضور المنظمات
|
492
|
+
redirect_notice: هذا الاجتماع جزء من مساحة أخرى، لذلك تم نقلك إلى %{current_space_name}. <br>إذا كنت تفضل، يمكنك العودة إلى <a href="%{previous_space_url}">%{previous_space_name}</a>.
|
492
493
|
registration_code_help_text: رمز التسجيل الخاص بك
|
493
494
|
registration_state:
|
494
495
|
validated: التحقق من صحة
|
@@ -503,7 +504,6 @@ ar:
|
|
503
504
|
visit_finished: عرض الاجتماع السابق
|
504
505
|
withdraw_btn_hint: يمكن أن تسحب اجتماعك اذا غيرت رأيك. لا يتم إلغاء الاجتماع بل سيظهر في قائمة الاجتماعات المسحوبة.
|
505
506
|
withdraw_confirmation_html: هل أنت متأكد من أنك تريد سحب هذا الاجتماع؟<br><br><strong>لا يمكن إلغاء هذا الإجراء!</strong>
|
506
|
-
withdraw_meeting: سحب الاجتماع
|
507
507
|
update:
|
508
508
|
invalid: طرأت مشكلة خلال تحديث الاجتماع.
|
509
509
|
success: لقد قمت بتحديث الاجتماع بنجاح.
|
data/config/locales/bg.yml
CHANGED
@@ -97,8 +97,6 @@ bg:
|
|
97
97
|
'false': Не се приема
|
98
98
|
'true': Прието
|
99
99
|
meetings:
|
100
|
-
category_id_eq:
|
101
|
-
label: Категория
|
102
100
|
closed_at_present:
|
103
101
|
label: Състояние
|
104
102
|
values:
|
@@ -109,8 +107,6 @@ bg:
|
|
109
107
|
values:
|
110
108
|
'false': Минали
|
111
109
|
'true': Предстоящо
|
112
|
-
scope_id_eq:
|
113
|
-
label: Обхват
|
114
110
|
with_any_origin:
|
115
111
|
label: Произход
|
116
112
|
values:
|
@@ -160,8 +156,6 @@ bg:
|
|
160
156
|
maps_enabled: Картите са активирани
|
161
157
|
registration_code_enabled: Регистрационният код е активиран
|
162
158
|
resources_permissions_enabled: Разрешенията за действия могат да се задават за всяка среща
|
163
|
-
scope_id: Обхват
|
164
|
-
scopes_enabled: Обхватите са активирани
|
165
159
|
terms_and_conditions_url_for_meeting_creators: URL адрес за правила и условия за създатели на срещи
|
166
160
|
step:
|
167
161
|
announcement: Обявление
|
@@ -221,7 +215,7 @@ bg:
|
|
221
215
|
badges:
|
222
216
|
attended_meetings:
|
223
217
|
conditions:
|
224
|
-
|
218
|
+
- Регистрирайте се за срещите, които искате да посетите
|
225
219
|
description: Тази значка се предоставя, когато посетите няколко срещи на живо.
|
226
220
|
description_another: Този участник е посетил %{score} срещи.
|
227
221
|
description_own: Посетили сте %{score} срещи.
|
@@ -235,7 +229,6 @@ bg:
|
|
235
229
|
attachment_collections: Папки
|
236
230
|
attachments: Прикачени файлове
|
237
231
|
close: Затвори
|
238
|
-
destroy: Изтрий
|
239
232
|
edit: Редактирай
|
240
233
|
invalid_destroy:
|
241
234
|
proposals_count:
|
@@ -313,12 +306,6 @@ bg:
|
|
313
306
|
create:
|
314
307
|
invalid: Възникна проблем при създаването на тази среща.
|
315
308
|
success: Срещата е създадена успешно. Забележете, че това все още не е публикувано, трябва да го публикувате ръчно.
|
316
|
-
destroy:
|
317
|
-
invalid:
|
318
|
-
proposals_count:
|
319
|
-
one: Срещата не може да бъде премахната, понеже има %{count} участник свързан с нея.
|
320
|
-
other: Срещата не може да бъде премахната, понеже има %{count} участника свързани с нея.
|
321
|
-
success: Срещата беше изтрита успешно
|
322
309
|
edit:
|
323
310
|
title: Редактиране на срещата
|
324
311
|
update: Актуализация
|
@@ -366,10 +353,10 @@ bg:
|
|
366
353
|
poll:
|
367
354
|
form:
|
368
355
|
announcement_html:
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
356
|
+
- Когато даден въпрос получи отговори или бъде публикуван/затворен, той вече не може да бъде редактиран.
|
357
|
+
- Можете да добавите въпрос по всяко време.
|
358
|
+
- Анкетата ще бъде затворена, когато резултатите от всички създадени въпроси бъдат публикувани.
|
359
|
+
- Посетете <a href='%{admin_link}'>страницата за администриране на анкетата</a>, за да изпратите въпроси и да публикувате резултати.
|
373
360
|
registrations:
|
374
361
|
edit:
|
375
362
|
save: Запази
|
@@ -410,8 +397,6 @@ bg:
|
|
410
397
|
questionnaire:
|
411
398
|
update: "%{user_name} актуализира въпросника за срещата %{meeting_name}"
|
412
399
|
application_helper:
|
413
|
-
filter_category_values:
|
414
|
-
all: Всички
|
415
400
|
filter_meeting_space_values:
|
416
401
|
all: Всички
|
417
402
|
calendar:
|
@@ -521,7 +506,6 @@ bg:
|
|
521
506
|
location_hints_help: 'Съвети за местоположение: допълнителна информация. Пример: етажът на сградата, ако е лична среща, или паролата за среща, ако е онлайн среща с ограничен достъп.'
|
522
507
|
online_meeting_url_help: 'Връзка: позволява на участниците да се свързват директно с вашата среща'
|
523
508
|
registration_url_help: 'Линк: позволете на участниците да отидат на външната услуга, която използвате за регистрации'
|
524
|
-
select_a_category: Моля, изберете категория
|
525
509
|
select_a_meeting_type: Моля, изберете тип среща
|
526
510
|
select_a_registration_type: Моля, изберете тип регистрация
|
527
511
|
select_an_iframe_access_level: Моля, изберете ниво на достъп до iframe
|
@@ -532,9 +516,7 @@ bg:
|
|
532
516
|
see_all_withdrawn: Вижте всички оттеглени срещи
|
533
517
|
text_banner: Разглеждате списъка с оттеглени от авторите срещи. %{go_back_link}.
|
534
518
|
meeting:
|
535
|
-
close_meeting: Затваряне на срещата
|
536
519
|
edit_close_meeting: Редактиране на отчета за срещата
|
537
|
-
edit_meeting: Редактиране на срещата
|
538
520
|
join_meeting: Присъединяване към срещата
|
539
521
|
reply_poll: Отговор на анкета
|
540
522
|
view_poll: Вижте анкетата
|
@@ -571,7 +553,6 @@ bg:
|
|
571
553
|
visit_finished: Вижте миналата среща
|
572
554
|
withdraw_btn_hint: Можете да отмените срещата си, ако промените решението си. Срещата не се изтрива, тя ще се появи в списъка с оттеглени срещи.
|
573
555
|
withdraw_confirmation_html: Сигурни ли сте, че искате да отмените тази среща?<br><br><strong>Това действие не може да бъде отменено!</strong>
|
574
|
-
withdraw_meeting: Оттегляне на срещата
|
575
556
|
update:
|
576
557
|
invalid: Възникна проблем при актуализирането на срещата.
|
577
558
|
success: Актуализирахте успешно срещата.
|
@@ -663,7 +644,6 @@ bg:
|
|
663
644
|
transparent: Прозрачно
|
664
645
|
withdraw: Оттеглено
|
665
646
|
withdraw:
|
666
|
-
error: Възникна грешка при оттеглянето на срещата.
|
667
647
|
success: Срещата е оттеглена успешно.
|
668
648
|
metrics:
|
669
649
|
meetings:
|