decidim-conferences 0.17.1 → 0.19.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/stylesheet/decidim/conferences/conferences.scss +3 -0
- data/app/cells/decidim/conferences/conference_address/show.erb +1 -1
- data/app/cells/decidim/conferences/conference_m/footer.erb +1 -1
- data/app/cells/decidim/conferences/conference_speaker/show.erb +2 -2
- data/app/cells/decidim/conferences/conference_speaker_cell.rb +6 -2
- data/app/cells/decidim/conferences/linked_participatory_spaces_cell.rb +6 -0
- data/app/cells/decidim/conferences/partner_cell.rb +2 -0
- data/app/cells/decidim/conferences/photos_list_cell.rb +1 -0
- data/app/cells/decidim/conferences/registration_type_cell.rb +2 -0
- data/app/commands/decidim/conferences/admin/confirm_conference_registration.rb +1 -0
- data/app/commands/decidim/conferences/admin/create_conference.rb +0 -10
- data/app/commands/decidim/conferences/admin/create_conference_admin.rb +1 -0
- data/app/commands/decidim/conferences/admin/publish_conference.rb +12 -0
- data/app/commands/decidim/conferences/admin/update_conference.rb +6 -2
- data/app/commands/decidim/conferences/admin/update_diploma.rb +1 -0
- data/app/commands/decidim/conferences/join_conference.rb +2 -0
- data/app/commands/decidim/conferences/leave_conference.rb +1 -0
- data/app/controllers/decidim/conferences/admin/application_controller.rb +5 -4
- data/app/controllers/decidim/conferences/admin/concerns/conference_admin.rb +6 -4
- data/app/controllers/decidim/conferences/admin/conference_registrations_controller.rb +1 -0
- data/app/controllers/decidim/conferences/application_controller.rb +6 -5
- data/app/controllers/decidim/conferences/conference_program_controller.rb +4 -1
- data/app/controllers/decidim/conferences/conference_registrations_controller.rb +1 -0
- data/app/controllers/decidim/conferences/conference_speakers_controller.rb +1 -0
- data/app/controllers/decidim/conferences/media_controller.rb +1 -0
- data/app/controllers/decidim/conferences/registration_types_controller.rb +1 -0
- data/app/forms/decidim/conferences/admin/conference_form.rb +4 -0
- data/app/forms/decidim/conferences/admin/conference_speaker_form.rb +1 -0
- data/app/forms/decidim/conferences/admin/registration_type_form.rb +1 -0
- data/app/helpers/decidim/conferences/conference_helper.rb +1 -0
- data/app/models/decidim/conference.rb +9 -4
- data/app/models/decidim/conference_user_role.rb +1 -0
- data/app/permissions/decidim/conferences/permissions.rb +6 -0
- data/app/presenters/decidim/conferences/admin_log/value_types/role_presenter.rb +1 -0
- data/app/presenters/decidim/log/value_types/conference_presenter.rb +1 -0
- data/app/queries/decidim/conferences/admin/admin_users.rb +8 -1
- data/app/queries/decidim/conferences/admin/conference_invites.rb +1 -0
- data/app/queries/decidim/conferences/admin/conference_speakers.rb +1 -0
- data/app/views/decidim/conferences/admin/conference_user_roles/index.html.erb +3 -3
- data/app/views/decidim/conferences/admin/conferences/index.html.erb +3 -3
- data/app/views/decidim/conferences/admin/send_conference_diploma_mailer/diploma_user.html.erb +1 -1
- data/app/views/decidim/conferences/conferences/_partners.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/app/views/decidim/conferences/media/index.html.erb +2 -2
- data/app/views/layouts/decidim/_conference_hero.html.erb +2 -2
- data/app/views/layouts/decidim/diploma.html.erb +2 -2
- data/config/locales/ar-SA.yml +1 -0
- data/config/locales/ar.yml +589 -0
- data/config/locales/ca.yml +1 -0
- data/config/locales/cs.yml +56 -55
- data/config/locales/de.yml +10 -9
- data/config/locales/en.yml +1 -0
- data/config/locales/eo-UY.yml +1 -0
- data/config/locales/es-MX.yml +1 -0
- data/config/locales/es-PY.yml +1 -0
- data/config/locales/es.yml +1 -0
- data/config/locales/eu.yml +1 -0
- data/config/locales/fi-plain.yml +1 -0
- data/config/locales/fi.yml +1 -0
- data/config/locales/fr.yml +95 -94
- data/config/locales/gl.yml +1 -0
- data/config/locales/hu.yml +4 -3
- data/config/locales/id-ID.yml +1 -0
- data/config/locales/it.yml +4 -3
- data/config/locales/nl.yml +3 -2
- data/config/locales/no.yml +117 -0
- data/config/locales/pl.yml +1 -0
- data/config/locales/pt-BR.yml +1 -0
- data/config/locales/pt.yml +1 -0
- data/config/locales/sv.yml +204 -203
- data/config/locales/tr-TR.yml +1 -0
- data/lib/decidim/conferences/participatory_space.rb +1 -0
- data/lib/decidim/conferences/version.rb +1 -1
- metadata +23 -20
@@ -50,6 +50,7 @@ module Decidim
|
|
50
50
|
def conference_meetings
|
51
51
|
meeting_components = current_participatory_space.components.where(manifest_name: "meetings")
|
52
52
|
return unless meeting_components || conference_meeting_ids.delete("").present?
|
53
|
+
|
53
54
|
@conference_meetings ||= Decidim::ConferenceMeeting.where(component: meeting_components).where(id: conference_meeting_ids)
|
54
55
|
end
|
55
56
|
|
@@ -36,6 +36,7 @@ module Decidim
|
|
36
36
|
def conference_meetings
|
37
37
|
meeting_components = current_participatory_space.components.where(manifest_name: "meetings")
|
38
38
|
return unless meeting_components || conference_meeting_ids.delete("").present?
|
39
|
+
|
39
40
|
@conference_meetings ||= Decidim::ConferenceMeeting.where(component: meeting_components).where(id: conference_meeting_ids)
|
40
41
|
end
|
41
42
|
end
|
@@ -8,6 +8,7 @@ module Decidim
|
|
8
8
|
#
|
9
9
|
def render_date(conference)
|
10
10
|
return l(conference.start_date, format: :decidim_with_month_name_short) if conference.start_date == conference.end_date
|
11
|
+
|
11
12
|
"#{l(conference.start_date, format: :decidim_with_month_name_short)} - #{l(conference.end_date, format: :decidim_with_month_name_short)}"
|
12
13
|
end
|
13
14
|
end
|
@@ -20,10 +20,7 @@ module Decidim
|
|
20
20
|
belongs_to :organization,
|
21
21
|
foreign_key: "decidim_organization_id",
|
22
22
|
class_name: "Decidim::Organization"
|
23
|
-
|
24
|
-
foreign_key: "decidim_area_id",
|
25
|
-
class_name: "Decidim::Area",
|
26
|
-
optional: true
|
23
|
+
|
27
24
|
has_many :categories,
|
28
25
|
foreign_key: "decidim_participatory_space_id",
|
29
26
|
foreign_type: "decidim_participatory_space_type",
|
@@ -87,6 +84,7 @@ module Decidim
|
|
87
84
|
|
88
85
|
def has_available_slots?
|
89
86
|
return true if available_slots.zero?
|
87
|
+
|
90
88
|
available_slots > conference_registrations.count
|
91
89
|
end
|
92
90
|
|
@@ -96,7 +94,14 @@ module Decidim
|
|
96
94
|
|
97
95
|
def diploma_sent?
|
98
96
|
return false if diploma_sent_at.nil?
|
97
|
+
|
99
98
|
true
|
100
99
|
end
|
100
|
+
|
101
|
+
def closed?
|
102
|
+
return false if end_date.blank?
|
103
|
+
|
104
|
+
end_date < Date.current
|
105
|
+
end
|
101
106
|
end
|
102
107
|
end
|
@@ -24,6 +24,7 @@ module Decidim
|
|
24
24
|
# Private: check if the process and the user have the same organization
|
25
25
|
def user_and_conference_same_organization
|
26
26
|
return if !conference || !user
|
27
|
+
|
27
28
|
errors.add(:conference, :invalid) unless user.organization == conference.organization
|
28
29
|
end
|
29
30
|
end
|
@@ -30,6 +30,7 @@ module Decidim
|
|
30
30
|
end
|
31
31
|
|
32
32
|
return permission_action unless user
|
33
|
+
|
33
34
|
if !has_manageable_conferences? && !user.admin?
|
34
35
|
disallow!
|
35
36
|
return permission_action
|
@@ -94,12 +95,14 @@ module Decidim
|
|
94
95
|
# Checks if it has any manageable conference, with any possible role.
|
95
96
|
def has_manageable_conferences?(role: :any)
|
96
97
|
return unless user
|
98
|
+
|
97
99
|
conferences_with_role_privileges(role).any?
|
98
100
|
end
|
99
101
|
|
100
102
|
# Whether the user can manage the given conference or not.
|
101
103
|
def can_manage_conference?(role: :any)
|
102
104
|
return unless user
|
105
|
+
|
103
106
|
conferences_with_role_privileges(role).include? conference
|
104
107
|
end
|
105
108
|
|
@@ -123,6 +126,7 @@ module Decidim
|
|
123
126
|
|
124
127
|
return allow! if user&.admin?
|
125
128
|
return allow! if conference.published?
|
129
|
+
|
126
130
|
toggle_allow(can_manage_conference?)
|
127
131
|
end
|
128
132
|
|
@@ -222,12 +226,14 @@ module Decidim
|
|
222
226
|
# Everyone can read the conference list
|
223
227
|
def user_can_read_conference_list?
|
224
228
|
return unless read_conference_list_permission_action?
|
229
|
+
|
225
230
|
toggle_allow(user.admin? || has_manageable_conferences?)
|
226
231
|
end
|
227
232
|
|
228
233
|
def user_can_read_current_conference?
|
229
234
|
return unless read_conference_list_permission_action?
|
230
235
|
return if permission_action.subject == :conference_list
|
236
|
+
|
231
237
|
toggle_allow(user.admin? || can_manage_conference?)
|
232
238
|
end
|
233
239
|
|
@@ -23,7 +23,7 @@ module Decidim
|
|
23
23
|
#
|
24
24
|
# Returns an ActiveRecord::Relation.
|
25
25
|
def query
|
26
|
-
Decidim::User.where(id: organization_admins)
|
26
|
+
Decidim::User.where(id: organization_admins).or(conference_user_admins)
|
27
27
|
end
|
28
28
|
|
29
29
|
private
|
@@ -33,6 +33,13 @@ module Decidim
|
|
33
33
|
def organization_admins
|
34
34
|
conference.organization.admins
|
35
35
|
end
|
36
|
+
|
37
|
+
def conference_user_admins
|
38
|
+
conference_user_admin_ids = Decidim::ConferenceUserRole
|
39
|
+
.where(conference: conference, role: :admin)
|
40
|
+
.pluck(:decidim_user_id)
|
41
|
+
Decidim::User.where(id: conference_user_admin_ids)
|
42
|
+
end
|
36
43
|
end
|
37
44
|
end
|
38
45
|
end
|
@@ -36,6 +36,7 @@ module Decidim
|
|
36
36
|
|
37
37
|
def filter_by_search(conference_invites)
|
38
38
|
return conference_invites if @query.blank?
|
39
|
+
|
39
40
|
conference_invites.joins(:user).where(
|
40
41
|
User.arel_table[:name].lower.matches("%#{@query}%").or(User.arel_table[:email].lower.matches("%#{@query}%"))
|
41
42
|
)
|
@@ -25,10 +25,10 @@
|
|
25
25
|
<% @conference_user_roles.each do |role| %>
|
26
26
|
<tr>
|
27
27
|
<td>
|
28
|
-
<%= role.user.name %><br
|
28
|
+
<%= role.user.name %><br>
|
29
29
|
</td>
|
30
30
|
<td>
|
31
|
-
<%= role.user.email %><br
|
31
|
+
<%= role.user.email %><br>
|
32
32
|
</td>
|
33
33
|
<td>
|
34
34
|
<% if role.user.invitation_sent_at %>
|
@@ -41,7 +41,7 @@
|
|
41
41
|
<% end %>
|
42
42
|
</td>
|
43
43
|
<td>
|
44
|
-
<%= t("#{role.role}", scope: "decidim.admin.models.conference_user_role.roles") %><br
|
44
|
+
<%= t("#{role.role}", scope: "decidim.admin.models.conference_user_role.roles") %><br>
|
45
45
|
</td>
|
46
46
|
<td class="table-list__actions">
|
47
47
|
<% if allowed_to?(:invite, :conference_user_role, user_role: role) && role.user.invited_to_sign_up? %>
|
@@ -26,11 +26,11 @@
|
|
26
26
|
</span>
|
27
27
|
<% end %>
|
28
28
|
<% if allowed_to? :update, :conference, conference: conference %>
|
29
|
-
<%= link_to translated_attribute(conference.title), edit_conference_path(conference) %><br
|
29
|
+
<%= link_to translated_attribute(conference.title), edit_conference_path(conference) %><br>
|
30
30
|
<% elsif allowed_to? :preview, :conference, conference: conference %>
|
31
|
-
<%= link_to translated_attribute(conference.title), decidim_conferences.conference_path(conference) %><br
|
31
|
+
<%= link_to translated_attribute(conference.title), decidim_conferences.conference_path(conference) %><br>
|
32
32
|
<% elsif allowed_to? :read, :moderation, conference: conference %>
|
33
|
-
<%= link_to translated_attribute(conference.title), moderations_path(conference) %><br
|
33
|
+
<%= link_to translated_attribute(conference.title), moderations_path(conference) %><br>
|
34
34
|
<% else %>
|
35
35
|
<%= translated_attribute(conference.title) %>
|
36
36
|
<% end %>
|
data/app/views/decidim/conferences/admin/send_conference_diploma_mailer/diploma_user.html.erb
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
<h3><%= t("decidim.conferences.admin.send_conference_diploma_mailer.diploma_user.certificate_of_attendance") %></h3>
|
11
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>
|
12
12
|
</div>
|
13
|
-
<hr class="reset mt-m mb-m"
|
13
|
+
<hr class="reset mt-m mb-m">
|
14
14
|
<div class="diploma__attendance">
|
15
15
|
<strong><%= t("decidim.conferences.admin.send_conference_diploma_mailer.diploma_user.attendance_verified_by") %></strong>
|
16
16
|
<div>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% if conference.partners.any? %>
|
2
2
|
<div id="conference-partners">
|
3
3
|
<% conference.partners.group_by(&:partner_type).each do |partner_type, partners| %>
|
4
|
-
<hr class="reset mt-none mb-m"
|
4
|
+
<hr class="reset mt-none mb-m">
|
5
5
|
<section class="section">
|
6
6
|
<h1 class="section-heading"><%= t(".#{partner_type.pluralize}") %></h1>
|
7
7
|
<div class="row small-up-2 medium-up-3 card-grid">
|
@@ -17,7 +17,7 @@
|
|
17
17
|
<div class="card__content row collapse">
|
18
18
|
<div class="large-6 large-offset-6 columns">
|
19
19
|
<%= link_to conference_path(promoted_conference), class: "button expanded button--sc" do %>
|
20
|
-
<%= t(
|
20
|
+
<%= t(promoted_conference.cta_button_text_key, scope: "layouts.decidim.conferences.promoted_conference") %>
|
21
21
|
<% end %>
|
22
22
|
</div>
|
23
23
|
</div>
|
@@ -22,7 +22,7 @@ edit_link(
|
|
22
22
|
<h4 class="section-heading"><%= t("conferences.show.introduction", scope: "decidim") %></h4>
|
23
23
|
<%= decidim_sanitize translated_attribute(current_participatory_space.short_description) %>
|
24
24
|
</section>
|
25
|
-
<hr class="reset mt-none mb-m"
|
25
|
+
<hr class="reset mt-none mb-m">
|
26
26
|
<section class="section">
|
27
27
|
<h4 class="section-heading"><%= t("conferences.show.details", scope: "decidim") %></h4>
|
28
28
|
<%= decidim_sanitize translated_attribute(current_participatory_space.description) %>
|
@@ -53,7 +53,7 @@ edit_link(
|
|
53
53
|
<%= render_hook(:conference_venues) %>
|
54
54
|
|
55
55
|
<% if current_participatory_space.registrations_enabled? %>
|
56
|
-
<hr class="reset mt-none mb-m"
|
56
|
+
<hr class="reset mt-none mb-m">
|
57
57
|
<section class="section">
|
58
58
|
<h4 class="section-heading"><%= t(".register") %></h4>
|
59
59
|
<% if current_user.present? %>
|
@@ -72,7 +72,7 @@ edit_link(
|
|
72
72
|
</section>
|
73
73
|
<% end %>
|
74
74
|
|
75
|
-
<hr class="reset mt-none mb-m"
|
75
|
+
<hr class="reset mt-none mb-m">
|
76
76
|
|
77
77
|
<% unless translated_attribute(current_participatory_space.objectives).blank? %>
|
78
78
|
<section class="section">
|
@@ -16,7 +16,7 @@ edit_link(
|
|
16
16
|
<h1 class="section-heading"><%= t("media.index.title", scope: "decidim") %></h1>
|
17
17
|
<p><%= t("media.index.description", scope: "decidim") %></p>
|
18
18
|
</section>
|
19
|
-
<hr class="reset mt-none mb-s"
|
19
|
+
<hr class="reset mt-none mb-s">
|
20
20
|
<section class="media-links">
|
21
21
|
<ul class="list-reset">
|
22
22
|
<% @media_links.each do |media_link| %>
|
@@ -24,7 +24,7 @@ edit_link(
|
|
24
24
|
<% end %>
|
25
25
|
</ul>
|
26
26
|
</section>
|
27
|
-
<hr class="reset mt-none mb-s"
|
27
|
+
<hr class="reset mt-none mb-s">
|
28
28
|
<% end %>
|
29
29
|
<%= attachments_for_conference current_participatory_space %>
|
30
30
|
</div>
|
@@ -19,10 +19,10 @@
|
|
19
19
|
<div class="row">
|
20
20
|
<div class="row column medium-8 text-left mt-m">
|
21
21
|
<div class="column medium-6">
|
22
|
-
<
|
22
|
+
<div class="conference--date button hollow light expanded">
|
23
23
|
<%= participatory_space_helpers.render_date(current_participatory_space) %>
|
24
24
|
<%= current_participatory_space.location %>
|
25
|
-
</
|
25
|
+
</div>
|
26
26
|
</div>
|
27
27
|
<% if current_participatory_space.registrations_enabled? %>
|
28
28
|
<div class="column medium-3 end">
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<!DOCTYPE html>
|
2
2
|
<html lang="<%= I18n.locale %>" class="no-js">
|
3
3
|
<head>
|
4
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"
|
5
|
-
<meta name="viewport" content="width=device-width"
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
+
<meta name="viewport" content="width=device-width">
|
6
6
|
<%= wicked_pdf_stylesheet_link_tag "decidim/conference-diploma" %>
|
7
7
|
</head>
|
8
8
|
<body>
|
data/config/locales/ar-SA.yml
CHANGED
@@ -0,0 +1,589 @@
|
|
1
|
+
ar:
|
2
|
+
activemodel:
|
3
|
+
attributes:
|
4
|
+
conference:
|
5
|
+
assemblies_ids: الجمعيات ذات الصلة
|
6
|
+
banner_image: صورة بانر
|
7
|
+
consultations_ids: المشاورات ذات الصلة
|
8
|
+
copy_categories: نسخ الفئات
|
9
|
+
copy_components: نسخ المكونات
|
10
|
+
copy_features: نسخ الميزات
|
11
|
+
decidim_scope_id: نطاق
|
12
|
+
description: وصف
|
13
|
+
hashtag: رابطة هاشتاق
|
14
|
+
hero_image: الصورة الرئيسية
|
15
|
+
participatory_processes_ids: العمليات التشاركية ذات الصلة
|
16
|
+
promoted: سلط الضوء
|
17
|
+
published_at: نشرت في
|
18
|
+
scope_id: نطاق
|
19
|
+
scopes_enabled: تم تمكين النطاقات
|
20
|
+
short_description: وصف قصير
|
21
|
+
show_statistics: عرض الإحصائيات
|
22
|
+
slogan: شعار
|
23
|
+
slug: سبيكة العنوان الشبكي
|
24
|
+
title: عنوان
|
25
|
+
conference_speaker:
|
26
|
+
full_name: الاسم الكامل
|
27
|
+
conference_user_role:
|
28
|
+
email: البريد الإلكتروني
|
29
|
+
name: اسم
|
30
|
+
role: وظيفة
|
31
|
+
errors:
|
32
|
+
models:
|
33
|
+
conference_registration_invite:
|
34
|
+
attributes:
|
35
|
+
email:
|
36
|
+
already_invited: تمت دعوة هذا البريد الإلكتروني بالفعل
|
37
|
+
activerecord:
|
38
|
+
models:
|
39
|
+
decidim/conference:
|
40
|
+
zero: المؤتمرات
|
41
|
+
one: مؤتمر
|
42
|
+
two: المؤتمرات
|
43
|
+
few: المؤتمرات
|
44
|
+
many: المؤتمرات
|
45
|
+
other: المؤتمرات
|
46
|
+
decidim/conference_speaker:
|
47
|
+
zero: المتحدثون في المؤتمر
|
48
|
+
one: رئيس المؤتمر
|
49
|
+
two: المتحدثون في المؤتمر
|
50
|
+
few: المتحدثون في المؤتمر
|
51
|
+
many: المتحدثون في المؤتمر
|
52
|
+
other: المتحدثون في المؤتمر
|
53
|
+
decidim/conference_user_role:
|
54
|
+
zero: أدوار مستخدم المؤتمر
|
55
|
+
one: دور مستخدم المؤتمر
|
56
|
+
two: أدوار مستخدم المؤتمر
|
57
|
+
few: أدوار مستخدم المؤتمر
|
58
|
+
many: أدوار مستخدم المؤتمر
|
59
|
+
other: أدوار مستخدم المؤتمر
|
60
|
+
decidim:
|
61
|
+
admin:
|
62
|
+
actions:
|
63
|
+
confirm: تؤكد
|
64
|
+
new_conference: مؤتمر جديد
|
65
|
+
send_diplomas: إرسال شهادات الحضور
|
66
|
+
conference_copies:
|
67
|
+
new:
|
68
|
+
copy: نسخ
|
69
|
+
select: حدد البيانات التي ترغب في تكرارها
|
70
|
+
title: مؤتمر مكرر
|
71
|
+
conference_publications:
|
72
|
+
create:
|
73
|
+
error: كانت هناك مشكلة في نشر هذا المؤتمر.
|
74
|
+
success: تم نشر المؤتمر بنجاح.
|
75
|
+
destroy:
|
76
|
+
error: كانت هناك مشكلة في إلغاء نشر هذا المؤتمر.
|
77
|
+
success: مؤتمر غير منشور بنجاح.
|
78
|
+
conference_registration:
|
79
|
+
confirm:
|
80
|
+
error: حدثت مشكلة في تأكيد تسجيل المؤتمر هذا.
|
81
|
+
success: تم تأكيد تسجيل المؤتمر بنجاح.
|
82
|
+
conference_speakers:
|
83
|
+
create:
|
84
|
+
error: حدثت مشكلة أثناء إضافة متحدث إلى هذا المؤتمر.
|
85
|
+
success: رئيس المؤتمر تم إنشاؤه بنجاح.
|
86
|
+
destroy:
|
87
|
+
success: تم حذف رئيس المؤتمر بنجاح.
|
88
|
+
edit:
|
89
|
+
title: تحديث المتحدث المؤتمر.
|
90
|
+
update: تحديث
|
91
|
+
index:
|
92
|
+
conference_speakers_title: المتحدثون في المؤتمر
|
93
|
+
new:
|
94
|
+
create: إنشاء
|
95
|
+
title: رئيس المؤتمر الجديد.
|
96
|
+
update:
|
97
|
+
error: حدثت مشكلة أثناء تحديث متحدث المؤتمر هذا.
|
98
|
+
success: تم تحديث مكبر صوت المؤتمر بنجاح.
|
99
|
+
conference_user_roles:
|
100
|
+
create:
|
101
|
+
error: حدثت مشكلة أثناء إضافة مشرف إلى هذا المؤتمر.
|
102
|
+
success: تمت إضافة مسؤول المؤتمر بنجاح.
|
103
|
+
destroy:
|
104
|
+
success: تمت إزالة مسؤول المؤتمر بنجاح.
|
105
|
+
edit:
|
106
|
+
title: تحديث مسؤول المؤتمر.
|
107
|
+
update: تحديث
|
108
|
+
index:
|
109
|
+
conference_admins_title: مدراء المؤتمر
|
110
|
+
new:
|
111
|
+
create: إنشاء
|
112
|
+
title: مشرف المؤتمر الجديد.
|
113
|
+
update:
|
114
|
+
error: حدثت مشكلة أثناء تحديث مشرف المؤتمر هذا.
|
115
|
+
success: تم تحديث مشرف المؤتمر بنجاح.
|
116
|
+
conferences:
|
117
|
+
create:
|
118
|
+
error: كانت هناك مشكلة في إنشاء هذا المؤتمر.
|
119
|
+
success: تم إنشاء المؤتمر بنجاح.
|
120
|
+
edit:
|
121
|
+
update: تحديث
|
122
|
+
exports:
|
123
|
+
registrations: التسجيلات
|
124
|
+
form:
|
125
|
+
title: معلومات عامة
|
126
|
+
index:
|
127
|
+
not_published: غير منشور
|
128
|
+
published: نشرت
|
129
|
+
new:
|
130
|
+
create: إنشاء
|
131
|
+
title: مؤتمر
|
132
|
+
update:
|
133
|
+
error: حدثت مشكلة أثناء تحديث هذا المؤتمر.
|
134
|
+
success: تم تحديث المؤتمر بنجاح.
|
135
|
+
conferences_copies:
|
136
|
+
create:
|
137
|
+
error: كانت هناك مشكلة في تكرار هذا المؤتمر.
|
138
|
+
success: تم تكرار المؤتمر بنجاح.
|
139
|
+
media_links:
|
140
|
+
create:
|
141
|
+
error: حدثت مشكلة أثناء إنشاء رابط وسائط جديد.
|
142
|
+
success: تم إنشاء رابط الوسائط بنجاح.
|
143
|
+
destroy:
|
144
|
+
success: تم حذف رابط الوسائط بنجاح.
|
145
|
+
edit:
|
146
|
+
title: تحديث رابط الوسائط.
|
147
|
+
update: تحديث
|
148
|
+
index:
|
149
|
+
media_links_title: روابط الوسائط
|
150
|
+
new:
|
151
|
+
create: إنشاء
|
152
|
+
title: وصلة الوسائط
|
153
|
+
update:
|
154
|
+
error: حدثت مشكلة أثناء تحديث رابط الوسائط هذا.
|
155
|
+
success: تم تحديث رابط الوسائط بنجاح.
|
156
|
+
menu:
|
157
|
+
conferences: المؤتمرات
|
158
|
+
conferences_submenu:
|
159
|
+
attachment_collections: المجلدات
|
160
|
+
attachment_files: ملفات
|
161
|
+
attachments: مرفقات
|
162
|
+
categories: الاقسام
|
163
|
+
components: المكونات
|
164
|
+
conference_invites: تدعو
|
165
|
+
conference_speakers: مكبرات الصوت
|
166
|
+
diploma: شهادة حضور
|
167
|
+
info: معلومات
|
168
|
+
media_links: روابط الوسائط
|
169
|
+
moderations: الإعتدال
|
170
|
+
partners: شركاء
|
171
|
+
registration_types: أنواع التسجيل
|
172
|
+
registrations: التسجيلات
|
173
|
+
user_registrations: تسجيلات المستخدم
|
174
|
+
models:
|
175
|
+
conference:
|
176
|
+
fields:
|
177
|
+
created_at: أنشئت في
|
178
|
+
promoted: سلط الضوء
|
179
|
+
published: نشرت
|
180
|
+
title: عنوان
|
181
|
+
conference_speaker:
|
182
|
+
fields:
|
183
|
+
affiliation: الانتماء
|
184
|
+
full_name: الاسم الكامل
|
185
|
+
position: موضع
|
186
|
+
name: رئيس المؤتمر
|
187
|
+
conference_user_role:
|
188
|
+
fields:
|
189
|
+
email: البريد الإلكتروني
|
190
|
+
name: اسم
|
191
|
+
role: وظيفة
|
192
|
+
name: إدارة المؤتمر
|
193
|
+
roles:
|
194
|
+
admin: مدير
|
195
|
+
collaborator: متعاون
|
196
|
+
moderator: وسيط
|
197
|
+
media_link:
|
198
|
+
fields:
|
199
|
+
date: تاريخ
|
200
|
+
link: حلقة الوصل
|
201
|
+
title: عنوان
|
202
|
+
name: وصلة الوسائط
|
203
|
+
partner:
|
204
|
+
fields:
|
205
|
+
link: حلقة الوصل
|
206
|
+
logo: شعار
|
207
|
+
name: اسم
|
208
|
+
partner_type: نوع
|
209
|
+
name: شريك
|
210
|
+
types:
|
211
|
+
collaborator: متعاون
|
212
|
+
main_promotor: المروج الرئيسي
|
213
|
+
registration_type:
|
214
|
+
fields:
|
215
|
+
conference_meetings: اجتماعات المؤتمر
|
216
|
+
price: السعر
|
217
|
+
registrations_count: عدد التسجيلات
|
218
|
+
title: عنوان
|
219
|
+
weight: وزن
|
220
|
+
name: نوع التسجيل
|
221
|
+
partners:
|
222
|
+
create:
|
223
|
+
error: حدثت مشكلة أثناء إضافة شريك لهذا المؤتمر.
|
224
|
+
success: وأضاف شريك المؤتمر بنجاح.
|
225
|
+
destroy:
|
226
|
+
success: تمت إزالة شريك المؤتمر بنجاح.
|
227
|
+
edit:
|
228
|
+
title: تحديث شريك.
|
229
|
+
update: تحديث
|
230
|
+
new:
|
231
|
+
create: إنشاء
|
232
|
+
title: شريك جديد
|
233
|
+
update:
|
234
|
+
error: حدثت مشكلة أثناء تحديث شريك لهذا المؤتمر.
|
235
|
+
success: تم تحديث شريك المؤتمر بنجاح.
|
236
|
+
registration_type_publications:
|
237
|
+
create:
|
238
|
+
error: حدثت مشكلة أثناء نشر نوع التسجيل هذا.
|
239
|
+
success: نوع التسجيل نشر بنجاح.
|
240
|
+
destroy:
|
241
|
+
error: حدثت مشكلة في إلغاء نشر نوع التسجيل هذا.
|
242
|
+
success: نوع التسجيل غير منشور بنجاح.
|
243
|
+
registration_types:
|
244
|
+
create:
|
245
|
+
error: حدثت مشكلة أثناء إضافة نوع التسجيل لهذا المؤتمر.
|
246
|
+
success: تمت إضافة نوع تسجيل المؤتمر بنجاح.
|
247
|
+
destroy:
|
248
|
+
success: تمت إزالة نوع تسجيل المؤتمر بنجاح.
|
249
|
+
edit:
|
250
|
+
title: تحديث نوع التسجيل.
|
251
|
+
update: تحديث
|
252
|
+
new:
|
253
|
+
create: إنشاء
|
254
|
+
title: نوع التسجيل الجديد
|
255
|
+
update:
|
256
|
+
error: حدثت مشكلة أثناء تحديث نوع التسجيل لهذا المؤتمر.
|
257
|
+
success: تم تحديث نوع تسجيل المؤتمر بنجاح.
|
258
|
+
titles:
|
259
|
+
conferences: المؤتمرات
|
260
|
+
admin_log:
|
261
|
+
conference:
|
262
|
+
create: "%{user_name} أنشأ المؤتمر %{resource_name}"
|
263
|
+
publish: "%{user_name} نشر المؤتمر %{resource_name}"
|
264
|
+
send_conference_diplomas: "أرسلت %{user_name} شهادات حضور إلى %{resource_name} atendees المؤتمر"
|
265
|
+
unpublish: "%{user_name} غير منشور في المؤتمر %{resource_name}"
|
266
|
+
update: "%{user_name} تحديث المؤتمر %{resource_name}"
|
267
|
+
update_diploma: "%{user_name} تحديث شهادات تكوين الحضور لمؤتمر %{resource_name}"
|
268
|
+
conference_speaker:
|
269
|
+
create: "%{user_name} أنشأ المتكلم %{resource_name} في المؤتمر %{space_name}"
|
270
|
+
delete: "%{user_name} أزال المتحدث %{resource_name} من المؤتمر %{space_name}"
|
271
|
+
update: "%{user_name} تحديث المتكلم %{resource_name} في المؤتمر %{space_name}"
|
272
|
+
conference_user_role:
|
273
|
+
create: "%{user_name} دعا %{resource_name} إلى %{space_name} المؤتمر"
|
274
|
+
delete: "%{user_name} أزال المشرف %{resource_name} من المؤتمر %{space_name}"
|
275
|
+
update: "%{user_name} غير دور %{resource_name} في المؤتمر %{space_name}"
|
276
|
+
conferences:
|
277
|
+
conference_registration:
|
278
|
+
confirm: "%{user_name} أكد تسجيل مؤتمر في مؤتمر %{resource_name}"
|
279
|
+
partner:
|
280
|
+
create: "%{user_name} أنشأ %{resource_name} إلى %{space_name} المؤتمر"
|
281
|
+
delete: "%{user_name} أزال المشرف %{resource_name} من المؤتمر %{space_name}"
|
282
|
+
update: "%{user_name} محدث %{resource_name} في المؤتمر %{space_name}"
|
283
|
+
registration_type:
|
284
|
+
create: "%{user_name} أنشأ نوع التسجيل %{resource_name} في المؤتمر %{space_name}"
|
285
|
+
publish: "%{user_name} نشر نوع التسجيل %{resource_name} في المؤتمر %{space_name}"
|
286
|
+
unpublish: "%{user_name} غير منشور نوع التسجيل %{resource_name} في المؤتمر %{space_name}"
|
287
|
+
update: "%{user_name} بتحديث نوع التسجيل %{resource_name} في المؤتمر %{space_name}"
|
288
|
+
media_link:
|
289
|
+
create: "%{user_name} أنشأ رابط الوسائط %{resource_name} في المؤتمر %{space_name}"
|
290
|
+
delete: "%{user_name} أزال رابط الوسائط %{resource_name} من المؤتمر %{space_name}"
|
291
|
+
update: "%{user_name} بتحديث رابط الوسائط %{resource_name} في المؤتمر %{space_name}"
|
292
|
+
conference_program:
|
293
|
+
index:
|
294
|
+
title: برنامج
|
295
|
+
conference_speakers:
|
296
|
+
index:
|
297
|
+
title: مكبرات الصوت
|
298
|
+
conferences:
|
299
|
+
admin:
|
300
|
+
conference_copies:
|
301
|
+
form:
|
302
|
+
slug_help: 'يتم استخدام slugs URL لإنشاء عناوين URL التي تشير إلى هذا المؤتمر. يقبل الحروف والأرقام والشرطات فقط ، ويجب أن يبدأ بحرف. مثال: %{url}'
|
303
|
+
conference_invites:
|
304
|
+
create:
|
305
|
+
error: حدثت مشكلة أثناء دعوة المشارك للانضمام إلى المؤتمر.
|
306
|
+
success: تمت دعوة المشارك بنجاح للانضمام إلى المؤتمر.
|
307
|
+
form:
|
308
|
+
attendee_type: نوع الحضور
|
309
|
+
existing_user: المشارك الحالي
|
310
|
+
invite_explanation: سيتم دعوة المشارك للانضمام إلى المؤتمر وإلى المنظمة أيضًا.
|
311
|
+
non_user: مشارك غير موجود
|
312
|
+
select_user: اختر المشارك
|
313
|
+
index:
|
314
|
+
filter:
|
315
|
+
accepted: وافقت
|
316
|
+
all: الكل
|
317
|
+
rejected: مرفوض
|
318
|
+
sent: أرسلت
|
319
|
+
filter_by: مصنف بواسطة
|
320
|
+
invite_attendee: دعوة مشارك
|
321
|
+
invites: تدعو
|
322
|
+
search: بحث
|
323
|
+
new:
|
324
|
+
explanation: سيدعى المشارك للانضمام إلى مؤتمر. إذا لم يتم تسجيل بريدها الإلكتروني ، فستتم دعوتها إلى المنظمة أيضًا.
|
325
|
+
invite: دعا
|
326
|
+
new_invite: دعوة مشارك
|
327
|
+
conference_registrations:
|
328
|
+
index:
|
329
|
+
registrations: التسجيلات
|
330
|
+
conference_speakers:
|
331
|
+
form:
|
332
|
+
existing_user: المشارك الحالي
|
333
|
+
non_user: غير مشارك
|
334
|
+
select_user: اختر المشارك
|
335
|
+
user_type: نوع المشارك
|
336
|
+
index:
|
337
|
+
search: بحث
|
338
|
+
conferences:
|
339
|
+
form:
|
340
|
+
available_slots_help: اتركه إلى 0 إذا كان لديك فتحات غير محدودة المتاحة.
|
341
|
+
registrations_count:
|
342
|
+
zero: كان هناك %{count} التسجيلات.
|
343
|
+
one: كان هناك 1 تسجيل.
|
344
|
+
two: كان هناك %{count} التسجيلات.
|
345
|
+
few: كان هناك %{count} التسجيلات.
|
346
|
+
many: كان هناك %{count} التسجيلات.
|
347
|
+
other: كان هناك %{count} التسجيلات.
|
348
|
+
slug_help: 'يتم استخدام slugs URL لإنشاء عناوين URL التي تشير إلى هذا المؤتمر. يقبل الحروف والأرقام والشرطات فقط ، ويجب أن يبدأ بحرف. مثال: %{url}'
|
349
|
+
diplomas:
|
350
|
+
edit:
|
351
|
+
save: حفظ
|
352
|
+
title: شهادة حضور
|
353
|
+
invite_join_conference_mailer:
|
354
|
+
invite:
|
355
|
+
decline: رفض الدعوة "%{conference_title}"
|
356
|
+
invited_you_to_join_a_conference: "%{invited_by} للانضمام إلى مؤتمر في %{application}. يمكنك رفضه أو قبوله من خلال الروابط أدناه."
|
357
|
+
registration: التسجيل لـ "%{conference_title}"
|
358
|
+
partners:
|
359
|
+
index:
|
360
|
+
title: شركاء
|
361
|
+
registration_types:
|
362
|
+
form:
|
363
|
+
select_conference_meetings: حدد اجتماعات المؤتمر
|
364
|
+
index:
|
365
|
+
title: أنواع التسجيل
|
366
|
+
send_conference_diploma_mailer:
|
367
|
+
diploma:
|
368
|
+
diploma_html: ستجد شهادة حضور المؤتمر <a href="%{url}">%{title}</a> في المرفقات.
|
369
|
+
diploma_user:
|
370
|
+
attendance_verified_by: تم التحقق من الحضور بواسطة
|
371
|
+
certificate_of_attendance: شهادة حضور
|
372
|
+
certificate_of_attendance_description: هذا هو التأكيد على أن <strong>%{user}</strong> قد حضر وشارك في <strong>%{title}</strong> الذي عقد في <strong>%{location}</strong> في <strong>%{start} - %{end}</strong>
|
373
|
+
send_diploma:
|
374
|
+
error: حدثت مشكلة أثناء إرسال شهادات حضور المؤتمر.
|
375
|
+
success: تم إرسال شهادات حضور المؤتمر بنجاح
|
376
|
+
conference:
|
377
|
+
registration_confirm:
|
378
|
+
cancel: إلغاء
|
379
|
+
confirm: تؤكد
|
380
|
+
show:
|
381
|
+
free: حر
|
382
|
+
going: حضور
|
383
|
+
no_slots_available: لا فتحات المتاحة
|
384
|
+
registration: التسجيل
|
385
|
+
conference_program:
|
386
|
+
program_meeting:
|
387
|
+
content: يحتوى
|
388
|
+
location: موقعك
|
389
|
+
speakers: مكبرات الصوت
|
390
|
+
streaming: تدفق
|
391
|
+
show:
|
392
|
+
day: يوم
|
393
|
+
program: برنامج
|
394
|
+
conference_registration_mailer:
|
395
|
+
confirmation:
|
396
|
+
confirmed_html: تم تأكيد تسجيلك للمؤتمر <a href="%{url}">%{title}</a>.
|
397
|
+
details_1: 'أنت مسجل في المؤتمر مع %{registration_type} نوع. تبلغ تكلفتها %{price} ويمكنك حضور الأحداث التالية:'
|
398
|
+
pending_validation:
|
399
|
+
confirmation_pending: سوف تتلقى التأكيد قريبا
|
400
|
+
details: 'لقد قمت بالتسجيل إلى %{registration_type} نوع بتكلفة %{price} ويمكنك حضور الأحداث التالية:'
|
401
|
+
pending_html: تسجيلك في المؤتمر <a href="%{url}">%{title}</a> انتظار التأكيد.
|
402
|
+
conference_registrations:
|
403
|
+
create:
|
404
|
+
invalid: كانت هناك مشكلة في الانضمام إلى هذا المؤتمر.
|
405
|
+
success: لقد انضممت بنجاح إلى المؤتمر.
|
406
|
+
decline_invitation:
|
407
|
+
invalid: حدثت مشكلة في رفض الدعوة.
|
408
|
+
success: لقد رفضت الدعوة بنجاح.
|
409
|
+
destroy:
|
410
|
+
invalid: حدثت مشكلة أثناء مغادرة هذا المؤتمر.
|
411
|
+
success: لقد تركت المؤتمر بنجاح.
|
412
|
+
conference_speaker:
|
413
|
+
go_to_twitter: انتقل إلى تويتر
|
414
|
+
more_info: مزيد من المعلومات
|
415
|
+
personal_website: موقع الويب الشخصي
|
416
|
+
show:
|
417
|
+
more_info: مزيد من المعلومات
|
418
|
+
conference_speaker_cell:
|
419
|
+
personal_url:
|
420
|
+
personal_website: موقع الويب الشخصي
|
421
|
+
twitter_handle:
|
422
|
+
go_to_twitter: انتقل إلى تويتر
|
423
|
+
conference_speakers:
|
424
|
+
index:
|
425
|
+
speakers: مكبرات الصوت
|
426
|
+
conferences:
|
427
|
+
partners:
|
428
|
+
collaborators: شركاء
|
429
|
+
main_promotors: المنظمون
|
430
|
+
show:
|
431
|
+
login_as: تم تسجيل دخولك كـ %{name} <%{email}>
|
432
|
+
make_conference_registration: 'اجعل تسجيلك في المؤتمر:'
|
433
|
+
register: تسجيل
|
434
|
+
content_blocks:
|
435
|
+
highlighted_conferences:
|
436
|
+
name: المؤتمرات البارزة
|
437
|
+
index:
|
438
|
+
title: المؤتمرات
|
439
|
+
mailer:
|
440
|
+
conference_registration_mailer:
|
441
|
+
confirmation:
|
442
|
+
subject: تم تأكيد تسجيل مؤتمرك
|
443
|
+
pending_validation:
|
444
|
+
subject: تسجيل مؤتمرك في انتظار التأكيد
|
445
|
+
invite_join_conference_mailer:
|
446
|
+
invite:
|
447
|
+
subject: دعوة للانضمام إلى مؤتمر
|
448
|
+
send_conference_diploma_mailer:
|
449
|
+
diploma:
|
450
|
+
subject: تم إرسال شهادة حضور المؤتمر
|
451
|
+
models:
|
452
|
+
conference_invite:
|
453
|
+
fields:
|
454
|
+
email: البريد الإلكتروني
|
455
|
+
name: اسم
|
456
|
+
registration_type: نوع التسجيل
|
457
|
+
sent_at: أرسلت في
|
458
|
+
status: الحالة
|
459
|
+
status:
|
460
|
+
accepted: مقبول (%{at})
|
461
|
+
rejected: مرفوض (%{at})
|
462
|
+
sent: أرسلت
|
463
|
+
conference_registration:
|
464
|
+
fields:
|
465
|
+
email: البريد الإلكتروني
|
466
|
+
name: اسم
|
467
|
+
registration_type: نوع التسجيل
|
468
|
+
state: الحالة
|
469
|
+
states:
|
470
|
+
confirmed: تم تأكيد
|
471
|
+
pending: قيد الانتظار
|
472
|
+
pages:
|
473
|
+
home:
|
474
|
+
highlighted_conferences:
|
475
|
+
active_conferences: المؤتمرات النشطة
|
476
|
+
see_all_conferences: رؤية جميع المؤتمرات
|
477
|
+
photo:
|
478
|
+
show:
|
479
|
+
close_modal: إغلاق مشروط
|
480
|
+
photo: صورة
|
481
|
+
photos_list:
|
482
|
+
show:
|
483
|
+
related_photos: صور
|
484
|
+
registration_types:
|
485
|
+
index:
|
486
|
+
choose_an_option: 'اختر خيار التسجيل الخاص بك:'
|
487
|
+
login_as: تم تسجيل دخولك كـ %{name} <%{email}>
|
488
|
+
register: تسجيل
|
489
|
+
title: أنواع التسجيل
|
490
|
+
shared:
|
491
|
+
conference_user_login:
|
492
|
+
already_account: هل تمتلك حسابًا مِن قبلُ على ديسيديم؟
|
493
|
+
new_user: مستخدم جديد؟
|
494
|
+
sign_in: تسجيل الدخول للتسجيل في المؤتمر
|
495
|
+
sign_up: إنشاء حساب في decidim للتسجيل في المؤتمر
|
496
|
+
show:
|
497
|
+
details: تفاصيل
|
498
|
+
introduction: المقدمة
|
499
|
+
objectives: الأهداف
|
500
|
+
related_assemblies: الجمعيات ذات الصلة
|
501
|
+
related_consultations: المشاورات ذات الصلة
|
502
|
+
related_participatory_processes: العمليات التشاركية ذات الصلة
|
503
|
+
statistics:
|
504
|
+
answers_count: الأجوبة
|
505
|
+
comments_count: تعليقات
|
506
|
+
conference_count: المؤتمرات
|
507
|
+
debates_count: المناقشات
|
508
|
+
endorsements_count: موافقات
|
509
|
+
headline: نشاط
|
510
|
+
meetings_count: اجتماعات
|
511
|
+
orders_count: الدعم
|
512
|
+
pages_count: صفحات
|
513
|
+
posts_count: المشاركات
|
514
|
+
projects_count: مشاريع
|
515
|
+
proposals_count: اقتراحات
|
516
|
+
results_count: النتائج
|
517
|
+
surveys_count: الدراسات الاستقصائية
|
518
|
+
users_count: المشاركين
|
519
|
+
votes_count: الدعم
|
520
|
+
events:
|
521
|
+
conferences:
|
522
|
+
conference_registration_confirmed:
|
523
|
+
notification_title: تم تأكيد تسجيلك للمؤتمر <a href="%{resource_url}">%{resource_title}</a>.
|
524
|
+
conference_registration_validation_pending:
|
525
|
+
notification_title: تسجيلك في المؤتمر <a href="%{resource_url}">%{resource_title}</a> انتظار التأكيد.
|
526
|
+
conference_registrations_over_percentage:
|
527
|
+
email_intro: فتحات "%{resource_title}" التي شغلها المؤتمر تجاوزت %{percentage}٪.
|
528
|
+
email_outro: لقد تلقيت هذا الإشعار لأنك مسؤول عن المساحة التشاركية للمؤتمر.
|
529
|
+
email_subject: '"%{resource_title}" فتحات احتل المؤتمر أكثر من %{percentage}٪'
|
530
|
+
notification_title: و <a href="%{resource_path}">%{resource_title}</a> احتل مؤتمر فتحات ما يزيد على %{percentage}٪.
|
531
|
+
conference_updated:
|
532
|
+
email_intro: 'تم تحديث مؤتمر "%{resource_title}". يمكنك قراءة الإصدار الجديد من صفحته:'
|
533
|
+
email_outro: لقد تلقيت هذا الإشعار لأنك تتابع مؤتمر "%{resource_title}". يمكنك إلغاء تتبعه من الرابط السابق.
|
534
|
+
email_subject: تم تحديث مؤتمر "%{resource_title}"
|
535
|
+
notification_title: تم تحديث مؤتمر <a href="%{resource_path}">%{resource_title}</a>.
|
536
|
+
registrations_enabled:
|
537
|
+
email_intro: 'لقد مكّن المؤتمر "%{resource_title}" التسجيلات. يمكنك تسجيل نفسك على صفحتها:'
|
538
|
+
email_outro: لقد تلقيت هذا الإشعار لأنك تتابع مؤتمر "%{resource_title}". يمكنك إلغاء تتبعه من الرابط السابق.
|
539
|
+
email_subject: لقد مكّن المؤتمر "%{resource_title}" التسجيلات.
|
540
|
+
notification_title: لقد مكّن المؤتمر <a href="%{resource_path}">%{resource_title}</a> التسجيلات.
|
541
|
+
upcoming_conference:
|
542
|
+
email_intro: 'يعقد مؤتمر "%{resource_title}" خلال يومين. يمكنك قراءة الوصف من صفحتها:'
|
543
|
+
email_outro: لقد تلقيت هذا الإشعار لأنك تتابع مؤتمر "%{resource_title}". يمكنك إلغاء تتبعه من الرابط السابق.
|
544
|
+
email_subject: مؤتمر "%{resource_title}" قادم!
|
545
|
+
notification_title: المؤتمر <a href="%{resource_path}">%{resource_title}</a> قادم في يومين.
|
546
|
+
log:
|
547
|
+
value_types:
|
548
|
+
conference_presenter:
|
549
|
+
not_found: 'لم يتم العثور على المؤتمر في قاعدة البيانات (المعرف: %{id})'
|
550
|
+
media:
|
551
|
+
index:
|
552
|
+
description: روابط حول هذا المؤتمر
|
553
|
+
title: وسائل الإعلام والروابط
|
554
|
+
menu:
|
555
|
+
conferences: المؤتمرات
|
556
|
+
devise:
|
557
|
+
mailer:
|
558
|
+
join_conference:
|
559
|
+
subject: دعوة للانضمام إلى مؤتمر
|
560
|
+
layouts:
|
561
|
+
decidim:
|
562
|
+
conference_hero:
|
563
|
+
register: تسجيل
|
564
|
+
conference_widgets:
|
565
|
+
show:
|
566
|
+
take_part: خذ جزء
|
567
|
+
conferences:
|
568
|
+
conference:
|
569
|
+
more_info: مزيد من المعلومات
|
570
|
+
take_part: خذ جزء
|
571
|
+
index:
|
572
|
+
promoted_conferences: المؤتمرات البارزة
|
573
|
+
order_by_conferences:
|
574
|
+
conferences:
|
575
|
+
zero: "%{count} مؤتمرات"
|
576
|
+
one: "%{count} مؤتمر"
|
577
|
+
two: "%{count} مؤتمرات"
|
578
|
+
few: "%{count} مؤتمرات"
|
579
|
+
many: "%{count} مؤتمرات"
|
580
|
+
other: "%{count} مؤتمرات"
|
581
|
+
promoted_conference:
|
582
|
+
more_info: مزيد من المعلومات
|
583
|
+
take_part: خذ جزء
|
584
|
+
conferences_nav:
|
585
|
+
conference_menu_item: معلومات
|
586
|
+
conference_partners_menu_item: شركاء
|
587
|
+
conference_speaker_menu_item: مكبرات الصوت
|
588
|
+
media: وسائل الإعلام
|
589
|
+
venues: أماكن
|