decidim-consultations 0.17.2 → 0.18.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 58294b85ba995ad6d59050cb53d1fad4f0515c75f8313ec0d635598cf5ca85de
4
- data.tar.gz: 7a2c51caacec4126a99007c11520bc7c15277243e8c54384cb8633094c922dd1
3
+ metadata.gz: 6f20b678e3e2104f44e087ba0e3c9690d38c98d4c6279e4f2f356cf57be3159b
4
+ data.tar.gz: 3d348f432a274816bf9cb7b3f5da267940fd5a4f3d374219f9fb5f6140bb2a17
5
5
  SHA512:
6
- metadata.gz: 7e7df9465a24c48d0ce8996148eef3a8ce186245cce7ea67559709ac294ca5a4f66fb6d9bd308a4e7d32a076bdff1bed03fd5631cea8ddc888a1487515f74367
7
- data.tar.gz: fcba91019ec4cfb37ecc07665bff4bedb42347483f4495d556f6a87fbacaf7eb58261dd59823ce274d381eac6636b156f4a4b07a579b48048a70ccbe647b7ec3
6
+ metadata.gz: 4c05aa3c7c931ef363a6a16d52f6816665b0467c8c1bdf6931e5086c9b57e251bada3a8c714e9370813175cc75a5ccc4bb5db2e139bb16ae5d8370d233a2f7fe
7
+ data.tar.gz: 5526108703fe5d0bcdd8ef6e5203cf0ae5d83a1b510f3ea89f695b21a64612380f49b18a042fc870a6629f6aeb5be963e7efcafa892590e370e059d12d59c7cf
@@ -36,6 +36,9 @@
36
36
 
37
37
  .question-vote-cabin{
38
38
  margin-bottom: 3em;
39
+ display: flex;
40
+ align-items: center;
41
+ justify-content: center;
39
42
 
40
43
  .vote-button-caption{
41
44
  font-size: 1.5em;
@@ -43,4 +46,14 @@
43
46
  font-weight: bold;
44
47
  color: white;
45
48
  }
49
+
50
+ .small-buttons div{
51
+ margin-top: 1em;
52
+ }
53
+ }
54
+
55
+ .consultations-card{
56
+ .button.expanded.button--sc.success{
57
+ color: white;
58
+ }
46
59
  }
@@ -11,6 +11,11 @@ module Decidim
11
11
  module ConsultationAdmin
12
12
  extend ActiveSupport::Concern
13
13
 
14
+ RegistersPermissions
15
+ .register_permissions(::Decidim::Consultations::Admin::ConsultationAdmin,
16
+ ::Decidim::Consultations::Permissions,
17
+ ::Decidim::Admin::Permissions)
18
+
14
19
  included do
15
20
  include NeedsConsultation
16
21
 
@@ -19,10 +24,7 @@ module Decidim
19
24
  alias_method :current_participatory_space, :current_consultation
20
25
 
21
26
  def permission_class_chain
22
- [
23
- Decidim::Consultations::Permissions,
24
- Decidim::Admin::Permissions
25
- ]
27
+ PermissionsRegistry.chain_for(ConsultationAdmin)
26
28
  end
27
29
  end
28
30
  end
@@ -11,6 +11,11 @@ module Decidim
11
11
  module QuestionAdmin
12
12
  extend ActiveSupport::Concern
13
13
 
14
+ RegistersPermissions
15
+ .register_permissions(::Decidim::Consultations::Admin::QuestionAdmin,
16
+ ::Decidim::Consultations::Permissions,
17
+ ::Decidim::Admin::Permissions)
18
+
14
19
  included do
15
20
  include NeedsQuestion
16
21
 
@@ -23,10 +28,7 @@ module Decidim
23
28
  end
24
29
 
25
30
  def permission_class_chain
26
- [
27
- Decidim::Consultations::Permissions,
28
- Decidim::Admin::Permissions
29
- ]
31
+ PermissionsRegistry.chain_for(QuestionAdmin)
30
32
  end
31
33
  end
32
34
  end
@@ -7,7 +7,7 @@ module Decidim
7
7
  module NeedsQuestion
8
8
  def self.enhance_controller(instance_or_module)
9
9
  instance_or_module.class_eval do
10
- helper_method :current_question, :current_consultation, :current_participatory_space, :stats,
10
+ helper_method :current_question, :previous_question, :next_question, :current_consultation, :current_participatory_space, :stats,
11
11
  :sorted_results
12
12
 
13
13
  helper Decidim::WidgetUrlsHelper
@@ -35,6 +35,26 @@ module Decidim
35
35
  @current_question ||= detect_question
36
36
  end
37
37
 
38
+ # Public: Finds the previous Question in the Array of questions
39
+ # associated to the current_question's consultation.
40
+ #
41
+ # Returns the previous Question in the Array or nil if out of bounds.
42
+ def previous_question
43
+ return nil if (current_question_index - 1).negative?
44
+
45
+ current_consultation_questions.at(current_question_index - 1)
46
+ end
47
+
48
+ # Public: Finds the next Question in the Array of questions
49
+ # associated to the current_question's consultation.
50
+ #
51
+ # Returns the next Question in the Array or nil if out of bounds.
52
+ def next_question
53
+ return nil if current_question_index + 1 >= current_consultation_questions.size
54
+
55
+ current_consultation_questions.at(current_question_index + 1)
56
+ end
57
+
38
58
  # Public: Finds the current Consultation given this controller's
39
59
  # context.
40
60
  #
@@ -64,6 +84,14 @@ module Decidim
64
84
  def stats
65
85
  @stats ||= QuestionStatsPresenter.new(question: current_question)
66
86
  end
87
+
88
+ def current_consultation_questions
89
+ @current_consultation_questions ||= current_question.consultation.questions.to_a
90
+ end
91
+
92
+ def current_question_index
93
+ current_consultation_questions.find_index(current_question)
94
+ end
67
95
  end
68
96
  end
69
97
  end
@@ -11,13 +11,14 @@ module Decidim
11
11
 
12
12
  include NeedsPermission
13
13
 
14
+ register_permissions(::Decidim::Consultations::Admin::ApplicationController,
15
+ Decidim::Consultations::Permissions,
16
+ Decidim::Admin::Permissions)
17
+
14
18
  private
15
19
 
16
20
  def permission_class_chain
17
- [
18
- Decidim::Consultations::Permissions,
19
- Decidim::Admin::Permissions
20
- ]
21
+ ::Decidim.permissions_registry.chain_for(::Decidim::Consultations::Admin::ApplicationController)
21
22
  end
22
23
 
23
24
  def permission_scope
@@ -7,14 +7,15 @@ module Decidim
7
7
  class ApplicationController < Decidim::ApplicationController
8
8
  include NeedsPermission
9
9
 
10
+ register_permissions(::Decidim::Consultations::ApplicationController,
11
+ Decidim::Consultations::Permissions,
12
+ Decidim::Admin::Permissions,
13
+ Decidim::Permissions)
14
+
10
15
  private
11
16
 
12
17
  def permission_class_chain
13
- [
14
- Decidim::Consultations::Permissions,
15
- Decidim::Admin::Permissions,
16
- Decidim::Permissions
17
- ]
18
+ ::Decidim.permissions_registry.chain_for(::Decidim::Consultations::ApplicationController)
18
19
  end
19
20
 
20
21
  def permission_scope
@@ -6,6 +6,8 @@ module Decidim
6
6
  include NeedsQuestion
7
7
  include Decidim::FormFactory
8
8
 
9
+ helper QuestionsHelper
10
+
9
11
  before_action :authenticate_user!
10
12
 
11
13
  def create
@@ -12,6 +12,20 @@ module Decidim
12
12
  ["finished", t("consultations.filters.finished", scope: "decidim")]
13
13
  ]
14
14
  end
15
+
16
+ # Returns a link to the given question with different text/appearence
17
+ # depending on whether the user has voted it or not.
18
+ def display_take_part_button_for(question)
19
+ if current_user && question.voted_by?(current_user)
20
+ i18n_text = t("already_voted", scope: "decidim.questions.vote_button")
21
+ css = "button expanded button--sc success"
22
+ else
23
+ i18n_text = t("take_part", scope: "decidim.consultations.question")
24
+ css = "button expanded button--sc"
25
+ end
26
+
27
+ link_to(i18n_text, decidim_consultations.question_path(question), class: css)
28
+ end
15
29
  end
16
30
  end
17
31
  end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Consultations
5
+ # Helper for questions controller
6
+ module QuestionsHelper
7
+ # Returns a link to the next/previous question if found.
8
+ # Else, returns a disabled link to the current question.
9
+ def display_next_previous_button(direction, optional_classes = "")
10
+ css = "card__button button hollow " + optional_classes
11
+
12
+ case direction
13
+ when :previous
14
+ i18n_text = t("previous_button", scope: "decidim.questions")
15
+ question = previous_question || current_question
16
+ css << " disabled" if previous_question.nil?
17
+ when :next
18
+ i18n_text = t("next_button", scope: "decidim.questions")
19
+ question = next_question || current_question
20
+ css << " disabled" if next_question.nil?
21
+ end
22
+
23
+ link_to(i18n_text, decidim_consultations.question_path(question), class: css)
24
+ end
25
+ end
26
+ end
27
+ end
@@ -79,5 +79,9 @@ module Decidim
79
79
  select('"decidim_consultations".*, RANDOM()').order(Arel.sql("RANDOM()")).load
80
80
  end
81
81
  end
82
+
83
+ def closed?
84
+ !active?
85
+ end
82
86
  end
83
87
  end
@@ -28,9 +28,7 @@
28
28
  <% end %>
29
29
  <% end %>
30
30
  <% else %>
31
- <%= link_to t("consultations.question.take_part", scope: "decidim"),
32
- decidim_consultations.question_path(question),
33
- class: "button expanded button--sc" %>
31
+ <%= display_take_part_button_for(question) %>
34
32
  <% end %>
35
33
  </div>
36
34
  </div>
@@ -1,5 +1,8 @@
1
- <div class="row question-vote-cabin">
2
- <div class="columns mediumlarge-4 mediumlarge-push-4">
1
+ <div class="row column question-vote-cabin">
2
+ <div class="columns mediumlarge-4 show-for-mediumlarge previous-question">
3
+ <%= display_next_previous_button(:previous, "float-left") %>
4
+ </div>
5
+ <div class="columns mediumlarge-4">
3
6
  <% if question.consultation.upcoming? %>
4
7
  <div class="card__button button expanded disabled">
5
8
  <div class="vote-button-caption"><%= t("questions.vote_button.vote", scope: "decidim") %></div>
@@ -50,6 +53,17 @@
50
53
  <% end %>
51
54
  <% end %>
52
55
  </div>
56
+ <div class="columns mediumlarge-4 show-for-mediumlarge next-question">
57
+ <%= display_next_previous_button(:next, "float-right") %>
58
+ </div>
59
+ <div class="small-buttons">
60
+ <div class="columns small-6 hide-for-mediumlarge previous-question">
61
+ <%= display_next_previous_button(:previous, "expanded") %>
62
+ </div>
63
+ <div class="columns small-6 hide-for-mediumlarge next-question">
64
+ <%= display_next_previous_button(:next, "expanded") %>
65
+ </div>
66
+ </div>
53
67
  </div>
54
68
 
55
69
  <%= render partial: "decidim/consultations/questions/vote_modal", locals: { question: question } %>
@@ -297,6 +297,8 @@ ar:
297
297
  statistics:
298
298
  consultations_count: المشاورات
299
299
  questions:
300
+ next_button: السؤال التالي
301
+ previous_button: السؤال السابق
300
302
  results:
301
303
  title: النتائج
302
304
  show:
@@ -0,0 +1,338 @@
1
+ ar:
2
+ activemodel:
3
+ attributes:
4
+ consultation:
5
+ banner_image: صورة بانر
6
+ decidim_highlighted_scope_id: نطاق الضوء
7
+ description: وصف
8
+ end_voting_date: ينتهي التصويت
9
+ introductory_image: صورة تمهيدية
10
+ introductory_video_url: عنوان URL للفيديو التمهيدي
11
+ questions: الأسئلة
12
+ slug: سبيكة العنوان الشبكي
13
+ start_voting_date: يبدأ التصويت
14
+ subtitle: عنوان فرعي
15
+ title: عنوان
16
+ question:
17
+ banner_image: صورة بانر
18
+ decidim_scope_id: منطقة البلدية
19
+ hashtag: رابطة هاشتاق
20
+ hero_image: الصورة الرئيسية
21
+ i_frame_url: عنوان URL لنظام التصويت الخارجي
22
+ origin_scope: نطاق
23
+ origin_title: الأصل
24
+ origin_url: العنوان الشبكي الأصلي
25
+ participatory_scope: نطاق المشاركة
26
+ promoter_group: مجموعة المروجين
27
+ question_context: سياق الكلام
28
+ reference: مرجع
29
+ scope: منطقة البلدية
30
+ slug: سبيكة العنوان الشبكي
31
+ subtitle: عنوان فرعي
32
+ title: عنوان
33
+ vote: نظام التصويت الخارجي
34
+ what_is_decided: ما الذي تقرر
35
+ errors:
36
+ vote:
37
+ decidim_consultations_response_id:
38
+ not_found: الرد غير موجود.
39
+ activerecord:
40
+ models:
41
+ decidim/consultation:
42
+ zero: المشاورات
43
+ one: تشاور
44
+ two: المشاورات
45
+ few: المشاورات
46
+ many: المشاورات
47
+ other: المشاورات
48
+ decidim/consultations/question:
49
+ zero: الأسئلة
50
+ one: سؤال
51
+ two: الأسئلة
52
+ few: الأسئلة
53
+ many: الأسئلة
54
+ other: الأسئلة
55
+ decidim/consultations/response:
56
+ zero: استجابات
57
+ one: استجابة
58
+ two: استجابات
59
+ few: استجابات
60
+ many: استجابات
61
+ other: استجابات
62
+ decidim/consultations/vote:
63
+ zero: الأصوات
64
+ one: تصويت
65
+ two: الأصوات
66
+ few: الأصوات
67
+ many: الأصوات
68
+ other: الأصوات
69
+ decidim:
70
+ admin:
71
+ actions:
72
+ new_consultation: استشارة جديدة
73
+ new_question: سؤال جديد
74
+ new_response: استجابة جديدة
75
+ publish_results: نشر النتائج
76
+ unpublish_results: نتائج غير منشورة
77
+ consultation_publications:
78
+ create:
79
+ error: كانت هناك مشكلة في نشر هذه المشاورة.
80
+ success: التشاور نشر بنجاح.
81
+ destroy:
82
+ error: كانت هناك مشكلة في إلغاء نشر هذه المشاورة.
83
+ success: التشاور غير منشورة بنجاح.
84
+ consultation_results_publications:
85
+ create:
86
+ error: كانت هناك مشكلة في نشر نتائج هذه المشاورة.
87
+ success: تم نشر نتائج الاستشارة بنجاح.
88
+ destroy:
89
+ error: كانت هناك مشكلة في إلغاء نشر نتائج هذه المشاورة.
90
+ success: نتائج التشاور غير منشورة بنجاح.
91
+ consultations:
92
+ create:
93
+ error: كانت هناك مشكلة في إنشاء استشارة جديدة.
94
+ success: تم إنشاء التشاور بنجاح.
95
+ edit:
96
+ update: تحديث
97
+ form:
98
+ slug_help: 'يتم استخدام slugs URL لإنشاء عناوين URL التي تشير إلى هذا التشاور. يقبل الحروف والأرقام والشرطات فقط ، ويجب أن يبدأ بحرف. مثال: %{url}'
99
+ title: معلومات عامة
100
+ index:
101
+ not_published: غير منشور
102
+ published: نشرت
103
+ new:
104
+ create: إنشاء
105
+ title: استشارة جديدة
106
+ update:
107
+ error: كانت هناك مشكلة في تحديث هذه المشاورة.
108
+ success: تم تحديث المشاورة بنجاح.
109
+ menu:
110
+ consultations: المشاورات
111
+ consultations_submenu:
112
+ info: معلومات
113
+ questions: الأسئلة
114
+ questions_submenu:
115
+ components: المكونات
116
+ consultation: تشاور
117
+ info: معلومات
118
+ responses: استجابات
119
+ models:
120
+ consultation:
121
+ fields:
122
+ created_at: أنشئت في
123
+ published: نشرت
124
+ title: عنوان
125
+ name:
126
+ zero: المشاورات
127
+ one: تشاور
128
+ two: المشاورات
129
+ few: المشاورات
130
+ many: المشاورات
131
+ other: المشاورات
132
+ question:
133
+ fields:
134
+ created_at: أنشئت في
135
+ published: نشرت
136
+ title: عنوان
137
+ name:
138
+ zero: الأسئلة
139
+ one: سؤال
140
+ two: الأسئلة
141
+ few: الأسئلة
142
+ many: الأسئلة
143
+ other: الأسئلة
144
+ response:
145
+ fields:
146
+ created_at: أنشئت في
147
+ title: عنوان
148
+ name:
149
+ zero: استجابات
150
+ one: استجابة
151
+ two: استجابات
152
+ few: استجابات
153
+ many: استجابات
154
+ other: استجابات
155
+ question_publications:
156
+ create:
157
+ error: حدثت مشكلة في نشر هذا السؤال.
158
+ success: تم نشر السؤال بنجاح.
159
+ destroy:
160
+ error: كانت هناك مشكلة في إلغاء نشر هذا السؤال.
161
+ success: السؤال غير منشور بنجاح.
162
+ questions:
163
+ create:
164
+ error: كانت هناك مشكلة في إنشاء سؤال جديد.
165
+ success: تم إنشاء السؤال بنجاح.
166
+ destroy:
167
+ success: تم حذف السؤال بنجاح.
168
+ edit:
169
+ update: تحديث
170
+ form:
171
+ title: معلومات عامة
172
+ index:
173
+ not_published: غير منشور
174
+ published: نشرت
175
+ new:
176
+ create: إنشاء
177
+ title: سؤال جديد
178
+ update:
179
+ error: حدثت مشكلة أثناء تحديث هذا السؤال.
180
+ success: تم تحديث السؤال بنجاح.
181
+ responses:
182
+ create:
183
+ error: كانت هناك مشكلة في إنشاء استجابة جديدة.
184
+ success: تم إنشاء الاستجابة بنجاح.
185
+ destroy:
186
+ error: حدثت مشكلة أثناء إزالة الاستجابة.
187
+ success: تم حذف الرد بنجاح.
188
+ edit:
189
+ update: تحديث
190
+ form:
191
+ title: معلومات عامة
192
+ new:
193
+ create: إنشاء
194
+ title: استجابة جديدة
195
+ update:
196
+ error: حدثت مشكلة أثناء تحديث هذه الاستجابة.
197
+ success: تم تحديث الاستجابة بنجاح.
198
+ titles:
199
+ consultations: المشاورات
200
+ questions: الأسئلة
201
+ responses: استجابات
202
+ consultations:
203
+ admin:
204
+ content_blocks:
205
+ highlighted_consultations:
206
+ max_results: أقصى قدر من العناصر لإظهارها
207
+ consultation:
208
+ start_voting_date: يبدأ التصويت
209
+ view_results: عرض النتائج
210
+ consultation_card:
211
+ view_results: عرض النتائج
212
+ consultations:
213
+ orders:
214
+ label: 'ترتيب المشاورات حسب:'
215
+ random: عشوائية
216
+ recent: الأحدث
217
+ content_blocks:
218
+ highlighted_consultations:
219
+ name: مشاورات أبرزت
220
+ count:
221
+ title:
222
+ zero: "%{count} مشاورات"
223
+ one: "%{count} التشاور"
224
+ two: "%{count} مشاورات"
225
+ few: "%{count} مشاورات"
226
+ many: "%{count} مشاورات"
227
+ other: "%{count} مشاورات"
228
+ filters:
229
+ active: نشيط
230
+ all: الكل
231
+ finished: تم الانتهاء من
232
+ search: بحث
233
+ state: الحالة
234
+ upcoming: القادمة
235
+ filters_small_view:
236
+ close_modal: أغلق النافذة
237
+ filter: منقي
238
+ filter_by: مصنف بواسطة
239
+ unfold: كشف
240
+ highlighted_questions:
241
+ title: أسئلة من %{scope_name}
242
+ index:
243
+ title: المشاورات
244
+ last_activity:
245
+ new_consultation: استشارة جديدة
246
+ new_question_at_html: "<span>سؤال جديد في %{link}</span>"
247
+ pages:
248
+ home:
249
+ highlighted_consultations:
250
+ active_consultations: مشاورات نشطة
251
+ see_all_consultations: انظر جميع المشاورات
252
+ voting_ends_in:
253
+ zero: ينتهي التصويت في <strong>%{count} يوم</strong>
254
+ one: ينتهي التصويت <strong>غدا</strong>
255
+ two: ينتهي التصويت في <strong>%{count} يوم</strong>
256
+ few: ينتهي التصويت في <strong>%{count} يوم</strong>
257
+ many: ينتهي التصويت في <strong>%{count} يوم</strong>
258
+ other: ينتهي التصويت في <strong>%{count} يوم</strong>
259
+ voting_ends_today: ينتهي التصويت <strong>اليوم</strong>
260
+ question:
261
+ take_part: خذ جزء
262
+ view_results: عرض النتائج
263
+ votes_out_of:
264
+ zero: يصوت من
265
+ one: التصويت خارج
266
+ two: يصوت من
267
+ few: يصوت من
268
+ many: يصوت من
269
+ other: يصوت من
270
+ question_votes:
271
+ create:
272
+ error: كانت هناك مشكلة في التصويت على السؤال
273
+ regular_questions:
274
+ title: أسئلة لهذا التشاور
275
+ show:
276
+ badge_name:
277
+ finished: تم الانتهاء من
278
+ open: افتح
279
+ open_votes: فتح الأصوات
280
+ published_results: النتائج المنشورة
281
+ footer_button_text:
282
+ debate: النقاش
283
+ view: رأي
284
+ view_results: عرض النتائج
285
+ vote: تصويت
286
+ unspecified: غير محدد
287
+ help:
288
+ participatory_spaces:
289
+ consultations:
290
+ contextual: "<p><strong>المشاورات</strong> هي مساحة تسمح لك بطرح سؤال واضح على جميع الأشخاص الذين يشكلون منظمة ، وتجري دعوة للمشاركة في المشاورة ، وإثارة النقاش وتأمره بالرد أو ضده. عندما يصل تاريخ الاستشارة ، يمكنك التصويت ونشر نتائج التصويت.</p> <p>أمثلة: يمكن أن تدور المشاورات حول أي جانب من الجوانب التي تؤثر على المنظمة تقريبًا: بعض الأمثلة تغير اسم أو شعار المنظمة التي تقدم عدة بدائل ، وتقرر نعم أو لا لتصبح جزءًا من منظمة أكبر ، أو تصادق على استراتيجية جديدة تخطيط أو نتيجة لمجموعة عمل ، أو تحديد ما إذا كان يجب أن تظل المناصب بحد أقصى 1 أو 2 أو 3 ولايات.</p>\n"
291
+ page: "<p><strong>المشاورات</strong> هي مساحة تسمح لك بطرح سؤال واضح على جميع الأشخاص الذين يشكلون منظمة ، وتجري دعوة للمشاركة في المشاورة ، وإثارة النقاش وتأمره بالرد أو ضده. عندما يصل تاريخ الاستشارة ، يمكنك التصويت ونشر نتائج التصويت.</p> <p>أمثلة: يمكن أن تدور المشاورات حول أي جانب من الجوانب التي تؤثر على المنظمة تقريبًا: بعض الأمثلة تغير اسم أو شعار المنظمة التي تقدم عدة بدائل ، وتقرر نعم أو لا لتصبح جزءًا من منظمة أكبر ، أو تصادق على استراتيجية جديدة أو ترفضها. تخطيط أو نتيجة لمجموعة عمل ، أو تحديد ما إذا كان ينبغي أن تظل المناصب بحد أقصى 1 أو 2 أو 3 ولايات في المنظمة.</p>\n"
292
+ title: ما هي المشاورات؟
293
+ menu:
294
+ consultations: المشاورات
295
+ pages:
296
+ home:
297
+ statistics:
298
+ consultations_count: المشاورات
299
+ questions:
300
+ next_button: السؤال التالي
301
+ previous_button: السؤال السابق
302
+ results:
303
+ title: النتائج
304
+ show:
305
+ read_more: قراءة المزيد
306
+ statistics:
307
+ assistants_count_title: مساعدين
308
+ comments_count_title: تعليقات
309
+ meetings_count_title: اجتماعات
310
+ supports_count_title: الأصوات
311
+ technical_info:
312
+ technical_data: معلومات تقنية
313
+ vote_button:
314
+ already_voted: صوت بالفعل
315
+ already_voted_hover: إلغاء التصويت
316
+ starting_from: بدءا من %{date}
317
+ vote: تصويت
318
+ vote_modal:
319
+ contextual_help: من فضلك ، حدد خيار.
320
+ title: 'التشاور: التصويت السؤال'
321
+ vote_modal_confirm:
322
+ change: يتغيرون
323
+ confirm: تؤكد
324
+ contextual_help: يرجى تأكيد الخيار المحدد.
325
+ title: 'التشاور: تأكيد التصويت'
326
+ layouts:
327
+ decidim:
328
+ admin:
329
+ question:
330
+ attachments: مرفقات
331
+ categories: الاقسام
332
+ consultation_voting_data:
333
+ start_voting_date: يبدأ التصويت
334
+ question_components:
335
+ question_menu_item: السؤال
336
+ unfold: كشف
337
+ question_header:
338
+ back_to_consultation: انظر جميع المشاورات
@@ -257,6 +257,8 @@ ca:
257
257
  statistics:
258
258
  consultations_count: Consultes
259
259
  questions:
260
+ next_button: Següent qüestió
261
+ previous_button: Qüestió anterior
260
262
  results:
261
263
  title: Resultats
262
264
  show:
@@ -258,6 +258,8 @@ en:
258
258
  statistics:
259
259
  consultations_count: Consultations
260
260
  questions:
261
+ next_button: Next question
262
+ previous_button: Previous question
261
263
  results:
262
264
  title: Results
263
265
  show:
@@ -257,6 +257,8 @@ es-MX:
257
257
  statistics:
258
258
  consultations_count: Consultas
259
259
  questions:
260
+ next_button: Siguiente pregunta
261
+ previous_button: Pregunta anterior
260
262
  results:
261
263
  title: Resultados
262
264
  show:
@@ -257,6 +257,8 @@ es-PY:
257
257
  statistics:
258
258
  consultations_count: Consultas
259
259
  questions:
260
+ next_button: Siguiente pregunta
261
+ previous_button: Pregunta anterior
260
262
  results:
261
263
  title: Resultados
262
264
  show:
@@ -257,6 +257,8 @@ es:
257
257
  statistics:
258
258
  consultations_count: Consultas
259
259
  questions:
260
+ next_button: Siguiente pregunta
261
+ previous_button: Pregunta anterior
260
262
  results:
261
263
  title: Resultados
262
264
  show:
@@ -257,6 +257,8 @@ fi-pl:
257
257
  statistics:
258
258
  consultations_count: Kuulemiset
259
259
  questions:
260
+ next_button: Seuraava kysymys
261
+ previous_button: Edellinen kysymys
260
262
  results:
261
263
  title: Tulokset
262
264
  show:
@@ -257,6 +257,8 @@ fi:
257
257
  statistics:
258
258
  consultations_count: Kuulemisia
259
259
  questions:
260
+ next_button: Seuraava kysymys
261
+ previous_button: Edellinen kysymys
260
262
  results:
261
263
  title: Tulokset
262
264
  show:
@@ -257,6 +257,8 @@ hu:
257
257
  statistics:
258
258
  consultations_count: Konzultációk
259
259
  questions:
260
+ next_button: Következő kérdés
261
+ previous_button: Előző kérdés
260
262
  results:
261
263
  title: Eredmények
262
264
  show:
@@ -257,6 +257,8 @@ it:
257
257
  statistics:
258
258
  consultations_count: consultazioni
259
259
  questions:
260
+ next_button: Domanda successiva
261
+ previous_button: Domanda precedente
260
262
  results:
261
263
  title: risultati
262
264
  show:
@@ -257,6 +257,8 @@ sv:
257
257
  statistics:
258
258
  consultations_count: Samråd
259
259
  questions:
260
+ next_button: Nästa fråga
261
+ previous_button: Föregående fråga
260
262
  results:
261
263
  title: Resultat
262
264
  show:
@@ -257,6 +257,8 @@ tr:
257
257
  statistics:
258
258
  consultations_count: istişareler
259
259
  questions:
260
+ next_button: Sonraki soru
261
+ previous_button: Önceki soru
260
262
  results:
261
263
  title: Sonuçlar
262
264
  show:
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module Consultations
5
5
  def self.version
6
- "0.17.2"
6
+ "0.18.0"
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decidim-consultations
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.2
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Salvador Perez Garcia
@@ -16,56 +16,56 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.17.2
19
+ version: 0.18.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.17.2
26
+ version: 0.18.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: decidim-comments
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 0.17.2
33
+ version: 0.18.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 0.17.2
40
+ version: 0.18.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: decidim-core
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: 0.17.2
47
+ version: 0.18.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - '='
53
53
  - !ruby/object:Gem::Version
54
- version: 0.17.2
54
+ version: 0.18.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: decidim-dev
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 0.17.2
61
+ version: 0.18.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 0.17.2
68
+ version: 0.18.0
69
69
  description: Extends Decidim adding a first level public consultation component
70
70
  email:
71
71
  - jsperezg@gmail.com
@@ -154,6 +154,7 @@ files:
154
154
  - app/helpers/decidim/consultations/admin/consultations_helper.rb
155
155
  - app/helpers/decidim/consultations/admin/questions_helper.rb
156
156
  - app/helpers/decidim/consultations/consultations_helper.rb
157
+ - app/helpers/decidim/consultations/questions_helper.rb
157
158
  - app/models/concerns/decidim/consultations/override_categorization.rb
158
159
  - app/models/concerns/decidim/consultations/publicable_results.rb
159
160
  - app/models/decidim/consultation.rb
@@ -216,6 +217,7 @@ files:
216
217
  - app/views/layouts/decidim/consultation_choose.html.erb
217
218
  - app/views/layouts/decidim/question.html.erb
218
219
  - config/locales/ar-SA.yml
220
+ - config/locales/ar.yml
219
221
  - config/locales/ca.yml
220
222
  - config/locales/cs-CZ.yml
221
223
  - config/locales/cs.yml