decidim-templates 0.27.10 → 0.28.0.rc4

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 (88) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE-AGPLv3.txt +661 -0
  3. data/app/commands/decidim/templates/admin/apply_questionnaire_template.rb +1 -1
  4. data/app/commands/decidim/templates/admin/copy_proposal_answer_template.rb +21 -0
  5. data/app/commands/decidim/templates/admin/copy_questionnaire_template.rb +3 -33
  6. data/app/commands/decidim/templates/admin/copy_template.rb +43 -0
  7. data/app/commands/decidim/templates/admin/create_block_user_template.rb +15 -0
  8. data/app/commands/decidim/templates/admin/create_proposal_answer_template.rb +47 -0
  9. data/app/commands/decidim/templates/admin/create_questionnaire_template.rb +6 -19
  10. data/app/commands/decidim/templates/admin/create_template.rb +54 -0
  11. data/app/commands/decidim/templates/admin/destroy_questionnaire_template.rb +22 -0
  12. data/app/commands/decidim/templates/admin/update_proposal_answer_template.rb +51 -0
  13. data/app/commands/decidim/templates/admin/update_template.rb +6 -0
  14. data/app/controllers/decidim/templates/admin/application_controller.rb +0 -8
  15. data/app/controllers/decidim/templates/admin/block_user_templates_controller.rb +124 -0
  16. data/app/controllers/decidim/templates/admin/concerns/templatable.rb +1 -1
  17. data/app/controllers/decidim/templates/admin/proposal_answer_templates_controller.rb +173 -0
  18. data/app/controllers/decidim/templates/admin/questionnaire_templates_controller.rb +4 -4
  19. data/app/forms/decidim/templates/admin/proposal_answer_template_form.rb +23 -0
  20. data/app/helpers/decidim/templates/admin/application_helper.rb +18 -0
  21. data/app/models/decidim/templates/template.rb +0 -6
  22. data/app/packs/entrypoints/decidim_templates_admin.js +2 -0
  23. data/app/packs/src/decidim/templates/admin/block_user_template_chooser.js +20 -0
  24. data/app/packs/src/decidim/templates/admin/proposal_answer_template_chooser.js +31 -0
  25. data/app/packs/stylesheets/decidim/templates/templates.scss +3 -12
  26. data/app/presenters/decidim/templates/admin_log/template_presenter.rb +2 -2
  27. data/app/views/decidim/templates/admin/block_user_templates/_form.html.erb +13 -0
  28. data/app/views/decidim/templates/admin/block_user_templates/_template_chooser.html.erb +12 -0
  29. data/app/views/decidim/templates/admin/block_user_templates/edit.html.erb +18 -0
  30. data/app/views/decidim/templates/admin/block_user_templates/index.html.erb +45 -0
  31. data/app/views/decidim/templates/admin/block_user_templates/new.html.erb +18 -0
  32. data/app/views/decidim/templates/admin/proposal_answer_templates/_form.html.erb +38 -0
  33. data/app/views/decidim/templates/admin/proposal_answer_templates/_template_chooser.html.erb +16 -0
  34. data/app/views/decidim/templates/admin/proposal_answer_templates/edit.html.erb +18 -0
  35. data/app/views/decidim/templates/admin/proposal_answer_templates/index.html.erb +51 -0
  36. data/app/views/decidim/templates/admin/proposal_answer_templates/new.html.erb +18 -0
  37. data/app/views/decidim/templates/admin/questionnaire_templates/_choose.html.erb +35 -35
  38. data/app/views/decidim/templates/admin/questionnaire_templates/_form.html.erb +9 -12
  39. data/app/views/decidim/templates/admin/questionnaire_templates/_preview.html.erb +52 -60
  40. data/app/views/decidim/templates/admin/questionnaire_templates/edit.html.erb +31 -16
  41. data/app/views/decidim/templates/admin/questionnaire_templates/index.html.erb +6 -8
  42. data/app/views/decidim/templates/admin/questionnaire_templates/new.html.erb +18 -7
  43. data/app/views/decidim/templates/admin/questionnaire_templates/preview.js.erb +4 -1
  44. data/app/views/layouts/decidim/admin/templates.html.erb +1 -9
  45. data/config/assets.rb +2 -1
  46. data/config/locales/ar.yml +8 -2
  47. data/config/locales/bg.yml +0 -73
  48. data/config/locales/ca.yml +47 -8
  49. data/config/locales/cs.yml +47 -8
  50. data/config/locales/de.yml +47 -8
  51. data/config/locales/en.yml +47 -8
  52. data/config/locales/es-MX.yml +47 -8
  53. data/config/locales/es-PY.yml +47 -8
  54. data/config/locales/es.yml +47 -8
  55. data/config/locales/eu.yml +47 -8
  56. data/config/locales/fi-plain.yml +47 -8
  57. data/config/locales/fi.yml +47 -8
  58. data/config/locales/fr-CA.yml +33 -8
  59. data/config/locales/fr.yml +47 -8
  60. data/config/locales/ga-IE.yml +6 -2
  61. data/config/locales/gl.yml +6 -10
  62. data/config/locales/hu.yml +6 -10
  63. data/config/locales/it.yml +6 -10
  64. data/config/locales/ja.yml +28 -8
  65. data/config/locales/kaa.yml +4 -1
  66. data/config/locales/lt.yml +18 -8
  67. data/config/locales/nl.yml +6 -11
  68. data/config/locales/no.yml +6 -10
  69. data/config/locales/pl.yml +6 -24
  70. data/config/locales/pt-BR.yml +6 -16
  71. data/config/locales/pt.yml +6 -10
  72. data/config/locales/ro-RO.yml +18 -8
  73. data/config/locales/sv.yml +8 -20
  74. data/config/locales/tr-TR.yml +8 -10
  75. data/config/locales/zh-CN.yml +6 -11
  76. data/config/locales/zh-TW.yml +18 -8
  77. data/db/migrate/20221006055954_add_field_values_and_target_to_decidim_templates.rb +21 -0
  78. data/db/seeds.rb +6 -6
  79. data/lib/decidim/templates/admin_engine.rb +22 -17
  80. data/lib/decidim/templates/engine.rb +4 -0
  81. data/lib/decidim/templates/menu.rb +48 -0
  82. data/lib/decidim/templates/test/factories.rb +23 -15
  83. data/lib/decidim/templates/test/shared_examples/copies_all_questionnaire_contents_examples.rb +3 -3
  84. data/lib/decidim/templates/test/shared_examples/uses_questionnaire_templates.rb +10 -8
  85. data/lib/decidim/templates/version.rb +1 -1
  86. metadata +49 -61
  87. data/config/locales/he-IL.yml +0 -1
  88. data/decidim-templates.gemspec +0 -34
@@ -1,45 +1,45 @@
1
- <div class="card">
2
- <div class="card-divider">
3
- <h2 class="card-title"><%= form_title %></h2>
4
- <div class="button--title">
5
- <%= link_to t(".skip_template"), decidim_admin_templates.skip_questionnaire_templates_path(questionnaire_id: questionnaire, url: request.url), class: "button tiny button--simple", method: :post %>
1
+ <div class="item_show__header">
2
+ <h2 class="item_show__header-title">
3
+ <%= form_title %>
4
+ <div class="ml-auto">
5
+ <%= link_to t(".skip_template"), decidim_admin_templates.skip_questionnaire_templates_path(questionnaire_id: questionnaire, url: request.url), class: "button button__sm button__secondary", method: :post %>
6
6
  </div>
7
- </div>
8
-
9
- <div class="card-section">
10
- <div class="row column">
11
- <%= t(".description") %>
12
- </div>
13
-
14
- <%= decidim_form_for([questionnaire], url: decidim_admin_templates.apply_questionnaire_templates_url(questionnaire_id: questionnaire, url: request.url), method: :post, html: { class: "form choose_questionnaire_templates" }) do |form| %>
15
- <%= datalist_select(templates,
16
- {
17
- id: "choose-template",
18
- list: "template-list",
19
- label: t(".label"),
20
- name: "select-template",
21
- placeholder: t("placeholder", scope: "decidim.templates.admin.questionnaire_templates.choose"),
22
- data: {
23
- previewurl: decidim_admin_templates.preview_questionnaire_templates_url(format: :js)
24
- }
25
- }
26
- ) { form.hidden_field :questionnaire_template_id } %>
27
-
28
- <div class="card-section questionnaire-template-preview">
29
- <h3 class="template-name"></h3>
30
- <p class="template-description"></p>
31
- <div class="row column">
32
- <div class="row column choose-template-preview">
7
+ </h2>
8
+ </div>
9
+ <div class="item__edit item__edit-1col">
10
+ <div class="item__edit-form">
11
+ <%= decidim_form_for([questionnaire], url: decidim_admin_templates.apply_questionnaire_templates_url(questionnaire_id: questionnaire, url: request.url), method: :post, html: { class: "form form-defaults choose_questionnaire_templates" }) do |form| %>
12
+ <div class="form__wrapper">
13
+ <div class="card p-4">
14
+ <%= t(".description") %>
15
+ <%= datalist_select(templates,
16
+ {
17
+ id: "choose-template",
18
+ list: "template-list",
19
+ label: t(".label"),
20
+ name: "select-template",
21
+ placeholder: t("placeholder", scope: "decidim.templates.admin.questionnaire_templates.choose"),
22
+ data: {
23
+ previewurl: decidim_admin_templates.preview_questionnaire_templates_url(format: :js)
24
+ }
25
+ }
26
+ ) { form.hidden_field :questionnaire_template_id } %>
27
+ <div class="card-section questionnaire-template-preview pt-4 hide">
28
+ <h2 class="item_show__header-title template-name"></h2>
29
+ <p class="template-description py-4"></p>
30
+ <div class="row column choose-template-preview"></div>
33
31
  </div>
34
32
  </div>
35
33
  </div>
36
34
 
37
- <div class="button--double form-general-submit create-from-template">
38
- <%= form.submit t(".create_from_template"), class: "button" %>
35
+ <div class="item__edit-sticky">
36
+ <div class="item__edit-sticky-container">
37
+ <%= form.submit t(".create_from_template"), class: "button button__sm button__secondary" %>
38
+ </div>
39
39
  </div>
40
40
  <% end %>
41
41
  </div>
42
42
  </div>
43
43
 
44
- <%= javascript_pack_tag "decidim_templates" %>
45
- <%= stylesheet_pack_tag "decidim_templates", media: "all" %>
44
+ <%= append_javascript_pack_tag "decidim_templates" %>
45
+ <%= append_stylesheet_pack_tag "decidim_templates" %>
@@ -1,16 +1,13 @@
1
- <div class="card">
2
- <div class="card-divider">
3
- <h2 class="card-title"><%= t(".template_title") %></h2>
4
- <%= form.submit t(".save"), class: "button tiny button--title" %>
5
- </div>
6
-
7
- <div class="card-section">
8
- <div class="row column">
9
- <%= form.translated :text_field, :name %>
10
- </div>
1
+ <div class="form__wrapper">
2
+ <div class="card pt-4">
3
+ <div class="card-section">
4
+ <div class="row column">
5
+ <%= form.translated :text_field, :name, aria: { label: :name } %>
6
+ </div>
11
7
 
12
- <div class="row column">
13
- <%= form.translated :text_area, :description, rows: 3 %>
8
+ <div class="row column">
9
+ <%= form.translated :text_area, :description, rows: 3, aria: { label: :description } %>
10
+ </div>
14
11
  </div>
15
12
  </div>
16
13
  </div>
@@ -1,73 +1,65 @@
1
1
  <% columns = @preview_form.responses.map(&:question).any?(&:matrix?) ? 9 : 6 %>
2
2
 
3
3
  <div class="row columns">
4
- <h3 class="section-heading"><%= translated_attribute questionnaire.title %></h3>
5
- <div class="row">
6
- <div class="columns large-<%= columns %> medium-centered lead">
7
- <%= decidim_sanitize translated_attribute questionnaire.description %>
8
- </div>
9
- </div>
4
+ <h3 class="h3"><%= translated_attribute questionnaire.title %></h3>
5
+ <%= decidim_sanitize translated_attribute questionnaire.description %>
10
6
  </div>
11
7
 
12
- <div class="row">
13
- <div class="columns large-<%= columns %> medium-centered">
14
- <div class="card">
15
- <div class="card__content">
16
- <div class="answer-questionnaire">
17
- <%= decidim_form_for(@preview_form, url: "", method: :post, authenticity_token: !defined?(skip_authenticity_token), html: { class: "form answer-questionnaire" }, data: { "safe-path" => "" }) do |form| %>
18
- <%= invisible_captcha %>
19
- <% answer_idx = 0 %>
20
- <% cleaned_answer_idx = 0 %>
21
- <% @preview_form.responses_by_step.each_with_index do |step_answers, step_index| %>
22
- <div id="step-<%= step_index %>" class="<%= step_index.zero? ? "questionnaire-step" : "questionnaire-step hide" %>" data-toggler=".hide">
23
- <% if @preview_form.total_steps > 1 %>
24
- <h4 class="section-heading">
25
- <%= t(".current_step", step: step_index + 1) %> <span class="answer-questionnaire__steps"><%= t(".of_total_steps", total_steps: @preview_form.total_steps) %></span>
26
- </h4>
27
- <% end %>
28
-
29
- <% step_answers.each do |answer| %>
30
- <div class="row column answer" data-max-choices="<%= answer.question.max_choices %>">
31
- <%= fields_for "questionnaire[responses][#{answer_idx}]", answer do |answer_form| %>
32
- <%= render(
33
- "decidim/forms/questionnaires/answer",
34
- answer_form: answer_form,
35
- answer: answer,
36
- answer_idx: answer_idx,
37
- cleaned_answer_idx: cleaned_answer_idx,
38
- disabled: false
39
- ) %>
40
- <% end %>
41
- </div>
42
- <% if !answer.question.separator? %>
43
- <% cleaned_answer_idx += 1 %>
44
- <% end %>
45
- <% answer_idx += 1 %>
46
- <% end %>
47
-
48
- <% if step_index + 1 == @preview_form.total_steps %>
49
- <div class="row column tos-agreement">
50
- <%= form.check_box :tos_agreement, label: t(".tos_agreement"), id: "questionnaire_tos_agreement", disabled: false %>
51
- <div class="help-text">
52
- <%= decidim_sanitize translated_attribute questionnaire.tos %>
53
- </div>
54
- </div>
55
- <% end %>
8
+ <div class="row columns">
9
+ <%= decidim_form_for(@preview_form, url: "", method: :post, html: { class: "form form-defaults answer-questionnaire" }, data: { "safe-path" => "" }) do |form| %>
10
+ <%= invisible_captcha %>
11
+ <% answer_idx = 0 %>
12
+ <% cleaned_answer_idx = 0 %>
13
+ <% @preview_form.responses_by_step.each_with_index do |step_answers, step_index| %>
14
+ <div id="step-<%= step_index %>" class="<%= step_index.zero? ? "questionnaire-step" : "questionnaire-step hide" %>" data-toggler=".hide">
15
+ <div class="form__wrapper">
16
+ <% if @preview_form.total_steps > 1 %>
17
+ <h4>
18
+ <%= t(".current_step", step: step_index + 1) %> <span class="answer-questionnaire__steps"><%= t(".of_total_steps", total_steps: @preview_form.total_steps) %></span>
19
+ </h4>
20
+ <% end %>
56
21
 
57
- <%= cell(
58
- "decidim/forms/step_navigation",
59
- step_index,
60
- total_steps: @preview_form.total_steps,
61
- button_disabled: true,
62
- form: form
22
+ <% step_answers.each do |answer| %>
23
+ <div class="mb-4 answer" data-max-choices="<%= answer.question.max_choices %>">
24
+ <%= fields_for "questionnaire[responses][#{answer_idx}]", answer do |answer_form| %>
25
+ <%= render(
26
+ "decidim/forms/questionnaires/answer",
27
+ answer_form:,
28
+ answer:,
29
+ answer_idx:,
30
+ cleaned_answer_idx:,
31
+ disabled: false
63
32
  ) %>
64
- </div>
33
+ <% end %>
34
+ </div>
35
+ <% if !answer.question.separator? %>
36
+ <% cleaned_answer_idx += 1 %>
65
37
  <% end %>
38
+ <% answer_idx += 1 %>
66
39
  <% end %>
40
+
41
+ <% if step_index + 1 == @preview_form.total_steps %>
42
+ <div class="tos-agreement">
43
+ <%= form.check_box :tos_agreement, label: t(".tos_agreement"), id: "questionnaire_tos_agreement", disabled: false %>
44
+ <div class="help-text">
45
+ <%= decidim_sanitize translated_attribute questionnaire.tos %>
46
+ </div>
47
+ </div>
48
+ <% end %>
49
+ </div>
50
+
51
+ <div class="form__wrapper-block flex-col-reverse md:flex-row justify-between mb-4">
52
+ <%= cell(
53
+ "decidim/forms/step_navigation",
54
+ step_index,
55
+ total_steps: @preview_form.total_steps,
56
+ button_disabled: true,
57
+ form:
58
+ ) %>
67
59
  </div>
68
60
  </div>
69
- </div>
70
- </div>
61
+ <% end %>
62
+ <% end %>
71
63
  </div>
72
64
 
73
- <%= stylesheet_pack_tag "decidim_templates", media: "all" %>
65
+ <%= append_stylesheet_pack_tag "decidim_templates" %>
@@ -1,21 +1,36 @@
1
- <% add_decidim_page_title(t(".questionnaire")) %>
2
- <%= decidim_form_for(@form, url: questionnaire_template_path, html: { class: "form edit_questionnaire_template" }) do |f| %>
3
- <%= render partial: "form", object: f %>
4
- <% end %>
1
+ <% add_decidim_page_title(t(".title")) %>
2
+ <div class="item_show__header">
3
+ <h2 class="item_show__header-title">
4
+ <%= t(".title") %>
5
+ </h2>
6
+ </div>
7
+ <div class="item__edit item__edit-1col">
8
+ <div class="item__edit-form">
9
+ <%= decidim_form_for(@form, url: questionnaire_template_path, html: { class: "form form-defaults edit_questionnaire_template" }) do |f| %>
10
+ <%= render partial: "form", object: f %>
11
+ <div class="item__edit-sticky">
12
+ <div class="item__edit-sticky-container">
13
+ <%= f.submit t("save", scope: "decidim.templates.admin.block_user_templates.form"), class: "button button__sm button__secondary" %>
14
+ </div>
15
+ </div>
16
+ <% end %>
5
17
 
6
- <div class="card">
7
- <div class="card-divider">
8
- <h2 class="card-title"><%= t(".questionnaire") %></h2>
9
- <%= link_to t(".edit"), edit_questionnaire_path(template), class: "button tiny button--title" %>
10
- </div>
18
+ <div class="card mt-4">
19
+ <div class="card-divider">
20
+ <h2 class="card-title"><%= t(".questionnaire") %>
21
+ <%= link_to t(".edit"), edit_questionnaire_path(template), class: "button button__sm button__secondary" %>
22
+ </h2>
23
+ </div>
11
24
 
12
- <div class="card-section questionnaire-template-preview">
13
- <div class="row column">
14
- <% if template.templatable.questions.any? %>
15
- <%= render partial: "preview", locals: { questionnaire: template.templatable } %>
16
- <% else %>
17
- <%= t(".empty") %>
18
- <% end %>
25
+ <div class="card-section questionnaire-template-preview">
26
+ <% if template.templatable.questions.any? %>
27
+ <%= render partial: "preview", locals: { questionnaire: template.templatable } %>
28
+ <% else %>
29
+ <div class="row columns pb-4">
30
+ <%= t(".empty") %>
31
+ </div>
32
+ <% end %>
33
+ </div>
19
34
  </div>
20
35
  </div>
21
36
  </div>
@@ -1,14 +1,13 @@
1
1
  <% add_decidim_page_title(t(".title")) %>
2
2
  <div class="card">
3
- <div class="card-divider">
4
- <h2 class="card-title">
3
+ <div class="item_show__header">
4
+ <h2 class="item_show__header-title">
5
5
  <%= t ".title" %>
6
6
  <% if allowed_to?(:create, :template) %>
7
- <%= link_to t("actions.new", scope: "decidim.admin", name: t("template.name", scope: "decidim.models").downcase), [:new, :questionnaire_template], class: "button tiny button--title new" %>
7
+ <%= link_to t("actions.new_template", scope: "decidim.admin.templates"), [:new, :questionnaire_template], class: "button button__sm button__secondary new" %>
8
8
  <% end %>
9
9
  </h2>
10
10
  </div>
11
- <div class="card-section">
12
11
  <% if @templates.any? %>
13
12
  <div class="table-scroll">
14
13
  <table class="table-list questionnaire-templates">
@@ -30,15 +29,15 @@
30
29
  <td><%= l template.created_at, format: :long %></td>
31
30
  <td class="table-list__actions">
32
31
  <% if allowed_to?(:update, :template, questionnaire_template: template) %>
33
- <%= icon_link_to "pencil", edit_questionnaire_template_path(template), t("actions.edit", scope: "decidim.admin"), class: "edit" %>
32
+ <%= icon_link_to "pencil-line", edit_questionnaire_template_path(template), t("actions.edit", scope: "decidim.admin"), class: "edit" %>
34
33
  <% end %>
35
34
 
36
35
  <% if allowed_to?(:copy, :template, questionnaire_template: template) %>
37
- <%= icon_link_to "clipboard", copy_questionnaire_template_path(template), t("actions.duplicate", scope: "decidim.admin"), method: :post %>
36
+ <%= icon_link_to "file-copy-line", copy_questionnaire_template_path(template), t("actions.duplicate", scope: "decidim.admin"), method: :post %>
38
37
  <% end %>
39
38
 
40
39
  <% if allowed_to?(:destroy, :template, questionnaire_template: template) %>
41
- <%= icon_link_to "circle-x", questionnaire_template_path(template), t("actions.destroy", scope: "decidim.admin"), method: :delete, data: { confirm: t(".confirm_delete") }, class: "action-icon--remove" %>
40
+ <%= icon_link_to "delete-bin-line", questionnaire_template_path(template), t("actions.destroy", scope: "decidim.admin"), method: :delete, data: { confirm: t(".confirm_delete") }, class: "action-icon--remove" %>
42
41
  <% end %>
43
42
  </td>
44
43
  </tr>
@@ -49,5 +48,4 @@
49
48
  <% else %>
50
49
  <%= t("templates.empty", scope: "decidim.admin") %>
51
50
  <% end %>
52
- </div>
53
51
  </div>
@@ -1,8 +1,19 @@
1
+ <% add_decidim_page_title(t(".title")) %>
1
2
  <% add_decidim_page_title(t("templates", scope: "decidim.admin.titles")) %>
2
- <% content_for :title do %>
3
- <%= t("templates", scope: "decidim.admin.titles") %>
4
- <% end %>
5
-
6
- <%= decidim_form_for(@form, url: questionnaire_templates_path, html: { class: "form new_questionnaire_template" }) do |f| %>
7
- <%= render partial: "form", object: f %>
8
- <% end %>
3
+ <div class="item_show__header">
4
+ <h2 class="item_show__header-title">
5
+ <%= t(".title") %>
6
+ </h2>
7
+ </div>
8
+ <div class="item__edit item__edit-1col">
9
+ <div class="item__edit-form">
10
+ <%= decidim_form_for(@form, url: questionnaire_templates_path, html: { class: "form-defaults form new_questionnaire_template" }) do |f| %>
11
+ <%= render partial: "form", object: f %>
12
+ <div class="item__edit-sticky">
13
+ <div class="item__edit-sticky-container">
14
+ <%= f.submit t("save", scope: "decidim.templates.admin.block_user_templates.form"), class: "button button__sm button__secondary" %>
15
+ </div>
16
+ </div>
17
+ <% end %>
18
+ </div>
19
+ </div>
@@ -7,5 +7,8 @@
7
7
  $templateName.html("<%= translated_attribute @template.name %>");
8
8
  $templateDescription.html("<%= translated_attribute @template.description %>");
9
9
 
10
- $preview.html("<%= j(render partial: "preview", locals: { skip_authenticity_token: true, questionnaire: @questionnaire }) %>");
10
+ $preview.html("<%= j(render partial: "preview", locals: { questionnaire: @questionnaire }) %>");
11
+
12
+ var $container = $(".questionnaire-template-preview");
13
+ $container.removeClass("hide");
11
14
  }());
@@ -1,13 +1,5 @@
1
- <% content_for :sidebar_menu_nav do %>
2
- <%= sidebar_menu(:admin_template_types_menu).render %>
3
- <% end %>
1
+ <% add_secondary_root_menu(:admin_template_types_menu) %>
4
2
 
5
3
  <%= render "layouts/decidim/admin/application" do %>
6
- <div class="process-title">
7
- <div class="process-title-content">
8
- <%= link_to t("decidim.admin.titles.templates"), decidim_admin_templates.root_url %>
9
- </div>
10
- </div>
11
-
12
4
  <%= yield %>
13
5
  <% end %>
data/config/assets.rb CHANGED
@@ -4,5 +4,6 @@ base_path = File.expand_path("..", __dir__)
4
4
 
5
5
  Decidim::Webpacker.register_path("#{base_path}/app/packs")
6
6
  Decidim::Webpacker.register_entrypoints(
7
- decidim_templates: "#{base_path}/app/packs/entrypoints/decidim_templates.js"
7
+ decidim_templates: "#{base_path}/app/packs/entrypoints/decidim_templates.js",
8
+ decidim_templates_admin: "#{base_path}/app/packs/entrypoints/decidim_templates_admin.js"
8
9
  )
@@ -19,6 +19,12 @@ ar:
19
19
  name: النموذج
20
20
  templates:
21
21
  admin:
22
+ block_user_templates:
23
+ form:
24
+ save: حفظ
25
+ proposal_answer_templates:
26
+ form:
27
+ save: حفظ
22
28
  questionnaire_templates:
23
29
  choose:
24
30
  label: اختيار نموذج
@@ -26,7 +32,7 @@ ar:
26
32
  skip_template: تخطي
27
33
  edit:
28
34
  edit: تعديل
29
- form:
30
- save: حفظ
31
35
  preview:
32
36
  current_step: الخطوة %{step}
37
+ template_types:
38
+ block_user: حظر رسائل المستخدم
@@ -1,74 +1 @@
1
- ---
2
1
  bg:
3
- activemodel:
4
- attributes:
5
- questionnaire:
6
- title: Заглавие
7
- template:
8
- description: Описание
9
- name: Име
10
- decidim:
11
- admin:
12
- menu:
13
- templates: Шаблони
14
- templates:
15
- apply:
16
- error: Възникна проблем при прилагането на този шаблон.
17
- success: Шаблонът е приложен успешно
18
- copy:
19
- error: Възникна проблем при копирането на този шаблон.
20
- success: Шаблонът е копиран успешно
21
- create:
22
- error: Възникна проблем при създаването на този шаблон.
23
- success: Шаблонът е създаден успешно
24
- destroy:
25
- success: Шаблонът е изтрит успешно
26
- empty: Все още няма шаблони.
27
- update:
28
- error: Възникна проблем при обновяването на този шаблон.
29
- success: Шаблонът е обновен успешно
30
- titles:
31
- template_types:
32
- questionnaires: Шаблони за въпросници
33
- templates: Шаблони
34
- models:
35
- questionnaire_template:
36
- fields:
37
- questions: Брой въпроси
38
- title: Заглавие на въпросник
39
- template:
40
- fields:
41
- created_at: Създаден на
42
- name: Шаблон
43
- templates:
44
- admin:
45
- questionnaire_templates:
46
- choose:
47
- create_from_template: Създайте от шаблон
48
- description: На път сте да създадете нов въпросник. Можете да изберете предварително дефиниран шаблон и да го промените след това.
49
- label: Избор на шаблон
50
- placeholder: Избор на шаблон
51
- skip_template: Пропусни
52
- edit:
53
- edit: Редактирай
54
- empty: Все още няма въпроси
55
- questionnaire: Въпросник
56
- form:
57
- save: Запази
58
- template_title: Информация за шаблона
59
- title: Шаблон за въпросник %{questionnaire_for}
60
- index:
61
- confirm_delete: Сигурни ли сте, че желаете да изтриете този шаблон?
62
- title: Шаблони за въпросници
63
- preview:
64
- current_step: Стъпка %{step}
65
- of_total_steps: от %{total_steps}
66
- tos_agreement: С участието си приемате Условията на услугата
67
- admin_log:
68
- template:
69
- create: "%{user_name} създаде шаблона на въпросника %{resource_name}"
70
- delete: "%{user_name} изтри шаблона на въпросника %{resource_name}"
71
- duplicate: "%{user_name} дублира шаблона на въпросника %{resource_name}"
72
- update: "%{user_name} актуализира шаблона на въпросника %{resource_name}"
73
- template_types:
74
- questionnaires: Въпросници
@@ -10,23 +10,27 @@ ca:
10
10
  decidim:
11
11
  admin:
12
12
  menu:
13
+ manage: Gestionar
13
14
  templates: Plantilles
14
15
  templates:
16
+ actions:
17
+ new_template: Afegir plantilla
15
18
  apply:
16
19
  error: S'ha produït un error en actualitzar aquesta plantilla.
17
- success: La plantilla s'ha aplicat correctament
20
+ success: La plantilla s'ha aplicat correctament.
18
21
  copy:
19
22
  error: S'ha produït un error en copiar aquesta plantilla.
20
- success: La plantilla s'ha copiat correctament
23
+ success: La plantilla s'ha copiat correctament.
21
24
  create:
22
25
  error: S'ha produït un error en crear aquesta plantilla.
23
- success: La plantilla s'ha creat correctament
26
+ success: La plantilla s'ha creat correctament.
24
27
  destroy:
25
- success: La plantilla s'ha eliminat correctament
28
+ success: La plantilla s'ha eliminat correctament.
26
29
  empty: Encara no hi ha plantilles.
30
+ missing_resource: "(recurs absent)"
27
31
  update:
28
32
  error: S'ha produït un error en actualitzar aquesta plantilla.
29
- success: La plantilla s'ha actualitzat correctament
33
+ success: La plantilla s'ha actualitzat correctament.
30
34
  titles:
31
35
  template_types:
32
36
  questionnaires: Plantilles de qüestionari
@@ -42,6 +46,38 @@ ca:
42
46
  name: Plantilla
43
47
  templates:
44
48
  admin:
49
+ block_user_templates:
50
+ edit:
51
+ title: Editar la plantilla del missatge de bloqueig del compte d'usuària
52
+ form:
53
+ save: Desar
54
+ index:
55
+ confirm_delete: Segur que vols eliminar aquesta plantilla?
56
+ title: Bloquejar els missatges de la usuària
57
+ new:
58
+ title: Nova plantilla del missatge de bloqueig del compte d'usuària
59
+ template_chooser:
60
+ select_template: Selecciona una plantilla de resposta
61
+ proposal_answer_templates:
62
+ edit:
63
+ title: Editar la plantilla de resposta a la proposta
64
+ form:
65
+ component_constraint_help: Tingues en compte que només es llistaran els espais de participació que tinguin habilitat algun component de "propostes".
66
+ hint1_html: "<strong>%{organization}</strong> es reemplaçarà pel nom de l'organització"
67
+ hint2_html: "<strong>%{name}</strong> es reemplaçarà pel nom de l'autora"
68
+ hint3_html: "<strong>%{admin}</strong> serà reemplaçat pel nom de l'administradora (la que està responent a la proposta)"
69
+ hint_html: "<strong>Suggeriment:</strong> Pots fer servir aquestes variables a qualsevol lloc a la plantilla de resposta i seran substituïdes pels valors en actiu quan es faci servir la plantilla"
70
+ save: Desar
71
+ index:
72
+ component_constraint: Afegir restricció
73
+ confirm_delete: Segur que vols eliminar aquesta plantilla?
74
+ global_scope: Global (disponible a tot arreu)
75
+ internal_state: Estat intern
76
+ title: Respostes a la proposta
77
+ new:
78
+ title: Nova plantilla de resposta a proposta
79
+ template_chooser:
80
+ select_template: Selecciona una plantilla de resposta
45
81
  questionnaire_templates:
46
82
  choose:
47
83
  create_from_template: Crear des d'una plantilla
@@ -51,15 +87,16 @@ ca:
51
87
  skip_template: Ometre
52
88
  edit:
53
89
  edit: Editar
54
- empty: Encara no hi ha preguntes
90
+ empty: Encara no hi ha preguntes.
55
91
  questionnaire: Qüestionari
92
+ title: Editar la plantilla del qüestionari
56
93
  form:
57
- save: Desar
58
- template_title: Informació de la plantilla
59
94
  title: Plantilla del qüestionari %{questionnaire_for}
60
95
  index:
61
96
  confirm_delete: Segur que vols eliminar aquesta plantilla?
62
97
  title: Plantilles de qüestionari
98
+ new:
99
+ title: Nova plantilla de qüestioniari
63
100
  preview:
64
101
  current_step: Pas %{step}
65
102
  of_total_steps: de %{total_steps}
@@ -71,4 +108,6 @@ ca:
71
108
  duplicate: "%{user_name} ha duplicat la plantilla del qüestionari %{resource_name}"
72
109
  update: "%{user_name} ha actualitzat la plantilla del qüestionari %{resource_name}"
73
110
  template_types:
111
+ block_user: Bloquejar els missatges de la usuària
112
+ proposal_answer_templates: Respostes a propostes
74
113
  questionnaires: Qüestionari