decidim-proposals 0.16.0 → 0.16.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/proposals/participatory_text_proposal_cell.rb +3 -1
  3. data/app/cells/decidim/proposals/proposal_activity_cell.rb +9 -1
  4. data/app/commands/decidim/proposals/admin/discard_participatory_text.rb +40 -0
  5. data/app/commands/decidim/proposals/admin/import_participatory_text.rb +5 -1
  6. data/app/commands/decidim/proposals/admin/publish_participatory_text.rb +6 -18
  7. data/app/commands/decidim/proposals/admin/update_participatory_text.rb +56 -0
  8. data/app/commands/decidim/proposals/create_proposal.rb +21 -22
  9. data/app/commands/decidim/proposals/publish_collaborative_draft.rb +1 -0
  10. data/app/commands/decidim/proposals/publish_proposal.rb +25 -3
  11. data/app/commands/decidim/proposals/update_proposal.rb +19 -23
  12. data/app/controllers/concerns/decidim/proposals/orderable.rb +1 -1
  13. data/app/controllers/decidim/proposals/admin/participatory_texts_controller.rb +46 -14
  14. data/app/forms/decidim/proposals/admin/import_participatory_text_form.rb +1 -2
  15. data/app/forms/decidim/proposals/admin/proposal_form.rb +1 -1
  16. data/app/helpers/decidim/proposals/application_helper.rb +0 -4
  17. data/app/permissions/decidim/proposals/admin/permissions.rb +2 -4
  18. data/app/views/decidim/proposals/admin/participatory_texts/_article-preview.html.erb +1 -1
  19. data/app/views/decidim/proposals/admin/participatory_texts/_bulk-actions.html.erb +1 -0
  20. data/app/views/decidim/proposals/admin/participatory_texts/index.html.erb +8 -5
  21. data/app/views/decidim/proposals/proposals/show.html.erb +9 -0
  22. data/config/locales/ar-SA.yml +667 -0
  23. data/config/locales/ca.yml +28 -21
  24. data/config/locales/cs-CZ.yml +775 -0
  25. data/config/locales/de.yml +7 -0
  26. data/config/locales/en.yml +7 -0
  27. data/config/locales/es-MX.yml +751 -0
  28. data/config/locales/es-PY.yml +7 -0
  29. data/config/locales/es.yml +21 -14
  30. data/config/locales/eu.yml +10 -3
  31. data/config/locales/fi-pl.yml +8 -1
  32. data/config/locales/fi.yml +11 -4
  33. data/config/locales/fr.yml +7 -0
  34. data/config/locales/gl.yml +7 -0
  35. data/config/locales/hu.yml +21 -14
  36. data/config/locales/id-ID.yml +7 -0
  37. data/config/locales/it.yml +8 -1
  38. data/config/locales/nl.yml +10 -3
  39. data/config/locales/pl.yml +8 -1
  40. data/config/locales/pt-BR.yml +7 -0
  41. data/config/locales/pt.yml +7 -0
  42. data/config/locales/ru.yml +6 -0
  43. data/config/locales/sv.yml +7 -0
  44. data/config/locales/tr-TR.yml +8 -0
  45. data/config/locales/uk.yml +6 -0
  46. data/db/migrate/20190215113158_use_md5_indexes.rb +17 -0
  47. data/lib/decidim/content_parsers/proposal_parser.rb +2 -2
  48. data/lib/decidim/proposals/admin_engine.rb +4 -2
  49. data/lib/decidim/proposals/markdown_to_proposals.rb +49 -4
  50. data/lib/decidim/proposals/proposal_serializer.rb +3 -2
  51. data/lib/decidim/proposals/version.rb +1 -1
  52. metadata +26 -20
@@ -12,7 +12,6 @@ module Decidim
12
12
  translatable_attribute :description, String
13
13
  attribute :document
14
14
 
15
- validates :document, presence: true
16
15
  validates :title, translatable_presence: true
17
16
 
18
17
  def default_locale
@@ -20,7 +19,7 @@ module Decidim
20
19
  end
21
20
 
22
21
  def document_text
23
- document&.read
22
+ @document_text ||= document&.read
24
23
  end
25
24
 
26
25
  def document_type
@@ -21,7 +21,7 @@ module Decidim
21
21
  attribute :meeting_id, Integer
22
22
  attribute :suggested_hashtags, Array[String]
23
23
 
24
- validates :title, :body, presence: true, etiquette: true
24
+ validates :title, :body, presence: true
25
25
  validates :title, length: { maximum: 150 }
26
26
  validates :address, geocoding: true, if: -> { current_component.settings.geocoding_enabled? }
27
27
  validates :category, presence: true, if: ->(form) { form.category_id.present? }
@@ -91,10 +91,6 @@ module Decidim
91
91
  ).count
92
92
  end
93
93
 
94
- def current_user_proposals
95
- Proposal.where(component: current_component, author: current_user)
96
- end
97
-
98
94
  def follow_button_for(model, large = nil)
99
95
  render partial: "decidim/shared/follow_button.html", locals: { followable: model, large: large }
100
96
  end
@@ -39,10 +39,8 @@ module Decidim
39
39
  allow! if permission_action.subject == :proposals && permission_action.action == :split
40
40
 
41
41
  if permission_action.subject == :participatory_texts && participatory_texts_are_enabled?
42
- # Every user allowed by the space can import participatory texts to proposals
43
- allow! if permission_action.action == :import
44
- # Every user allowed by the space can publish participatory texts to proposals
45
- allow! if permission_action.action == :publish
42
+ # Every user allowed by the space can manage (import, update and publish) participatory texts to proposals
43
+ allow! if permission_action.action == :manage
46
44
  end
47
45
 
48
46
  permission_action
@@ -7,7 +7,7 @@
7
7
  <% if proposal.article? %>
8
8
  <div class="grid-x">
9
9
  <div class="cell">
10
- <%= form.text_area :body, optional: true %>
10
+ <%= form.text_area :body, optional: false, rows: 5 %>
11
11
  </div>
12
12
  </div>
13
13
  <% end %>
@@ -1 +1,2 @@
1
+ <%= link_to t(".discard_all"), discard_participatory_texts_path, method: "POST", id: "discard-all", class: "button tiny button--title alert", data: { confirm: t(".are_you_sure") } %>
1
2
  <%= link_to t(".import_doc"), new_import_participatory_texts_path, id: "import-doc", class: "button tiny button--title" %>
@@ -1,4 +1,4 @@
1
- <%= decidim_form_for(@preview_form, url: publish_participatory_texts_path, class: "form grid-container") do |form| %>
1
+ <%= decidim_form_for(@preview_form, url: participatory_texts_path, class: "form grid-container") do |form| %>
2
2
  <div class="card">
3
3
  <div class="card-divider">
4
4
  <h2 class="card-title">
@@ -15,7 +15,7 @@
15
15
  data-allow-all-closed="true">
16
16
  <%= form.fields_for(:proposals) do |prop_form| %>
17
17
  <% proposal= @drafts[prop_form.index] %>
18
- <li class="accordion-item" data-accordion-item>
18
+ <li class="accordion-item <%= proposal.article? ? "is-active" : nil %>" data-accordion-item>
19
19
  <a href="#" class="accordion-title flex--sbc"><%= preview_participatory_text_section_title(proposal) %><span class="mr-m"><%= icon "menu", class: "icon--small" %></span></a>
20
20
  <div class="accordion-content" data-tab-content>
21
21
  <%= render "article-preview", { form: prop_form, proposal: proposal } %>
@@ -26,9 +26,12 @@
26
26
  <% end -%>
27
27
  </div>
28
28
  </div>
29
- <div class="grid-x align-center mt-sm">
30
- <%= form.submit t(".publish_document") %>
31
- </div>
29
+ <% if @drafts.any? %>
30
+ <div class="button--double form-general-submit">
31
+ <%= form.submit t(".save_draft"), name: :save_draft, class: "button" %>
32
+ <%= form.submit t(".publish_document"), class: "button success" %>
33
+ </div>
34
+ <% end %>
32
35
  <% end -%>
33
36
  <script>
34
37
  $(window).on("load", function() {
@@ -4,6 +4,15 @@
4
4
  url: proposal_url(@proposal.id)
5
5
  }) %>
6
6
 
7
+ <%
8
+ edit_link(
9
+ resource_locator(@proposal).edit,
10
+ :edit,
11
+ :proposal,
12
+ proposal: @proposal
13
+ )
14
+ %>
15
+
7
16
  <%= render partial: "voting_rules" %>
8
17
  <% if component_settings.participatory_texts_enabled? %>
9
18
  <div class="row column">
@@ -0,0 +1,667 @@
1
+ ar:
2
+ activemodel:
3
+ attributes:
4
+ collaborative_draft:
5
+ body: الجسم
6
+ category_id: الفئة
7
+ decidim_scope_id: نطاق
8
+ has_address: لديه عنوان
9
+ state: حالة
10
+ title: عنوان
11
+ user_group_id: إنشاء مسودة تعاونية كـ
12
+ proposal:
13
+ answer: إجابة
14
+ answered_at: أجاب في
15
+ automatic_hashtags: علامات التصنيف المضافة تلقائيًا
16
+ body: الجسم
17
+ category_id: الفئة
18
+ has_address: لديه عنوان
19
+ scope_id: نطاق
20
+ state: حالة
21
+ suggested_hashtags: الهاشتاج المقترحة
22
+ title: عنوان
23
+ user_group_id: إنشاء اقتراح باسم
24
+ proposal_answer:
25
+ answer: إجابة
26
+ proposals_copy:
27
+ copy_proposals: أدرك أن هذا سيؤدي إلى استيراد جميع المقترحات من المكون المحدد إلى المكون الحالي وأنه لا يمكن عكس هذا الإجراء.
28
+ origin_component_id: مكون لنسخ المقترحات من
29
+ errors:
30
+ models:
31
+ proposal:
32
+ attributes:
33
+ attachment:
34
+ needs_to_be_reattached: يحتاج إلى إعادة ربط
35
+ models:
36
+ decidim/proposals/accepted_proposal_event: تم قبول الاقتراح
37
+ decidim/proposals/admin/update_proposal_category_event: تم تغيير فئة الاقتراح
38
+ decidim/proposals/creation_enabled_event: تمكين إنشاء الاقتراح
39
+ decidim/proposals/endorsing_enabled_event: تمكين اقتراح الاقتراح
40
+ decidim/proposals/evaluating_proposal_event: يجري تقييم الاقتراح
41
+ decidim/proposals/proposal_endorsed_event: تمت الموافقة على الاقتراح
42
+ decidim/proposals/proposal_mentioned_event: الاقتراح المذكور
43
+ decidim/proposals/publish_proposal_event: تم نشر الاقتراح
44
+ decidim/proposals/rejected_proposal_event: تم رفض الاقتراح
45
+ decidim/proposals/voting_enabled_event: تم تمكين التصويت على الاقتراح
46
+ activerecord:
47
+ models:
48
+ decidim/proposals/collaborative_draft:
49
+ zero: المسودات التعاونية
50
+ one: مشروع تعاوني
51
+ two: المسودات التعاونية
52
+ few: المسودات التعاونية
53
+ many: المسودات التعاونية
54
+ other: المسودات التعاونية
55
+ decidim/proposals/proposal:
56
+ zero: اقتراحات
57
+ one: اقتراح
58
+ two: اقتراحات
59
+ few: اقتراحات
60
+ many: اقتراحات
61
+ other: اقتراحات
62
+ decidim/proposals/proposal_endorsement:
63
+ zero: موافقات
64
+ one: المصادقة
65
+ two: موافقات
66
+ few: موافقات
67
+ many: موافقات
68
+ other: موافقات
69
+ decidim/proposals/proposal_note:
70
+ zero: ملاحظات
71
+ one: ملحوظة
72
+ two: ملاحظات
73
+ few: ملاحظات
74
+ many: ملاحظات
75
+ other: ملاحظات
76
+ decidim:
77
+ components:
78
+ proposals:
79
+ actions:
80
+ create: خلق
81
+ endorse: تأييد
82
+ vote: تصويت
83
+ withdraw: سحب
84
+ name: اقتراحات
85
+ settings:
86
+ global:
87
+ amendments_enabled: تم تمكين التعديلات
88
+ announcement: إعلان
89
+ attachments_allowed: السماح للمرفقات
90
+ can_accumulate_supports_beyond_threshold: يمكن أن تتراكم الدعم وراء العتبة
91
+ collaborative_drafts_enabled: تم تمكين المسودات التعاونية
92
+ comments_enabled: تم تمكين التعليقات
93
+ geocoding_enabled: تم تمكين الترميز الجغرافي
94
+ new_proposal_help_text: نص مساعدة اقتراح جديد
95
+ official_proposals_enabled: تم تمكين المقترحات الرسمية
96
+ participatory_texts_enabled: تم تمكين النصوص التشاركية
97
+ proposal_answering_enabled: تم تمكين الرد على الاقتراح
98
+ proposal_edit_before_minutes: يمكن تحرير المقترحات من قبل المؤلفين قبل مرور عدة دقائق
99
+ proposal_length: الحد الأقصى لطول الاقتراح المقترح
100
+ proposal_wizard_step_1_help_text: اقتراح الاقتراح "إنشاء" نص مساعدة الخطوة
101
+ proposal_wizard_step_2_help_text: اقتراح الاقتراح "قارن" نص خطوة المساعدة
102
+ proposal_wizard_step_3_help_text: نص اقتراح "إكمال" تعليمات نص المعالج
103
+ proposal_wizard_step_4_help_text: اقتراح الاقتراح "نشر" نص تعليمات الخطوة
104
+ resources_permissions_enabled: يمكن تعيين أذونات الإجراءات لكل اقتراح
105
+ threshold_per_proposal: عتبة لكل اقتراح
106
+ step:
107
+ announcement: إعلان
108
+ automatic_hashtags: علامات التصنيف المضافة إلى جميع المقترحات
109
+ comments_blocked: تم حظر التعليقات
110
+ creation_enabled: تمكين إنشاء الاقتراح
111
+ endorsements_blocked: المصادقة المحظورة
112
+ endorsements_enabled: تم التصديق
113
+ proposal_answering_enabled: تم تمكين الرد على الاقتراح
114
+ events:
115
+ proposals:
116
+ collaborative_draft_access_accepted:
117
+ email_intro: 'تم قبول %{requester_name} للوصول كمساهم في المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a>.'
118
+ email_outro: لقد تلقيت هذا الإشعار لأنك متعاون مع <a href="%{resource_path}">%{resource_title}</a>.
119
+ email_subject: "تم قبول %{requester_name} للوصول كمساهم في %{resource_title}."
120
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> كان <strong>مقبولة للوصول كمساهم</strong> من <a href="%{resource_path}">%{resource_title}</a> مشروع تعاوني.
121
+ collaborative_draft_access_rejected:
122
+ email_intro: 'تم رفض %{requester_name} للوصول كمساهم في المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a>.'
123
+ email_outro: لقد تلقيت هذا الإشعار لأنك متعاون مع <a href="%{resource_path}">%{resource_title}</a>.
124
+ email_subject: "تم رفض %{requester_name} للوصول كمساهم في المسودة التعاونية %{resource_title}."
125
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> تم رفض الوصول إلى <strong>كمساهم</strong> في المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a>.
126
+ collaborative_draft_access_requested:
127
+ email_intro: '%{requester_name} طلب الوصول كمساهم. يمكنك <strong>قبول أو رفض طلب</strong> من <a href="%{resource_path}">%{resource_title}</a> مشروع الصفحة التعاونية.'
128
+ email_outro: لقد تلقيت هذا الإشعار لأنك متعاون مع <a href="%{resource_path}">%{resource_title}</a>.
129
+ email_subject: "%{requester_name} طلب الوصول للمساهمة في %{resource_title}."
130
+ notification_title: <a href="%{requester_path}">%{requester_name} %{requester_nickname}</a> طلب الوصول للمساهمة في المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a> . يرجى <strong>قبول أو رفض الطلب</strong>.
131
+ collaborative_draft_access_requester_accepted:
132
+ email_intro: لقد تم قبولك للدخول كمساهم في المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a>.
133
+ email_outro: لقد تلقيت هذا الإشعار لأنك طلبت أن تصبح متعاونًا مع <a href="%{resource_path}">%{resource_title}</a>.
134
+ email_subject: تم قبولك كمساهم بـ %{resource_title}.
135
+ notification_title: لقد تم قبول <strong>للدخول كمساهم</strong> في المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a>.
136
+ collaborative_draft_access_requester_rejected:
137
+ email_intro: لقد تم رفض وصولك كمساهم في المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a>.
138
+ email_outro: لقد تلقيت هذا الإشعار لأنك طلبت أن تصبح متعاونًا مع <a href="%{resource_path}">%{resource_title}</a>.
139
+ email_subject: لقد تم رفضك كمساهم بـ %{resource_title}.
140
+ notification_title: لقد تم رفض دخولك <strong>كمساهم</strong> في المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a>.
141
+ collaborative_draft_withdrawn:
142
+ email_intro: <a href="%{author_path}">%{author_name} %{author_nickname}</a> سحبت المسودة التعاونية <a href="%{resource_path}">%{resource_title}</a>.
143
+ email_outro: لقد تلقيت هذا الإشعار لأنك متعاون مع <a href="%{resource_path}">%{resource_title}</a>.
144
+ email_subject: "%{author_name} %{author_nickname} سحب المشروع %{resource_title} التعاوني."
145
+ notification_title: <a href="%{author_path}">%{author_name} %{author_nickname}</a> <strong>سحبت</strong> مشروع <a href="%{resource_path}">%{resource_title}</a> التعاوني.
146
+ creation_enabled:
147
+ email_intro: 'يمكنك الآن إنشاء مقترحات جديدة في %{participatory_space_title}! ابدأ المشاركة في هذه الصفحة:'
148
+ email_outro: لقد تلقيت هذا الإشعار لأنك تتابع %{participatory_space_title}. يمكنك إيقاف تلقي الإخطارات باتباع الرابط السابق.
149
+ email_subject: مقترحات متاحة الآن في %{participatory_space_title}
150
+ notification_title: يمكنك الآن طرح <a href="%{resource_path}">مقترحات جديدة</a> في <a href="%{participatory_space_url}">%{participatory_space_title}</a>
151
+ endorsing_enabled:
152
+ email_intro: 'يمكنك تأييد المقترحات في %{participatory_space_title}! ابدأ المشاركة في هذه الصفحة:'
153
+ email_outro: لقد تلقيت هذا الإشعار لأنك تتابع %{participatory_space_title}. يمكنك إيقاف تلقي الإخطارات باتباع الرابط السابق.
154
+ email_subject: بدأت اقتراحات الموافقة على %{participatory_space_title}
155
+ notification_title: يمكنك الآن بدء <a href="%{resource_path}">تأييد مقترحات</a> في <a href="%{participatory_space_url}">%{participatory_space_title}</a>
156
+ proposal_accepted:
157
+ affected_user:
158
+ email_intro: 'تم قبول اقتراحك "%{resource_title}". يمكنك قراءة الإجابة في هذه الصفحة:'
159
+ email_outro: لقد تلقيت هذا الإشعار لأنك مؤلف "%{resource_title}".
160
+ email_subject: تم قبول الاقتراح الخاص بك
161
+ notification_title: تم قبول اقتراحك <a href="%{resource_path}">%{resource_title}</a>.
162
+ proposal_endorsed:
163
+ email_intro: '%{endorser_name} %{endorser_nickname}، الذي تتابعه ، وافق للتو على الاقتراح "%{resource_title}" ونعتقد أنه قد يكون مثيرا للاهتمام بالنسبة لك. التحقق من ذلك والمساهمة:'
164
+ email_outro: لقد تلقيت هذا الإشعار لأنك تتابع %{endorser_nickname}. يمكنك إيقاف تلقي الإخطارات باتباع الرابط السابق.
165
+ email_subject: "%{endorser_nickname} قد صادق على اقتراح جديد"
166
+ notification_title: تمت الموافقة على اقتراح <a href="%{resource_path}">%{resource_title}</a> من قبل <a href="%{endorser_path}">%{endorser_name} %{endorser_nickname}</a>.
167
+ proposal_evaluating:
168
+ affected_user:
169
+ email_intro: 'يتم حاليًا تقييم الاقتراح الخاص بك "%{resource_title}". يمكنك التحقق من وجود إجابة في هذه الصفحة:'
170
+ email_outro: لقد تلقيت هذا الإشعار لأنك مؤلف "%{resource_title}".
171
+ email_subject: يتم تقييم الاقتراح الخاص بك
172
+ notification_title: يتم تقييم الاقتراح الخاص بك <a href="%{resource_path}">%{resource_title}</a>.
173
+ proposal_mentioned:
174
+ email_intro: لقد تم ذكر اقتراحك "%{mentioned_proposal_title}" <a href="%{resource_path}">في هذه المساحة</a> في التعليقات.
175
+ email_outro: لقد تلقيت هذا الإشعار لأنك مؤلف "%{resource_title}".
176
+ email_subject: تم ذكر اقتراحك "%{mentioned_proposal_title}"
177
+ notification_title: لقد تم ذكر اقتراحك "%{mentioned_proposal_title}" <a href="%{resource_path}">في هذه المساحة</a> في التعليقات.
178
+ proposal_published:
179
+ email_intro: '%{author_name} %{author_nickname}، الذي تتابعه ، بنشر اقتراح جديد يسمى "%{resource_title}". التحقق من ذلك والمساهمة:'
180
+ email_outro: لقد تلقيت هذا الإشعار لأنك تتابع %{author_nickname}. يمكنك إيقاف تلقي الإخطارات باتباع الرابط السابق.
181
+ email_subject: اقتراح جديد "%{resource_title}" من %{author_nickname}
182
+ notification_title: تم نشر مقترح <a href="%{resource_path}">%{resource_title}</a> بواسطة <a href="%{author_path}">%{author_name} %{author_nickname}</a>.
183
+ proposal_published_for_space:
184
+ email_intro: تمت إضافة الاقتراح "%{resource_title}" إلى "%{participatory_space_title}" الذي تتابعه.
185
+ email_subject: تمت إضافة اقتراح جديد "%{resource_title}" إلى %{participatory_space_title}
186
+ notification_title: تمت إضافة الاقتراح <a href="%{resource_path}">%{resource_title}</a> إلى %{participatory_space_title}
187
+ proposal_rejected:
188
+ affected_user:
189
+ email_intro: 'تم رفض اقتراحك "%{resource_title}". يمكنك قراءة الإجابة في هذه الصفحة:'
190
+ email_outro: لقد تلقيت هذا الإشعار لأنك مؤلف "%{resource_title}".
191
+ email_subject: تم رفض اقتراحك
192
+ notification_title: تم رفض اقتراحك <a href="%{resource_path}">%{resource_title}</a>.
193
+ proposal_update_category:
194
+ email_outro: لقد تلقيت هذا الإشعار لأنك مؤلف الاقتراح.
195
+ email_subject: تم تحديث فئة %{resource_title} اقتراح
196
+ notification_title: تم تحديث فئة اقتراح <a href="%{resource_path}">%{resource_title}</a> بواسطة مسؤول.
197
+ voting_enabled:
198
+ email_outro: لقد تلقيت هذا الإشعار لأنك تتابع %{participatory_space_title}. يمكنك إيقاف تلقي الإخطارات باتباع الرابط السابق.
199
+ gamification:
200
+ badges:
201
+ accepted_proposals:
202
+ conditions:
203
+ - اختر مساحة المشاركة التي تهمك مع تمكين تقديم المقترحات
204
+ - حاول تقديم مقترحات يمكن تنفيذها. بهذه الطريقة هم أكثر عرضة للقبول.
205
+ description: تُمنح هذه الشارة عندما تشارك بفعالية في المقترحات الجديدة ويتم قبولها.
206
+ description_own: حصلت على %{score} مقترحات مقبولة.
207
+ name: مقترحات مقبولة
208
+ next_level_in: احصل على %{score} مقترحات أخرى مقبولة للوصول إلى المستوى التالي!
209
+ unearned_own: لم تحصل على اقتراحات مقبولة حتى الآن.
210
+ proposal_votes:
211
+ conditions:
212
+ - تصفح وقضاء بعض الوقت في قراءة اقتراحات الآخرين
213
+ - قدم الدعم للمقترحات التي تحبها أو تجدها مثيرة للاهتمام
214
+ description: تُمنح هذه الشارة عند دعم اقتراحات الآخرين.
215
+ description_own: لقد قدمت الدعم إلى %{score} مقترحات.
216
+ name: يدعم الاقتراح
217
+ next_level_in: تقديم الدعم ل %{score} مقترحات أخرى للوصول إلى المستوى التالي!
218
+ unearned_own: لقد قدمت الدعم لأية مقترحات حتى الآن.
219
+ proposals:
220
+ conditions:
221
+ - اختر مساحة المشاركة التي تهمك مع تمكين تقديم المقترحات
222
+ - إنشاء اقتراح جديد
223
+ description: تُمنح هذه الشارة عندما تشارك بنشاط في مقترحات جديدة.
224
+ description_own: لقد قمت بإنشاء %{score} مقترحات.
225
+ name: اقتراحات
226
+ next_level_in: إنشاء %{score} المزيد من المقترحات للوصول إلى المستوى التالي!
227
+ unearned_own: لم تنشئ اقتراحات بعد.
228
+ metrics:
229
+ accepted_proposals:
230
+ object: اقتراحات
231
+ endorsements:
232
+ object: موافقات
233
+ title: موافقات
234
+ proposals:
235
+ object: اقتراحات
236
+ title: اقتراحات
237
+ votes:
238
+ title: الأصوات
239
+ participatory_processes:
240
+ participatory_process_groups:
241
+ highlighted_proposals:
242
+ proposals: اقتراحات
243
+ participatory_spaces:
244
+ highlighted_proposals:
245
+ see_all: شاهد الكل (%{count})
246
+ proposals:
247
+ actions:
248
+ answer: إجابة
249
+ edit_proposal: تعديل الاقتراح
250
+ import: استيراد من مكون آخر
251
+ new: عرض جديد
252
+ participatory_texts: النصوص التشاركية
253
+ private_notes: ملاحظات خاصة
254
+ title: أفعال
255
+ admin:
256
+ actions:
257
+ preview: معاينة
258
+ exports:
259
+ comments: تعليقات
260
+ proposals: اقتراحات
261
+ models:
262
+ proposal:
263
+ name: اقتراح
264
+ participatory_texts:
265
+ bulk-actions:
266
+ are_you_sure: هل أنت متأكد من تجاهل مشروع النص التشاركي بأكمله؟
267
+ import_doc: استيراد المستند
268
+ discard_all: تجاهل كل
269
+ import:
270
+ invalid: النموذج غير صالح!
271
+ index:
272
+ publish_document: نشر المستند
273
+ save_draft: حفظ المسودة
274
+ title: عرض نص المشاركة
275
+ new_import:
276
+ bottom_hint: "(سوف تكون قادرًا على معاينة وفرز أقسام المستندات)"
277
+ title: إضافة وثيقة
278
+ upload_document: تحميل المستند
279
+ publish:
280
+ invalid: لا يمكن نشر المقترحات
281
+ success: تم نشر جميع المقترحات
282
+ sections:
283
+ article: "<em>المادة</em>"
284
+ section: "<em>القسم:</em> <strong>%{title}</strong>"
285
+ sub-section: "<em>القسم الفرعي:</em> %{title}"
286
+ proposal_answers:
287
+ edit:
288
+ accepted: وافقت
289
+ answer_proposal: إجابة
290
+ evaluating: تقييم
291
+ rejected: مرفوض
292
+ title: الإجابة على الاقتراح %{title}
293
+ proposal_notes:
294
+ create:
295
+ success: تم إنشاء ملاحظة الاقتراح بنجاح
296
+ form:
297
+ note: ملحوظة
298
+ submit: خضع
299
+ leave_your_note: اترك ملاحظتك
300
+ title: ملاحظات خاصة
301
+ proposals:
302
+ answer:
303
+ invalid: كانت هناك مشكلة في الإجابة على هذا الاقتراح
304
+ success: تم الرد على الاقتراح بنجاح
305
+ create:
306
+ invalid: كانت هناك مشكلة في إنشاء هذا الاقتراح
307
+ success: تم إنشاء الاقتراح بنجاح
308
+ edit:
309
+ title: تحديث الاقتراح
310
+ update: تحديث
311
+ form:
312
+ attachment_legend: "(اختياري) إضافة مرفق"
313
+ created_in_meeting: هذا الاقتراح يأتي من اجتماع
314
+ select_a_category: اختر تصنيف
315
+ select_a_meeting: اختيار اجتماع
316
+ index:
317
+ actions: أفعال
318
+ cancel: إلغاء
319
+ change_category: تغيير الفئة
320
+ merge: دمج في واحدة جديدة
321
+ merge_button: دمج
322
+ select_component: حدد المكون
323
+ selected: المحدد
324
+ split: تقسيم المقترحات
325
+ split_button: انشق، مزق
326
+ title: اقتراحات
327
+ update: تحديث
328
+ new:
329
+ create: خلق
330
+ title: إنشاء اقتراح
331
+ update_category:
332
+ invalid: 'هذه المقترحات لديها بالفعل فئة %{category} : %{proposals}.'
333
+ select_a_category: الرجاء تحديد الفئة
334
+ select_a_proposal: يرجى اختيار الاقتراح
335
+ success: 'تم تحديث الاقتراحات بنجاح إلى فئة %{category} : %{proposals}.'
336
+ proposals_imports:
337
+ create:
338
+ success: "%{number} مقترحات تم استيرادها بنجاح"
339
+ new:
340
+ create: مقترحات الاستيراد
341
+ no_components: لا توجد مكونات اقتراح أخرى في هذه المساحة التشاركية لاستيراد المقترحات منها.
342
+ select_component: يرجى اختيار عنصر
343
+ proposals_merges:
344
+ create:
345
+ success: دمج المقترحات بنجاح في واحدة جديدة.
346
+ proposals_splits:
347
+ create:
348
+ success: تم تقسيم المقترحات بنجاح إلى مقترحات جديدة.
349
+ shared:
350
+ info_proposal:
351
+ body: الجسم
352
+ created_at: تاريخ الإنشاء
353
+ proposals: اقتراحات
354
+ admin_log:
355
+ proposal:
356
+ answer: "%{user_name} أجاب على الاقتراح %{resource_name} على %{space_name} الفضاء"
357
+ create: "%{user_name} بإنشاء الاقتراح %{resource_name} على الحيز %{space_name} كمقترح رسمي"
358
+ update: "%{user_name} تحديث الاقتراح الرسمي %{resource_name} على %{space_name} الفضاء"
359
+ proposal_note:
360
+ create: "غادر %{user_name} ملاحظة خاصة على الاقتراح %{resource_name} على %{space_name} الفضاء"
361
+ answers:
362
+ accepted: وافقت
363
+ evaluating: تقييم
364
+ not_answered: بلا جواب
365
+ rejected: مرفوض
366
+ withdrawn: سحب
367
+ application_helper:
368
+ filter_origin_values:
369
+ all: الكل
370
+ meetings: اجتماعات
371
+ filter_state_values:
372
+ accepted: وافقت
373
+ all: الكل
374
+ evaluating: تقييم
375
+ rejected: مرفوض
376
+ filter_type_values:
377
+ all: الكل
378
+ amendments: تعديلات
379
+ proposals: اقتراحات
380
+ collaborative_drafts:
381
+ collaborative_draft:
382
+ publish:
383
+ irreversible_action_modal:
384
+ body: بعد نشر المسودة كاقتراح ، لن تكون المسودة قابلة للتحرير بعد الآن. لن يقبل الاقتراح مؤلفين أو مساهمات جديدة.
385
+ cancel: إلغاء
386
+ ok: نشر كاقتراح
387
+ title: الإجراء التالي لا رجعة فيه
388
+ success: مسودة تعاونية تم نشرها بنجاح كمقترح
389
+ view_collaborative_draft: عرض المسودة التعاونية
390
+ withdraw:
391
+ irreversible_action_modal:
392
+ body: بعد إغلاق المسودة ، لن تكون المسودة قابلة للتحرير بعد الآن. لن يقبل المسودة مؤلفين أو مساهمات جديدة.
393
+ cancel: إلغاء
394
+ ok: سحب المسودة التعاونية
395
+ title: الإجراء التالي لا رجعة فيه
396
+ success: تم سحب مشروع تعاوني بنجاح.
397
+ compare:
398
+ mine_is_different: مسودتي التعاونية مختلفة
399
+ no_similars_found: أحسنت! لم يتم العثور على مسودات تعاونية مماثلة
400
+ title: مسودات تعاونية مماثلة
401
+ complete:
402
+ send: إرسال
403
+ title: أكمل مسودتك التعاونية
404
+ create:
405
+ success: تم إنشاء مشروع تعاوني بنجاح.
406
+ edit:
407
+ attachment_legend: "(اختياري) إضافة مرفق"
408
+ back: الى الخلف
409
+ select_a_category: الرجاء تحديد الفئة
410
+ send: إرسال
411
+ title: تحرير المسودة التعاونية
412
+ filters:
413
+ all: الكل
414
+ amendment: تعديلات
415
+ category: الفئة
416
+ category_prompt: الفئة موجه
417
+ open: افتح
418
+ published: نشرت
419
+ related_to: متعلق ب
420
+ search: بحث
421
+ state: حالة
422
+ withdrawn: سحب
423
+ filters_small_view:
424
+ close_modal: إغلاق مشروط
425
+ filter: منقي
426
+ filter_by: مصنف بواسطة
427
+ unfold: كشف
428
+ new:
429
+ send: استمر
430
+ title: إنشاء مسودتك التعاونية
431
+ new_collaborative_draft_button:
432
+ new_collaborative_draft: مشروع تعاوني جديد
433
+ orders:
434
+ label: 'ترتيب المسودات حسب:'
435
+ most_contributed: ساهم معظم
436
+ random: عشوائية
437
+ recent: الأخيرة
438
+ requests:
439
+ accepted_request:
440
+ success: "تم قبول @%{user} كمتعاون بنجاح"
441
+ collaboration_requests:
442
+ accept_request: قبول
443
+ reject_request: رفض
444
+ title: طلبات التعاون
445
+ show:
446
+ back: الى الخلف
447
+ edit: تحرير المسودة التعاونية
448
+ final_proposal: الاقتراح النهائي
449
+ hidden_authors_count:
450
+ zero: و %{count} المزيد من الناس
451
+ one: و %{count} شخص آخر
452
+ two: و %{count} المزيد من الناس
453
+ few: و %{count} المزيد من الناس
454
+ many: و %{count} المزيد من الناس
455
+ other: و %{count} المزيد من الناس
456
+ info-message: هذا هو <strong>مشروع تعاوني</strong> لاقتراح. هذا يعني أنه يمكنك مساعدة مؤلفيها في صياغة الاقتراح باستخدام قسم التعليقات أدناه أو تحسينه مباشرةً من خلال طلب الوصول لتحريره. بمجرد أن يمنحك المؤلفون حق الوصول ، ستتمكن من إجراء تغييرات على هذه المسودة.
457
+ of_versions: "(من %{number})"
458
+ publish: نشر
459
+ publish_info: نشر هذا الإصدار من المسودة أو
460
+ published_proposal: الاقتراح المنشور
461
+ request_access: طلب الدخول
462
+ requested_access: طلب الوصول
463
+ see_other_versions: رؤية الإصدارات الأخرى
464
+ version: الإصدار %{number}
465
+ version_history: انظر تاريخ الإصدار لهذا الاقتراح
466
+ withdraw: سحب المشروع
467
+ states:
468
+ open: افتح
469
+ published: نشرت
470
+ withdrawn: سحب
471
+ wizard_aside:
472
+ back: الى الخلف
473
+ info: إنك لعلى خلق <strong>مشروع تعاوني</strong>.
474
+ wizard_steps:
475
+ see_steps: انظر الخطوات
476
+ step_1: إنشاء مسودتك التعاونية
477
+ step_2: قارن مع المسودات التعاونية
478
+ step_3: أكمل مسودتك التعاونية
479
+ step_of: الخطوة %{current_step_num} من %{total_steps}
480
+ destroy_draft:
481
+ success: تم حذف مسودة الاقتراح بنجاح.
482
+ last_activity:
483
+ new_proposal_at_html: "<span>اقتراح جديد في %{link}</span>"
484
+ models:
485
+ collaborative_draft:
486
+ fields:
487
+ authors: المؤلفون
488
+ comments: تعليقات
489
+ contributions: مساهمات
490
+ proposal:
491
+ fields:
492
+ category: الفئة
493
+ comments: تعليقات
494
+ endorsements: موافقات
495
+ id: هوية شخصية
496
+ notes: ملاحظات
497
+ official_proposal: الاقتراح الرسمي
498
+ published_at: نشرت في
499
+ scope: نطاق
500
+ state: حالة
501
+ title: عنوان
502
+ votes: الأصوات
503
+ new:
504
+ limit_reached: لا يمكنك إنشاء مقترحات جديدة لأنك تجاوزت الحد.
505
+ participatory_text_proposal:
506
+ alternative_title: لا توجد نصوص تشاركية في الوقت الحالي
507
+ buttons:
508
+ amend: تعديل
509
+ comment: تعليق
510
+ comments: تعليقات
511
+ endorse: تأييد
512
+ proposal_endorsements:
513
+ identities:
514
+ done: فعله
515
+ select_identity: حدد الهوية
516
+ proposal_endorsements_helper:
517
+ endorsement_button:
518
+ already_endorsed: أيد
519
+ endorse: تأييد
520
+ render_endorsements_button_card_part:
521
+ endorse: تأييد
522
+ proposals:
523
+ compare:
524
+ mine_is_different: اقتراحي مختلف
525
+ no_similars_found: أحسنت! لم يتم العثور على مقترحات مماثلة
526
+ title: مقترحات مماثلة
527
+ complete:
528
+ send: إرسال
529
+ title: أكمل اقتراحك
530
+ count:
531
+ proposals_count:
532
+ zero: "%{count} مقترحات"
533
+ one: "%{count} اقتراح"
534
+ two: "%{count} مقترحات"
535
+ few: "%{count} مقترحات"
536
+ many: "%{count} مقترحات"
537
+ other: "%{count} مقترحات"
538
+ edit:
539
+ attachment_legend: "(اختياري) إضافة مرفق"
540
+ back: الى الخلف
541
+ select_a_category: الرجاء تحديد الفئة
542
+ send: إرسال
543
+ title: تعديل الاقتراح
544
+ edit_draft:
545
+ discard: تجاهل هذه المسودة
546
+ discard_confirmation: هل أنت متأكد من أنك تريد التخلص من مسودة الاقتراح؟
547
+ send: معاينة
548
+ title: تحرير مسودة الاقتراح
549
+ endorsement_identities_cabin:
550
+ endorse: تأييد
551
+ endorsements_card_row:
552
+ comments: تعليقات
553
+ filters:
554
+ activity: نشاط
555
+ category: الفئة
556
+ category_prompt: اختر تصنيف
557
+ origin: الأصل
558
+ related_to: متعلق ب
559
+ search: بحث
560
+ state: حالة
561
+ amendment_type: نوع
562
+ filters_small_view:
563
+ close_modal: إغلاق مشروط
564
+ filter: منقي
565
+ filter_by: مصنف بواسطة
566
+ unfold: كشف
567
+ index:
568
+ collaborative_drafts_list: الوصول إلى المسودات التعاونية
569
+ new_proposal: عرض جديد
570
+ see_all_withdrawn: الاطلاع على جميع المقترحات المسحوبة
571
+ view_proposal: عرض الاقتراح
572
+ new:
573
+ send: استمر
574
+ title: إنشاء اقتراحك
575
+ orders:
576
+ label: 'ترتيب المقترحات حسب:'
577
+ random: عشوائية
578
+ recent: الأخيرة
579
+ participatory_texts:
580
+ index:
581
+ document_index: فهرس الوثيقة
582
+ view_index:
583
+ see_index: انظر الفهرس
584
+ preview:
585
+ modify: تعديل الاقتراح
586
+ proposal_edit_before_minutes:
587
+ zero: ستتمكن من تعديل هذا الاقتراح خلال الدقائق %{count} الأولى بعد نشر الاقتراح. بمجرد مرور هذه النافذة الزمنية ، لن تتمكن من تعديل الاقتراح.
588
+ one: ستتمكن من تعديل هذا الاقتراح خلال الدقيقة الأولى بعد نشر الاقتراح. بمجرد مرور هذه النافذة الزمنية ، لن تتمكن من تعديل الاقتراح.
589
+ two: ستتمكن من تعديل هذا الاقتراح خلال الدقائق %{count} الأولى بعد نشر الاقتراح. بمجرد مرور هذه النافذة الزمنية ، لن تتمكن من تعديل الاقتراح.
590
+ few: ستتمكن من تعديل هذا الاقتراح خلال الدقائق %{count} الأولى بعد نشر الاقتراح. بمجرد مرور هذه النافذة الزمنية ، لن تتمكن من تعديل الاقتراح.
591
+ many: ستتمكن من تعديل هذا الاقتراح خلال الدقائق %{count} الأولى بعد نشر الاقتراح. بمجرد مرور هذه النافذة الزمنية ، لن تتمكن من تعديل الاقتراح.
592
+ other: ستتمكن من تعديل هذا الاقتراح خلال الدقائق %{count} الأولى بعد نشر الاقتراح. بمجرد مرور هذه النافذة الزمنية ، لن تتمكن من تعديل الاقتراح.
593
+ publish: نشر
594
+ title: نشر اقتراحك
595
+ proposal:
596
+ creation_date: 'الخلق: %{date}'
597
+ view_proposal: عرض الاقتراح
598
+ show:
599
+ back_to: ارجع الى
600
+ edit_proposal: تعديل الاقتراح
601
+ endorsements_list: قائمة المصادقة
602
+ hidden_endorsers_count:
603
+ zero: و %{count} المزيد من الناس
604
+ one: و %{count} شخص آخر
605
+ two: و %{count} المزيد من الناس
606
+ few: و %{count} المزيد من الناس
607
+ many: و %{count} المزيد من الناس
608
+ other: و %{count} المزيد من الناس
609
+ link_to_collaborative_draft_help_text: هذا الاقتراح هو نتيجة لمشروع تعاوني. مراجعة التاريخ
610
+ link_to_collaborative_draft_text: انظر المسودة التعاونية
611
+ proposal_accepted_reason: 'تم قبول هذا الاقتراح بسبب:'
612
+ proposal_in_evaluation_reason: هذا الاقتراح قيد التقييم
613
+ proposal_rejected_reason: 'تم رفض هذا الاقتراح بسبب:'
614
+ report: أبلغ عن
615
+ withdraw_btn_hint: يمكنك سحب اقتراحك إذا غيرت رأيك ، طالما أنك لم تتلق أي دعم. لم يتم حذف الاقتراح ، وسوف يظهر في قائمة المقترحات المسحوبة.
616
+ withdraw_confirmation: هل أنت متأكد من سحب هذا الاقتراح؟
617
+ withdraw_proposal: سحب الاقتراح
618
+ tags:
619
+ changed_from: "(تم التغيير من <u>%{previous_category}</u> بواسطة مسؤول)"
620
+ filed_as: قدم كما
621
+ votes_count:
622
+ most_popular_proposal: الاقتراح الأكثر شعبية
623
+ voting_rules:
624
+ can_accumulate_supports_beyond_threshold:
625
+ description: كل اقتراح يمكن أن تتراكم أكثر من %{limit} يدعم
626
+ minimum_votes_per_user:
627
+ given_enough_votes: لقد قدمت ما يكفي من الدعم.
628
+ proposal_limit:
629
+ description: يمكنك إنشاء ما يصل إلى %{limit} مقترحات.
630
+ threshold_per_proposal:
631
+ description: من أجل التحقق من صحة المقترحات تحتاج إلى الوصول إلى %{limit} الدعم
632
+ vote_limit:
633
+ left: متبق
634
+ votes: الأصوات
635
+ wizard_aside:
636
+ back: الى الخلف
637
+ info: إنك لعلى خلق <strong>اقتراح</strong>.
638
+ wizard_steps:
639
+ see_steps: انظر الخطوات
640
+ step_1: إنشاء اقتراحك
641
+ step_2: قارن
642
+ step_3: اكتمال
643
+ step_4: نشر اقتراحك
644
+ step_of: الخطوة %{current_step_num} من %{total_steps}
645
+ versions:
646
+ changes_at_title: التغييرات في "%{title}"
647
+ index:
648
+ title: إصدارات
649
+ stats:
650
+ back_to_collaborative_draft: العودة إلى المسودة التعاونية
651
+ back_to_proposal: العودة إلى الاقتراح
652
+ number_of_versions: إصدارات
653
+ show_all_versions: عرض جميع الإصدارات
654
+ version_author: مؤلف الإصدار
655
+ version_created_at: تم إنشاء الإصدار في
656
+ version_number: رقم الإصدار
657
+ version_number_out_of_total: "%{current_version} من %{total_count}"
658
+ version:
659
+ version_index: الإصدار %{index}
660
+ resource_links:
661
+ copied_from_component:
662
+ proposal_proposal: المقترحات ذات الصلة
663
+ included_projects:
664
+ project_result: 'النتائج التي تظهر في هذا المشروع:'
665
+ included_proposals:
666
+ proposal_project: 'اقتراح يظهر في هذه المشاريع:'
667
+ proposal_result: 'اقتراح يظهر في هذه النتائج:'