decidim-conferences 0.25.1 → 0.26.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/cells/decidim/conferences/conference_speaker_cell.rb +1 -1
- data/app/cells/decidim/conferences/content_blocks/highlighted_conferences_cell.rb +12 -0
- data/app/cells/decidim/conferences/photo/show.erb +1 -1
- data/app/cells/decidim/conferences/photo_cell.rb +1 -1
- data/app/cells/decidim/conferences/registration_type/registration_confirm.erb +1 -1
- data/app/cells/decidim/conferences/registration_type_cell.rb +1 -1
- data/app/controllers/decidim/conferences/admin/conference_user_roles_controller.rb +11 -4
- data/app/models/decidim/conference_user_role.rb +20 -0
- data/app/permissions/decidim/conferences/permissions.rb +0 -8
- data/app/views/decidim/conferences/admin/conference_user_roles/index.html.erb +7 -6
- data/app/views/decidim/conferences/admin/conferences/index.html.erb +1 -1
- data/app/views/decidim/conferences/conference_program/_program_meeting.html.erb +1 -1
- data/app/views/decidim/conferences/conferences/_promoted_conference.html.erb +1 -1
- data/app/views/decidim/conferences/conferences/show.html.erb +3 -3
- data/config/locales/cs.yml +1 -1
- data/config/locales/fr-CA.yml +2 -2
- data/config/locales/fr.yml +9 -9
- data/config/locales/ja.yml +24 -24
- data/config/locales/lb-LU.yml +529 -0
- data/config/locales/no.yml +50 -0
- data/config/locales/pt-BR.yml +1 -1
- data/config/locales/ro-RO.yml +13 -13
- data/config/locales/val-ES.yml +1 -0
- data/lib/decidim/conferences/admin_engine.rb +3 -1
- data/lib/decidim/conferences/test/factories.rb +4 -1
- data/lib/decidim/conferences/version.rb +1 -1
- metadata +15 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 58560a2afcc4502ddbb90d54d13d10ef942fc4a06336dfa576db53873b82ead9
|
4
|
+
data.tar.gz: acc5ae9c03b2f99d5adb974444daf0812b596195d5674df4ad0d46ea0a48f2d1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fd76b47f95306f11169d7222a4a83b95cd541447eacd786424755e805410cbb63b9cdcd77273958e60ac05fa5e8fe50b8e086348f61374bca74cdf89f3c6c601
|
7
|
+
data.tar.gz: 7bfe61aa4f3530de19dcc04f8a71b807fde5e0dedb5603f9199b0f12136e3ce977221fc39706b3d1dd31c419bc9ed1cc358c95be8300c95d6fbc5006a521b56a
|
@@ -6,6 +6,10 @@ module Decidim
|
|
6
6
|
class HighlightedConferencesCell < Decidim::ViewModel
|
7
7
|
delegate :current_user, to: :controller
|
8
8
|
|
9
|
+
cache :show, expires_in: 10.minutes, if: :perform_caching? do
|
10
|
+
cache_hash
|
11
|
+
end
|
12
|
+
|
9
13
|
def show
|
10
14
|
render if highlighted_conferences.any?
|
11
15
|
end
|
@@ -21,6 +25,14 @@ module Decidim
|
|
21
25
|
def decidim_conferences
|
22
26
|
Decidim::Conferences::Engine.routes.url_helpers
|
23
27
|
end
|
28
|
+
|
29
|
+
private
|
30
|
+
|
31
|
+
def cache_hash
|
32
|
+
hash = []
|
33
|
+
hash.push(I18n.locale)
|
34
|
+
hash.join(Decidim.cache_key_separator)
|
35
|
+
end
|
24
36
|
end
|
25
37
|
end
|
26
38
|
end
|
@@ -17,7 +17,7 @@
|
|
17
17
|
<strong><%= title %></strong>
|
18
18
|
</h5>
|
19
19
|
<div class="text-small">
|
20
|
-
<%=
|
20
|
+
<%= decidim_sanitize_editor description %>
|
21
21
|
</div>
|
22
22
|
<button class="close-button" data-close aria-label="<%= t("conferences.photo.show.close_modal", scope: "decidim") %>" type="button">
|
23
23
|
<span aria-hidden="true">×</span>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<div class="reveal" data-reveal id="conference-registration-confirm-<%= model.id %>">
|
2
2
|
<div class="row">
|
3
3
|
<div class="columns medium-10 medium-offset-1 help-text">
|
4
|
-
<%=
|
4
|
+
<%= decidim_sanitize_editor translated_attribute(conference.registration_terms) %>
|
5
5
|
</div>
|
6
6
|
</div>
|
7
7
|
<div class="row">
|
@@ -7,11 +7,11 @@ module Decidim
|
|
7
7
|
#
|
8
8
|
class ConferenceUserRolesController < Decidim::Conferences::Admin::ApplicationController
|
9
9
|
include Concerns::ConferenceAdmin
|
10
|
-
include Decidim::
|
10
|
+
include Decidim::Admin::Officializations::Filterable
|
11
11
|
|
12
12
|
def index
|
13
13
|
enforce_permission_to :index, :conference_user_role
|
14
|
-
@conference_user_roles =
|
14
|
+
@conference_user_roles = filtered_collection
|
15
15
|
end
|
16
16
|
|
17
17
|
def new
|
@@ -90,11 +90,18 @@ module Decidim
|
|
90
90
|
|
91
91
|
private
|
92
92
|
|
93
|
+
def search_field_predicate
|
94
|
+
:name_or_nickname_or_email_cont
|
95
|
+
end
|
96
|
+
|
97
|
+
def filters
|
98
|
+
[:invitation_accepted_at_present, :last_sign_in_at_present]
|
99
|
+
end
|
100
|
+
|
93
101
|
def collection
|
94
102
|
@collection ||= Decidim::ConferenceUserRole
|
95
|
-
.
|
103
|
+
.joins(:user)
|
96
104
|
.where(conference: current_conference)
|
97
|
-
.order(:role, "decidim_users.name")
|
98
105
|
end
|
99
106
|
end
|
100
107
|
end
|
@@ -19,6 +19,26 @@ module Decidim
|
|
19
19
|
Decidim::Conferences::AdminLog::ConferenceUserRolePresenter
|
20
20
|
end
|
21
21
|
|
22
|
+
ransacker :name do
|
23
|
+
Arel.sql(%{("decidim_users"."name")::text})
|
24
|
+
end
|
25
|
+
|
26
|
+
ransacker :nickname do
|
27
|
+
Arel.sql(%{("decidim_users"."nickname")::text})
|
28
|
+
end
|
29
|
+
|
30
|
+
ransacker :email do
|
31
|
+
Arel.sql(%{("decidim_users"."email")::text})
|
32
|
+
end
|
33
|
+
|
34
|
+
ransacker :invitation_accepted_at do
|
35
|
+
Arel.sql(%{("decidim_users"."invitation_accepted_at")::text})
|
36
|
+
end
|
37
|
+
|
38
|
+
ransacker :last_sign_in_at do
|
39
|
+
Arel.sql(%{("decidim_users"."last_sign_in_at")::text})
|
40
|
+
end
|
41
|
+
|
22
42
|
private
|
23
43
|
|
24
44
|
# Private: check if the process and the user have the same organization
|
@@ -20,7 +20,6 @@ module Decidim
|
|
20
20
|
public_list_program_action?
|
21
21
|
public_list_media_links_action?
|
22
22
|
public_list_registration_types_action?
|
23
|
-
public_report_content_action?
|
24
23
|
|
25
24
|
can_join_conference?
|
26
25
|
can_leave_conference?
|
@@ -159,13 +158,6 @@ module Decidim
|
|
159
158
|
allow!
|
160
159
|
end
|
161
160
|
|
162
|
-
def public_report_content_action?
|
163
|
-
return unless permission_action.action == :create &&
|
164
|
-
permission_action.subject == :moderation
|
165
|
-
|
166
|
-
allow!
|
167
|
-
end
|
168
|
-
|
169
161
|
# All users with a relation to a conference and organization admins can enter
|
170
162
|
# the space area. The sapce area is considered to be the conferences zone,
|
171
163
|
# not the conference groups one.
|
@@ -7,17 +7,18 @@
|
|
7
7
|
<% end %>
|
8
8
|
</h2>
|
9
9
|
</div>
|
10
|
+
<%= admin_filter_selector %>
|
10
11
|
|
11
12
|
<div class="card-section">
|
12
13
|
<div class="table-scroll">
|
13
|
-
<table class="stack">
|
14
|
+
<table class="stack table-list">
|
14
15
|
<thead>
|
15
16
|
<tr>
|
16
|
-
<th><%= t("models.conference_user_role.fields.name", scope: "decidim.admin") %></th>
|
17
|
-
<th><%= t("models.conference_user_role.fields.email", scope: "decidim.admin") %></th>
|
18
|
-
<th><%= t("models.user.fields.
|
19
|
-
<th><%= t("models.user.fields.invitation_accepted_at", scope: "decidim.admin") %></th>
|
20
|
-
<th><%= t("models.conference_user_role.fields.role", scope: "decidim.admin") %></th>
|
17
|
+
<th><%= sort_link(query, :name,t("models.conference_user_role.fields.name", scope: "decidim.admin"), default_order: :desc) %></th>
|
18
|
+
<th><%= sort_link(query, :email, t("models.conference_user_role.fields.email", scope: "decidim.admin"), default_order: :desc) %></th>
|
19
|
+
<th><%= sort_link(query, :last_sign_in_at, t("models.user.fields.last_sign_in_at", scope: "decidim.admin"), default_order: :desc) %></th>
|
20
|
+
<th><%= sort_link(query, :invitation_accepted_at, t("models.user.fields.invitation_accepted_at", scope: "decidim.admin"), default_order: :desc) %></th>
|
21
|
+
<th><%= sort_link(query, :role, t("models.conference_user_role.fields.role", scope: "decidim.admin"), default_order: :desc) %></th>
|
21
22
|
<th class="actions"></th>
|
22
23
|
</tr>
|
23
24
|
</thead>
|
@@ -22,7 +22,7 @@
|
|
22
22
|
<tr>
|
23
23
|
<td>
|
24
24
|
<% if conference.promoted? %>
|
25
|
-
<span data-tooltip class="icon-state icon-highlight"
|
25
|
+
<span data-tooltip class="icon-state icon-highlight" data-disable-hover="false" title="<%= t("models.conference.fields.promoted", scope: "decidim.admin") %>">
|
26
26
|
<%= icon "star", aria_label: t("models.conference.fields.promoted", scope: "decidim.admin"), role: "img" %>
|
27
27
|
</span>
|
28
28
|
<% end %>
|
@@ -43,7 +43,7 @@
|
|
43
43
|
<strong><%= t(".content") %></strong>
|
44
44
|
</div>
|
45
45
|
<div class="column medium-10">
|
46
|
-
<%=
|
46
|
+
<%= decidim_sanitize_editor(present(meeting).description(links: true)) %>
|
47
47
|
</div>
|
48
48
|
</div>
|
49
49
|
<% end %>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<%= link_to conference_path(promoted_conference), class: "card__link" do %>
|
6
6
|
<h2 class="card__title"><%= translated_attribute promoted_conference.title %></h2>
|
7
7
|
<% end %>
|
8
|
-
<%=
|
8
|
+
<%= decidim_sanitize_editor html_truncate(translated_attribute(promoted_conference.short_description), length: 630, separator: "...") %>
|
9
9
|
<%= link_to conference_path(promoted_conference), class: "button small hollow card__button" do %>
|
10
10
|
<%= t("conferences.promoted_conference.more_info", scope: "layouts.decidim") %>
|
11
11
|
<% end %>
|
@@ -20,12 +20,12 @@ edit_link(
|
|
20
20
|
<div class="columns mediumlarge-12">
|
21
21
|
<section class="section">
|
22
22
|
<h3 class="section-heading"><%= t("conferences.show.introduction", scope: "decidim") %></h3>
|
23
|
-
<%=
|
23
|
+
<%= decidim_sanitize_editor translated_attribute(current_participatory_space.short_description) %>
|
24
24
|
</section>
|
25
25
|
<hr class="reset mt-none mb-m">
|
26
26
|
<section class="section">
|
27
27
|
<h3 class="section-heading"><%= t("conferences.show.details", scope: "decidim") %></h3>
|
28
|
-
<%=
|
28
|
+
<%= decidim_sanitize_editor translated_attribute(current_participatory_space.description) %>
|
29
29
|
<div class="row mt-l mb-l">
|
30
30
|
<div class="column medium-9 medium-centered">
|
31
31
|
<% if current_participatory_space.registrations_enabled? %>
|
@@ -71,7 +71,7 @@ edit_link(
|
|
71
71
|
<% unless translated_attribute(current_participatory_space.objectives).blank? %>
|
72
72
|
<section class="section">
|
73
73
|
<h3 class="section-heading"><%= t("conferences.show.objectives", scope: "decidim") %></h3>
|
74
|
-
<%=
|
74
|
+
<%= decidim_sanitize_editor translated_attribute(current_participatory_space.objectives) %>
|
75
75
|
</section>
|
76
76
|
<% end %>
|
77
77
|
|
data/config/locales/cs.yml
CHANGED
@@ -538,7 +538,7 @@ cs:
|
|
538
538
|
details: Podrobnosti
|
539
539
|
introduction: Úvod
|
540
540
|
objectives: Cíle
|
541
|
-
related_assemblies: Související
|
541
|
+
related_assemblies: Související shromáždění
|
542
542
|
related_consultations: Související konzultace
|
543
543
|
related_participatory_processes: Související procesy účasti
|
544
544
|
events:
|
data/config/locales/fr-CA.yml
CHANGED
@@ -55,12 +55,12 @@ fr-CA:
|
|
55
55
|
title: Titre
|
56
56
|
weight: Rang d'affichage
|
57
57
|
conference_speaker:
|
58
|
-
affiliation:
|
58
|
+
affiliation: Organisme
|
59
59
|
avatar: Image de profil
|
60
60
|
conference_meeting_ids: Réunions connexes
|
61
61
|
full_name: Nom complet
|
62
62
|
personal_url: URL personnelle
|
63
|
-
position:
|
63
|
+
position: Profession
|
64
64
|
short_bio: Courte bio
|
65
65
|
twitter_handle: Gestionnaire Twitter
|
66
66
|
user_id: Utilisateur
|
data/config/locales/fr.yml
CHANGED
@@ -3,7 +3,7 @@ fr:
|
|
3
3
|
attributes:
|
4
4
|
conference:
|
5
5
|
assemblies_ids: Assemblées associées
|
6
|
-
available_slots:
|
6
|
+
available_slots: Nombre de places disponibles
|
7
7
|
banner_image: Image d'en-tête
|
8
8
|
consultations_ids: Votations associées
|
9
9
|
copy_categories: Copier les catégories
|
@@ -45,22 +45,22 @@ fr:
|
|
45
45
|
partner_type: Type de partenaire
|
46
46
|
weight: Rang d'affichage
|
47
47
|
conference_registration_invite:
|
48
|
-
email:
|
48
|
+
email: Email
|
49
49
|
name: Nom
|
50
50
|
registration_type_id: Type d'inscription
|
51
|
-
user_id: Utilisateur
|
51
|
+
user_id: Utilisateur
|
52
52
|
conference_registration_type:
|
53
53
|
description: Description
|
54
54
|
price: Prix
|
55
55
|
title: Titre
|
56
56
|
weight: Rang d'affichage
|
57
57
|
conference_speaker:
|
58
|
-
affiliation:
|
59
|
-
avatar:
|
60
|
-
conference_meeting_ids:
|
58
|
+
affiliation: Organisme
|
59
|
+
avatar: Avatar
|
60
|
+
conference_meeting_ids: Rencontres associées
|
61
61
|
full_name: Nom complet
|
62
|
-
personal_url:
|
63
|
-
position:
|
62
|
+
personal_url: Site internet personnel
|
63
|
+
position: Profession
|
64
64
|
short_bio: Courte bio
|
65
65
|
twitter_handle: Gestionnaire Twitter
|
66
66
|
user_id: Utilisateur
|
@@ -246,7 +246,7 @@ fr:
|
|
246
246
|
price: Prix
|
247
247
|
registrations_count: Nombre d'inscriptions
|
248
248
|
title: Titre
|
249
|
-
weight: Rang
|
249
|
+
weight: Rang d'affichage
|
250
250
|
name: Type d'inscription
|
251
251
|
partners:
|
252
252
|
create:
|
data/config/locales/ja.yml
CHANGED
@@ -29,7 +29,7 @@ ja:
|
|
29
29
|
sign_date: 署名日
|
30
30
|
signature: 署名
|
31
31
|
signature_name: 署名の名前
|
32
|
-
slogan:
|
32
|
+
slogan: スローガン
|
33
33
|
slug: URL スラグ
|
34
34
|
start_date: 開始日
|
35
35
|
title: タイトル
|
@@ -37,13 +37,13 @@ ja:
|
|
37
37
|
date: 日付
|
38
38
|
link: リンク
|
39
39
|
title: タイトル
|
40
|
-
weight:
|
40
|
+
weight: 重みづけ
|
41
41
|
conference_partner:
|
42
42
|
link: リンク
|
43
43
|
logo: ロゴ
|
44
44
|
name: 名前
|
45
45
|
partner_type: パートナータイプ
|
46
|
-
weight:
|
46
|
+
weight: 重みづけ
|
47
47
|
conference_registration_invite:
|
48
48
|
email: Eメールアドレス
|
49
49
|
name: 名前
|
@@ -53,7 +53,7 @@ ja:
|
|
53
53
|
description: 説明
|
54
54
|
price: 価格
|
55
55
|
title: タイトル
|
56
|
-
weight:
|
56
|
+
weight: 重みづけ
|
57
57
|
conference_speaker:
|
58
58
|
affiliation: 所属
|
59
59
|
avatar: アバター
|
@@ -194,7 +194,7 @@ ja:
|
|
194
194
|
media_links: メディアリンク
|
195
195
|
moderations: モデレーション
|
196
196
|
partners: パートナー
|
197
|
-
registration_types:
|
197
|
+
registration_types: 登録種別
|
198
198
|
registrations: 登録
|
199
199
|
user_registrations: ユーザー登録
|
200
200
|
models:
|
@@ -206,7 +206,7 @@ ja:
|
|
206
206
|
title: タイトル
|
207
207
|
conference_speaker:
|
208
208
|
fields:
|
209
|
-
affiliation:
|
209
|
+
affiliation: 所属
|
210
210
|
full_name: フルネーム
|
211
211
|
position: ポジション
|
212
212
|
name: カンファレンススピーカー
|
@@ -218,9 +218,9 @@ ja:
|
|
218
218
|
name: カンファレンス管理
|
219
219
|
roles:
|
220
220
|
admin: 管理者
|
221
|
-
collaborator:
|
221
|
+
collaborator: コラボレーター
|
222
222
|
moderator: モデレーター
|
223
|
-
valuator:
|
223
|
+
valuator: 評価者
|
224
224
|
media_link:
|
225
225
|
fields:
|
226
226
|
date: 日付
|
@@ -235,11 +235,11 @@ ja:
|
|
235
235
|
partner_type: タイプ
|
236
236
|
name: パートナー
|
237
237
|
types:
|
238
|
-
collaborator:
|
238
|
+
collaborator: コラボレーター
|
239
239
|
main_promotor: 主プロモーター(プロモーター)
|
240
240
|
registration_type:
|
241
241
|
fields:
|
242
|
-
conference_meetings:
|
242
|
+
conference_meetings: カンファレンスのミーティング
|
243
243
|
price: 価格
|
244
244
|
registrations_count: 登録数
|
245
245
|
title: タイトル
|
@@ -270,18 +270,18 @@ ja:
|
|
270
270
|
registration_types:
|
271
271
|
create:
|
272
272
|
error: このカンファレンスに登録タイプを追加する際に問題がありました。
|
273
|
-
success:
|
273
|
+
success: カンファレンスの登録種別を追加しました。
|
274
274
|
destroy:
|
275
|
-
success:
|
275
|
+
success: カンファレンスの登録種別を削除しました。
|
276
276
|
edit:
|
277
|
-
title:
|
277
|
+
title: 登録種別の更新。
|
278
278
|
update: 更新
|
279
279
|
new:
|
280
280
|
create: 作成
|
281
|
-
title:
|
281
|
+
title: 新規登録種別
|
282
282
|
update:
|
283
|
-
error:
|
284
|
-
success:
|
283
|
+
error: このカンファレンスの登録種別の更新に問題がありました。
|
284
|
+
success: カンファレンスの登録種別を更新しました。
|
285
285
|
titles:
|
286
286
|
conferences: カンファレンス
|
287
287
|
admin_log:
|
@@ -335,7 +335,7 @@ ja:
|
|
335
335
|
attendee_type: 参加者の種類
|
336
336
|
existing_user: 既存の参加者
|
337
337
|
invite_explanation: 参加者は、カンファレンスや組織にも招待されます。
|
338
|
-
non_user:
|
338
|
+
non_user: 非参加者
|
339
339
|
select_user: 参加者を選択
|
340
340
|
index:
|
341
341
|
filter:
|
@@ -344,20 +344,20 @@ ja:
|
|
344
344
|
rejected: 拒否
|
345
345
|
sent: 送信済み
|
346
346
|
filter_by: フィルター
|
347
|
-
invite_attendee:
|
347
|
+
invite_attendee: 参加者の招待
|
348
348
|
invites: 招待
|
349
349
|
search: 検索
|
350
350
|
new:
|
351
351
|
explanation: 参加者はカンファレンスに招待されます。 参加者の電子メールが組織に登録されていない場合、同様に組織に招待されます。
|
352
352
|
invite: 招待
|
353
|
-
new_invite:
|
353
|
+
new_invite: 参加者の招待
|
354
354
|
conference_registrations:
|
355
355
|
index:
|
356
356
|
registrations: 登録
|
357
357
|
conference_speakers:
|
358
358
|
form:
|
359
359
|
existing_user: 既存の参加者
|
360
|
-
non_user:
|
360
|
+
non_user: 非参加者
|
361
361
|
select_user: 参加者を選択
|
362
362
|
user_type: 参加者の種類
|
363
363
|
index:
|
@@ -382,9 +382,9 @@ ja:
|
|
382
382
|
title: パートナー
|
383
383
|
registration_types:
|
384
384
|
form:
|
385
|
-
select_conference_meetings:
|
385
|
+
select_conference_meetings: カンファレンスミーティングの選択
|
386
386
|
index:
|
387
|
-
title:
|
387
|
+
title: 登録種別
|
388
388
|
send_conference_diploma_mailer:
|
389
389
|
diploma:
|
390
390
|
diploma_html: 添付ファイルに、カンファレンス <a href="%{url}">%{title}</a> の出席証明書があります。
|
@@ -515,7 +515,7 @@ ja:
|
|
515
515
|
login_as: '%{name} <%{email} >としてログインしています'
|
516
516
|
no_registrations: 登録なし
|
517
517
|
register: 登録
|
518
|
-
title:
|
518
|
+
title: 登録種別
|
519
519
|
shared:
|
520
520
|
conference_user_login:
|
521
521
|
already_account: 既にアカウントをお持ちですか?
|
@@ -537,7 +537,7 @@ ja:
|
|
537
537
|
notification_title: カンファレンス <a href="%{resource_url}">%{resource_title}</a> の登録が確認されました。
|
538
538
|
conference_registrations_over_percentage:
|
539
539
|
email_intro: '"%{resource_title}" カンファレンス参加率は %{percentage} %を超えています。'
|
540
|
-
email_outro:
|
540
|
+
email_outro: あなたはカンファレンスの参加型スペースの管理者であるため、この通知を受け取りました。
|
541
541
|
email_subject: '「%{resource_title}」カンファレンス参加率は %{percentage} %を超えています'
|
542
542
|
notification_title: <a href="%{resource_path}">%{resource_title}</a> カンファレンス参加率は %{percentage} %を超えています。
|
543
543
|
conference_updated:
|