decidim-forms 0.26.2 → 0.27.0.rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. checksums.yaml +4 -4
  2. data/app/commands/decidim/forms/admin/update_questionnaire.rb +13 -8
  3. data/app/commands/decidim/forms/answer_questionnaire.rb +3 -3
  4. data/app/controllers/decidim/forms/admin/concerns/has_questionnaire.rb +2 -2
  5. data/app/forms/decidim/forms/admin/display_condition_form.rb +3 -3
  6. data/app/forms/decidim/forms/answer_form.rb +4 -0
  7. data/app/models/decidim/forms/answer.rb +2 -2
  8. data/app/models/decidim/forms/display_condition.rb +1 -1
  9. data/app/models/decidim/forms/questionnaire.rb +7 -0
  10. data/app/packs/src/decidim/forms/admin/forms.js +3 -0
  11. data/app/presenters/decidim/forms/admin/questionnaire_answer_presenter.rb +10 -2
  12. data/app/presenters/decidim/forms/admin/questionnaire_participant_presenter.rb +5 -3
  13. data/app/presenters/decidim/forms/admin_log/questionnaire_presenter.rb +35 -0
  14. data/app/queries/decidim/forms/questionnaire_participant.rb +1 -1
  15. data/app/queries/decidim/forms/questionnaire_participants.rb +1 -1
  16. data/app/queries/decidim/forms/questionnaire_user_answers.rb +1 -1
  17. data/app/views/decidim/forms/questionnaires/show.html.erb +4 -2
  18. data/config/locales/ar.yml +1 -0
  19. data/config/locales/bg.yml +1 -0
  20. data/config/locales/ca.yml +6 -3
  21. data/config/locales/cs.yml +6 -3
  22. data/config/locales/de.yml +6 -3
  23. data/config/locales/el.yml +1 -4
  24. data/config/locales/en.yml +5 -3
  25. data/config/locales/es-MX.yml +6 -3
  26. data/config/locales/es-PY.yml +6 -3
  27. data/config/locales/es.yml +6 -3
  28. data/config/locales/eu.yml +1 -4
  29. data/config/locales/fi-plain.yml +6 -3
  30. data/config/locales/fi.yml +6 -3
  31. data/config/locales/fr-CA.yml +6 -3
  32. data/config/locales/fr.yml +6 -3
  33. data/config/locales/ga-IE.yml +1 -0
  34. data/config/locales/gl.yml +5 -0
  35. data/config/locales/hu.yml +4 -0
  36. data/config/locales/id-ID.yml +1 -0
  37. data/config/locales/it.yml +1 -4
  38. data/config/locales/ja.yml +6 -3
  39. data/config/locales/lb.yml +1 -4
  40. data/config/locales/lt.yml +191 -0
  41. data/config/locales/lv.yml +1 -4
  42. data/config/locales/nl.yml +1 -4
  43. data/config/locales/no.yml +1 -4
  44. data/config/locales/pl.yml +1 -4
  45. data/config/locales/pt-BR.yml +1 -4
  46. data/config/locales/pt.yml +1 -4
  47. data/config/locales/ro-RO.yml +1 -4
  48. data/config/locales/ru.yml +1 -0
  49. data/config/locales/sk.yml +1 -0
  50. data/config/locales/sl.yml +1 -0
  51. data/config/locales/sv.yml +1 -4
  52. data/config/locales/tr-TR.yml +1 -4
  53. data/config/locales/val-ES.yml +1 -0
  54. data/config/locales/zh-CN.yml +1 -4
  55. data/lib/decidim/exporters/form_pdf.rb +2 -2
  56. data/lib/decidim/forms/{data_portability_user_answers_serializer.rb → download_your_data_user_answers_serializer.rb} +2 -2
  57. data/lib/decidim/forms/test/factories.rb +22 -13
  58. data/lib/decidim/forms/test/shared_examples/manage_questionnaires/update_questions.rb +2 -2
  59. data/lib/decidim/forms/user_answers_serializer.rb +2 -2
  60. data/lib/decidim/forms/version.rb +1 -1
  61. data/lib/decidim/forms.rb +1 -1
  62. metadata +14 -13
@@ -1,3 +1,4 @@
1
+ ---
1
2
  fr-CA:
2
3
  activemodel:
3
4
  attributes:
@@ -121,6 +122,9 @@ fr-CA:
121
122
  update:
122
123
  invalid: Il y a eu des erreurs lors de la sauvegarde du questionnaire.
123
124
  success: Le formulaire a bien été sauvegardé.
125
+ admin_log:
126
+ questionnaire:
127
+ update: "%{user_name} a modifié le questionnaire %{resource_name}"
124
128
  errors:
125
129
  answer:
126
130
  body: Le corps ne peut pas être vide
@@ -128,10 +132,9 @@ fr-CA:
128
132
  extension_allowlist: 'Formats acceptés :'
129
133
  images:
130
134
  dimensions: "%{width} x %{height} px"
131
- dimensions_info: 'Cette image sera :'
132
135
  processors:
133
- resize_and_pad: Redimensionné et ajustée à
134
- resize_to_fit: Redimensionnée pour s'adapter
136
+ resize_and_pad: Cette image sera redimensionnée et recadrée en %{dimensions}.
137
+ resize_to_fit: Cette image sera redimensionnée pour s'adapter à %{dimensions}.
135
138
  question_types:
136
139
  files: Fichiers
137
140
  long_answer: Longue réponse
@@ -1,3 +1,4 @@
1
+ ---
1
2
  fr:
2
3
  activemodel:
3
4
  attributes:
@@ -121,6 +122,9 @@ fr:
121
122
  update:
122
123
  invalid: Il y a eu des erreurs lors de la sauvegarde du questionnaire.
123
124
  success: Le questionnaire a bien été sauvegardé.
125
+ admin_log:
126
+ questionnaire:
127
+ update: "%{user_name} a modifié le questionnaire %{resource_name}"
124
128
  errors:
125
129
  answer:
126
130
  body: Le corps ne peut pas être vide
@@ -128,10 +132,9 @@ fr:
128
132
  extension_allowlist: 'Formats acceptés :'
129
133
  images:
130
134
  dimensions: "%{width} x %{height} px"
131
- dimensions_info: 'Cette image sera :'
132
135
  processors:
133
- resize_and_pad: Redimensionné et ajustée à
134
- resize_to_fit: Redimensionnée pour s'adapter
136
+ resize_and_pad: Cette image sera redimensionnée et recadrée en %{dimensions}.
137
+ resize_to_fit: Cette image sera redimensionnée pour s'adapter à %{dimensions}.
135
138
  question_types:
136
139
  files: Fichiers
137
140
  long_answer: Longue réponse
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ga:
2
3
  activemodel:
3
4
  attributes:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  gl:
2
3
  activemodel:
3
4
  attributes:
@@ -62,6 +63,10 @@ gl:
62
63
  body: O corpo non pode estar en branco
63
64
  files:
64
65
  extension_allowlist: 'Formatos aceptados:'
66
+ images:
67
+ processors:
68
+ resize_and_pad: A imaxe axustarase para se encadrar a %{dimensions}.
69
+ resize_to_fit: A imaxe axustarase para se adaptar a %{dimensions}.
65
70
  question_types:
66
71
  long_answer: Resposta longa
67
72
  multiple_option: Múltipla opción
@@ -1,3 +1,4 @@
1
+ ---
1
2
  hu:
2
3
  activemodel:
3
4
  attributes:
@@ -68,6 +69,9 @@ hu:
68
69
  body: A szövegtörzs nem lehet üres
69
70
  files:
70
71
  extension_allowlist: 'Elfogadott formátumok:'
72
+ images:
73
+ processors:
74
+ resize_to_fit: 'A kép át lesz méretezve erre a méretre: %{dimensions}.'
71
75
  question_types:
72
76
  long_answer: Hosszú válasz
73
77
  multiple_option: Több választási lehetőség
@@ -1,3 +1,4 @@
1
+ ---
1
2
  id:
2
3
  activemodel:
3
4
  attributes:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  it:
2
3
  activemodel:
3
4
  attributes:
@@ -118,10 +119,6 @@ it:
118
119
  extension_allowlist: 'Formati accettati:'
119
120
  images:
120
121
  dimensions: "%{width} x %{height} px"
121
- dimensions_info: 'Questa immagine sarà:'
122
- processors:
123
- resize_and_pad: Ridimensionato e spaziato a
124
- resize_to_fit: Ridimensionato per adattarsi
125
122
  question_types:
126
123
  files: I file
127
124
  long_answer: Risposta lunga
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ja:
2
3
  activemodel:
3
4
  attributes:
@@ -121,6 +122,9 @@ ja:
121
122
  update:
122
123
  invalid: フォームの保存に失敗しました。
123
124
  success: フォームを保存しました。
125
+ admin_log:
126
+ questionnaire:
127
+ update: "%{user_name} が %{resource_name} アンケートを更新しました"
124
128
  errors:
125
129
  answer:
126
130
  body: 本文は空白にできません
@@ -128,10 +132,9 @@ ja:
128
132
  extension_allowlist: '承認されたフォーマット:'
129
133
  images:
130
134
  dimensions: "%{width} x %{height} px"
131
- dimensions_info: 'この画像は次のようになります:'
132
135
  processors:
133
- resize_and_pad: リサイズおよびパッド先
134
- resize_to_fit: フィットするようにリサイズしました
136
+ resize_and_pad: この画像はリサイズされ、 %{dimensions} に合わされます。
137
+ resize_to_fit: この画像は %{dimensions} に合うようにリサイズされます。
135
138
  question_types:
136
139
  files: ファイル
137
140
  long_answer: 長い回答
@@ -1,3 +1,4 @@
1
+ ---
1
2
  lb:
2
3
  activemodel:
3
4
  attributes:
@@ -118,10 +119,6 @@ lb:
118
119
  extension_allowlist: 'Gültige Formate:'
119
120
  images:
120
121
  dimensions: "%{width} x %{height} px"
121
- dimensions_info: 'Das Bild wird:'
122
- processors:
123
- resize_and_pad: in der Größe angepasst und gepolstert zu
124
- resize_to_fit: in der Größe verändert, damit es passt
125
122
  question_types:
126
123
  files: Dateien
127
124
  long_answer: Lange Antwort
@@ -1 +1,192 @@
1
+ ---
1
2
  lt:
3
+ activemodel:
4
+ attributes:
5
+ answer:
6
+ body: Atsakymas
7
+ choices: Pasirinkimai
8
+ selected_choices: Pasirinkti pasirinkimai
9
+ question:
10
+ max_choices: Maksimalus pasirinkimų skaičius
11
+ question_type: Tipas
12
+ questionnaire_question:
13
+ mandatory: Privaloma
14
+ max_characters: Simbolių limitas (palikti 0 jei limito nėra)
15
+ errors:
16
+ models:
17
+ answer:
18
+ attributes:
19
+ add_documents:
20
+ needs_to_be_reattached: Reikia pridėti iš naujo
21
+ body:
22
+ too_long: per ilgas
23
+ choices:
24
+ missing: nepilnas - trūksta elementų
25
+ too_many: per daug
26
+ questionnaire:
27
+ request_invalid: Tvarkant prašymą įvyko klaida. Bandykite dar kartą
28
+ decidim:
29
+ forms:
30
+ admin:
31
+ models:
32
+ components:
33
+ description: Aprašymas
34
+ tos: Paslaugų teikimo sąlygos
35
+ questionnaires:
36
+ actions:
37
+ back: Grįžti į klausimus
38
+ show: Rodyti atsakymus
39
+ answer_option:
40
+ answer_option: Atsakymo variantas
41
+ free_text: Laisva forma
42
+ remove: Pašalinti
43
+ statement: Pareiškimas
44
+ answers:
45
+ actions:
46
+ back: Grįžti į atsakymus
47
+ export: Eksportuoti
48
+ show: Rodyti atsakymus
49
+ empty: Atsakymų dar nėra
50
+ export:
51
+ answer:
52
+ title: 'Atsakymas #%{number}'
53
+ export_response:
54
+ title: apklausa_naudotoju_atsakymai_%{token}
55
+ index:
56
+ title: "%{total} iš viso atsakymų"
57
+ show:
58
+ title: 'Atsakymas #%{number}'
59
+ display_condition:
60
+ answer_option: Atsakymo variantas
61
+ condition_question: Klausimas
62
+ condition_type: Sąlyga
63
+ condition_types:
64
+ answered: Atsakyta
65
+ equal: Lygu
66
+ match: Įskaitant tekstą
67
+ not_answered: Neatsakyta
68
+ not_equal: Nelygu
69
+ condition_value: Įskaitytas tekstas
70
+ display_condition: Rodymo sąlyga
71
+ mandatory: Ši sąlyga turi būti patenkinta visada, neatsižvelgiant į kitų sąlygų statusą
72
+ remove: Pašalinti
73
+ save_warning: Prieš konfigūruodami rodymo sąlygas, nepamirškite išsaugoti formos
74
+ select_answer_option: Pasirinkite atsakymo variantą
75
+ select_condition_question: Pasirinkite klausimą
76
+ select_condition_type: Pasirinkti sąlygos tipą
77
+ edit:
78
+ save: Išsaugoti
79
+ title: Redaguoti klausimyną
80
+ form:
81
+ add_question: Pridėti klausimą
82
+ add_separator: Pridėti skyriklį
83
+ add_title_and_description: Pridėti pavadinimą ir aprašymą
84
+ already_answered_warning: Kai kurie naudotojai jau atsakė į formos klausimus, todėl jos klausimų keisti nebegalite.
85
+ collapse: Suskleisti visus klausimus
86
+ expand: Išskleisti visus klausimus
87
+ preview: Peržiūra
88
+ title: Taisyti %{questionnaire_for} formą
89
+ unpublished_warning: Forma nepaskelbta. Galite keisti klausimus, tačiau tai darydami pašalinsite esamus atsakymus.
90
+ matrix_row:
91
+ matrix_row: Eilutė
92
+ remove: Pašalinti
93
+ statement: Pareiškimas
94
+ question:
95
+ add_answer_option: Pridėti atsakymo variantą
96
+ add_display_condition: Pridėti rodymo sąlygą
97
+ add_display_condition_info: Išsaugokite formą, kad galėtumėt konfiguruoti rodymo sąlygas
98
+ add_matrix_row: Pridėti eilutę
99
+ any: Bet koks
100
+ collapse: Suskleisti
101
+ description: Aprašymas
102
+ down: Žemyn
103
+ expand: Išplėsti
104
+ question: Klausimas
105
+ remove: Pašalinti
106
+ statement: Pareiškimas
107
+ up: Į viršų
108
+ separator:
109
+ down: Žemyn
110
+ remove: Pašalinti
111
+ separator: Skirtukas
112
+ up: Į viršų
113
+ title_and_description:
114
+ collapse: Suskleisti
115
+ description: Aprašymas
116
+ down: Žemyn
117
+ expand: Išplėsti
118
+ remove: Pašalinti
119
+ title: Pavadinimas
120
+ title_and_description: Pavadinimas ir aprašymas
121
+ up: Aukštyn
122
+ update:
123
+ invalid: Išsaugant šią formą iškilo problema.
124
+ success: Forma sėkmingai išsaugota.
125
+ admin_log:
126
+ questionnaire:
127
+ update: "%{user_name} atnaujino %{resource_name} klausimyną"
128
+ errors:
129
+ answer:
130
+ body: Pagrindinė dalis negali būti tuščia
131
+ files:
132
+ extension_allowlist: 'Priimtini formatai:'
133
+ images:
134
+ dimensions: "%{width} x %{height} px"
135
+ processors:
136
+ resize_and_pad: Paveikslėlio dydis buvo pakeistas į %{dimensions}.
137
+ resize_to_fit: Paveikslėlio dydis buvo pakeistas į %{dimensions}.
138
+ question_types:
139
+ files: Dokumentai
140
+ long_answer: Ilgas atsakymas
141
+ matrix_multiple: Matrica (su keliais variantais)
142
+ matrix_single: Matrica (vienas variantas)
143
+ multiple_option: Keli variantai
144
+ short_answer: Trumpas atsakymas
145
+ single_option: Vienas variantas
146
+ sorting: Rūšiavimas
147
+ title_and_description: Pavadinimas ir aprašymas
148
+ questionnaires:
149
+ answer:
150
+ invalid: Atsakant į šią formą iškilo problema.
151
+ max_choices_alert: Per daug pasirinktų variantų
152
+ success: Į formos klausimus atsakyta.
153
+ question:
154
+ max_choices: 'Didžiausias pasirinkčių skaičius: %{n}'
155
+ show:
156
+ answer_questionnaire:
157
+ anonymous_user_message: <a href="%{sign_in_link}">Prisijunkite su savo paskyra</a> arba <a href="%{sign_up_link}">užsiregistruokite</a> norėdami užpildyti formą.
158
+ title: Atsakyti į formos klausimus
159
+ current_step: Žingsnis %{step}
160
+ of_total_steps: iš%{total_steps}
161
+ questionnaire_answered:
162
+ body: Jau atsakėte iš šios formos klausimus.
163
+ title: Jau atsakyta
164
+ questionnaire_closed:
165
+ body: Forma uždaryta ir į ją atsakyti negalima.
166
+ title: Forma uždaryta
167
+ questionnaire_for_private_users:
168
+ body: Forma pateikiama tik privatiems naudotojams
169
+ title: Forma uždaryta
170
+ questionnaire_js_disabled:
171
+ body: Kai kurie šios formos funkcionalumai bus neaktyvūs. Kad pagerintumėte naudojimo patirtį, naršyklėje įjunkite „JavaScript“.
172
+ title: '„JavaScript“ išjungta'
173
+ questionnaire_not_published:
174
+ body: Ši forma dar nepaskelbta.
175
+ tos_agreement: Dalyvaudami sutinkate su paslaugos teikimo sąlygomis
176
+ step_navigation:
177
+ show:
178
+ are_you_sure: Šio veiksmo atšaukti negalima ir savo atsakymų keisti negalėsite. Ar esate įsitikinę?
179
+ back: Atgal
180
+ continue: Tęsti
181
+ submit: Pateikti
182
+ user_answers_serializer:
183
+ body: Atsakymas
184
+ completion: Užbaigimas
185
+ created_at: Atsakyta
186
+ id: Atsakymo ID
187
+ ip_hash: IP adreso "hash" kodas
188
+ question: Klausimas
189
+ registered: Užregistruota
190
+ session_token: Naudotojo identifikatorius
191
+ unregistered: Neregistruoti
192
+ user_status: Naudotojo būsena
@@ -1,3 +1,4 @@
1
+ ---
1
2
  lv:
2
3
  activemodel:
3
4
  attributes:
@@ -69,10 +70,6 @@ lv:
69
70
  extension_allowlist: 'Pieņemtie formāti:'
70
71
  images:
71
72
  dimensions: "%{width} x %{height} pikseļi"
72
- dimensions_info: 'Attēlam būs:'
73
- processors:
74
- resize_and_pad: Mainīts lielums un izveidota robeža
75
- resize_to_fit: Mainīts, lai ietilptu
76
73
  question_types:
77
74
  long_answer: Garā atbilde
78
75
  matrix_multiple: Matrica (vairāki varianti)
@@ -1,3 +1,4 @@
1
+ ---
1
2
  nl:
2
3
  activemodel:
3
4
  attributes:
@@ -122,10 +123,6 @@ nl:
122
123
  extension_allowlist: 'Geaccepteerde formaten:'
123
124
  images:
124
125
  dimensions: "%{width} x %{height} px"
125
- dimensions_info: 'Deze afbeelding zal zijn:'
126
- processors:
127
- resize_and_pad: Verkleind en verwijderd naar
128
- resize_to_fit: Vergrootst naar pasvorm
129
126
  question_types:
130
127
  long_answer: Lang antwoord
131
128
  matrix_multiple: Matrix (meerdere opties)
@@ -1,3 +1,4 @@
1
+ ---
1
2
  "no":
2
3
  activemodel:
3
4
  attributes:
@@ -128,10 +129,6 @@
128
129
  extension_allowlist: 'Aksepterte formater:'
129
130
  images:
130
131
  dimensions: "%{width} x %{height} px"
131
- dimensions_info: 'Dette bildet vil være:'
132
- processors:
133
- resize_and_pad: Endret størrelse og avstand til
134
- resize_to_fit: Endret størrelse for å passe
135
132
  question_types:
136
133
  files: Filer
137
134
  long_answer: Langt svar
@@ -1,3 +1,4 @@
1
+ ---
1
2
  pl:
2
3
  activemodel:
3
4
  attributes:
@@ -118,10 +119,6 @@ pl:
118
119
  extension_allowlist: 'Dozwolone formaty:'
119
120
  images:
120
121
  dimensions: "%{width} × %{height} px"
121
- dimensions_info: 'Rozmiar obrazu będzie wynosił:'
122
- processors:
123
- resize_and_pad: Zmieniony i dopełniony do
124
- resize_to_fit: Dopasowany
125
122
  question_types:
126
123
  files: Pliki
127
124
  long_answer: Długa odpowiedź
@@ -1,3 +1,4 @@
1
+ ---
1
2
  pt-BR:
2
3
  activemodel:
3
4
  attributes:
@@ -118,10 +119,6 @@ pt-BR:
118
119
  extension_allowlist: 'Formatos aceitos:'
119
120
  images:
120
121
  dimensions: "%{width} x %{height} px"
121
- dimensions_info: 'Esta imagem será:'
122
- processors:
123
- resize_and_pad: Redimensionado e acolchoado para
124
- resize_to_fit: Redimensionado para caber
125
122
  question_types:
126
123
  files: Arquivos
127
124
  long_answer: Resposta longa
@@ -1,3 +1,4 @@
1
+ ---
1
2
  pt:
2
3
  activemodel:
3
4
  attributes:
@@ -118,10 +119,6 @@ pt:
118
119
  extension_allowlist: 'Formatos aceites:'
119
120
  images:
120
121
  dimensions: "%{width} x %{height} px"
121
- dimensions_info: 'Esta imagem será:'
122
- processors:
123
- resize_and_pad: Redimensionada e ajustada para
124
- resize_to_fit: Redimensionada para caber
125
122
  question_types:
126
123
  files: Ficheiros
127
124
  long_answer: Resposta longa
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ro:
2
3
  activemodel:
3
4
  attributes:
@@ -128,10 +129,6 @@ ro:
128
129
  extension_allowlist: 'Formate acceptate:'
129
130
  images:
130
131
  dimensions: "%{width} x %{height} px"
131
- dimensions_info: 'Această imagine va fi:'
132
- processors:
133
- resize_and_pad: Redimensionat și padded la
134
- resize_to_fit: Redimensionată pentru a se potrivi
135
132
  question_types:
136
133
  files: Fișiere
137
134
  long_answer: Răspuns lung
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ru:
2
3
  decidim:
3
4
  forms:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  sk:
2
3
  activemodel:
3
4
  attributes:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  sl:
2
3
  activemodel:
3
4
  attributes:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  sv:
2
3
  activemodel:
3
4
  attributes:
@@ -128,10 +129,6 @@ sv:
128
129
  extension_allowlist: 'Godkända format:'
129
130
  images:
130
131
  dimensions: "%{width} x %{height} px"
131
- dimensions_info: 'Denna bild kommer att vara:'
132
- processors:
133
- resize_and_pad: Anpassad och vadderad till
134
- resize_to_fit: Anpassad för att passa
135
132
  question_types:
136
133
  files: Filer
137
134
  long_answer: Långt svar
@@ -1,3 +1,4 @@
1
+ ---
1
2
  tr:
2
3
  activemodel:
3
4
  attributes:
@@ -113,10 +114,6 @@ tr:
113
114
  extension_allowlist: 'Kabul edilen biçimler:'
114
115
  images:
115
116
  dimensions: "%{width} x %{height} px"
116
- dimensions_info: 'Bu resim:'
117
- processors:
118
- resize_and_pad: Yeniden boyutlandırıldı ve dolduruldu
119
- resize_to_fit: Sığacak şekilde yeniden boyutlandırıldı
120
117
  question_types:
121
118
  long_answer: Uzun cevap
122
119
  matrix_multiple: Matris (Çoklu seçenek)
@@ -1,3 +1,4 @@
1
+ ---
1
2
  val:
2
3
  decidim:
3
4
  forms:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  zh-CN:
2
3
  activemodel:
3
4
  attributes:
@@ -112,10 +113,6 @@ zh-CN:
112
113
  extension_allowlist: '接受的格式:'
113
114
  images:
114
115
  dimensions: "%{width} x %{height} px"
115
- dimensions_info: '这张图片将是:'
116
- processors:
117
- resize_and_pad: 缩放并填充到
118
- resize_to_fit: 调整到适合的
119
116
  question_types:
120
117
  long_answer: 长答案
121
118
  matrix_multiple: 矩阵(多选项)
@@ -15,11 +15,11 @@ module Decidim
15
15
  end
16
16
 
17
17
  def template
18
- "decidim/forms/admin/questionnaires/answers/export/pdf.html.erb"
18
+ "decidim/forms/admin/questionnaires/answers/export/pdf"
19
19
  end
20
20
 
21
21
  def layout
22
- "decidim/forms/admin/questionnaires/questionnaire_answers.html.erb"
22
+ "decidim/forms/admin/questionnaires/questionnaire_answers"
23
23
  end
24
24
 
25
25
  def locals
@@ -2,9 +2,9 @@
2
2
 
3
3
  module Decidim
4
4
  module Forms
5
- class DataPortabilityUserAnswersSerializer < Decidim::Exporters::Serializer
5
+ class DownloadYourDataUserAnswersSerializer < Decidim::Exporters::Serializer
6
6
  include Decidim::TranslationsHelper
7
- # Serializes an user answer for data portability
7
+ # Serializes an user answer for download your data
8
8
  def serialize
9
9
  {
10
10
  id: resource.id,
@@ -29,38 +29,47 @@ FactoryBot.define do
29
29
  end
30
30
 
31
31
  trait :with_all_questions do
32
- questions do
32
+ after(:build) do |questionaire, _evaluator|
33
33
  position = 0
34
- qs = %w(short_answer long_answer).collect do |text_question_type|
35
- q = build(:questionnaire_question, question_type: text_question_type, position: position)
34
+ %w(short_answer long_answer).collect do |text_question_type|
35
+ q = create(:questionnaire_question,
36
+ question_type: text_question_type,
37
+ position: position,
38
+ questionnaire: questionaire)
36
39
  position += 1
37
- q
40
+ questionaire.questions << q
38
41
  end
39
42
 
40
43
  %w(single_option multiple_option).each do |option_question_type|
41
- q = build(:questionnaire_question, :with_answer_options, question_type: option_question_type, position: position)
42
- position += 1
43
- qs << q
44
+ q = create(:questionnaire_question, :with_answer_options,
45
+ question_type: option_question_type,
46
+ position: position,
47
+ questionnaire: questionaire)
44
48
  q.display_conditions.build(
45
- condition_question: qs[q.position - 2],
49
+ condition_question: questionaire.questions[q.position - 1],
46
50
  question: q,
47
51
  condition_type: :answered,
48
52
  mandatory: true
49
53
  )
54
+ questionaire.questions << q
55
+ position += 1
50
56
  end
51
57
 
52
58
  %w(matrix_single matrix_multiple).collect do |matrix_question_type|
53
- q = build(:questionnaire_question, :with_answer_options, question_type: matrix_question_type, position: position, body: generate_localized_title)
54
- position += 1
55
- qs << q
59
+ q = build(:questionnaire_question, :with_answer_options,
60
+ question_type: matrix_question_type,
61
+ position: position,
62
+ body: generate_localized_title,
63
+ questionnaire: questionaire)
56
64
  q.display_conditions.build(
57
- condition_question: qs[q.position - 2],
65
+ condition_question: questionaire.questions[q.position - 1],
58
66
  question: q,
59
67
  condition_type: :answered,
60
68
  mandatory: true
61
69
  )
70
+ questionaire.questions << q
71
+ position += 1
62
72
  end
63
- qs
64
73
  end
65
74
  end
66
75
 
@@ -344,11 +344,11 @@ shared_examples_for "update questions" do
344
344
  end
345
345
 
346
346
  context "when a questionnaire has multiple existing questions" do
347
- let!(:question_1) do
347
+ let!(:question1) do
348
348
  create(:questionnaire_question, questionnaire: questionnaire, body: first_body, position: 0)
349
349
  end
350
350
 
351
- let!(:question_2) do
351
+ let!(:question2) do
352
352
  create(:questionnaire_question, questionnaire: questionnaire, body: second_body, position: 1)
353
353
  end
354
354
 
@@ -79,7 +79,7 @@ module Decidim
79
79
  end
80
80
 
81
81
  def normalize_matrix_choices(answer, choices)
82
- answer.question.matrix_rows.map do |matrix_row|
82
+ answer.question.matrix_rows.to_h do |matrix_row|
83
83
  row_body = translated_attribute(matrix_row.body)
84
84
 
85
85
  row_choices = answer.question.answer_options.map do |answer_option|
@@ -88,7 +88,7 @@ module Decidim
88
88
  end
89
89
 
90
90
  [row_body, row_choices]
91
- end.to_h
91
+ end
92
92
  end
93
93
 
94
94
  def answer_translated_attribute_name(attribute)