decidim-initiatives 0.16.1 → 0.17.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (126) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/decidim/initiatives/scoped_type.js +13 -10
  3. data/app/assets/stylesheet/decidim/initiatives/initiatives-votes.css.scss +97 -0
  4. data/app/cells/decidim/initiatives/initiative_m_cell.rb +1 -1
  5. data/app/cells/decidim/initiatives_votes/vote/show.erb +29 -0
  6. data/app/cells/decidim/initiatives_votes/vote_cell.rb +51 -0
  7. data/app/commands/decidim/initiatives/admin/create_initiative_type.rb +8 -1
  8. data/app/commands/decidim/initiatives/admin/update_initiative.rb +7 -6
  9. data/app/commands/decidim/initiatives/admin/update_initiative_answer.rb +76 -0
  10. data/app/commands/decidim/initiatives/admin/update_initiative_type.rb +17 -1
  11. data/app/commands/decidim/initiatives/create_initiative.rb +12 -0
  12. data/app/commands/decidim/initiatives/spawn_committee_request.rb +8 -7
  13. data/app/commands/decidim/initiatives/validate_mobile_phone.rb +61 -0
  14. data/app/commands/decidim/initiatives/validate_sms_code.rb +40 -0
  15. data/app/commands/decidim/initiatives/vote_initiative.rb +23 -7
  16. data/app/controllers/concerns/decidim/initiatives/needs_initiative.rb +12 -1
  17. data/app/controllers/decidim/initiatives/admin/answers_controller.rb +46 -0
  18. data/app/controllers/decidim/initiatives/admin/initiatives_controller.rb +31 -5
  19. data/app/controllers/decidim/initiatives/admin/initiatives_types_controller.rb +1 -0
  20. data/app/controllers/decidim/initiatives/admin/initiatives_types_permissions_controller.rb +20 -0
  21. data/app/controllers/decidim/initiatives/admin/moderations_controller.rb +16 -0
  22. data/app/controllers/decidim/initiatives/application_controller.rb +0 -2
  23. data/app/controllers/decidim/initiatives/authorization_sign_modals_controller.rb +26 -0
  24. data/app/controllers/decidim/initiatives/committee_requests_controller.rb +4 -1
  25. data/app/controllers/decidim/initiatives/create_initiative_controller.rb +16 -5
  26. data/app/controllers/decidim/initiatives/initiative_signatures_controller.rb +207 -0
  27. data/app/controllers/decidim/initiatives/initiative_votes_controller.rb +3 -1
  28. data/app/controllers/decidim/initiatives/initiatives_type_signature_types_controller.rb +21 -0
  29. data/app/forms/decidim/initiatives/admin/initiative_answer_form.rb +29 -0
  30. data/app/forms/decidim/initiatives/admin/initiative_form.rb +25 -7
  31. data/app/forms/decidim/initiatives/admin/initiative_type_form.rb +14 -0
  32. data/app/forms/decidim/initiatives/committee_member_form.rb +30 -0
  33. data/app/forms/decidim/initiatives/initiative_form.rb +5 -0
  34. data/app/forms/decidim/initiatives/vote_form.rb +151 -0
  35. data/app/helpers/decidim/initiatives/create_initiative_helper.rb +25 -12
  36. data/app/helpers/decidim/initiatives/initiative_helper.rb +18 -0
  37. data/app/models/decidim/initiative.rb +54 -3
  38. data/app/models/decidim/initiatives_committee_member.rb +1 -0
  39. data/app/models/decidim/initiatives_type.rb +30 -0
  40. data/app/permissions/decidim/initiatives/admin/permissions.rb +12 -3
  41. data/app/permissions/decidim/initiatives/permissions.rb +37 -8
  42. data/app/queries/decidim/initiatives/admin/admin_users.rb +39 -0
  43. data/app/services/decidim/initiatives/data_encryptor.rb +26 -0
  44. data/app/services/decidim/initiatives/dummy_timestamp.rb +22 -0
  45. data/app/services/decidim/initiatives/pdf_signature_example.rb +121 -0
  46. data/app/views/decidim/initiatives/admin/answers/_info_initiative.html.erb +23 -0
  47. data/app/views/decidim/initiatives/admin/answers/edit.html.erb +35 -0
  48. data/app/views/decidim/initiatives/admin/initiatives/_form.html.erb +17 -16
  49. data/app/views/decidim/initiatives/admin/initiatives/edit.html.erb +10 -3
  50. data/app/views/decidim/initiatives/admin/initiatives/export_pdf_signatures.pdf.erb +35 -0
  51. data/app/views/decidim/initiatives/admin/initiatives/index.html.erb +6 -0
  52. data/app/views/decidim/initiatives/admin/initiatives_types/_form.html.erb +36 -0
  53. data/app/views/decidim/initiatives/admin/initiatives_types/index.html.erb +2 -0
  54. data/app/views/decidim/initiatives/create_initiative/fill_data.html.erb +3 -3
  55. data/app/views/decidim/initiatives/create_initiative/finish.html.erb +2 -2
  56. data/app/views/decidim/initiatives/create_initiative/previous_form.html.erb +2 -2
  57. data/app/views/decidim/initiatives/create_initiative/promotal_committee.html.erb +3 -3
  58. data/app/views/decidim/initiatives/create_initiative/select_initiative_type.html.erb +37 -22
  59. data/app/views/decidim/initiatives/initiative_signatures/_wizard_steps.html.erb +19 -0
  60. data/app/views/decidim/initiatives/initiative_signatures/fill_personal_data.html.erb +43 -0
  61. data/app/views/decidim/initiatives/initiative_signatures/finish.html.erb +17 -0
  62. data/app/views/decidim/initiatives/initiative_signatures/sms_code.html.erb +22 -0
  63. data/app/views/decidim/initiatives/initiative_signatures/sms_phone_number.html.erb +22 -0
  64. data/app/views/decidim/initiatives/initiative_signatures/update_buttons_and_counters.js.erb +21 -0
  65. data/app/views/decidim/initiatives/initiative_votes/update_buttons_and_counters.js.erb +1 -1
  66. data/app/views/decidim/initiatives/initiatives/_author.html.erb +1 -1
  67. data/app/views/decidim/initiatives/initiatives/_interactions.html.erb +11 -0
  68. data/app/views/decidim/initiatives/initiatives/_progress_bar.html.erb +9 -0
  69. data/app/views/decidim/initiatives/initiatives/_result.html.erb +3 -3
  70. data/app/views/decidim/initiatives/initiatives/_vote_button.html.erb +39 -18
  71. data/app/views/decidim/initiatives/initiatives/_vote_cabin.html.erb +9 -9
  72. data/app/views/decidim/initiatives/initiatives/show.html.erb +12 -12
  73. data/app/views/decidim/initiatives/initiatives/signature_identities.html.erb +19 -9
  74. data/app/views/decidim/initiatives/initiatives_type_signature_types/search.html.erb +1 -0
  75. data/app/views/layouts/decidim/_initiative_creation_header.html.erb +24 -34
  76. data/app/views/layouts/decidim/_initiative_signature_creation_header.html.erb +27 -0
  77. data/app/views/layouts/decidim/admin/initiative.html.erb +22 -15
  78. data/app/views/layouts/decidim/admin/initiatives_votes.pdf.erb +11 -0
  79. data/app/views/layouts/decidim/initiative_creation.html.erb +15 -3
  80. data/app/views/layouts/decidim/initiative_signature_creation.html.erb +12 -0
  81. data/config/initializers/wicked_pdf.rb +23 -0
  82. data/config/locales/ar-SA.yml +138 -7
  83. data/config/locales/ca.yml +120 -28
  84. data/config/locales/cs-CZ.yml +103 -9
  85. data/config/locales/cs.yml +494 -0
  86. data/config/locales/de.yml +101 -9
  87. data/config/locales/en.yml +133 -40
  88. data/config/locales/es-MX.yml +101 -9
  89. data/config/locales/es-PY.yml +101 -9
  90. data/config/locales/es.yml +124 -32
  91. data/config/locales/eu.yml +101 -9
  92. data/config/locales/fi-pl.yml +101 -9
  93. data/config/locales/fi-plain.yml +478 -0
  94. data/config/locales/fi.yml +117 -25
  95. data/config/locales/fr.yml +102 -10
  96. data/config/locales/gl.yml +101 -9
  97. data/config/locales/hu.yml +102 -10
  98. data/config/locales/id-ID.yml +100 -9
  99. data/config/locales/it.yml +101 -9
  100. data/config/locales/nl.yml +101 -9
  101. data/config/locales/pl.yml +104 -10
  102. data/config/locales/pt-BR.yml +101 -9
  103. data/config/locales/pt.yml +101 -9
  104. data/config/locales/ru.yml +4 -9
  105. data/config/locales/sv.yml +101 -9
  106. data/config/locales/tr-TR.yml +101 -9
  107. data/config/locales/uk.yml +4 -9
  108. data/db/migrate/20181212154456_add_collect_extra_user_fields_to_initiatives_types.rb +7 -0
  109. data/db/migrate/20181212155125_add_online_signature_enabled_to_initiative_type.rb +7 -0
  110. data/db/migrate/20181212155740_add_extra_fields_legal_information_to_initiatives_types.rb +7 -0
  111. data/db/migrate/20181213184712_add_min_committee_members_to_initiative_type.rb +7 -0
  112. data/db/migrate/20181220134322_add_encrypted_metadata_to_decidim_initiatives_votes.rb +7 -0
  113. data/db/migrate/20181224100803_add_timestamp_to_decidim_initiatives_votes.rb +7 -0
  114. data/db/migrate/20181224101041_add_hash_id_to_decidim_initiatives_votes.rb +7 -0
  115. data/db/migrate/20190124170442_add_validate_sms_code_on_votes_to_initiatives_types.rb +7 -0
  116. data/db/migrate/20190125131847_add_document_number_authorization_handler_to_initiatives_types.rb +7 -0
  117. data/db/migrate/20190213184301_add_undo_online_signatures_enabled_to_initiatives_types.rb +7 -0
  118. data/lib/decidim/initiatives.rb +12 -0
  119. data/lib/decidim/initiatives/admin_engine.rb +12 -0
  120. data/lib/decidim/initiatives/engine.rb +3 -0
  121. data/lib/decidim/initiatives/participatory_space.rb +6 -1
  122. data/lib/decidim/initiatives/test/factories.rb +39 -0
  123. data/lib/decidim/initiatives/version.rb +1 -1
  124. metadata +115 -14
  125. data/app/views/decidim/initiatives/initiatives/_statistics.html.erb +0 -21
  126. data/app/views/decidim/initiatives/initiatives/_votes_count.html.erb +0 -12
@@ -13,6 +13,7 @@ tr:
13
13
  any: Karışık
14
14
  offline: Yüz yüze
15
15
  online: İnternet üzerinden
16
+ state: Belirtmek, bildirmek
16
17
  title: Başlık
17
18
  initiative_author:
18
19
  address: Adres
@@ -26,8 +27,20 @@ tr:
26
27
  user: Komite Üyesi
27
28
  initiatives_type:
28
29
  banner_image: Banner resmi
30
+ collect_user_extra_fields: İmzada kullanıcının kişisel verilerini topla
29
31
  description: Açıklama
32
+ document_number_authorization_handler: Oylamada belge numarasını doğrulama yetkisi
33
+ extra_fields_legal_information: Kişisel verilerin toplanması ile ilgili yasal bilgiler
34
+ minimum_committee_members: Minimum komite üyesi
35
+ online_signature_enabled: Çevrimiçi imza etkin
30
36
  title: Başlık
37
+ undo_online_signatures_enabled: Kullanıcıların çevrimiçi imzalarını geri almalarını sağlama
38
+ validate_sms_code_on_votes: İmza işlemine SMS kodu doğrulama adımı ekleme
39
+ initiatives_vote:
40
+ date_of_birth: Doğum tarihi
41
+ document_number: Belge Numarası
42
+ name_and_surname: Ad ve soyadı
43
+ postal_code: Posta kodu
31
44
  organization_data:
32
45
  address: Adres
33
46
  id_document: Kimlik belgesi
@@ -56,7 +69,7 @@ tr:
56
69
  created_at: Düzenlendi
57
70
  id: İD
58
71
  state: Belirtmek, bildirmek
59
- supports_count: Destekler
72
+ supports_count: İmzalar
60
73
  title: Girişimler
61
74
  initiatives_type_scope:
62
75
  fields:
@@ -68,6 +81,20 @@ tr:
68
81
  created_at: Düzenlendi
69
82
  title: Girişim türleri
70
83
  name: Girişimi tipi
84
+ initiatives_votes:
85
+ fields:
86
+ date_of_birth: Doğum tarihi
87
+ document_number: Belge Numarası
88
+ hash: esrar
89
+ initiative_end_date: Bitiş tarihi
90
+ initiative_id: Girişim Kimliği
91
+ initiative_signatures_count: İmza sayısı
92
+ initiative_start_date: Başlangıç tarihi
93
+ initiative_title: Girişim başlığı
94
+ name_and_surname: Ad ve soyadı
95
+ postal_code: Posta kodu
96
+ time_and_date: Saat ve tarih
97
+ timestamp: Zaman Damgası
71
98
  titles:
72
99
  initiatives: Girişimler
73
100
  initiatives_types: Girişim türleri
@@ -109,7 +136,19 @@ tr:
109
136
  page: "<p>Bir girişim belirli bir işlemi (bir yönetmelik değiştirmek yürütmek için organizasyon için (dijital) imza toplama yoluyla (bağımsız kanal veya katılım boşluklar diğerinin) kendi inisiyatifleriyle herkes tarafından teşvik edilebilir bir öneri bir proje başlatmak olduğunu , bir bölümün veya bir sokağın adını değiştirir vb.).</p> <p>Bir girişimin destekleyicileri hedeflerini tanımlayabilir, destek toplayabilir, tartışabilir, dağıtabilir ve katılımcılardan imzaların toplanabileceği buluşma noktalarını veya diğer katılımcılara açık tartışmaları tanımlayabilir.</p> <p>Örnekler: Bir inisiyatif, bir örgütün tüm halkı arasında bir istişare toplanması, bir meclis oluşturma veya toplanması ya da kuruluşun bir bölgesi veya bölgesi için bir bütçe artışı sürecinin başlatılması için imza toplayabilir. İmza toplama süreci boyunca, bu talebe daha fazla kişi katılabilir ve organizasyonda ileriye taşıyabilir.</p>\n"
110
137
  title: Girişimler nelerdir?
111
138
  initiatives:
139
+ actions:
140
+ answer: Cevap
112
141
  admin:
142
+ answers:
143
+ edit:
144
+ answer: Cevap
145
+ title: '%{title}cevabı'
146
+ info_initiative:
147
+ created_at: Adresinde düzenlendi
148
+ description: Açıklama
149
+ initiative_votes_count: Oy sayısı
150
+ initiatives: Girişimler
151
+ state: Belirtmek, bildirmek
113
152
  committee_requests:
114
153
  index:
115
154
  approve: onaylamak
@@ -126,6 +165,7 @@ tr:
126
165
  accept: Girişimi kabul et
127
166
  confirm: Emin misiniz?
128
167
  discard: Girişimi atın
168
+ export_pdf_signatures: İmza PDF'sini dışa aktar
129
169
  export_votes: İhracat destekleri
130
170
  reject: Girişimi reddet
131
171
  send_to_technical_validation: Teknik doğrulamaya gönder
@@ -241,12 +281,13 @@ tr:
241
281
  more_information: "(Daha fazla bilgi)"
242
282
  promotal_committee:
243
283
  back: Geri
244
- individual_help_text: Vatandaş girişimleri, en az üç kişiden oluşan bir Teşvik Komisyonu (vekilleri) gerektirir. Aşağıdaki bağlantıyı, bu girişimin parçası olan diğer kişilerle paylaşmalısınız. Kişileriniz bu bağlantıyı aldığında, belirtilen adımları izlemelidirler.
284
+ individual_help_text: Bu tür bir vatandaş girişimi, en az %{committee_size} kişiden (avukatlar) oluşan bir Tanıtım Komisyonu gerektirir. Aşağıdaki bağlantıyı bu girişimin bir parçası olan diğer kişilerle paylaşmanız gerekir. Kişileriniz bu bağlantıyı aldıklarında, belirtilen adımları izlemeleri gerekecektir.
245
285
  more_information: "(Daha fazla bilgi)"
246
286
  select_initiative_type:
247
287
  back: Geri
288
+ choose_html: <strong>%{title}</strong>oluşturmak istiyorum
248
289
  more_information: "(Daha fazla bilgi)"
249
- select: Seçmek
290
+ select: Bu girişimi teşvik etmek istiyorum
250
291
  select_initiative_type_help: Vatandaş girişimleri, vatandaşlığın müdahalede bulunabileceği bir araç olup, Belediye Meclisi'nin, belediyenin yetki alanı dahilindeki genel menfaatlerin savunulması için eylemde bulunabilmesi için. Hangi girişimi başlatmak istiyorsunuz?
251
292
  share_committee_link:
252
293
  continue: Devam et
@@ -269,9 +310,33 @@ tr:
269
310
  notification_title: <a href="%{resource_path}">%{resource_title}</a> girişimi <a href="%{author_path}">%{author_name} %{author_nickname}</a>tarafından onaylandı.
270
311
  index:
271
312
  title: Girişimler
313
+ initiative_signatures:
314
+ fill_personal_data:
315
+ continue: Devam et
316
+ date_select:
317
+ day: Gün
318
+ month: Ay
319
+ year: Yıl
320
+ help: Lütfen girişimi imzalamak için aşağıdaki alanları kişisel verilerinizle doldurun
321
+ finish:
322
+ back_to_initiative: Girişime geri dön
323
+ sms_code:
324
+ continue: Kodu kontrol et ve devam et
325
+ help: Telefonunuza gelen SMS’leri kontrol edin.
326
+ sms_phone_number:
327
+ continue: Bana bir sms gönder
328
+ help: Doğrulama kodunuzu istemek için formu doğrulanmış telefon numaranızla doldurun
272
329
  initiative_votes:
273
330
  create:
274
331
  error: Girişimi imzalarken hatalar oldu.
332
+ invalid: Girişimi imzalamak için sağlanan veriler geçerli değil
333
+ success_html: Tebrikler! <strong> %{title}</strong> girişimi doğru imzalandı
334
+ personal_data:
335
+ invalid: Kişisel veriler yetkilendirme için verilen verilerle tutarlı değildir.
336
+ sms_code:
337
+ invalid: Doğrulama kodunuz bizimkilerle eşleşmiyor. Lütfen size gönderdiğimiz SMS’i iki kez kontrol edin.
338
+ sms_phone:
339
+ invalid: Telefon numarası geçersiz veya izin bekliyor. Lütfen yetkilerini kontrol et.
275
340
  initiatives:
276
341
  author:
277
342
  deleted: silindi
@@ -300,6 +365,11 @@ tr:
300
365
  unfold: açılmak
301
366
  index_header:
302
367
  new_initiative: Yeni girişim
368
+ interactions:
369
+ comments_count:
370
+ count:
371
+ one: Yorum Yap
372
+ other: Yorumlar
303
373
  orders:
304
374
  label: 'Girişimleri şuna göre sırala:'
305
375
  most_commented: En çok yorum yapılan
@@ -307,32 +377,37 @@ tr:
307
377
  random: rasgele
308
378
  recent: En yeni
309
379
  result:
310
- initiative_accepted_reason: Bu girişim kabul edildi çünkü
380
+ answer_title:
381
+ accepted: Bu teklif kabul edildi çünkü
382
+ created: Bu teklif oluşturuldu
383
+ discarded: Bu teklif atıldı çünkü
384
+ published: Bu teklif yayınlandı çünkü
385
+ rejected: Bu teklif reddedildi, çünkü
386
+ validating: Bu teklif değerlendiriliyor
311
387
  initiative_rejected_reason: Bu girişim destek eksikliğinden dolayı reddedildi.
312
388
  show:
313
389
  any_vote_method: Bu vatandaş girişimi, yüz yüze olduğu kadar çevrimiçi destek toplar.
390
+ follow_description: Bu inisiyatifte haber olduğunda bir bildirim alın
314
391
  offline_method: Bu vatandaş girişimi sadece yüz yüze destekleri toplar.
315
392
  signature_identities:
316
393
  select_identity: Kullanıcı tanımlayıcıyı seç
317
394
  signatures_count:
318
395
  one: " imza"
319
396
  other: " imzalar"
320
- statistics:
321
- assistants_count_title: Yardımcıları
322
- comments_count_title: Yorumlar
323
- meetings_count_title: Toplantılar
324
- supports_count_title: İmzalar
325
397
  supports:
326
398
  title: İmzaların listesi
327
399
  vote_cabin:
328
400
  already_voted: Zaten imzalanmış
329
401
  supports_required: "%{total_supports} imza gerekli"
402
+ verification_required: Girişimi imzalamak için hesabınızı doğrulayın
330
403
  vote: İşaret
331
404
  votes_blocked: İmzalama devre dışı
332
405
  votes_count:
333
406
  count:
334
407
  one: İMZA
335
408
  other: İMZALAR
409
+ most_popular_initiative: En popüler girişim
410
+ need_more_votes: Daha fazla imzaya ihtiyacım var
336
411
  initiatives_mailer:
337
412
  creation_subject: Vatandaş girişimi '%{title}' oluşturuldu
338
413
  initiative_link:
@@ -359,6 +434,11 @@ tr:
359
434
  unavailable_scope: Kullanılamayan kapsam
360
435
  menu:
361
436
  initiatives: Girişimler
437
+ resources:
438
+ initiatives_type:
439
+ actions:
440
+ title: Eylemler
441
+ vote: Oy
362
442
  layouts:
363
443
  decidim:
364
444
  admin:
@@ -368,6 +448,7 @@ tr:
368
448
  components: Bileşenler
369
449
  information: Bilgi
370
450
  initiative_creation_header:
451
+ back: Geri
371
452
  fill_data: yaratmak
372
453
  finish: Bitiş
373
454
  previous_form: başla
@@ -378,6 +459,17 @@ tr:
378
459
  title: Yeni girişim oluştur
379
460
  initiative_header:
380
461
  initiative_menu_item: girişim
462
+ initiative_signature_creation_header:
463
+ back: Geri
464
+ fill_personal_data: Verilerinizi tamamlayın
465
+ finish: Bitiş
466
+ finished: Girişim imzası oluşturuldu
467
+ see_steps: adımları gör
468
+ select_identity: Kimlik seç
469
+ sms_code: SMS kodu doğrulama
470
+ sms_phone_number: cep telefonu numarası
471
+ step: Aşama %{current} arasında %{total}
472
+ title: İşaret %{initiative_title}
381
473
  initiatives:
382
474
  initiative:
383
475
  check: Buna bir bak
@@ -61,7 +61,7 @@ uk:
61
61
  fields:
62
62
  created_at: 'Створено:'
63
63
  state: Стан
64
- supports_count: Проявів підтримки
64
+ supports_count: Підписів
65
65
  title: Почини
66
66
  initiatives_type_scope:
67
67
  fields:
@@ -92,6 +92,9 @@ uk:
92
92
  notification_title: Почин <a href="%{resource_path}">%{resource_title}</a> досяг %{percentage}% підписів.
93
93
  initiatives:
94
94
  admin:
95
+ answers:
96
+ info_initiative:
97
+ state: Стан
95
98
  committee_requests:
96
99
  index:
97
100
  approve: Схвалити
@@ -220,12 +223,10 @@ uk:
220
223
  more_information: "(Додаткові відомості)"
221
224
  promotal_committee:
222
225
  back: Повернутись
223
- individual_help_text: Громадські ініціативи потребують робочого гурту з просування, що складається з принаймні трьох людей (засвідчуючих осіб). Ви маєте поділитися наступним посиланням з іншими людьми, які є частиною цього почину. Коли вони отримають це посилання, їм треба буде пройти зазначені там кроки.
224
226
  more_information: "(Додаткові відомості)"
225
227
  select_initiative_type:
226
228
  back: Повернутись
227
229
  more_information: "(Додаткові відомості)"
228
- select: Обрати
229
230
  select_initiative_type_help: Громадські почини - це засіб, за допомогою якого громадяни можуть втрутитися в те, щоб міська рада вжила заходів для забезпечення спільних потреб, які відносяться до сфери міських повноважень. Який почин ви бажаєте зробити?
230
231
  share_committee_link:
231
232
  continue: Продовжити
@@ -290,7 +291,6 @@ uk:
290
291
  random: Довільно
291
292
  recent: Найновіші
292
293
  result:
293
- initiative_accepted_reason: Цей почин був прийнятий, тому що
294
294
  initiative_rejected_reason: Цей почин був відхилений через недостатню підтримку.
295
295
  show:
296
296
  any_vote_method: Цей громадський почин збирає онлайн-підтримку, а також підтримку на особистих зустрічах.
@@ -302,11 +302,6 @@ uk:
302
302
  few: " підписи"
303
303
  many: " підписів"
304
304
  other: " підписів"
305
- statistics:
306
- assistants_count_title: Помічників
307
- comments_count_title: Коментарів
308
- meetings_count_title: Зустрічей
309
- supports_count_title: Підписів
310
305
  supports:
311
306
  title: Перелік підписів
312
307
  vote_cabin:
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddCollectExtraUserFieldsToInitiativesTypes < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_types, :collect_user_extra_fields, :boolean, default: false
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddOnlineSignatureEnabledToInitiativeType < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_types, :online_signature_enabled, :boolean, null: false, default: true
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddExtraFieldsLegalInformationToInitiativesTypes < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_types, :extra_fields_legal_information, :jsonb
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddMinCommitteeMembersToInitiativeType < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_types, :minimum_committee_members, :integer, null: true, default: nil
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddEncryptedMetadataToDecidimInitiativesVotes < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_votes, :encrypted_metadata, :text
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddTimestampToDecidimInitiativesVotes < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_votes, :timestamp, :string
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddHashIdToDecidimInitiativesVotes < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_votes, :hash_id, :string
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddValidateSmsCodeOnVotesToInitiativesTypes < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_types, :validate_sms_code_on_votes, :boolean, default: false
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddDocumentNumberAuthorizationHandlerToInitiativesTypes < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_types, :document_number_authorization_handler, :string
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddUndoOnlineSignaturesEnabledToInitiativesTypes < ActiveRecord::Migration[5.2]
4
+ def change
5
+ add_column :decidim_initiatives_types, :undo_online_signatures_enabled, :boolean, null: false, default: true
6
+ end
7
+ end
@@ -84,6 +84,18 @@ module Decidim
84
84
  true
85
85
  end
86
86
 
87
+ # Set a service to generate a timestamp on each vote. The
88
+ # attribute is the name of a class whose instances are
89
+ # initialized with a string containing the data to be
90
+ # timestamped and respond to a timestamp method
91
+ config_accessor :timestamp_service
92
+
93
+ # Set a service to add a signature to pdf of signatures.
94
+ # The attribute is the name of a class whose instances are
95
+ # initialized with the document to be signed and respond to a
96
+ # signed_pdf method with the signature added
97
+ config_accessor :pdf_signature_service
98
+
87
99
  # This flag says when mixed and online voting methods
88
100
  # are allowed. If set to false, only offline voting will be
89
101
  # allowed
@@ -15,6 +15,7 @@ module Decidim
15
15
 
16
16
  routes do
17
17
  resources :initiatives_types, except: :show do
18
+ resource :permissions, controller: "initiatives_types_permissions"
18
19
  resources :initiatives_type_scopes, except: [:index, :show]
19
20
  end
20
21
 
@@ -25,6 +26,7 @@ module Decidim
25
26
  delete :unpublish
26
27
  delete :discard
27
28
  get :export_votes
29
+ get :export_pdf_signatures
28
30
  post :accept
29
31
  delete :reject
30
32
  end
@@ -37,6 +39,8 @@ module Decidim
37
39
  delete :revoke
38
40
  end
39
41
  end
42
+
43
+ resource :answer, only: [:edit, :update]
40
44
  end
41
45
 
42
46
  scope "/initiatives/:initiative_slug" do
@@ -48,6 +52,14 @@ module Decidim
48
52
  end
49
53
  resources :exports, only: :create
50
54
  end
55
+
56
+ resources :moderations do
57
+ member do
58
+ put :unreport
59
+ put :hide
60
+ put :unhide
61
+ end
62
+ end
51
63
  end
52
64
 
53
65
  scope "/initiatives/:initiative_slug/components/:component_id/manage" do
@@ -16,6 +16,7 @@ module Decidim
16
16
  routes do
17
17
  get "/initiative_types/search", to: "initiative_types#search", as: :initiative_types_search
18
18
  get "/initiative_type_scopes/search", to: "initiatives_type_scopes#search", as: :initiative_type_scopes_search
19
+ get "/initiative_type_signature_types/search", to: "initiatives_type_signature_types#search", as: :initiative_type_signature_types_search
19
20
 
20
21
  resources :create_initiative
21
22
 
@@ -30,8 +31,10 @@ module Decidim
30
31
  }, constraints: { initiative_id: /[0-9]+/ }
31
32
 
32
33
  resources :initiatives, param: :slug, only: [:index, :show], path: "initiatives" do
34
+ resources :initiative_signatures
33
35
  member do
34
36
  get :signature_identities
37
+ get :authorization_sign_modal, to: "authorization_sign_modals#show"
35
38
  end
36
39
 
37
40
  resource :initiative_vote, only: [:create, :destroy]
@@ -11,7 +11,7 @@ Decidim.register_participatory_space(:initiatives) do |participatory_space|
11
11
 
12
12
  participatory_space.context(:admin) do |context|
13
13
  context.engine = Decidim::Initiatives::AdminEngine
14
- context.layout = "layouts/decidim/admin/initiatives"
14
+ context.layout = "layouts/decidim/admin/initiative"
15
15
  end
16
16
 
17
17
  participatory_space.participatory_spaces do |organization|
@@ -23,6 +23,11 @@ Decidim.register_participatory_space(:initiatives) do |participatory_space|
23
23
  resource.card = "decidim/initiatives/initiative"
24
24
  end
25
25
 
26
+ participatory_space.register_resource(:initiatives_type) do |resource|
27
+ resource.model_class_name = "Decidim::InitiativesType"
28
+ resource.actions = %w(vote)
29
+ end
30
+
26
31
  participatory_space.model_class_name = "Decidim::Initiative"
27
32
  participatory_space.permissions_class_name = "Decidim::Initiatives::Permissions"
28
33