decidim-conferences 0.28.6 → 0.29.0.rc1
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/conferences/conference_g_cell.rb +2 -2
- data/app/cells/decidim/conferences/conference_speaker_cell.rb +1 -1
- data/app/cells/decidim/conferences/content_blocks/highlighted_conferences_cell.rb +0 -2
- data/app/cells/decidim/conferences/linked_participatory_spaces_cell.rb +0 -1
- data/app/cells/decidim/conferences/media_link/show.erb +1 -1
- data/app/cells/decidim/conferences/media_link_cell.rb +0 -3
- data/app/cells/decidim/conferences/partner/image.erb +1 -1
- data/app/cells/decidim/conferences/partner_cell.rb +1 -1
- data/app/cells/decidim/conferences/registration_type_cell.rb +1 -5
- data/app/commands/decidim/conferences/admin/create_conference.rb +20 -65
- data/app/commands/decidim/conferences/admin/create_conference_speaker.rb +17 -81
- data/app/commands/decidim/conferences/admin/create_media_link.rb +10 -44
- data/app/commands/decidim/conferences/admin/create_partner.rb +9 -62
- data/app/commands/decidim/conferences/admin/create_registration_type.rb +15 -51
- data/app/commands/decidim/conferences/admin/destroy_conference_speaker.rb +6 -38
- data/app/commands/decidim/conferences/admin/destroy_media_link.rb +6 -38
- data/app/commands/decidim/conferences/admin/destroy_partner.rb +6 -38
- data/app/commands/decidim/conferences/admin/destroy_registration_type.rb +6 -38
- data/app/commands/decidim/conferences/admin/publish_conference_speaker.rb +51 -0
- data/app/commands/decidim/conferences/admin/unpublish_conference_speaker.rb +44 -0
- data/app/commands/decidim/conferences/admin/update_conference.rb +35 -93
- data/app/commands/decidim/conferences/admin/update_conference_speaker.rb +17 -74
- data/app/commands/decidim/conferences/admin/update_media_link.rb +8 -44
- data/app/commands/decidim/conferences/admin/update_partner.rb +10 -61
- data/app/commands/decidim/conferences/admin/update_registration_type.rb +12 -47
- data/app/controllers/concerns/decidim/conferences/admin/conferences_invites/filterable.rb +41 -0
- data/app/controllers/decidim/conferences/admin/conference_invites_controller.rb +8 -3
- data/app/controllers/decidim/conferences/admin/conference_speakers_controller.rb +33 -1
- data/app/controllers/decidim/conferences/admin/conferences_controller.rb +1 -1
- data/app/controllers/decidim/conferences/admin/media_links_controller.rb +1 -1
- data/app/controllers/decidim/conferences/admin/partners_controller.rb +1 -1
- data/app/controllers/decidim/conferences/admin/registration_types_controller.rb +1 -1
- data/app/controllers/decidim/conferences/application_controller.rb +4 -1
- data/app/controllers/decidim/conferences/conference_program_controller.rb +1 -2
- data/app/controllers/decidim/conferences/conference_speakers_controller.rb +1 -4
- data/app/controllers/decidim/conferences/conferences_controller.rb +1 -4
- data/app/controllers/decidim/conferences/media_controller.rb +1 -4
- data/app/controllers/decidim/conferences/registration_types_controller.rb +0 -3
- data/app/events/decidim/conferences/conference_role_assigned_event.rb +0 -5
- data/app/forms/decidim/conferences/admin/conference_form.rb +5 -5
- data/app/forms/decidim/conferences/admin/conference_speaker_form.rb +1 -1
- data/app/forms/decidim/conferences/admin/registration_type_form.rb +1 -1
- data/app/helpers/decidim/conferences/conference_helper.rb +2 -1
- data/app/mailers/decidim/conferences/admin/send_conference_diploma_mailer.rb +5 -9
- data/app/models/decidim/conference.rb +2 -2
- data/app/models/decidim/conference_speaker.rb +2 -0
- data/app/permissions/decidim/conferences/permissions.rb +2 -10
- data/app/presenters/decidim/conferences/admin_log/conference_speaker_presenter.rb +2 -1
- data/app/views/decidim/conferences/admin/conference_invites/_form.html.erb +5 -5
- data/app/views/decidim/conferences/admin/conference_invites/index.html.erb +1 -33
- data/app/views/decidim/conferences/admin/conference_registrations/index.html.erb +2 -4
- data/app/views/decidim/conferences/admin/conference_speakers/index.html.erb +11 -1
- data/app/views/decidim/conferences/admin/conference_user_roles/index.html.erb +1 -1
- data/app/views/decidim/conferences/admin/invite_join_conference_mailer/invite.html.erb +1 -1
- data/app/views/decidim/conferences/admin/media_links/index.html.erb +1 -1
- data/app/views/decidim/conferences/admin/media_links/new.html.erb +1 -1
- data/app/views/decidim/conferences/admin/partners/index.html.erb +3 -3
- data/app/views/decidim/conferences/admin/registration_types/index.html.erb +1 -1
- data/app/views/decidim/conferences/admin/send_conference_diploma_mailer/diploma_user.html.erb +7 -11
- data/app/views/decidim/conferences/conference_program/_program_item.html.erb +1 -1
- data/app/views/decidim/conferences/conference_speakers/index.html.erb +1 -0
- data/app/views/decidim/conferences/conferences/_conference_hero.html.erb +1 -1
- data/app/views/decidim/conferences/conferences/show.html.erb +5 -3
- data/app/views/decidim/conferences/media/index.html.erb +1 -0
- data/app/views/decidim/conferences/registration_types/index.html.erb +2 -1
- data/app/views/devise/mailer/join_conference.html.erb +1 -1
- data/app/views/devise/mailer/join_conference.text.erb +1 -1
- data/app/views/layouts/decidim/diploma.html.erb +1 -1
- data/config/initializers/wicked_pdf.rb +6 -4
- data/config/locales/ar.yml +21 -6
- data/config/locales/bg.yml +27 -6
- data/config/locales/ca.yml +18 -22
- data/config/locales/cs.yml +18 -23
- data/config/locales/de.yml +19 -23
- data/config/locales/el.yml +21 -6
- data/config/locales/en.yml +25 -29
- data/config/locales/es-MX.yml +18 -22
- data/config/locales/es-PY.yml +21 -25
- data/config/locales/es.yml +14 -18
- data/config/locales/eu.yml +182 -186
- data/config/locales/fi-plain.yml +17 -21
- data/config/locales/fi.yml +23 -27
- data/config/locales/fr-CA.yml +19 -23
- data/config/locales/fr.yml +19 -23
- data/config/locales/ga-IE.yml +0 -6
- data/config/locales/gl.yml +21 -4
- data/config/locales/hu.yml +21 -6
- data/config/locales/id-ID.yml +21 -4
- data/config/locales/it.yml +21 -6
- data/config/locales/ja.yml +17 -21
- data/config/locales/lb.yml +19 -6
- data/config/locales/lt.yml +21 -6
- data/config/locales/lv.yml +21 -6
- data/config/locales/nl.yml +21 -4
- data/config/locales/no.yml +21 -6
- data/config/locales/pl.yml +27 -6
- data/config/locales/pt-BR.yml +21 -51
- data/config/locales/pt.yml +21 -6
- data/config/locales/ro-RO.yml +12 -21
- data/config/locales/sk.yml +21 -6
- data/config/locales/sv.yml +42 -98
- data/config/locales/tr-TR.yml +21 -4
- data/config/locales/zh-CN.yml +21 -4
- data/config/locales/zh-TW.yml +21 -6
- data/db/migrate/20240613095855_add_published_at_to_conference_speakers.rb +7 -0
- data/decidim-conferences.gemspec +3 -2
- data/lib/decidim/api/conference_partner_type.rb +1 -1
- data/lib/decidim/api/conference_speaker_type.rb +1 -1
- data/lib/decidim/api/conference_type.rb +6 -2
- data/lib/decidim/conferences/admin_engine.rb +6 -1
- data/lib/decidim/conferences/engine.rb +1 -0
- data/lib/decidim/conferences/menu.rb +11 -0
- data/lib/decidim/conferences/seeds.rb +4 -22
- data/lib/decidim/conferences/test/factories.rb +5 -0
- data/lib/decidim/conferences/version.rb +1 -1
- metadata +33 -24
- data/app/cells/decidim/conference_activity_cell.rb +0 -10
- data/app/helpers/decidim/conferences/media_attachments_helper.rb +0 -19
- data/app/helpers/decidim/conferences/partners_helper.rb +0 -17
- data/app/uploaders/decidim/cw/conferences/diploma_uploader.rb +0 -14
- data/app/uploaders/decidim/cw/conferences/partner_logo_uploader.rb +0 -15
- data/app/views/layouts/decidim/conference.html.erb +0 -17
- data/config/locales/bn-BD.yml +0 -1
- data/config/locales/bs-BA.yml +0 -14
- data/config/locales/ca-IT.yml +0 -603
@@ -1,7 +1,7 @@
|
|
1
1
|
<div class="form__wrapper">
|
2
2
|
<div class="card attendee-fields pt-4">
|
3
3
|
<div class="row column">
|
4
|
-
<fieldset
|
4
|
+
<fieldset>
|
5
5
|
<legend><%= t(".attendee_type") %></legend>
|
6
6
|
<%= form.collection_radio_buttons(:existing_user, [[t(".non_user"), false], [t(".existing_user"), true]], :last, :first) %>
|
7
7
|
</fieldset>
|
@@ -11,21 +11,21 @@
|
|
11
11
|
<p><%= t(".invite_explanation") %></p>
|
12
12
|
</div>
|
13
13
|
|
14
|
-
<div class="row column
|
14
|
+
<div class="row column cell attendee-fields--new-user">
|
15
15
|
<%= form.text_field :name %>
|
16
16
|
</div>
|
17
|
-
<div class="row column
|
17
|
+
<div class="row column cell attendee-fields--new-user">
|
18
18
|
<%= form.text_field :email %>
|
19
19
|
</div>
|
20
20
|
|
21
|
-
<div class="row column
|
21
|
+
<div class="row column cell attendee-fields--user-picker">
|
22
22
|
<% prompt_options = { url: decidim_admin.users_organization_url, placeholder: t(".select_user") } %>
|
23
23
|
<%= form.autocomplete_select(:user_id, form.object.user.presence, { multiple: false, class: "autocomplete-field--results-inline" }, prompt_options) do |user|
|
24
24
|
{ value: user.id, label: "#{user.name} (@#{user.nickname})" }
|
25
25
|
end %>
|
26
26
|
</div>
|
27
27
|
|
28
|
-
<div class="row column
|
28
|
+
<div class="row column cell">
|
29
29
|
<%= form.select :registration_type_id,
|
30
30
|
options_for_select(@form.registration_types_for_select),
|
31
31
|
{ include_blank: false },
|
@@ -8,39 +8,7 @@
|
|
8
8
|
</h1>
|
9
9
|
</div>
|
10
10
|
|
11
|
-
|
12
|
-
it would require the definition of concerns similar to decidim-conferences/app/controllers/concerns/decidim/conferences/admin/filterable.rb %>
|
13
|
-
<div class="filters__section">
|
14
|
-
<div class="fcell">
|
15
|
-
<ul class="dropdown menu" data-dropdown-menu data-close-on-click-inside="false">
|
16
|
-
<li class="is-dropdown-submenu-parent">
|
17
|
-
<a href="#" class="dropdown button">
|
18
|
-
<%= t("filter_label", scope: "decidim.admin.filters") %>
|
19
|
-
<%= icon "arrow-down-s-line", class: "dropdown-filter-icon" %>
|
20
|
-
</a>
|
21
|
-
<ul class="menu is-dropdown-submenu">
|
22
|
-
<li><%= link_to t(".filter.sent"), url_for(status: "sent", q: @query) %></li>
|
23
|
-
<li><%= link_to t(".filter.accepted"), url_for(status: "accepted", q: @query) %></li>
|
24
|
-
<li><%= link_to t(".filter.rejected"), url_for(status: "rejected", q: @query) %></li>
|
25
|
-
<li><%= link_to t(".filter.all"), url_for(q: @query) %></li>
|
26
|
-
</ul>
|
27
|
-
</li>
|
28
|
-
</ul>
|
29
|
-
</div>
|
30
|
-
<div class="fcell search">
|
31
|
-
<%= form_tag "", method: :get do %>
|
32
|
-
<div class="input-group">
|
33
|
-
<%= search_field_tag :q, @query,label: false, class: "input-group-field", placeholder: t(".search") %>
|
34
|
-
<%= hidden_field_tag :state, @state %>
|
35
|
-
<div class="input-group-button">
|
36
|
-
<button type="submit" class="text-secondary" aria-label="<%= t("decidim.search.term_input_placeholder") %>">
|
37
|
-
<%= icon "search-line", class: "fill-secondary w-4 h-4" %>
|
38
|
-
</button>
|
39
|
-
</div>
|
40
|
-
</div>
|
41
|
-
<% end %>
|
42
|
-
</div>
|
43
|
-
</div>
|
11
|
+
<%= admin_filter_selector %>
|
44
12
|
|
45
13
|
<div class="table-scroll">
|
46
14
|
<table class="table-list">
|
@@ -4,16 +4,14 @@
|
|
4
4
|
<h1 class="item_show__header-title">
|
5
5
|
<%= t(".registrations") %>
|
6
6
|
<% if allowed_to? :export_conference_registrations, :conference, conference: conference %>
|
7
|
-
<span class="exports button button__sm button__secondary button--
|
7
|
+
<span class="exports button button__sm button__secondary button--title" data-toggle="export-dropdown">
|
8
8
|
<%= t "actions.export", scope: "decidim.admin" %>
|
9
9
|
<%= icon "arrow-down-s-line", class: "dropdown-filter-icon" %>
|
10
10
|
</span>
|
11
11
|
<div class="dropdown-pane" id="export-dropdown" data-dropdown data-auto-focus="true" data-close-on-click="true">
|
12
12
|
<ul class="vertical menu add-components">
|
13
13
|
<% %w(CSV JSON Excel).each do |format| %>
|
14
|
-
|
15
|
-
<li class="exports--format--<%= format.downcase %> exports--registrations"><%= t("decidim.admin.exports.export_as", name: t("decidim.admin.conferences.exports.registrations"), export_format: format) %></li>
|
16
|
-
<% end %>
|
14
|
+
<li class="exports--format--<%= format.downcase %> exports--registrations"><%= link_to t("decidim.admin.exports.export_as", name: t("decidim.admin.conferences.exports.registrations"), export_format: format), export_conference_conference_registrations_path(conference_id: conference, format:) %></li>
|
17
15
|
<% end %>
|
18
16
|
</ul>
|
19
17
|
</div>
|
@@ -33,7 +33,7 @@
|
|
33
33
|
<th><%= t("models.conference_speaker.fields.position", scope: "decidim.admin") %></th>
|
34
34
|
<th><%= t("models.conference_speaker.fields.affiliation", scope: "decidim.admin") %></th>
|
35
35
|
|
36
|
-
<th
|
36
|
+
<th></th>
|
37
37
|
</tr>
|
38
38
|
</thead>
|
39
39
|
<tbody>
|
@@ -54,6 +54,16 @@
|
|
54
54
|
<%= icon_link_to "pencil-line", edit_conference_speaker_path(current_conference, speaker), t("actions.edit", scope: "decidim.admin"), class: "action-icon--edit" %>
|
55
55
|
<% end %>
|
56
56
|
|
57
|
+
<% if allowed_to? :update, :conference_speaker, speaker: speaker %>
|
58
|
+
<% if speaker.published? %>
|
59
|
+
<%= icon_link_to "close-circle-line", unpublish_conference_speaker_path(current_conference, speaker.id), t("actions.unpublish", scope: "decidim.admin"), method: :put, class: "action-icon--unpublish" %>
|
60
|
+
<% else %>
|
61
|
+
<%= icon_link_to "check-line", publish_conference_speaker_path(current_conference, speaker.id), t("actions.publish", scope: "decidim.admin"), method: :put, class: "action-icon--publish" %>
|
62
|
+
<% end %>
|
63
|
+
<% else %>
|
64
|
+
<span class="action-space icon"></span>
|
65
|
+
<% end %>
|
66
|
+
|
57
67
|
<% if allowed_to? :destroy, :conference_speaker, speaker: speaker %>
|
58
68
|
<%= icon_link_to "delete-bin-line", conference_speaker_path(current_conference, speaker), t("actions.destroy", scope: "decidim.admin"), class: "action-icon--remove", method: :delete, data: { confirm: t("actions.confirm_destroy", scope: "decidim.admin") } %>
|
59
69
|
<% end %>
|
@@ -18,7 +18,7 @@
|
|
18
18
|
<th><%= sort_link(query, :last_sign_in_at, t("models.user.fields.last_sign_in_at", scope: "decidim.admin"), default_order: :desc) %></th>
|
19
19
|
<th><%= sort_link(query, :invitation_accepted_at, t("models.user.fields.invitation_accepted_at", scope: "decidim.admin"), default_order: :desc) %></th>
|
20
20
|
<th><%= sort_link(query, :role, t("models.conference_user_role.fields.role", scope: "decidim.admin"), default_order: :desc) %></th>
|
21
|
-
<th
|
21
|
+
<th></th>
|
22
22
|
</tr>
|
23
23
|
</thead>
|
24
24
|
<tbody>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<p class="email-greeting"><%= t("devise.mailer.invitation_instructions.hello", email: @user.name) %></p>
|
2
2
|
|
3
3
|
<p class="email-instructions">
|
4
|
-
<%= t ".invited_existing_user_to_join_a_conference", invited_by: @invited_by.name, application: @user.organization
|
4
|
+
<%= t ".invited_existing_user_to_join_a_conference", invited_by: @invited_by.name, application: organization_name(@user.organization) %>
|
5
5
|
</p>
|
6
6
|
|
7
7
|
<p class="email-button email-button__cta cta-decline">
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% add_decidim_page_title(t("media_links.new.title", scope: "decidim.admin")) %>
|
2
2
|
<div class="item_show__header">
|
3
3
|
<h1 class="item_show__header-title">
|
4
|
-
<%= t("
|
4
|
+
<%= t("conference_speakers.new.title", scope: "decidim.admin") %>
|
5
5
|
</h1>
|
6
6
|
</div>
|
7
7
|
<div class="item__edit item__edit-1col">
|
@@ -17,7 +17,7 @@
|
|
17
17
|
<th><%= t("models.partner.fields.link", scope: "decidim.admin") %></th>
|
18
18
|
<th><%= t("models.partner.fields.logo", scope: "decidim.admin") %></th>
|
19
19
|
|
20
|
-
<th
|
20
|
+
<th></th>
|
21
21
|
</tr>
|
22
22
|
</thead>
|
23
23
|
<tbody>
|
@@ -35,8 +35,8 @@
|
|
35
35
|
<% end %>
|
36
36
|
</td>
|
37
37
|
<td>
|
38
|
-
<% if partner.logo.
|
39
|
-
<%= image_tag(partner.attached_uploader(:logo).
|
38
|
+
<% if partner.attached_uploader(:logo).path %>
|
39
|
+
<%= image_tag(partner.attached_uploader(:logo).path(variant: :thumb)) %>
|
40
40
|
<% end %>
|
41
41
|
</td>
|
42
42
|
<td class="table-list__actions">
|
@@ -17,7 +17,7 @@
|
|
17
17
|
<th><%= t("models.registration_type.fields.weight", scope: "decidim.admin") %></th>
|
18
18
|
<th><%= t("models.registration_type.fields.conference_meetings", scope: "decidim.admin") %></th>
|
19
19
|
<th><%= t("models.registration_type.fields.registrations_count", scope: "decidim.admin") %></th>
|
20
|
-
<th
|
20
|
+
<th></th>
|
21
21
|
</tr>
|
22
22
|
</thead>
|
23
23
|
<tbody>
|
data/app/views/decidim/conferences/admin/send_conference_diploma_mailer/diploma_user.html.erb
CHANGED
@@ -2,24 +2,20 @@
|
|
2
2
|
<div class="diploma__border">
|
3
3
|
<div class="diploma__content">
|
4
4
|
<div>
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
<%= image_tag "data:#{logo.blob.content_type};base64, #{Base64.encode64(logo.download.presence || "")}" %>
|
9
|
-
</div>
|
10
|
-
<% end %>
|
5
|
+
<div class="diploma__logo">
|
6
|
+
<%= wicked_pdf_image_tag @conference.attached_uploader(:main_logo).url(variant: :thumb, host: @conference.organization.host) %>
|
7
|
+
</div>
|
11
8
|
<div class="diploma__name">
|
12
9
|
<h2><strong><%= translated_attribute(@conference.title) %></strong></h2>
|
13
10
|
<h3><%= t("decidim.conferences.admin.send_conference_diploma_mailer.diploma_user.certificate_of_attendance") %></h3>
|
14
11
|
<p><%= t("decidim.conferences.admin.send_conference_diploma_mailer.diploma_user.certificate_of_attendance_description", user: @user.name, title: translated_attribute(@conference.title), location: @conference.location, start: l(@conference.start_date, format: :decidim_short), end: l(@conference.end_date, format: :decidim_short) ).html_safe %></p>
|
15
12
|
</div>
|
16
|
-
<hr
|
13
|
+
<hr>
|
17
14
|
<div class="diploma__attendance">
|
18
15
|
<strong><%= t("decidim.conferences.admin.send_conference_diploma_mailer.diploma_user.attendance_verified_by") %></strong>
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
<% end %>
|
16
|
+
<div>
|
17
|
+
<%= wicked_pdf_image_tag @conference.attached_uploader(:signature).url(variant: :thumb, host: @conference.organization.host) %>
|
18
|
+
</div>
|
23
19
|
<%= l(@conference.sign_date, format: :decidim_short) %>, <%= @conference.signature_name %>
|
24
20
|
</div>
|
25
21
|
</div>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% if meetings.present? %>
|
2
2
|
<div class="conference__program-item">
|
3
3
|
<div class="conference__program-time">
|
4
|
-
<%= start_time.
|
4
|
+
<%= start_time.to_fs(:time) %> - <%= end_time.to_fs(:time) %>
|
5
5
|
</div>
|
6
6
|
<div>
|
7
7
|
<% categories = meetings.map(&:category).uniq %>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<section style="background-image:url('<%= current_participatory_space.attached_uploader(:banner_image).
|
1
|
+
<section style="background-image:url('<%= current_participatory_space.attached_uploader(:banner_image).path %>');" data-conference-hero>
|
2
2
|
<div class="conference__hero">
|
3
3
|
<div class="conference__hero-text">
|
4
4
|
<h1 class="h1 text-5xl">
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<% add_decidim_meta_tags({
|
2
|
-
|
2
|
+
title: translated_attribute(current_participatory_space.title),
|
3
|
+
image_url: current_participatory_space.attached_uploader(:hero_image).path,
|
3
4
|
description: translated_attribute(current_participatory_space.short_description),
|
4
|
-
url: conference_url(current_participatory_space)
|
5
|
-
twitter_handler: current_organization.twitter_handler
|
5
|
+
url: conference_url(current_participatory_space)
|
6
6
|
}) %>
|
7
7
|
|
8
8
|
<%
|
@@ -14,6 +14,8 @@ edit_link(
|
|
14
14
|
)
|
15
15
|
%>
|
16
16
|
|
17
|
+
<%= render partial: "layouts/decidim/header/follow_space_menu_bar_button", locals: { participatory_space: current_participatory_space } %>
|
18
|
+
|
17
19
|
<%# NOTE: This page is wrapped within a main tag, in order to
|
18
20
|
include the hero inside the two-column layout.
|
19
21
|
Therefore is mandatory to pass the "main_enabled: false" flag
|
@@ -1,4 +1,5 @@
|
|
1
1
|
<% add_decidim_meta_tags(title: t("registration_types.index.title", scope: "decidim.conferences")) %>
|
2
|
+
<% add_decidim_page_title(translated_attribute(current_participatory_space.title)) %>
|
2
3
|
|
3
4
|
<%
|
4
5
|
edit_link(
|
@@ -15,7 +16,7 @@ edit_link(
|
|
15
16
|
<%# NOTE: this page does not use a regular layout %>
|
16
17
|
<main class="container">
|
17
18
|
|
18
|
-
<section
|
19
|
+
<section>
|
19
20
|
<h1 class="title-decorator my-12">
|
20
21
|
<span class="not-sr-only"><%= t("registration_types.index.register", scope: "decidim.conferences") %></span>
|
21
22
|
<span class="sr-only"><%= t("registration_types.index.register", scope: "decidim.conferences") %> (<%= translated_attribute current_participatory_space.title %>)</span>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<p class="email-greeting"><%= t("devise.mailer.invitation_instructions.hello", email: @resource.name) %></p>
|
2
2
|
|
3
3
|
<p class="email-instructions">
|
4
|
-
<%= t("decidim.conferences.admin.invite_join_conference_mailer.invite.invited_user_to_join_a_conference", invited_by: @resource.invited_by.name, application: @
|
4
|
+
<%= t("decidim.conferences.admin.invite_join_conference_mailer.invite.invited_user_to_join_a_conference", invited_by: @resource.invited_by.name, application: organization_name(@user.organization)) %>
|
5
5
|
</p>
|
6
6
|
|
7
7
|
<p class="email-button email-button__cta"><%= link_to t("devise.mailer.invitation_instructions.accept"), accept_invitation_url(@resource, invitation_token: @token, invite_redirect: Decidim::EngineRouter.main_proxy(@opts[:conference]).conference_registration_type_conference_registration_path(conference_slug: @opts[:conference], registration_type_id: @opts[:registration_type]), host: @resource.organization.host) %></p>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<%= t("devise.mailer.invitation_instructions.hello", email: @resource.name) %>
|
2
2
|
|
3
|
-
<%= t("decidim.conferences.admin.invite_join_conference_mailer.invite.invited_existing_user_to_join_a_conference", invited_by: @resource.invited_by.name, application: @
|
3
|
+
<%= t("decidim.conferences.admin.invite_join_conference_mailer.invite.invited_existing_user_to_join_a_conference", invited_by: @resource.invited_by.name, application: organization_name(@user.organization)) %>
|
4
4
|
|
5
5
|
<%= link_to t("devise.mailer.invitation_instructions.accept"), accept_invitation_url(@resource, invitation_token: @token, invite_redirect: Decidim::EngineRouter.main_proxy(@opts[:conference]).conference_registration_type_conference_registration_path(conference_slug: @opts[:conference], registration_type_id: @opts[:registration_type]), host: @resource.organization.host) %>
|
6
6
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
<head>
|
4
4
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
5
|
<meta name="viewport" content="width=device-width">
|
6
|
-
<%=
|
6
|
+
<%= wicked_pdf_stylesheet_pack_tag "decidim_conference_diploma" %>
|
7
7
|
</head>
|
8
8
|
<body>
|
9
9
|
<%= yield %>
|
@@ -10,12 +10,14 @@
|
|
10
10
|
#
|
11
11
|
# https://github.com/mileszs/wicked_pdf/blob/master/README.md
|
12
12
|
|
13
|
-
WickedPdf.
|
13
|
+
WickedPdf.configure do |config|
|
14
14
|
# Path to the wkhtmltopdf executable: This usually is not needed if using
|
15
15
|
# one of the wkhtmltopdf-binary family of gems.
|
16
|
-
#
|
16
|
+
# or
|
17
|
+
# config.exe_path = '/usr/local/bin/wkhtmltopdf',
|
18
|
+
config.exe_path = Gem.bin_path("wkhtmltopdf-binary", "wkhtmltopdf")
|
17
19
|
|
18
20
|
# Layout file to be used for all PDFs
|
19
21
|
# (but can be overridden in `render :pdf` calls)
|
20
|
-
# layout
|
21
|
-
|
22
|
+
# config.layout = 'pdf.html'
|
23
|
+
end
|
data/config/locales/ar.yml
CHANGED
@@ -63,8 +63,6 @@ ar:
|
|
63
63
|
email: البريد الإلكتروني
|
64
64
|
name: اسم
|
65
65
|
role: وظيفة
|
66
|
-
partner:
|
67
|
-
logo: الشعار
|
68
66
|
activerecord:
|
69
67
|
models:
|
70
68
|
decidim/conference:
|
@@ -118,11 +116,13 @@ ar:
|
|
118
116
|
destroy:
|
119
117
|
success: تم حذف رئيس المؤتمر بنجاح.
|
120
118
|
edit:
|
119
|
+
title: تحديث المتحدث المؤتمر.
|
121
120
|
update: تحديث
|
122
121
|
index:
|
123
122
|
conference_speakers_title: المتحدثون في المؤتمر
|
124
123
|
new:
|
125
124
|
create: إنشاء
|
125
|
+
title: رئيس المؤتمر الجديد.
|
126
126
|
update:
|
127
127
|
error: حدثت مشكلة أثناء تحديث متحدث المؤتمر هذا.
|
128
128
|
success: تم تحديث مكبر صوت المؤتمر بنجاح.
|
@@ -133,9 +133,11 @@ ar:
|
|
133
133
|
destroy:
|
134
134
|
success: تمت إزالة مسؤول المؤتمر بنجاح.
|
135
135
|
edit:
|
136
|
+
title: تحديث مسؤول المؤتمر.
|
136
137
|
update: تحديث
|
137
138
|
new:
|
138
139
|
create: إنشاء
|
140
|
+
title: مشرف المؤتمر الجديد.
|
139
141
|
update:
|
140
142
|
error: حدثت مشكلة أثناء تحديث مشرف المؤتمر هذا.
|
141
143
|
success: تم تحديث مشرف المؤتمر بنجاح.
|
@@ -164,12 +166,20 @@ ar:
|
|
164
166
|
media_links:
|
165
167
|
create:
|
166
168
|
error: حدثت مشكلة أثناء إنشاء رابط وسائط جديد.
|
169
|
+
success: تم إنشاء رابط الوسائط بنجاح.
|
170
|
+
destroy:
|
171
|
+
success: تم حذف رابط الوسائط بنجاح.
|
167
172
|
edit:
|
173
|
+
title: تحديث رابط الوسائط.
|
168
174
|
update: تحديث
|
175
|
+
index:
|
176
|
+
media_links_title: روابط الوسائط
|
169
177
|
new:
|
170
178
|
create: إنشاء
|
179
|
+
title: وصلة الوسائط
|
171
180
|
update:
|
172
181
|
error: حدثت مشكلة أثناء تحديث رابط الوسائط هذا.
|
182
|
+
success: تم تحديث رابط الوسائط بنجاح.
|
173
183
|
menu:
|
174
184
|
conferences: المؤتمرات
|
175
185
|
conferences_submenu:
|
@@ -181,10 +191,14 @@ ar:
|
|
181
191
|
conference_admins: المشرفون على المؤتمر
|
182
192
|
conference_invites: تدعو
|
183
193
|
conference_speakers: مكبرات الصوت
|
194
|
+
diploma: شهادة حضور
|
184
195
|
info: عن هذا المؤتمر
|
196
|
+
media_links: روابط الوسائط
|
185
197
|
moderations: الإعتدال
|
186
198
|
partners: شركاء
|
199
|
+
registration_types: أنواع التسجيل
|
187
200
|
registrations: التسجيلات
|
201
|
+
user_registrations: تسجيلات المستخدم
|
188
202
|
models:
|
189
203
|
conference:
|
190
204
|
fields:
|
@@ -213,6 +227,7 @@ ar:
|
|
213
227
|
date: تاريخ
|
214
228
|
link: حلقة الوصل
|
215
229
|
title: عنوان
|
230
|
+
name: وصلة الوسائط
|
216
231
|
partner:
|
217
232
|
fields:
|
218
233
|
link: حلقة الوصل
|
@@ -238,6 +253,7 @@ ar:
|
|
238
253
|
destroy:
|
239
254
|
success: تمت إزالة شريك المؤتمر بنجاح.
|
240
255
|
edit:
|
256
|
+
title: تحديث شريك.
|
241
257
|
update: تحديث
|
242
258
|
new:
|
243
259
|
create: إنشاء
|
@@ -259,6 +275,7 @@ ar:
|
|
259
275
|
destroy:
|
260
276
|
success: تمت إزالة نوع تسجيل المؤتمر بنجاح.
|
261
277
|
edit:
|
278
|
+
title: تحديث نوع التسجيل.
|
262
279
|
update: تحديث
|
263
280
|
new:
|
264
281
|
create: إنشاء
|
@@ -319,12 +336,8 @@ ar:
|
|
319
336
|
non_user: مشارك غير موجود
|
320
337
|
select_user: اختر المشارك
|
321
338
|
index:
|
322
|
-
filter:
|
323
|
-
all: الكل
|
324
|
-
sent: أرسلت
|
325
339
|
invite_attendee: دعوة مشارك
|
326
340
|
invites: تدعو
|
327
|
-
search: بحث
|
328
341
|
new:
|
329
342
|
invite: دعا
|
330
343
|
new_invite: دعوة مشارك
|
@@ -352,6 +365,7 @@ ar:
|
|
352
365
|
diplomas:
|
353
366
|
edit:
|
354
367
|
save: حفظ
|
368
|
+
title: شهادة حضور
|
355
369
|
invite_join_conference_mailer:
|
356
370
|
invite:
|
357
371
|
decline: رفض الدعوة "%{conference_title}"
|
@@ -370,6 +384,7 @@ ar:
|
|
370
384
|
diploma_html: ستجد شهادة حضور المؤتمر <a href="%{url}">%{title}</a> في المرفقات.
|
371
385
|
diploma_user:
|
372
386
|
attendance_verified_by: تم التحقق من الحضور بواسطة
|
387
|
+
certificate_of_attendance: شهادة حضور
|
373
388
|
certificate_of_attendance_description: هذا هو التأكيد على أن <strong>%{user}</strong> قد حضر وشارك في <strong>%{title}</strong> الذي عقد في <strong>%{location}</strong> في <strong>%{start} - %{end}</strong>
|
374
389
|
send_diploma:
|
375
390
|
error: حدثت مشكلة أثناء إرسال شهادات حضور المؤتمر.
|
data/config/locales/bg.yml
CHANGED
@@ -120,11 +120,19 @@ bg:
|
|
120
120
|
destroy:
|
121
121
|
success: Говорителят на конференцията беше изтрит успешно.
|
122
122
|
edit:
|
123
|
+
title: Актуализиране на говорителя на конференцията.
|
123
124
|
update: Актуализация
|
124
125
|
index:
|
125
126
|
conference_speakers_title: Говорители на конференция
|
126
127
|
new:
|
127
128
|
create: Създаване
|
129
|
+
title: Нов говорител на конференция.
|
130
|
+
publish:
|
131
|
+
invalid: Възникна проблем при публикуването на този говорител.
|
132
|
+
success: Лекторът на конференцията е публикуван успешно.
|
133
|
+
unpublish:
|
134
|
+
invalid: Възникна проблем при отмяната на публикуването на този говорител.
|
135
|
+
success: Публикуването на говорител на конференцията бе успешно премахнато.
|
128
136
|
update:
|
129
137
|
error: Възникна проблем при актуализирането на този говорител на конференцията.
|
130
138
|
success: Говорителят на конференцията беше актуализиран успешно.
|
@@ -135,11 +143,13 @@ bg:
|
|
135
143
|
destroy:
|
136
144
|
success: Администраторът на конференцията беше премахнат успешно.
|
137
145
|
edit:
|
146
|
+
title: Актуализиране на администратора на конференцията.
|
138
147
|
update: Актуализация
|
139
148
|
index:
|
140
149
|
conference_admins_title: Администратори на конференция
|
141
150
|
new:
|
142
151
|
create: Създаване
|
152
|
+
title: Нов администратор на конференция.
|
143
153
|
update:
|
144
154
|
error: Възникна проблем при актуализирането на този администратор на конференцията.
|
145
155
|
success: Администраторът на конференцията беше актуализиран успешно.
|
@@ -169,12 +179,20 @@ bg:
|
|
169
179
|
media_links:
|
170
180
|
create:
|
171
181
|
error: Възникна проблем при създаването на нов медия линк.
|
182
|
+
success: Медийният линк беше създаден успешно.
|
183
|
+
destroy:
|
184
|
+
success: Медийният линк беше изтрит успешно.
|
172
185
|
edit:
|
186
|
+
title: Актуализиране на медийния линк.
|
173
187
|
update: Актуализация
|
188
|
+
index:
|
189
|
+
media_links_title: Медийни линкове
|
174
190
|
new:
|
175
191
|
create: Създаване
|
192
|
+
title: Медия линк
|
176
193
|
update:
|
177
194
|
error: Възникна проблем при актуализирането на този медия линк.
|
195
|
+
success: Медийният линк беше актуализиран успешно.
|
178
196
|
menu:
|
179
197
|
conferences: Конференции
|
180
198
|
conferences_submenu:
|
@@ -186,11 +204,15 @@ bg:
|
|
186
204
|
conference_admins: Администратори на конференция
|
187
205
|
conference_invites: Покани
|
188
206
|
conference_speakers: Говорители
|
207
|
+
diploma: Сертификати за присъствие
|
189
208
|
info: Относно тази конференция
|
209
|
+
media_links: Медия линкове
|
190
210
|
moderations: Модерации
|
191
211
|
partners: Партньори
|
212
|
+
registration_types: Типове регистрация
|
192
213
|
registrations: Регистрации
|
193
214
|
see_conference: Виз конференцията
|
215
|
+
user_registrations: Потребителска регистрация
|
194
216
|
models:
|
195
217
|
conference:
|
196
218
|
fields:
|
@@ -219,6 +241,7 @@ bg:
|
|
219
241
|
date: Дата
|
220
242
|
link: Линк
|
221
243
|
title: Заглавие
|
244
|
+
name: Медия линк
|
222
245
|
partner:
|
223
246
|
fields:
|
224
247
|
link: Линк
|
@@ -244,6 +267,7 @@ bg:
|
|
244
267
|
destroy:
|
245
268
|
success: Партньорът за конференцията беше премахнат успешно.
|
246
269
|
edit:
|
270
|
+
title: Актуализиране на партньора.
|
247
271
|
update: Актуализация
|
248
272
|
new:
|
249
273
|
create: Създаване
|
@@ -265,6 +289,7 @@ bg:
|
|
265
289
|
destroy:
|
266
290
|
success: Типът регистрация за конференцията беше премахнат успешно.
|
267
291
|
edit:
|
292
|
+
title: Актуализиране на типа на регистрацията.
|
268
293
|
update: Актуализация
|
269
294
|
new:
|
270
295
|
create: Създаване
|
@@ -329,14 +354,8 @@ bg:
|
|
329
354
|
non_user: Несъществуващ участник
|
330
355
|
select_user: Избор на участник
|
331
356
|
index:
|
332
|
-
filter:
|
333
|
-
accepted: Прието
|
334
|
-
all: Всички
|
335
|
-
rejected: Отхвърлен
|
336
|
-
sent: Изпратено
|
337
357
|
invite_attendee: Покани участник
|
338
358
|
invites: Покани
|
339
|
-
search: Търсене
|
340
359
|
new:
|
341
360
|
explanation: Участникът ще бъде поканен да се присъедини към конференция. Ако техният имейл не е регистриран, те също ще бъдат поканени в организацията.
|
342
361
|
invite: Покани
|
@@ -365,6 +384,7 @@ bg:
|
|
365
384
|
diplomas:
|
366
385
|
edit:
|
367
386
|
save: Запази
|
387
|
+
title: Сертификати за присъствие
|
368
388
|
invite_join_conference_mailer:
|
369
389
|
invite:
|
370
390
|
decline: Отказ на поканата за „%{conference_title}“
|
@@ -384,6 +404,7 @@ bg:
|
|
384
404
|
diploma_html: Ще намерите сертификата за присъствие на конференцията <a href="%{url}">%{title}</a> в прикачените файлове.
|
385
405
|
diploma_user:
|
386
406
|
attendance_verified_by: Присъствието е потвърдено от
|
407
|
+
certificate_of_attendance: Сертификати за присъствие
|
387
408
|
certificate_of_attendance_description: С настоящото се удостоверява, че <strong>%{user}</strong> посети и взе участие в(ъв) <strong>%{title}</strong>, <strong>%{location}</strong> на <strong>%{start} — %{end}</strong>
|
388
409
|
send_diploma:
|
389
410
|
error: Възникна проблем при изпращането на сертификатите за присъствие на конференцията.
|