decidim-demographics 0.31.0.rc1
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.
- checksums.yaml +7 -0
- data/README.md +26 -0
- data/Rakefile +3 -0
- data/app/commands/decidim/demographics/admin/update_demographics_settings.rb +44 -0
- data/app/commands/decidim/demographics/delete_demographic_data.rb +24 -0
- data/app/controllers/decidim/demographics/admin/application_controller.rb +42 -0
- data/app/controllers/decidim/demographics/admin/publish_responses_controller.rb +24 -0
- data/app/controllers/decidim/demographics/admin/questions_controller.rb +33 -0
- data/app/controllers/decidim/demographics/admin/responses_controller.rb +36 -0
- data/app/controllers/decidim/demographics/admin/settings_controller.rb +33 -0
- data/app/controllers/decidim/demographics/application_controller.rb +17 -0
- data/app/controllers/decidim/demographics/demographics_controller.rb +70 -0
- data/app/forms/decidim/demographics/admin/demographics_settings_form.rb +11 -0
- data/app/helpers/decidim/demographics/publish_responses_helper.rb +104 -0
- data/app/models/decidim/demographics/application_record.rb +10 -0
- data/app/models/decidim/demographics/demographic.rb +9 -0
- data/app/packs/entrypoints/decidim_demographics.js +1 -0
- data/app/packs/stylesheets/decidim/demographics/demographics.scss +37 -0
- data/app/permissions/decidim/demographics/admin/permissions.rb +22 -0
- data/app/permissions/decidim/demographics/permissions.rb +23 -0
- data/app/views/decidim/demographics/admin/demographics/_tabs_menu.html.erb +15 -0
- data/app/views/decidim/demographics/admin/publish_responses/index.html.erb +36 -0
- data/app/views/decidim/demographics/admin/questions/_questions_form.html.erb +74 -0
- data/app/views/decidim/demographics/admin/questions/edit.html.erb +13 -0
- data/app/views/decidim/demographics/admin/responses/index.html.erb +98 -0
- data/app/views/decidim/demographics/admin/settings/show.html.erb +23 -0
- data/app/views/decidim/demographics/demographics/_questionnaire.html.erb +88 -0
- data/app/views/decidim/demographics/demographics/_response.html.erb +41 -0
- data/app/views/decidim/demographics/demographics/responses/_single_option.html.erb +19 -0
- data/app/views/decidim/demographics/demographics/show.html.erb +25 -0
- data/config/assets.rb +8 -0
- data/config/locales/am-ET.yml +1 -0
- data/config/locales/ar.yml +1 -0
- data/config/locales/bg.yml +1 -0
- data/config/locales/bn-BD.yml +1 -0
- data/config/locales/bs-BA.yml +1 -0
- data/config/locales/ca-IT.yml +79 -0
- data/config/locales/ca.yml +79 -0
- data/config/locales/cs.yml +55 -0
- data/config/locales/da.yml +1 -0
- data/config/locales/de.yml +79 -0
- data/config/locales/el.yml +1 -0
- data/config/locales/en.yml +79 -0
- data/config/locales/eo.yml +1 -0
- data/config/locales/es-MX.yml +79 -0
- data/config/locales/es-PY.yml +79 -0
- data/config/locales/es.yml +79 -0
- data/config/locales/et.yml +1 -0
- data/config/locales/eu.yml +79 -0
- data/config/locales/fa-IR.yml +1 -0
- data/config/locales/fi-plain.yml +79 -0
- data/config/locales/fi.yml +79 -0
- data/config/locales/fr-CA.yml +79 -0
- data/config/locales/fr.yml +79 -0
- data/config/locales/ga-IE.yml +1 -0
- data/config/locales/gl.yml +1 -0
- data/config/locales/gn-PY.yml +1 -0
- data/config/locales/he-IL.yml +1 -0
- data/config/locales/hr.yml +1 -0
- data/config/locales/hu.yml +1 -0
- data/config/locales/id-ID.yml +1 -0
- data/config/locales/is-IS.yml +1 -0
- data/config/locales/it.yml +1 -0
- data/config/locales/ja.yml +79 -0
- data/config/locales/ka-GE.yml +1 -0
- data/config/locales/kaa.yml +1 -0
- data/config/locales/ko.yml +1 -0
- data/config/locales/lb.yml +1 -0
- data/config/locales/lo-LA.yml +1 -0
- data/config/locales/lt.yml +1 -0
- data/config/locales/lv.yml +1 -0
- data/config/locales/mt.yml +1 -0
- data/config/locales/nl.yml +1 -0
- data/config/locales/no.yml +8 -0
- data/config/locales/oc-FR.yml +1 -0
- data/config/locales/om-ET.yml +1 -0
- data/config/locales/pl.yml +1 -0
- data/config/locales/pt-BR.yml +1 -0
- data/config/locales/pt.yml +1 -0
- data/config/locales/ro-RO.yml +1 -0
- data/config/locales/ru.yml +1 -0
- data/config/locales/si-LK.yml +1 -0
- data/config/locales/sk.yml +1 -0
- data/config/locales/sl.yml +1 -0
- data/config/locales/so-SO.yml +1 -0
- data/config/locales/sq-AL.yml +1 -0
- data/config/locales/sr-CS.yml +1 -0
- data/config/locales/sv.yml +79 -0
- data/config/locales/sw-KE.yml +1 -0
- data/config/locales/th-TH.yml +1 -0
- data/config/locales/ti-ER.yml +1 -0
- data/config/locales/tr-TR.yml +1 -0
- data/config/locales/uk.yml +1 -0
- data/config/locales/val-ES.yml +1 -0
- data/config/locales/vi.yml +1 -0
- data/config/locales/zh-CN.yml +1 -0
- data/config/locales/zh-TW.yml +1 -0
- data/db/migrate/20250305200253_create_decidim_demographics_demographics.rb +12 -0
- data/decidim-demographics.gemspec +37 -0
- data/lib/decidim/demographics/admin.rb +10 -0
- data/lib/decidim/demographics/admin_engine.rb +83 -0
- data/lib/decidim/demographics/engine.rb +41 -0
- data/lib/decidim/demographics/test/factories.rb +16 -0
- data/lib/decidim/demographics/version.rb +10 -0
- data/lib/decidim/demographics.rb +52 -0
- data/lib/tasks/decidim_demographics.rake +14 -0
- metadata +195 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
fr-CA:
|
|
3
|
+
decidim:
|
|
4
|
+
demographics:
|
|
5
|
+
actions:
|
|
6
|
+
title: Actions
|
|
7
|
+
admin:
|
|
8
|
+
demographics:
|
|
9
|
+
tabs_menu:
|
|
10
|
+
title: Démographiques
|
|
11
|
+
demographics_menu:
|
|
12
|
+
questions: Questions
|
|
13
|
+
responses: Réponses
|
|
14
|
+
settings: Paramètres
|
|
15
|
+
publish_responses:
|
|
16
|
+
index:
|
|
17
|
+
description: Description
|
|
18
|
+
title: Afficher les réponses
|
|
19
|
+
questions:
|
|
20
|
+
edit:
|
|
21
|
+
save: Enregistrer
|
|
22
|
+
title: Questions
|
|
23
|
+
questions_form:
|
|
24
|
+
add_question: Ajouter une question
|
|
25
|
+
collapse: Réduire toutes les questions
|
|
26
|
+
expand: Développer toutes les questions
|
|
27
|
+
responses:
|
|
28
|
+
index:
|
|
29
|
+
publish_responses: Afficher les réponses
|
|
30
|
+
title: "%{total} réponses au total"
|
|
31
|
+
settings:
|
|
32
|
+
show:
|
|
33
|
+
collect_data: Activer la collecte de données démographiques
|
|
34
|
+
collect_data_help: Activer ce paramètre permettra aux utilisateurs de faire don de leurs données à la plate-forme.
|
|
35
|
+
save: Enregistrer
|
|
36
|
+
title: Paramètres
|
|
37
|
+
update:
|
|
38
|
+
invalid: Une erreur s'est produite lors de l'enregistrement des données démographiques
|
|
39
|
+
success: Données démographiques enregistrées avec succès
|
|
40
|
+
title: Démographiques
|
|
41
|
+
demographics:
|
|
42
|
+
questionnaire:
|
|
43
|
+
delete_my_data: Supprimer les données
|
|
44
|
+
modal_close: Annuler
|
|
45
|
+
modal_ok: Ok
|
|
46
|
+
modal_question: Toutes vos données démographiques seront supprimées.
|
|
47
|
+
modal_title: Supprimer les données
|
|
48
|
+
submit: Enregistrer les données
|
|
49
|
+
terms_of_service: conditions d'utilisation
|
|
50
|
+
tos_agreement: En participant vous acceptez l' %{link}.
|
|
51
|
+
show:
|
|
52
|
+
page_title: Don de données démographiques
|
|
53
|
+
destroy:
|
|
54
|
+
error: Une erreur s'est produite lors de la suppression des données que vous avez fournies
|
|
55
|
+
success: Les données que vous avez fournies ont été supprimées avec succès
|
|
56
|
+
name: Don de données démographiques
|
|
57
|
+
questions:
|
|
58
|
+
age:
|
|
59
|
+
options:
|
|
60
|
+
- 15 à 29 ans
|
|
61
|
+
- 30 à 44 ans
|
|
62
|
+
- 45 à 64 ans
|
|
63
|
+
- 65 ans et plus
|
|
64
|
+
question: Quel est votre age ?
|
|
65
|
+
gender:
|
|
66
|
+
options:
|
|
67
|
+
- Homme
|
|
68
|
+
- Femme
|
|
69
|
+
- Non-binaire
|
|
70
|
+
- Mon genre n'est pas répertorié
|
|
71
|
+
- Je préfère ne pas le dire
|
|
72
|
+
question: Parmi les énoncés suivants, lequel décrit le mieux votre genre ?
|
|
73
|
+
postal:
|
|
74
|
+
question: Quel est le code postal de votre lieu de résidence ?
|
|
75
|
+
layouts:
|
|
76
|
+
decidim:
|
|
77
|
+
shared:
|
|
78
|
+
layout_center:
|
|
79
|
+
alert: En fournissant ces informations, vous contribuez à l'analyse statistique qui aide à améliorer l'indicateur de qualité. Vos données seront agrégées et utilisées uniquement à des fins de recherche.
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
fr:
|
|
3
|
+
decidim:
|
|
4
|
+
demographics:
|
|
5
|
+
actions:
|
|
6
|
+
title: Actions
|
|
7
|
+
admin:
|
|
8
|
+
demographics:
|
|
9
|
+
tabs_menu:
|
|
10
|
+
title: Démographiques
|
|
11
|
+
demographics_menu:
|
|
12
|
+
questions: Questions
|
|
13
|
+
responses: Réponses
|
|
14
|
+
settings: Paramètres
|
|
15
|
+
publish_responses:
|
|
16
|
+
index:
|
|
17
|
+
description: Description
|
|
18
|
+
title: Afficher les réponses
|
|
19
|
+
questions:
|
|
20
|
+
edit:
|
|
21
|
+
save: Enregistrer
|
|
22
|
+
title: Questions
|
|
23
|
+
questions_form:
|
|
24
|
+
add_question: Ajouter une question
|
|
25
|
+
collapse: Réduire toutes les questions
|
|
26
|
+
expand: Développer toutes les questions
|
|
27
|
+
responses:
|
|
28
|
+
index:
|
|
29
|
+
publish_responses: Afficher les réponses
|
|
30
|
+
title: "%{total} réponses au total"
|
|
31
|
+
settings:
|
|
32
|
+
show:
|
|
33
|
+
collect_data: Activer la collecte de données démographiques
|
|
34
|
+
collect_data_help: Activer ce paramètre permettra aux utilisateurs de faire don de leurs données à la plate-forme.
|
|
35
|
+
save: Enregistrer
|
|
36
|
+
title: Paramètres
|
|
37
|
+
update:
|
|
38
|
+
invalid: Une erreur s'est produite lors de l'enregistrement des données démographiques
|
|
39
|
+
success: Données démographiques enregistrées avec succès
|
|
40
|
+
title: Démographiques
|
|
41
|
+
demographics:
|
|
42
|
+
questionnaire:
|
|
43
|
+
delete_my_data: Supprimer les données
|
|
44
|
+
modal_close: Annuler
|
|
45
|
+
modal_ok: Ok
|
|
46
|
+
modal_question: Toutes vos données démographiques seront supprimées.
|
|
47
|
+
modal_title: Supprimer les données
|
|
48
|
+
submit: Enregistrer les données
|
|
49
|
+
terms_of_service: conditions d'utilisation
|
|
50
|
+
tos_agreement: En participant vous acceptez l' %{link}.
|
|
51
|
+
show:
|
|
52
|
+
page_title: Don de données démographiques
|
|
53
|
+
destroy:
|
|
54
|
+
error: Une erreur s'est produite lors de la suppression des données que vous avez fournies
|
|
55
|
+
success: Les données que vous avez fournies ont été supprimées avec succès
|
|
56
|
+
name: Don de données démographiques
|
|
57
|
+
questions:
|
|
58
|
+
age:
|
|
59
|
+
options:
|
|
60
|
+
- 15 à 29 ans
|
|
61
|
+
- 30 à 44 ans
|
|
62
|
+
- 45 à 64 ans
|
|
63
|
+
- 65 ans et plus
|
|
64
|
+
question: Quel est votre age ?
|
|
65
|
+
gender:
|
|
66
|
+
options:
|
|
67
|
+
- Homme
|
|
68
|
+
- Femme
|
|
69
|
+
- Non-binaire
|
|
70
|
+
- Mon genre n'est pas répertorié
|
|
71
|
+
- Je préfère ne pas le dire
|
|
72
|
+
question: Parmi les énoncés suivants, lequel décrit le mieux votre genre ?
|
|
73
|
+
postal:
|
|
74
|
+
question: Quel est le code postal de votre lieu de résidence ?
|
|
75
|
+
layouts:
|
|
76
|
+
decidim:
|
|
77
|
+
shared:
|
|
78
|
+
layout_center:
|
|
79
|
+
alert: En fournissant ces informations, vous contribuez à l'analyse statistique qui aide à améliorer l'indicateur de qualité. Vos données seront agrégées et utilisées uniquement à des fins de recherche.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ga:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
gl:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
gn:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
he:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
hr:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
hu:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
id:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
is-IS:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
it:
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
ja:
|
|
3
|
+
decidim:
|
|
4
|
+
demographics:
|
|
5
|
+
actions:
|
|
6
|
+
title: アクション
|
|
7
|
+
admin:
|
|
8
|
+
demographics:
|
|
9
|
+
tabs_menu:
|
|
10
|
+
title: デモグラフィック
|
|
11
|
+
demographics_menu:
|
|
12
|
+
questions: 質問
|
|
13
|
+
responses: 回答
|
|
14
|
+
settings: 設定
|
|
15
|
+
publish_responses:
|
|
16
|
+
index:
|
|
17
|
+
description: 説明
|
|
18
|
+
title: 回答を表示
|
|
19
|
+
questions:
|
|
20
|
+
edit:
|
|
21
|
+
save: 保存
|
|
22
|
+
title: 質問
|
|
23
|
+
questions_form:
|
|
24
|
+
add_question: 質問を追加
|
|
25
|
+
collapse: すべての質問を折りたたむ
|
|
26
|
+
expand: すべての質問を展開
|
|
27
|
+
responses:
|
|
28
|
+
index:
|
|
29
|
+
publish_responses: 回答を表示
|
|
30
|
+
title: "回答数 %{total} 件"
|
|
31
|
+
settings:
|
|
32
|
+
show:
|
|
33
|
+
collect_data: デモグラフィックデータ収集を有効にする
|
|
34
|
+
collect_data_help: この設定を有効にすると、ユーザーはデータをプラットフォームに提供できます。
|
|
35
|
+
save: 保存
|
|
36
|
+
title: 設定
|
|
37
|
+
update:
|
|
38
|
+
invalid: デモグラフィックデータの保存中にエラーが発生しました
|
|
39
|
+
success: デモグラフィックデータを保存しました
|
|
40
|
+
title: デモグラフィック
|
|
41
|
+
demographics:
|
|
42
|
+
questionnaire:
|
|
43
|
+
delete_my_data: データを削除
|
|
44
|
+
modal_close: キャンセル
|
|
45
|
+
modal_ok: OK
|
|
46
|
+
modal_question: すべてのデモグラフィックデータが削除されます。
|
|
47
|
+
modal_title: データを削除
|
|
48
|
+
submit: データを保存
|
|
49
|
+
terms_of_service: 利用規約
|
|
50
|
+
tos_agreement: 参加いただくことで、%{link} に同意したものとみなされます。
|
|
51
|
+
show:
|
|
52
|
+
page_title: デモグラフィックデータの提供
|
|
53
|
+
destroy:
|
|
54
|
+
error: 提供されたデータの削除中にエラーが発生しました
|
|
55
|
+
success: 提供されたデータを削除しました
|
|
56
|
+
name: デモグラフィックデータの提供
|
|
57
|
+
questions:
|
|
58
|
+
age:
|
|
59
|
+
options:
|
|
60
|
+
- 15歳から29歳
|
|
61
|
+
- 30歳から44歳
|
|
62
|
+
- 45歳から64歳
|
|
63
|
+
- 65歳以上
|
|
64
|
+
question: あなたの年齢
|
|
65
|
+
gender:
|
|
66
|
+
options:
|
|
67
|
+
- 男性
|
|
68
|
+
- 女性
|
|
69
|
+
- その他
|
|
70
|
+
- 私の性別はリストにありません
|
|
71
|
+
- 回答を希望しない
|
|
72
|
+
question: あなたの性別を最もよく表しているのは次のうちどれですか?
|
|
73
|
+
postal:
|
|
74
|
+
question: 自宅の郵便番号は何ですか?
|
|
75
|
+
layouts:
|
|
76
|
+
decidim:
|
|
77
|
+
shared:
|
|
78
|
+
layout_center:
|
|
79
|
+
alert: この情報を提供することで、品質指標の改善に役立つ統計分析に貢献いただけます。提供していただいたデータは集計され、研究目的のみに使用されます。
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ka:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
kaa:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ko:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
lb:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
lo:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
lt:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
lv:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
mt:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
nl:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
oc:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
om:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pl:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pt-BR:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pt:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ro:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ru:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
si:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
sk:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
sl:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
so:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
sq:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
sr:
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
sv:
|
|
3
|
+
decidim:
|
|
4
|
+
demographics:
|
|
5
|
+
actions:
|
|
6
|
+
title: Handlingar
|
|
7
|
+
admin:
|
|
8
|
+
demographics:
|
|
9
|
+
tabs_menu:
|
|
10
|
+
title: Demografi
|
|
11
|
+
demographics_menu:
|
|
12
|
+
questions: Frågor
|
|
13
|
+
responses: Svar
|
|
14
|
+
settings: Inställningar
|
|
15
|
+
publish_responses:
|
|
16
|
+
index:
|
|
17
|
+
description: Beskrivning
|
|
18
|
+
title: Visa svar
|
|
19
|
+
questions:
|
|
20
|
+
edit:
|
|
21
|
+
save: Spara
|
|
22
|
+
title: Frågor
|
|
23
|
+
questions_form:
|
|
24
|
+
add_question: Lägg till fråga
|
|
25
|
+
collapse: Dölj alla frågor
|
|
26
|
+
expand: Visa alla frågor
|
|
27
|
+
responses:
|
|
28
|
+
index:
|
|
29
|
+
publish_responses: Visa svar
|
|
30
|
+
title: "%{total} svar totalt"
|
|
31
|
+
settings:
|
|
32
|
+
show:
|
|
33
|
+
collect_data: Aktivera demografisk datainsamling
|
|
34
|
+
collect_data_help: Aktivering av denna inställning gör det möjligt för användare att donera sina data till plattformen.
|
|
35
|
+
save: Spara
|
|
36
|
+
title: Inställningar
|
|
37
|
+
update:
|
|
38
|
+
invalid: Det gick inte att spara demografiska data
|
|
39
|
+
success: Demografiska data har sparats
|
|
40
|
+
title: Demografi
|
|
41
|
+
demographics:
|
|
42
|
+
questionnaire:
|
|
43
|
+
delete_my_data: Ta bort data
|
|
44
|
+
modal_close: Avbryt
|
|
45
|
+
modal_ok: Ok
|
|
46
|
+
modal_question: Alla dina demografiska data kommer att tas bort.
|
|
47
|
+
modal_title: Radera data
|
|
48
|
+
submit: Spara data
|
|
49
|
+
terms_of_service: användarvillkor
|
|
50
|
+
tos_agreement: Genom att delta accepterar du %{link}.
|
|
51
|
+
show:
|
|
52
|
+
page_title: Demografisk data donation
|
|
53
|
+
destroy:
|
|
54
|
+
error: Det gick inte att ta bort dina donerade data
|
|
55
|
+
success: Dina donerade data har tagits bort
|
|
56
|
+
name: Demografisk data donation
|
|
57
|
+
questions:
|
|
58
|
+
age:
|
|
59
|
+
options:
|
|
60
|
+
- 15 till 29 år
|
|
61
|
+
- 30 till 44 år
|
|
62
|
+
- 45 till 64 år
|
|
63
|
+
- 65 år eller äldre
|
|
64
|
+
question: Hur gammal är du?
|
|
65
|
+
gender:
|
|
66
|
+
options:
|
|
67
|
+
- Man
|
|
68
|
+
- Kvinna
|
|
69
|
+
- Icke-binär
|
|
70
|
+
- Mitt kön är inte listat
|
|
71
|
+
- Föredra att inte svara
|
|
72
|
+
question: Vilket av följande beskriver dig bäst?
|
|
73
|
+
postal:
|
|
74
|
+
question: Vad är ditt hempostnummer?
|
|
75
|
+
layouts:
|
|
76
|
+
decidim:
|
|
77
|
+
shared:
|
|
78
|
+
layout_center:
|
|
79
|
+
alert: Genom att tillhandahålla denna information bidrar du till statistisk analys som kan förbättra deltagandekvaliteten. Dina data kommer att aggregeras och endast användas för forskningsändamål.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
sw:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
th:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ti:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
tr:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
uk:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
val:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
vi:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
zh-CN:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
zh-TW:
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
class CreateDecidimDemographicsDemographics < ActiveRecord::Migration[5.2]
|
|
4
|
+
def change
|
|
5
|
+
create_table :decidim_demographics_demographics do |t|
|
|
6
|
+
t.belongs_to :decidim_organization, index: { name: :decidim_demographics_demographics_on_organization_id }, foreign_key: true, null: false
|
|
7
|
+
t.boolean :collect_data, null: false, default: false
|
|
8
|
+
|
|
9
|
+
t.timestamps
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
$LOAD_PATH.push File.expand_path("lib", __dir__)
|
|
4
|
+
|
|
5
|
+
require "decidim/demographics/version"
|
|
6
|
+
|
|
7
|
+
Gem::Specification.new do |s|
|
|
8
|
+
s.version = Decidim::Demographics.version
|
|
9
|
+
s.authors = ["Alexandru-Emil Lupu"]
|
|
10
|
+
s.email = ["contact@alecslupu.ro"]
|
|
11
|
+
s.license = "AGPL-3.0-or-later"
|
|
12
|
+
s.homepage = "https://decidim.org"
|
|
13
|
+
s.metadata = {
|
|
14
|
+
"bug_tracker_uri" => "https://github.com/decidim/decidim/issues",
|
|
15
|
+
"documentation_uri" => "https://docs.decidim.org/",
|
|
16
|
+
"funding_uri" => "https://opencollective.com/decidim",
|
|
17
|
+
"homepage_uri" => "https://decidim.org",
|
|
18
|
+
"source_code_uri" => "https://github.com/decidim/decidim"
|
|
19
|
+
}
|
|
20
|
+
s.required_ruby_version = "~> 3.3.0"
|
|
21
|
+
|
|
22
|
+
s.name = "decidim-demographics"
|
|
23
|
+
s.summary = "A decidim demographics module"
|
|
24
|
+
s.description = "Module that collects demographic data about participants."
|
|
25
|
+
|
|
26
|
+
s.files = Dir.chdir(__dir__) do
|
|
27
|
+
`git ls-files -z`.split("\x0").select do |f|
|
|
28
|
+
(File.expand_path(f) == __FILE__) ||
|
|
29
|
+
f.start_with?(*%w(app/ config/ db/ lib/ Rakefile README.md))
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
s.add_dependency "decidim-core", Decidim::Demographics.version
|
|
34
|
+
s.add_dependency "decidim-forms", Decidim::Demographics.version
|
|
35
|
+
|
|
36
|
+
s.add_development_dependency "decidim-dev", Decidim::Demographics.version
|
|
37
|
+
end
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Decidim
|
|
4
|
+
module Demographics
|
|
5
|
+
# This is the engine that runs on the admin interface of `decidim-demographics`.
|
|
6
|
+
# It handles rendering the admin interface for demographics
|
|
7
|
+
class AdminEngine < ::Rails::Engine
|
|
8
|
+
isolate_namespace Decidim::Demographics::Admin
|
|
9
|
+
|
|
10
|
+
paths["db/migrate"] = nil
|
|
11
|
+
paths["lib/tasks"] = nil
|
|
12
|
+
|
|
13
|
+
routes do
|
|
14
|
+
resources :demographics, only: [:index] do
|
|
15
|
+
collection do
|
|
16
|
+
resource :settings, only: [:show, :update]
|
|
17
|
+
|
|
18
|
+
resource :questions, only: [:edit_questions, :update_questions] do
|
|
19
|
+
collection do
|
|
20
|
+
get :edit_questions
|
|
21
|
+
patch :update_questions
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
resources :responses, only: [:index, :show] do
|
|
26
|
+
member do
|
|
27
|
+
get :export_response
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
resources :publish_responses, only: [:index]
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
initializer "decidim_admin_demographics.register_admin" do
|
|
36
|
+
Decidim::Admin::Engine.routes do
|
|
37
|
+
mount Decidim::Demographics::AdminEngine => "/", :as => :decidim_admin_demographics
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
initializer "decidim_admin_demographics.user_menu" do
|
|
42
|
+
Decidim.menu :admin_insights_menu do |menu|
|
|
43
|
+
menu.add_item :demographics,
|
|
44
|
+
I18n.t("title", scope: "decidim.demographics.admin"),
|
|
45
|
+
decidim_admin_demographics.settings_path,
|
|
46
|
+
position: 1.8,
|
|
47
|
+
icon_name: "team-line",
|
|
48
|
+
if: allowed_to?(:update, :organization, organization: current_organization),
|
|
49
|
+
active:
|
|
50
|
+
is_active_link?(decidim_admin_demographics.settings_path) ||
|
|
51
|
+
is_active_link?(decidim_admin_demographics.responses_path) ||
|
|
52
|
+
is_active_link?(decidim_admin_demographics.publish_responses_path) ||
|
|
53
|
+
is_active_link?(decidim_admin_demographics.edit_questions_questions_path)
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
initializer "decidim_admin_demographics.menu" do
|
|
58
|
+
Decidim.menu :admin_demographics_menu do |menu|
|
|
59
|
+
menu.add_item :demographics_settings_edit,
|
|
60
|
+
I18n.t("settings", scope: "decidim.demographics.admin.demographics_menu"),
|
|
61
|
+
decidim_admin_demographics.settings_path,
|
|
62
|
+
icon_name: "settings-4-line"
|
|
63
|
+
|
|
64
|
+
menu.add_item :demographics_questions_edit,
|
|
65
|
+
I18n.t("questions", scope: "decidim.demographics.admin.demographics_menu"),
|
|
66
|
+
decidim_admin_demographics.edit_questions_questions_path,
|
|
67
|
+
icon_name: "question-answer-line"
|
|
68
|
+
|
|
69
|
+
menu.add_item :demographics_responses_view,
|
|
70
|
+
I18n.t("responses", scope: "decidim.demographics.admin.demographics_menu"),
|
|
71
|
+
decidim_admin_demographics.responses_path,
|
|
72
|
+
icon_name: "draft-line",
|
|
73
|
+
active: is_active_link?(decidim_admin_demographics.responses_path) ||
|
|
74
|
+
is_active_link?(decidim_admin_demographics.publish_responses_path)
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def load_seed
|
|
79
|
+
nil
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Decidim
|
|
4
|
+
module Demographics
|
|
5
|
+
# This is the engine that runs on the public interface of `decidim-demographics`.
|
|
6
|
+
# It handles the interaction between participant and own demographic data
|
|
7
|
+
class Engine < ::Rails::Engine
|
|
8
|
+
isolate_namespace Decidim::Demographics
|
|
9
|
+
|
|
10
|
+
routes do
|
|
11
|
+
resource :demographics, only: [:show, :respond, :destroy] do
|
|
12
|
+
collection do
|
|
13
|
+
post :respond
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
initializer "decidim_demographics.register_admin" do
|
|
19
|
+
Decidim::Core::Engine.routes do
|
|
20
|
+
mount Decidim::Demographics::Engine => "/", :as => :demographics_engine
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
initializer "decidim_demographics.user_menu" do
|
|
25
|
+
Decidim.menu :user_menu do |menu|
|
|
26
|
+
menu.add_item :demographics,
|
|
27
|
+
t("name", scope: "decidim.demographics"),
|
|
28
|
+
demographics_engine.demographics_path,
|
|
29
|
+
position: 1.0,
|
|
30
|
+
active: is_active_link?(demographics_engine.demographics_path)
|
|
31
|
+
|
|
32
|
+
menu.move :demographics, after: :download_your_data
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
initializer "decidim_demographics.shakapacker.assets_path" do
|
|
37
|
+
Decidim.register_assets_path File.expand_path("app/packs", root)
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "decidim/components/namer"
|
|
4
|
+
require "decidim/faker/localized"
|
|
5
|
+
require "decidim/core/test/factories"
|
|
6
|
+
require "decidim/participatory_processes/test/factories"
|
|
7
|
+
|
|
8
|
+
FactoryBot.define do
|
|
9
|
+
factory :demographic, class: "Decidim::Demographics::Demographic" do
|
|
10
|
+
transient do
|
|
11
|
+
skip_injection { false }
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
organization
|
|
15
|
+
end
|
|
16
|
+
end
|