decidim-decidim_awesome 0.11.1 → 0.11.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/README.md +54 -2
  4. data/app/cells/concerns/decidim/decidim_awesome/proposal_l_cell_override.rb +6 -24
  5. data/app/cells/decidim/decidim_awesome/content_blocks/map_cell.rb +0 -4
  6. data/app/cells/decidim/decidim_awesome/voting/proposal_metadata_cell.rb +18 -3
  7. data/app/commands/concerns/decidim/decidim_awesome/proposals/create_proposal_override.rb +2 -2
  8. data/app/commands/concerns/decidim/decidim_awesome/proposals/update_proposal_override.rb +2 -2
  9. data/app/commands/concerns/decidim/decidim_awesome/system/register_organization_override.rb +29 -0
  10. data/app/commands/concerns/decidim/decidim_awesome/system/update_organization_override.rb +35 -0
  11. data/app/commands/concerns/decidim/decidim_awesome/update_account_override.rb +30 -0
  12. data/app/commands/decidim/decidim_awesome/admin/create_scoped_style.rb +3 -2
  13. data/app/commands/decidim/decidim_awesome/admin/destroy_scoped_style.rb +6 -4
  14. data/app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable_helper.rb +3 -2
  15. data/app/controllers/concerns/decidim/decidim_awesome/check_login_authorizations.rb +60 -0
  16. data/app/controllers/concerns/decidim/decidim_awesome/needs_awesome_config.rb +0 -2
  17. data/app/controllers/concerns/decidim/decidim_awesome/proposals/memoize_extra_fields.rb +23 -0
  18. data/app/controllers/concerns/decidim/decidim_awesome/proposals/orderable_override.rb +9 -22
  19. data/app/controllers/concerns/decidim/decidim_awesome/use_user_time_zone.rb +32 -0
  20. data/app/controllers/decidim/decidim_awesome/admin/admin_accountability_controller.rb +7 -7
  21. data/app/controllers/decidim/decidim_awesome/admin/admin_authorizations_controller.rb +122 -0
  22. data/app/controllers/decidim/decidim_awesome/admin/checks_controller.rb +1 -1
  23. data/app/controllers/decidim/decidim_awesome/admin/config_controller.rb +7 -1
  24. data/app/controllers/decidim/decidim_awesome/admin/constraints_controller.rb +5 -1
  25. data/app/controllers/decidim/decidim_awesome/admin/maintenance_controller.rb +1 -1
  26. data/app/controllers/decidim/decidim_awesome/admin/scoped_styles_controller.rb +12 -4
  27. data/app/controllers/decidim/decidim_awesome/required_authorizations_controller.rb +58 -0
  28. data/app/forms/concerns/decidim/decidim_awesome/account_form_override.rb +25 -0
  29. data/app/forms/concerns/decidim/decidim_awesome/system/organization_form_override.rb +34 -0
  30. data/app/forms/decidim/decidim_awesome/admin/config_form.rb +41 -8
  31. data/app/helpers/decidim/decidim_awesome/map_helper.rb +28 -26
  32. data/app/models/decidim/decidim_awesome/paper_trail_version.rb +5 -1
  33. data/app/overrides/decidim/account/show/add_timezone_select.html.erb.deface +3 -0
  34. data/app/overrides/decidim/admin/officializations/index/add_modal.html.erb.deface +3 -0
  35. data/app/overrides/decidim/admin/officializations/index/add_td.html.erb.deface +5 -0
  36. data/app/overrides/decidim/admin/officializations/index/add_th.html.erb.deface +5 -0
  37. data/app/overrides/decidim/system/organizations/_advanced_settings/add_awesome_config.html.erb.deface +9 -0
  38. data/app/overrides/layouts/decidim/_head/add_awesome_tags.html.erb.deface +1 -1
  39. data/app/overrides/layouts/decidim/admin/_header/add_awesome_custom_styles.html.erb.deface +3 -0
  40. data/app/overrides/layouts/decidim/admin/_header/add_awesome_tags.html.erb.deface +1 -0
  41. data/app/packs/src/decidim/decidim_awesome/admin/proposal_sortings.js +0 -5
  42. data/app/packs/src/decidim/decidim_awesome/admin/verification_selects.js +21 -0
  43. data/app/packs/src/decidim/decidim_awesome/admin/verifications.js +43 -0
  44. data/app/packs/src/decidim/decidim_awesome/awesome_admin.js +1 -0
  45. data/app/packs/src/decidim/decidim_awesome/awesome_admin_global.js +1 -0
  46. data/app/packs/stylesheets/decidim/decidim_awesome/admin/verifications.scss +99 -0
  47. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_admin_global.scss +1 -0
  48. data/app/permissions/decidim/decidim_awesome/admin/permissions.rb +42 -11
  49. data/app/permissions/decidim/decidim_awesome/permissions.rb +7 -0
  50. data/app/presenters/decidim/decidim_awesome/admin_log/component_presenter_override.rb +3 -5
  51. data/app/presenters/decidim/decidim_awesome/admin_log/user_presenter_override.rb +46 -0
  52. data/app/views/decidim/decidim_awesome/account/_timezone_select.html.erb +3 -0
  53. data/app/views/decidim/decidim_awesome/admin/admin_authorizations/authorization.html.erb +20 -0
  54. data/app/views/decidim/decidim_awesome/admin/admin_authorizations/callout.html.erb +3 -0
  55. data/app/views/decidim/decidim_awesome/admin/admin_authorizations/conflict.html.erb +5 -0
  56. data/app/views/decidim/decidim_awesome/admin/admin_authorizations/edit.html.erb +41 -0
  57. data/app/views/decidim/decidim_awesome/admin/config/_form_scoped_admin_styles.html.erb +1 -0
  58. data/app/views/decidim/decidim_awesome/admin/config/_form_scoped_styles.html.erb +48 -0
  59. data/app/views/decidim/decidim_awesome/admin/config/_form_surveys.html.erb +8 -0
  60. data/app/views/decidim/decidim_awesome/admin/config/_form_verifications.html.erb +15 -0
  61. data/app/views/decidim/decidim_awesome/admin/constraints/no_permissions.html.erb +6 -0
  62. data/app/views/decidim/decidim_awesome/admin/officializations/_participants_td.html.erb +25 -0
  63. data/app/views/decidim/decidim_awesome/admin/officializations/_participants_th.html.erb +1 -0
  64. data/app/views/decidim/decidim_awesome/admin/officializations/_verification_modal.html.erb +9 -0
  65. data/app/views/decidim/decidim_awesome/required_authorizations/index.html.erb +66 -0
  66. data/app/views/decidim/decidim_awesome/system/organizations/_admin_allowed_authorizations.html.erb +5 -0
  67. data/app/views/layouts/decidim/decidim_awesome/_custom_styles.html.erb +1 -1
  68. data/app/views/layouts/decidim/decidim_awesome/admin/_custom_styles.html.erb +3 -0
  69. data/app/views/layouts/decidim/decidim_awesome/admin/admin_authorizations.html.erb +7 -0
  70. data/config/i18n-tasks.yml +6 -0
  71. data/config/locales/ca.yml +172 -10
  72. data/config/locales/cs.yml +169 -6
  73. data/config/locales/de.yml +88 -5
  74. data/config/locales/en.yml +115 -1
  75. data/config/locales/es.yml +173 -10
  76. data/config/locales/eu.yml +617 -23
  77. data/config/locales/fr.yml +121 -7
  78. data/config/locales/hu.yml +10 -4
  79. data/config/locales/it.yml +14 -6
  80. data/config/locales/ja.yml +167 -5
  81. data/config/locales/lt.yml +0 -4
  82. data/config/locales/nl.yml +7 -4
  83. data/config/locales/pt-BR.yml +14 -7
  84. data/config/locales/pt-PT.yml +0 -1
  85. data/config/locales/ro-RO.yml +11 -4
  86. data/config/locales/sv.yml +15 -4
  87. data/lib/decidim/decidim_awesome/admin_engine.rb +2 -0
  88. data/lib/decidim/decidim_awesome/authorizator.rb +34 -0
  89. data/lib/decidim/decidim_awesome/awesome.rb +58 -5
  90. data/lib/decidim/decidim_awesome/awesome_helpers.rb +48 -19
  91. data/lib/decidim/decidim_awesome/checksums.yml +10 -0
  92. data/lib/decidim/decidim_awesome/engine.rb +20 -4
  93. data/lib/decidim/decidim_awesome/menu.rb +45 -9
  94. data/lib/decidim/decidim_awesome/request_memoizer.rb +16 -0
  95. data/lib/decidim/decidim_awesome/test/factories.rb +0 -4
  96. data/lib/decidim/decidim_awesome/test/initializer.rb +4 -0
  97. data/lib/decidim/decidim_awesome/test/shared_examples/config_examples.rb +1 -1
  98. data/lib/decidim/decidim_awesome/test/shared_examples/custom_styles_examples.rb +156 -0
  99. data/lib/decidim/decidim_awesome/test/shared_examples/summary_examples.rb +26 -10
  100. data/lib/decidim/decidim_awesome/version.rb +1 -1
  101. data/package.json +6 -5
  102. metadata +42 -7
  103. data/app/views/decidim/decidim_awesome/admin/config/_form_styles.html.erb +0 -30
@@ -1,4 +1,3 @@
1
- ---
2
1
  ja:
3
2
  activemodel:
4
3
  attributes:
@@ -8,6 +7,9 @@ ja:
8
7
  allow_images_in_proposals: 提案エディターでの画像を許可する
9
8
  allow_videos_in_editors: HTMLエディターで動画を許可する
10
9
  auto_save_forms: ローカルストレージにフォームを自動保存する
10
+ force_authorization_after_login: ログイン/登録後に本人確認を行わせる
11
+ force_authorization_help_text: 認証ページのヘルプテキスト
12
+ force_authorization_with_any_method: いずれかの認証が行われている場合、アクセスできます (デフォルトでは、すべてが必要です)
11
13
  intergram_auto_no_response: ユーザーが最初のメッセージを送信し、応答が受信されなかった後1分後に送信されたメッセージ
12
14
  intergram_auto_response: ユーザーが最初のメッセージを送信した直後に送信されるメッセージ
13
15
  intergram_chat_id: チャットID
@@ -19,8 +21,11 @@ ja:
19
21
  intergram_title_open: 開いたチャットのタイトル
20
22
  intergram_use_floating_button: チェックした場合、閉じたチャットは常にテキストの代わりにボタンになります
21
23
  proposal_custom_fields: 'カスタム項目 #%{id}'
24
+ proposal_private_custom_fields: 非公開カスタムフィールド %{id}
25
+ scoped_admin_styles: カスタムスタイル %{id}
22
26
  scoped_admins: 'スコープ付き管理者グループ #%{id}'
23
27
  scoped_styles: 'カスタムスタイル #%{id}'
28
+ user_timezone: ユーザーが自分のプロフィールでタイムゾーンを設定できるようにします
24
29
  validate_body_max_caps_percent: 本文内での大文字の最大許容割合
25
30
  validate_body_max_marks_together: 本文で許容される最多連続記号文字数
26
31
  validate_body_min_length: 本文に必要な最小文字数
@@ -46,8 +51,10 @@ ja:
46
51
  target: リンク先
47
52
  url: URL
48
53
  visibility: 表示・非表示
49
- proposal:
50
- proposal_custom_fields: カスタム項目
54
+ organization:
55
+ awesome_admins_available_authorizations: 管理者がこれらの認証を持つユーザーを手動で検証できるようにします
56
+ user:
57
+ user_time_zone: 個人のタイムゾーン
51
58
  decidim:
52
59
  admin:
53
60
  actions:
@@ -134,7 +141,11 @@ ja:
134
141
  supported_last: 最後にサポートした順
135
142
  za: Z-A (アルファベット逆順)
136
143
  decidim_awesome:
144
+ account:
145
+ timezone_select:
146
+ time_zone_helper: ログインしている地域の時間帯の日付を表示するために個人のタイムゾーンを使用します。
137
147
  admin:
148
+ actions: アクション
138
149
  admin_accountability:
139
150
  admin_roles:
140
151
  admin: スーパー管理者
@@ -171,6 +182,26 @@ ja:
171
182
  collaborator: コラボレーター
172
183
  moderator: モデレーター
173
184
  valuator: 評価者
185
+ admin_authorizations:
186
+ authorization:
187
+ confirm_destroy: この認証を破棄してもよろしいですか?ユーザーのプラットフォームへのアクセスに影響する可能性があります。
188
+ destroy: 破棄
189
+ granted_at: '許可日時: %{date}'
190
+ metadata: メタデータを含みますか? %{metadata}
191
+ authorization_destroyed: 認証を破棄しました。
192
+ authorization_not_destroyed: 認証を破壊できませんでした
193
+ authorization_transferred: '警告:検証が競合していたため、検証は %{user} に転送されました'
194
+ conflict: 既存の認証との競合があります
195
+ conflict_help_html: "この認証を行う前に、ユーザー%{user} との競合を解決する必要があります。\n <br><br>\n検証の競合は、別のユーザーが認証しようとしているユーザーと同じデータを持っている場合に発生します。\nこの競合は、他のユーザーから競合している認証を削除するか、このユーザーに対して異なるデータを使用することで解決できます。\n"
196
+ edit:
197
+ authorize: '%{user} を %{name} で本人確認'
198
+ do_it_if_sure: ユーザーがこの権限を持っていると確認されている場合のみこれを行ってください
199
+ force_verification: 現在のデータで強制的に検証する
200
+ force_verification_help: 検証に失敗しましたが、ユーザーがこの認証を取得していることを確認している場合は強制できます。
201
+ force_verification_reason: '検証を強制する理由を教えてください:'
202
+ warning: '警告: この認証を強制することで、ユーザーの現在の認証ステータスを上書きします。'
203
+ user_authorized: "%{user} が %{name} で本人確認されました"
204
+ user_not_authorized: "%{user} は %{name} で本人確認されていません"
174
205
  checks:
175
206
  index:
176
207
  admin_head_tags: 管理者向けアプリケーションヘッダーに含まれる Awesome tags
@@ -189,7 +220,6 @@ ja:
189
220
  このインストールでは、古いイメージ<strong>%{total}</strong>件を新システムに移行する必要があるようです。<br>
190
221
  処理を開始すると、バックグラウンドで実行されます。
191
222
  start_image_migrations: "\U0001F449 今すぐ移行プロセスを開始する"
192
- title: システム互換性チェック
193
223
  config:
194
224
  caution: '注意: この機能は、予期しない結果につながる可能性があるデフォルトの動作を大きく変更します。注意して使用してください!'
195
225
  constraints:
@@ -232,33 +262,62 @@ ja:
232
262
  allow_videos_in_editors: すべてのWYSIWYGエディタに動画リンクアイコンを追加します
233
263
  auto_save_forms: 調査などのフォームにユーザーが入力したデータを、LocalStorageを使って自動的に保存します。フォームを送信されていない場合、同じブラウザーで次回アクセスした時に復元されます。フォームを送信すると、データは削除されます。ユーザーがLocalStrorageのデータを削除した場合にも、データは復元されなくなります。
234
264
  drag_and_drop_supported: 画像アップロード時にドラッグ&ドロップが利用できます。画像はサーバーにアップロードされ、外部リソースとして挿入されます(base64インラインエンコーディングは使用しません).
265
+ force_authorization_after_login: '有効にした場合、指定された認証が行われていなければ、ユーザーはログインまたは登録後に認証ページにリダイレクトされます。これはユーザーがログインする前に、特定の認証を使用してユーザーを強制的に本人確認させる場合(スパムを防ぐためなど) に便利です。'
266
+ force_authorization_help_text: 認証が必要な理由を説明するカスタムテキストを追加します。また、ユーザーがヘルプが必要な場合に備えて連絡方法を追加してください。
235
267
  intergram_about: IntergramはTelegramメッセンジャーを使用してページの下部に埋め込まれたライブサポートチャットウィジェットを処理します。
236
268
  intergram_config: '<a href="https://web.telegram.org/#/im?p=@IntergramBot">@Intergram bot</a> をグループに招待するか、直接チャットを開始します。 <a href="https://github.com/idoco/intergram#embed-intergram-in-your-website-with-these-2-simple-steps">+ info</a>'
237
269
  original_editor_override: バージョン 0.26 以降、エディタに画像をアップロードすることが可能になりました(管理者専用)。 そのため、ここでの画像設定はパブリックエディタにのみ影響を与えます(管理者は常に利用可能です)。
238
270
  proposal_custom_fields: 公開ウェブの特定の部分にのみ適用されるカスタム提案項目を作成します (制限されたエディタを使用してください)
239
271
  proposal_custom_fields_example: データは、互換性のある HTML 属性 (dl,dt,dd 要素) を使用した XML オブジェクトとして格納され、通常の提案の "body" を置き換えます。
240
272
  proposal_custom_fields_translations: "ラベル、ヘルプテキスト、プレースホルダー、デフォルト値には、アプリケーション独自の翻訳を使用できます。\nそのためには、文字列リテラルを使う代わりに、I18Nキーを使います(少なくとも1つのドットを含んでいなければなりません)。\n例えば、以下のようになります:\n- \"Title\" の代わりに \"activemodel.attributes.proposal.title\" を使用する\n- \"Address \"の代わりに \"activemodel.attributes.proposal.address\" を使用する\nまた、独自のキーを他のツールと組み合わせて翻訳を定義することもできます (例: Term Customizer モジュールを使用する):\n - \"Biography \"の代わりに \"myapp.custom_fields.bio\"を使用する"
273
+ proposal_private_custom_fields: 公開フィールドと同様ですが、この情報は公開されません(管理者のみがアクセスできます)。
274
+ proposal_private_custom_fields_translations: |
275
+ 非公開カスタムフィールドは、このテキストで別個のボックスに表示されます:
276
+ %{warning}
277
+ このテキストは、下記のキーを使用してカスタム翻訳でカスタマイズできます:
278
+ %{key}
279
+ scoped_admin_styles: ここを隠すと管理者が使用できなくなる可能性があります。ご注意ください。
280
+ scoped_admin_styles_variables: '組織のカスタマイズ色には、以下の CSS 変数を使用できます。'
281
+ scoped_admin_styles_warning: "<strong>警告</strong>: ここでは、この管理者にのみ適用されるカスタム CSS を追加します。"
241
282
  scoped_admins: 一般ユーザーを公開ウェブの特定の部分だけを管理できる管理者に昇格させます(制限エディターを使用してください)。 すでに通常の管理者権限を持つユーザーは無視されることに注意してください。
242
283
  scoped_styles: 公開ウェブの特定の部分にのみ適用されるカスタムCSSを作成します (制限されたエディタを使用してください)
243
284
  scoped_styles_variables: '組織の色のカスタマイズには、以下のCSS変数が使用できます。'
285
+ user_timezone: ユーザープロファイルにタイムゾーンを設定する選択ボックスを追加します. これは、ユーザーのローカル時間の日付と時刻を表示するために使われます.
244
286
  validate_body_max_caps_percent: ゼロの場合大文字を許可しません。100の場合すべてを大文字で書くことを強制します。
245
287
  validate_body_max_marks_together: '並べて入力できる「?」と「!」の数を制限します。 すなわち、それが2の場合、「!!!」はテキストに記入できません'
246
288
  validate_body_min_length: この数字はゼロにできます。その場合、このフィールドを必須ではなくする効果があります。
247
289
  validate_title_max_caps_percent: ゼロの場合大文字を許可しません。100の場合すべてを大文字で書くことを強制します。
248
290
  validate_title_max_marks_together: '並べて入力できる「?」と「!」の数を制限します。 すなわち、それが2の場合、「!!!」はテキストに記入できません'
249
291
  validate_title_min_length: タイトルは常に必須です。この数字はゼロにはできません
292
+ verifications_html: |
293
+ 認証プロセスにいくつかの調整を加えることができます。<br>
294
+ <b>注意:</b> これらの設定を変更すると、一部のユーザーがプラットフォームにアクセスできなくなる可能性があります。慎重に使用してください!<br><br>
295
+ また、これらの設定は全ユーザーに適用されますが、管理者は常に管理者バックエンドにアクセス可能です。
250
296
  validators:
251
297
  body: '「body」フィールドのユーザー入力検証'
252
298
  title: '「タイトル」フィールドのユーザー入力検証'
253
299
  form_proposal_custom_fields:
300
+ delete: 削除
254
301
  new: 新しい「カスタム項目」ボックスを追加
255
302
  remove: '「カスタム項目」ボックスを削除'
256
303
  sure_to_remove: この項目ボックスを削除してもよろしいですか?
304
+ form_proposal_private_custom_fields:
305
+ delete: 削除
306
+ new: 新しい「非公開カスタムフィールド」を追加
307
+ remove: '「非公開カスタムフィールド」を削除'
308
+ sure_to_remove: この非公開フィールドボックスを破棄してもよろしいですか?
309
+ form_scoped_admin_styles:
310
+ delete: 削除
311
+ new: 新しい「管理画面」CSSボックスを追加
312
+ remove: このCSSボックスを削除
313
+ sure_to_remove: このCSSボックスを削除してもよろしいですか?
257
314
  form_scoped_admins:
315
+ delete: 削除
258
316
  new: 新しい「スコープ付き管理者」グループを追加
259
317
  remove: '「スコープ付き管理者」グループを削除'
260
318
  sure_to_remove: この「スコープ付き管理者」グループを削除してもよろしいですか?
261
319
  form_scoped_styles:
320
+ delete: 削除
262
321
  new: 新規CSS boxを追加
263
322
  remove: CSS boxを削除
264
323
  sure_to_remove: このCSS boxを削除してもよろしいですか?
@@ -268,6 +327,18 @@ ja:
268
327
  title: '%{setting} の詳細設定'
269
328
  update: 設定を更新する
270
329
  system: 参加型スペース以外のすべて
330
+ title:
331
+ admins: スコープ付き管理者
332
+ editors: エディター設定
333
+ livechat: ライブチャット
334
+ proposal_custom_fields: '提案カスタムフィールド: 公開フィールド'
335
+ proposal_private_custom_fields: '提案カスタムフィールド: 非公開フィールド'
336
+ proposals: 提案の設定
337
+ scoped_admin_styles: 'カスタムスタイル: 管理画面'
338
+ scoped_styles: 'カスタムスタイル: 公開フロントエンド'
339
+ styles: 独自スタイル
340
+ surveys: 調査&フォーム
341
+ verifications: 本人確認 / 認証の設定
271
342
  update:
272
343
  error: 設定更新エラー %{error}
273
344
  success: 設定は正常に更新されました
@@ -328,17 +399,52 @@ ja:
328
399
  update:
329
400
  error: 'リダイレクトの更新中にエラーが発生しました: %{error}'
330
401
  success: リダイレクトを更新しました
402
+ maintenance:
403
+ private_data:
404
+ component: スペース/コンポーネント
405
+ confirm_delete: このリソースのすべてのプライベートデータを削除してもよろしいですか?この操作は元に戻せません。
406
+ delete: 全て削除
407
+ destroying_private_data: '%{title} のプライベートデータが破棄されるように設定されています。数分後にもう一度確認してください。'
408
+ done: 実行済み
409
+ help_html: |
410
+ このツールを使用すると、特定の参加スペースまたはコンポーネントに関連するすべてのプライベートデータを削除することができます。この操作は取り消しができず、データベースからすべてのプライベートデータが削除されます。
411
+ <br><br>
412
+ <strong>プライベートデータとは何ですか?</strong>
413
+ <br>
414
+ プライベートデータとは、公開されておらず、管理者のみがアクセスできる情報のことを指します。現在のところ、非公開カスタムフィールドの情報がこれに該当します。
415
+ <br><br>
416
+ <strong>プライベートデータを削除するとどうなりますか?</strong>
417
+ <br>
418
+ プライベートデータを削除すると、選択した参加スペースまたはコンポーネントに関連するすべてのプライベート情報がデータベースから完全に削除されます。この操作のログは、監査目的でシステムに保存されます。
419
+ <br><br>
420
+ <strong>公開データはどうなりますか?</strong>
421
+ <br>
422
+ 公開データにはこの操作の影響はありません。削除されるのはプライベートデータのみです。
423
+ <br><br>
424
+ <strong>プライベートデータを削除するまでの最低待機時間はありますか?</strong>
425
+ <br>
426
+ はい、最後の更新から%{time_ago} 未満である場合、プライベートデータを削除することはできません。この設定は、イニシャライザーファイルで変更できます。
427
+ items_count: 影響の合計数
428
+ last_date: 最終更新日
429
+ no_data: '%{time_ago} 前より古いプライベートデータは見つかりませんでした'
430
+ not_destroyable: このリソースはまだ破棄できません
431
+ removing: 削除中...
432
+ time_ago: "%{time} 前"
331
433
  menu:
332
434
  admins: スコープ付き管理者
333
- checks: システム互換性
334
435
  custom_redirects: カスタムリダイレクト
335
436
  editors: エディター設定
336
437
  livechat: ライブチャット
438
+ maintenance:
439
+ checks: システム互換性
440
+ maintenance: メンテナンス
441
+ private_data: プライベートデータ
337
442
  menu_hacks: メニュー調整
338
443
  proposal_custom_fields: 提案カスタム項目
339
444
  proposals: 提案の設定
340
445
  styles: 独自スタイル
341
446
  surveys: 調査&フォーム
447
+ verifications: 本人認証
342
448
  menu_hacks:
343
449
  create:
344
450
  error: メニュー項目作成エラー %{error}
@@ -377,6 +483,32 @@ ja:
377
483
  error: メニュー項目更新エラー %{error}
378
484
  success: メニュー項目は正常に更新されました
379
485
  url_exists: 同じURLがすでに設定されています。もう一度作成し直す前に、内容を修正してください。
486
+ officializations:
487
+ authorizations: 認証
488
+ verification_modal:
489
+ authorizations_for: '%{user} の本人確認'
490
+ close: 閉じる
491
+ proposal_custom_fields:
492
+ menu:
493
+ title: 公開フィールド
494
+ private_body: 非公開本文
495
+ private_data_last_remove: このデータは %{time_ago} 前に破棄されました。
496
+ private_data_last_update: このデータは最後に更新されたのは %{time_ago} 前です。
497
+ proposal_private_custom_fields: 非公開フィールド
498
+ remove_private_data: "👉 削除することを検討してもよいでしょう"
499
+ scoped_admin_styles:
500
+ menu:
501
+ title: 管理画面
502
+ scoped_styles:
503
+ menu:
504
+ title: 公開フロントエンド
505
+ admin_log:
506
+ component:
507
+ destroy_private_data: "%{user_name} は %{space_name} 内のプライベートデータの項目 %{resource_name} を%{count} 件破棄しました"
508
+ user:
509
+ admin_creates_authorization: "%{user_name} が %{resource_name} を %{handler_name} で検証しました"
510
+ admin_destroys_authorization: "%{user_name} が %{handler_name} の検証 %{resource_name} を破棄しました"
511
+ admin_forces_authorization: "%{user_name} は、 %{resource_name} について %{handler_name} による検証を強制しました。理由: %{reason}"
380
512
  amendments:
381
513
  modal:
382
514
  amendment_exists: 修正は既に存在します
@@ -438,6 +570,27 @@ ja:
438
570
  show:
439
571
  view_meeting: ミーティングを表示
440
572
  view_proposal: 提案を表示
573
+ proposal_private_custom_fields_disclosure: この情報は公開されません
574
+ required_authorizations:
575
+ index:
576
+ cancel: あとで %{link} を行う
577
+ granted_title: 許可された本人確認
578
+ logout: ログアウトする
579
+ missing_title: 未検証
580
+ resume_title: 本人確認処理中
581
+ resume_with_method: '%{name} で本人確認を再開'
582
+ title: 本人確認を行う
583
+ verify_with_all_these_options: 'プラットフォームにアクセスできるようにするには、以下すべての方法で本人確認を行ってください:'
584
+ verify_with_any_of_these_options: 'プラットフォームにアクセスする前に、これらの選択肢のうちいずれかを用いて本人確認を行ってください'
585
+ verify_with_method: '%{name} で本人確認する'
586
+ session:
587
+ authorization_is_required: このプラットフォームに参加するには、有効な認証 (%{authorizations}) でアカウントを承認する必要があります。
588
+ system:
589
+ organizations:
590
+ admin_allowed_authoritzations_help_html: |
591
+ 管理者はこれらの認証を使用してユーザーを手動で検証できます。
592
+ <br>セキュリティ上の問題につながる可能性があるため、この機能は注意して使用してください。
593
+ awesome_tweaks: Decidim Awesome Tweaks
441
594
  validators:
442
595
  too_much_caps: 大文字が多すぎます(テキストの %{percent}%以上)
443
596
  voting:
@@ -467,6 +620,9 @@ ja:
467
620
  meetings_map:
468
621
  view_meeting: ミーティングを表示
469
622
  proposals:
623
+ admin:
624
+ exports:
625
+ awesome_private_proposals: プライベートデータを含む提案
470
626
  proposals:
471
627
  orders:
472
628
  az: A-Z (アルファベット順)
@@ -478,6 +634,12 @@ ja:
478
634
  layouts:
479
635
  decidim:
480
636
  decidim_awesome:
637
+ admin:
638
+ maintenance:
639
+ title: 'メンテナンスツール: %{title}'
640
+ titles:
641
+ checks: システム互換性チェック
642
+ private_data: プライベートデータのクリーンアップ
481
643
  awesome_config:
482
644
  amendments: 修正
483
645
  autosaved_error: お使いのブラウザーではLocalStorageをサポートしていないため、フォームは自動保存されません。
@@ -1,4 +1,3 @@
1
- ---
2
1
  lt:
3
2
  activemodel:
4
3
  attributes:
@@ -43,8 +42,6 @@ lt:
43
42
  target: Atsidaro
44
43
  url: Nuoroda
45
44
  visibility: Matomumas
46
- proposal:
47
- proposal_custom_fields: Papildomi laukai
48
45
  decidim:
49
46
  admin:
50
47
  filters:
@@ -95,4 +92,3 @@ lt:
95
92
  Atrodo, kad šiam diegimui reikia perkelti <strong>%{total}</strong> senųjų paveikslėlių į naująją sistemą.<br>
96
93
  Galite pradėti procesą dabar, ir jis bus atliekamas fone.
97
94
  start_image_migrations: "\U0001F449 Pradėti migracijos procesą dabar"
98
- title: Sistemos suderinamumo patikrinimai
@@ -1,4 +1,3 @@
1
- ---
2
1
  nl:
3
2
  activemodel:
4
3
  attributes:
@@ -76,7 +75,6 @@ nl:
76
75
  CSS: Head bevat niet de vereiste <link> stylesheet entries. Om dit op te lossen kun je ze handmatig toevoegen aan je custom -head.html.erb
77
76
  JavaScript: Hoofd bevat niet de vereiste <script> Javascript-vermeldingen. Om het op te lossen kun je het handmatig toevoegen aan je aangepaste admin/_header.html.erb
78
77
  head_tags: Awesome tags zijn in de application header ingevoegd
79
- title: Systeem compatibility checks
80
78
  config:
81
79
  constraints:
82
80
  add_condition: Voeg een case toe
@@ -100,13 +98,17 @@ nl:
100
98
  scoped_styles: Maak aangepaste CSS aan die alleen van toepassing is in bepaalde delen van het openbare web (gebruik hiervoor de restrictie-editor)
101
99
  scoped_styles_variables: 'Je kunt de volgende CSS variabelen gebruiken voor de organisatie op maat gemaakte kleuren:'
102
100
  form_scoped_styles:
103
- new: Voeg een nieuwe CSS-box toe
104
101
  remove: Verwijder dit CSS-vak
105
102
  sure_to_remove: Weet je zeker dat je dit CSS-vak wilt verwijderen?
106
103
  show:
107
104
  title: Tweaks voor %{setting}
108
105
  update: Configuratie bijwerken
109
106
  system: Overal, behalve participatieve ruimtes
107
+ title:
108
+ editors: Editor hacks
109
+ proposals: Voorstellen hacks
110
+ styles: Aangepaste stijlen
111
+ surveys: Enquêtes & formulieren
110
112
  update:
111
113
  error: Fout bij het bijwerken van de configuratie! %{error}
112
114
  success: Configuratie succesvol aangepast
@@ -136,9 +138,10 @@ nl:
136
138
  new:
137
139
  save: Opslaan
138
140
  menu:
139
- checks: Systeemcompabiliteit
140
141
  editors: Editor hacks
141
142
  livechat: Live Chat
143
+ maintenance:
144
+ checks: Systeemcompabiliteit
142
145
  menu_hacks: Menu tweaks
143
146
  proposals: Voorstellen hacks
144
147
  styles: Aangepaste stijlen
@@ -1,4 +1,3 @@
1
- ---
2
1
  pt-BR:
3
2
  activemodel:
4
3
  attributes:
@@ -35,8 +34,6 @@ pt-BR:
35
34
  target: Aberto em
36
35
  url: URL
37
36
  visibility: Visibilidade
38
- proposal:
39
- proposal_custom_fields: Campos personalizados
40
37
  decidim:
41
38
  admin:
42
39
  menu:
@@ -96,9 +93,7 @@ pt-BR:
96
93
  Parece que essa instalação precisa migrar <strong>%{total}</strong> das imagens antigas para o novo sistema.<br>
97
94
  Você pode iniciar o processo agora e ele será realizado em segundo plano.
98
95
  start_image_migrations: "\U0001F449 Inicie o processo de migração agora"
99
- title: Checar compatibilidade do sistema
100
96
  config:
101
- caution: 'NOTA: Este recurso modifica fortemente alguns comportamentos padrão que podem levar a resultados inesperados. Use-o com cuidado!'
102
97
  constraints:
103
98
  add_condition: Adicionar Caso
104
99
  always: Sempre
@@ -143,15 +138,19 @@ pt-BR:
143
138
  scoped_styles: Crie CSS personalizado que se aplica somente em certas partes da web pública (use o editor de restrições para isso)
144
139
  scoped_styles_variables: 'Você pode usar as seguintes variáveis CSS para cores personalizadas da organização:'
145
140
  form_proposal_custom_fields:
141
+ delete: Deletar
146
142
  new: Adicionar uma nova caixa "campos personalizados"
147
143
  remove: Remover esta caixa "campos personalizados"
148
144
  sure_to_remove: Deseja mesmo destruir essa caixa de campos?
145
+ form_proposal_private_custom_fields:
146
+ delete: Deletar
149
147
  form_scoped_admins:
148
+ delete: Deletar
150
149
  new: Adicionar um novo grupo "Administradores com Escopos"
151
150
  remove: Remover este grupo "Administradores com Escopos"
152
151
  sure_to_remove: Deseja mesmo destruir esse grupo de "Administradores com Escopos"?
153
152
  form_scoped_styles:
154
- new: Adicionar uma nova caixa CSS
153
+ delete: Deletar
155
154
  remove: Remover esta caixa CSS
156
155
  sure_to_remove: Deseja mesmo destruir essa caixa de CSS?
157
156
  none: "⛔ Nunca! - Desativar qualquer outra restrição"
@@ -160,6 +159,13 @@ pt-BR:
160
159
  title: Ajustes para %{setting}
161
160
  update: Configuração atualizada
162
161
  system: Qualquer lugar exceto salas participativas
162
+ title:
163
+ admins: Administradores com escopo
164
+ editors: Hacks do editor
165
+ livechat: Chat Ao Vivo
166
+ proposals: Pacotes de Propostas
167
+ styles: Estilos Personalizados
168
+ surveys: Pesquisas e Formulários
163
169
  update:
164
170
  error: Erro ao atualizar configuração!%{error}
165
171
  success: Configuração atualizada com sucesso
@@ -221,10 +227,11 @@ pt-BR:
221
227
  success: Redirecionamento atualizado com sucesso
222
228
  menu:
223
229
  admins: Administradores com escopo
224
- checks: Compatibilidade de sistema
225
230
  custom_redirects: Redirecionamentos personalizados
226
231
  editors: Hacks do editor
227
232
  livechat: Chat Ao Vivo
233
+ maintenance:
234
+ checks: Compatibilidade de sistema
228
235
  menu_hacks: Ajustes do menu
229
236
  proposal_custom_fields: Campos Personalizados de Propostas
230
237
  proposals: Pacotes de Propostas
@@ -1,4 +1,3 @@
1
- ---
2
1
  pt:
3
2
  activemodel:
4
3
  attributes:
@@ -1,4 +1,3 @@
1
- ---
2
1
  ro:
3
2
  activemodel:
4
3
  attributes:
@@ -22,8 +21,6 @@ ro:
22
21
  target: Deschidere in
23
22
  url: URL
24
23
  visibility: Vizibilitate
25
- proposal:
26
- proposal_custom_fields: Câmpuri particularizate
27
24
  decidim:
28
25
  admin:
29
26
  filters:
@@ -82,7 +79,6 @@ ro:
82
79
  decidim_version: Versiune Decidim %{version}
83
80
  images_migrated: Imagini migrate în ActiveStorage
84
81
  start_image_migrations: "\U0001F449 Începe procesul de migrare acum"
85
- title: Verificări compatibilitate sistem
86
82
  config:
87
83
  constraints:
88
84
  always: Întotdeauna
@@ -94,7 +90,18 @@ ro:
94
90
  error: Eroare la crearea unui nou "câmp personalizat"! %{error}
95
91
  form:
96
92
  edit_label: Redenumește eticheta
93
+ form_proposal_custom_fields:
94
+ delete: Șterge
95
+ form_proposal_private_custom_fields:
96
+ delete: Șterge
97
+ form_scoped_admins:
98
+ delete: Șterge
99
+ form_scoped_styles:
100
+ delete: Șterge
97
101
  process_groups: Grupuri de procese
102
+ title:
103
+ styles: Stiluri personalizate
104
+ surveys: Chestionare și formulare
98
105
  constraints:
99
106
  errors:
100
107
  not_unique: Această condiție există deja
@@ -1,4 +1,3 @@
1
- ---
2
1
  sv:
3
2
  activemodel:
4
3
  attributes:
@@ -25,8 +24,6 @@ sv:
25
24
  target: Öppna i
26
25
  url: Webbadress
27
26
  visibility: Synlighet
28
- proposal:
29
- proposal_custom_fields: Tilläggsfält
30
27
  decidim:
31
28
  admin:
32
29
  menu:
@@ -70,12 +67,25 @@ sv:
70
67
  edit: Redigera
71
68
  form:
72
69
  edit_label: Byt namn på etikett
70
+ form_proposal_custom_fields:
71
+ delete: Radera
72
+ form_proposal_private_custom_fields:
73
+ delete: Radera
74
+ form_scoped_admins:
75
+ delete: Radera
73
76
  form_scoped_styles:
77
+ delete: Radera
74
78
  remove: Ta bort CSS-rutan
75
79
  process_groups: Dialoggrupper
76
80
  show:
77
81
  title: Tweaks för %{setting}
78
82
  update: Uppdatera konfiguration
83
+ title:
84
+ admins: Begränsade administratörer
85
+ editors: Editor hacks
86
+ proposals: Proposals hacks
87
+ styles: Custom styles
88
+ surveys: Surveys & forms
79
89
  constraints:
80
90
  new:
81
91
  cancel: Avbryt
@@ -100,10 +110,11 @@ sv:
100
110
  title: Ny omdirigering
101
111
  menu:
102
112
  admins: Begränsade administratörer
103
- checks: System compatibility
104
113
  custom_redirects: Anpassade omdirigeringar
105
114
  editors: Editor hacks
106
115
  livechat: Live Chat
116
+ maintenance:
117
+ checks: System compatibility
107
118
  menu_hacks: Menu tweaks
108
119
  proposals: Proposals hacks
109
120
  styles: Custom styles
@@ -32,6 +32,7 @@ module Decidim
32
32
  delete :destroy_private_data, on: :member
33
33
  get :checks, on: :collection, to: "checks#index"
34
34
  end
35
+ resources :admin_authorizations, only: [:edit, :update, :destroy]
35
36
  post :migrate_images, to: "checks#migrate_images"
36
37
  root to: "config#show"
37
38
  end
@@ -64,6 +65,7 @@ module Decidim
64
65
  end
65
66
  # submenus
66
67
  Decidim::DecidimAwesome::Menu.register_custom_fields_submenu!
68
+ Decidim::DecidimAwesome::Menu.register_custom_styles_submenu!
67
69
  Decidim::DecidimAwesome::Menu.register_menu_hacks_submenu!
68
70
  Decidim::DecidimAwesome::Menu.register_maintenance_admin_menu!
69
71
  Decidim::DecidimAwesome::Menu.register_awesome_admin_menu!
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module DecidimAwesome
5
+ class Authorizator
6
+ def initialize(user, admin_authorizations)
7
+ @user = user
8
+ @admin_authorizations = admin_authorizations
9
+ @admin_authorizations = [] if @admin_authorizations.blank? || !admin_authorizations.is_a?(Array)
10
+ @organization = user.organization
11
+ end
12
+ attr_reader :user, :organization, :admin_authorizations
13
+
14
+ def authorizations
15
+ return @authorizations if defined?(@authorizations)
16
+
17
+ @authorizations = organization.available_authorizations.filter_map do |name|
18
+ workflow = Decidim::Verifications.find_workflow_manifest(name)
19
+ next unless workflow
20
+
21
+ authorization = Decidim::Authorization.find_by(user:, name:)
22
+ {
23
+ name:,
24
+ fullname: workflow.fullname,
25
+ granted: authorization&.granted?,
26
+ pending: authorization.present? && !authorization.granted?,
27
+ managed: admin_authorizations.include?(name.to_s)
28
+ }
29
+ end
30
+ @authorizations = @authorizations.sort_by { |i| i[:managed] ? 0 : 1 }
31
+ end
32
+ end
33
+ end
34
+ end