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.
Files changed (126) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/conferences/conference_g_cell.rb +2 -2
  3. data/app/cells/decidim/conferences/conference_speaker_cell.rb +1 -1
  4. data/app/cells/decidim/conferences/content_blocks/highlighted_conferences_cell.rb +0 -2
  5. data/app/cells/decidim/conferences/linked_participatory_spaces_cell.rb +0 -1
  6. data/app/cells/decidim/conferences/media_link/show.erb +1 -1
  7. data/app/cells/decidim/conferences/media_link_cell.rb +0 -3
  8. data/app/cells/decidim/conferences/partner/image.erb +1 -1
  9. data/app/cells/decidim/conferences/partner_cell.rb +1 -1
  10. data/app/cells/decidim/conferences/registration_type_cell.rb +1 -5
  11. data/app/commands/decidim/conferences/admin/create_conference.rb +20 -65
  12. data/app/commands/decidim/conferences/admin/create_conference_speaker.rb +17 -81
  13. data/app/commands/decidim/conferences/admin/create_media_link.rb +10 -44
  14. data/app/commands/decidim/conferences/admin/create_partner.rb +9 -62
  15. data/app/commands/decidim/conferences/admin/create_registration_type.rb +15 -51
  16. data/app/commands/decidim/conferences/admin/destroy_conference_speaker.rb +6 -38
  17. data/app/commands/decidim/conferences/admin/destroy_media_link.rb +6 -38
  18. data/app/commands/decidim/conferences/admin/destroy_partner.rb +6 -38
  19. data/app/commands/decidim/conferences/admin/destroy_registration_type.rb +6 -38
  20. data/app/commands/decidim/conferences/admin/publish_conference_speaker.rb +51 -0
  21. data/app/commands/decidim/conferences/admin/unpublish_conference_speaker.rb +44 -0
  22. data/app/commands/decidim/conferences/admin/update_conference.rb +35 -93
  23. data/app/commands/decidim/conferences/admin/update_conference_speaker.rb +17 -74
  24. data/app/commands/decidim/conferences/admin/update_media_link.rb +8 -44
  25. data/app/commands/decidim/conferences/admin/update_partner.rb +10 -61
  26. data/app/commands/decidim/conferences/admin/update_registration_type.rb +12 -47
  27. data/app/controllers/concerns/decidim/conferences/admin/conferences_invites/filterable.rb +41 -0
  28. data/app/controllers/decidim/conferences/admin/conference_invites_controller.rb +8 -3
  29. data/app/controllers/decidim/conferences/admin/conference_speakers_controller.rb +33 -1
  30. data/app/controllers/decidim/conferences/admin/conferences_controller.rb +1 -1
  31. data/app/controllers/decidim/conferences/admin/media_links_controller.rb +1 -1
  32. data/app/controllers/decidim/conferences/admin/partners_controller.rb +1 -1
  33. data/app/controllers/decidim/conferences/admin/registration_types_controller.rb +1 -1
  34. data/app/controllers/decidim/conferences/application_controller.rb +4 -1
  35. data/app/controllers/decidim/conferences/conference_program_controller.rb +1 -2
  36. data/app/controllers/decidim/conferences/conference_speakers_controller.rb +1 -4
  37. data/app/controllers/decidim/conferences/conferences_controller.rb +1 -4
  38. data/app/controllers/decidim/conferences/media_controller.rb +1 -4
  39. data/app/controllers/decidim/conferences/registration_types_controller.rb +0 -3
  40. data/app/events/decidim/conferences/conference_role_assigned_event.rb +0 -5
  41. data/app/forms/decidim/conferences/admin/conference_form.rb +5 -5
  42. data/app/forms/decidim/conferences/admin/conference_speaker_form.rb +1 -1
  43. data/app/forms/decidim/conferences/admin/registration_type_form.rb +1 -1
  44. data/app/helpers/decidim/conferences/conference_helper.rb +2 -1
  45. data/app/mailers/decidim/conferences/admin/send_conference_diploma_mailer.rb +5 -9
  46. data/app/models/decidim/conference.rb +2 -2
  47. data/app/models/decidim/conference_speaker.rb +2 -0
  48. data/app/permissions/decidim/conferences/permissions.rb +2 -10
  49. data/app/presenters/decidim/conferences/admin_log/conference_speaker_presenter.rb +2 -1
  50. data/app/views/decidim/conferences/admin/conference_invites/_form.html.erb +5 -5
  51. data/app/views/decidim/conferences/admin/conference_invites/index.html.erb +1 -33
  52. data/app/views/decidim/conferences/admin/conference_registrations/index.html.erb +2 -4
  53. data/app/views/decidim/conferences/admin/conference_speakers/index.html.erb +11 -1
  54. data/app/views/decidim/conferences/admin/conference_user_roles/index.html.erb +1 -1
  55. data/app/views/decidim/conferences/admin/invite_join_conference_mailer/invite.html.erb +1 -1
  56. data/app/views/decidim/conferences/admin/media_links/index.html.erb +1 -1
  57. data/app/views/decidim/conferences/admin/media_links/new.html.erb +1 -1
  58. data/app/views/decidim/conferences/admin/partners/index.html.erb +3 -3
  59. data/app/views/decidim/conferences/admin/registration_types/index.html.erb +1 -1
  60. data/app/views/decidim/conferences/admin/send_conference_diploma_mailer/diploma_user.html.erb +7 -11
  61. data/app/views/decidim/conferences/conference_program/_program_item.html.erb +1 -1
  62. data/app/views/decidim/conferences/conference_speakers/index.html.erb +1 -0
  63. data/app/views/decidim/conferences/conferences/_conference_hero.html.erb +1 -1
  64. data/app/views/decidim/conferences/conferences/show.html.erb +5 -3
  65. data/app/views/decidim/conferences/media/index.html.erb +1 -0
  66. data/app/views/decidim/conferences/registration_types/index.html.erb +2 -1
  67. data/app/views/devise/mailer/join_conference.html.erb +1 -1
  68. data/app/views/devise/mailer/join_conference.text.erb +1 -1
  69. data/app/views/layouts/decidim/diploma.html.erb +1 -1
  70. data/config/initializers/wicked_pdf.rb +6 -4
  71. data/config/locales/ar.yml +21 -6
  72. data/config/locales/bg.yml +27 -6
  73. data/config/locales/ca.yml +18 -22
  74. data/config/locales/cs.yml +18 -23
  75. data/config/locales/de.yml +19 -23
  76. data/config/locales/el.yml +21 -6
  77. data/config/locales/en.yml +25 -29
  78. data/config/locales/es-MX.yml +18 -22
  79. data/config/locales/es-PY.yml +21 -25
  80. data/config/locales/es.yml +14 -18
  81. data/config/locales/eu.yml +182 -186
  82. data/config/locales/fi-plain.yml +17 -21
  83. data/config/locales/fi.yml +23 -27
  84. data/config/locales/fr-CA.yml +19 -23
  85. data/config/locales/fr.yml +19 -23
  86. data/config/locales/ga-IE.yml +0 -6
  87. data/config/locales/gl.yml +21 -4
  88. data/config/locales/hu.yml +21 -6
  89. data/config/locales/id-ID.yml +21 -4
  90. data/config/locales/it.yml +21 -6
  91. data/config/locales/ja.yml +17 -21
  92. data/config/locales/lb.yml +19 -6
  93. data/config/locales/lt.yml +21 -6
  94. data/config/locales/lv.yml +21 -6
  95. data/config/locales/nl.yml +21 -4
  96. data/config/locales/no.yml +21 -6
  97. data/config/locales/pl.yml +27 -6
  98. data/config/locales/pt-BR.yml +21 -51
  99. data/config/locales/pt.yml +21 -6
  100. data/config/locales/ro-RO.yml +12 -21
  101. data/config/locales/sk.yml +21 -6
  102. data/config/locales/sv.yml +42 -98
  103. data/config/locales/tr-TR.yml +21 -4
  104. data/config/locales/zh-CN.yml +21 -4
  105. data/config/locales/zh-TW.yml +21 -6
  106. data/db/migrate/20240613095855_add_published_at_to_conference_speakers.rb +7 -0
  107. data/decidim-conferences.gemspec +3 -2
  108. data/lib/decidim/api/conference_partner_type.rb +1 -1
  109. data/lib/decidim/api/conference_speaker_type.rb +1 -1
  110. data/lib/decidim/api/conference_type.rb +6 -2
  111. data/lib/decidim/conferences/admin_engine.rb +6 -1
  112. data/lib/decidim/conferences/engine.rb +1 -0
  113. data/lib/decidim/conferences/menu.rb +11 -0
  114. data/lib/decidim/conferences/seeds.rb +4 -22
  115. data/lib/decidim/conferences/test/factories.rb +5 -0
  116. data/lib/decidim/conferences/version.rb +1 -1
  117. metadata +33 -24
  118. data/app/cells/decidim/conference_activity_cell.rb +0 -10
  119. data/app/helpers/decidim/conferences/media_attachments_helper.rb +0 -19
  120. data/app/helpers/decidim/conferences/partners_helper.rb +0 -17
  121. data/app/uploaders/decidim/cw/conferences/diploma_uploader.rb +0 -14
  122. data/app/uploaders/decidim/cw/conferences/partner_logo_uploader.rb +0 -15
  123. data/app/views/layouts/decidim/conference.html.erb +0 -17
  124. data/config/locales/bn-BD.yml +0 -1
  125. data/config/locales/bs-BA.yml +0 -14
  126. 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 class="check-radio-collection">
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 auto cell attendee-fields--new-user">
14
+ <div class="row column cell attendee-fields--new-user">
15
15
  <%= form.text_field :name %>
16
16
  </div>
17
- <div class="row column auto cell attendee-fields--new-user">
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 auto cell attendee-fields--user-picker">
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 auto cell">
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
- <%# NOTE: this old filters section should be refactorized in order to use the shared admin_filter_selector method
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--simple button--title" data-toggle="export-dropdown">
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
- <%= link_to export_conference_conference_registrations_path(conference_id: conference, format:) do %>
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 class="actions"></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 class="actions"></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.name %>
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">
@@ -16,7 +16,7 @@
16
16
  <th><%= t("models.media_link.fields.link", scope: "decidim.admin") %></th>
17
17
  <th><%= t("models.media_link.fields.date", scope: "decidim.admin") %></th>
18
18
 
19
- <th class="actions"></th>
19
+ <th></th>
20
20
  </tr>
21
21
  </thead>
22
22
  <tbody>
@@ -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("media_links.new.title", scope: "decidim.admin") %>
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 class="actions"></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.attached? %>
39
- <%= image_tag(partner.attached_uploader(:logo).variant_url(:thumb)) %>
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 class="actions"></th>
20
+ <th></th>
21
21
  </tr>
22
22
  </thead>
23
23
  <tbody>
@@ -2,24 +2,20 @@
2
2
  <div class="diploma__border">
3
3
  <div class="diploma__content">
4
4
  <div>
5
- <% logo = @conference.attached_uploader(:main_logo).variant(:thumb) %>
6
- <% if logo %>
7
- <div class="diploma__logo">
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 class="mt-m mb-m">
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
- <% signature = @conference.attached_uploader(:signature).variant(:thumb) %>
20
- <% if signature %>
21
- <div><%= image_tag "data:#{signature.blob.content_type};base64, #{Base64.encode64(signature.download.presence || "")}" %></div>
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.to_s(:time) %> - <%= end_time.to_s(: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,5 @@
1
1
  <% add_decidim_meta_tags(title: t("conference_speakers.index.title", scope: "decidim")) %>
2
+ <% add_decidim_page_title(translated_attribute(current_participatory_space.title)) %>
2
3
 
3
4
  <%
4
5
  edit_link(
@@ -1,4 +1,4 @@
1
- <section style="background-image:url('<%= current_participatory_space.attached_uploader(:banner_image).url %>');" data-conference-hero>
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
- image_url: current_participatory_space.attached_uploader(:hero_image).url,
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("media.index.title", scope: "decidim")) %>
2
+ <% add_decidim_page_title(translated_attribute(current_participatory_space.title)) %>
2
3
 
3
4
  <%
4
5
  edit_link(
@@ -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 class="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: @resource.organization.name) %>
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: @resource.organization.name) %>
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
- <%= stylesheet_pack_tag "decidim_conference_diploma" %>
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.config = {
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
- # exe_path: '/usr/local/bin/wkhtmltopdf',
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: 'pdf.html',
21
- }
22
+ # config.layout = 'pdf.html'
23
+ end
@@ -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: حدثت مشكلة أثناء إرسال شهادات حضور المؤتمر.
@@ -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: Възникна проблем при изпращането на сертификатите за присъствие на конференцията.