decidim-decidim_awesome 0.8.3 → 0.9.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (117) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +52 -0
  3. data/README.md +55 -45
  4. data/Rakefile +1 -1
  5. data/app/commands/decidim/decidim_awesome/admin/create_constraint.rb +1 -1
  6. data/app/commands/decidim/decidim_awesome/admin/create_custom_redirect.rb +1 -1
  7. data/app/commands/decidim/decidim_awesome/admin/create_menu_hack.rb +1 -1
  8. data/app/commands/decidim/decidim_awesome/admin/create_proposal_custom_field.rb +1 -1
  9. data/app/commands/decidim/decidim_awesome/admin/create_scoped_admin.rb +1 -1
  10. data/app/commands/decidim/decidim_awesome/admin/create_scoped_style.rb +1 -1
  11. data/app/commands/decidim/decidim_awesome/admin/destroy_constraint.rb +1 -1
  12. data/app/commands/decidim/decidim_awesome/admin/destroy_custom_redirect.rb +1 -1
  13. data/app/commands/decidim/decidim_awesome/admin/destroy_menu_hack.rb +1 -1
  14. data/app/commands/decidim/decidim_awesome/admin/destroy_proposal_custom_field.rb +1 -1
  15. data/app/commands/decidim/decidim_awesome/admin/destroy_scoped_admin.rb +1 -1
  16. data/app/commands/decidim/decidim_awesome/admin/destroy_scoped_style.rb +1 -1
  17. data/app/commands/decidim/decidim_awesome/admin/rename_scope_label.rb +1 -1
  18. data/app/commands/decidim/decidim_awesome/admin/update_config.rb +2 -3
  19. data/app/commands/decidim/decidim_awesome/admin/update_constraint.rb +2 -2
  20. data/app/commands/decidim/decidim_awesome/admin/update_custom_redirect.rb +1 -1
  21. data/app/commands/decidim/decidim_awesome/admin/update_menu_hack.rb +1 -1
  22. data/app/commands/decidim/decidim_awesome/command.rb +14 -0
  23. data/app/commands/decidim/decidim_awesome/create_editor_image.rb +1 -1
  24. data/app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable.rb +67 -0
  25. data/app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable_helper.rb +37 -0
  26. data/app/controllers/decidim/decidim_awesome/admin/admin_accountability_controller.rb +72 -0
  27. data/app/controllers/decidim/decidim_awesome/admin/checks_controller.rb +6 -3
  28. data/app/controllers/decidim/decidim_awesome/admin/config_controller.rb +2 -0
  29. data/app/controllers/decidim/decidim_awesome/admin/custom_redirects_controller.rb +2 -0
  30. data/app/controllers/decidim/decidim_awesome/admin/menu_hacks_controller.rb +2 -0
  31. data/app/controllers/decidim/decidim_awesome/editor_images_controller.rb +0 -2
  32. data/app/forms/decidim/decidim_awesome/admin/config_form.rb +14 -0
  33. data/app/forms/decidim/decidim_awesome/admin/menu_form.rb +1 -1
  34. data/app/forms/decidim/decidim_awesome/proposals/proposal_wizard_create_step_form_override.rb +26 -8
  35. data/app/helpers/decidim/decidim_awesome/admin/config_constraints_helpers.rb +12 -8
  36. data/app/helpers/decidim/decidim_awesome/map_helper.rb +14 -11
  37. data/app/jobs/decidim/decidim_awesome/export_admin_actions_job.rb +28 -0
  38. data/app/middleware/decidim/decidim_awesome/current_config.rb +4 -0
  39. data/app/models/decidim/decidim_awesome/awesome_config.rb +0 -1
  40. data/app/models/decidim/decidim_awesome/config_constraint.rb +0 -2
  41. data/app/models/decidim/decidim_awesome/editor_image.rb +0 -3
  42. data/app/models/decidim/decidim_awesome/paper_trail_version.rb +113 -0
  43. data/app/packs/entrypoints/decidim_admin_decidim_awesome.js +3 -2
  44. data/app/packs/images/decidim/decidim_awesome/pokecode-logo.png +0 -0
  45. data/app/packs/src/decidim/decidim_awesome/admin/auto_edit.js +7 -7
  46. data/app/packs/src/decidim/decidim_awesome/admin/check_redirections.js +2 -2
  47. data/app/packs/src/decidim/decidim_awesome/admin/constraints.js +5 -5
  48. data/app/packs/src/decidim/decidim_awesome/admin/custom_fields_builder.js +11 -10
  49. data/app/packs/src/decidim/decidim_awesome/admin/form_exit_warn.js +1 -0
  50. data/app/packs/src/decidim/decidim_awesome/admin/user_picker.js +1 -0
  51. data/app/packs/src/decidim/decidim_awesome/awesome_map/api/fetcher.js +13 -13
  52. data/app/packs/src/decidim/decidim_awesome/awesome_map/awesome_map.js +14 -12
  53. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/controller.js +36 -15
  54. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/proposals_controller.js +3 -3
  55. data/app/packs/src/decidim/decidim_awesome/awesome_map/controls_ui.js +25 -26
  56. data/app/packs/src/decidim/decidim_awesome/awesome_map/load_map.js +1 -0
  57. data/app/packs/src/decidim/decidim_awesome/editors/editor.js +33 -12
  58. data/app/packs/src/decidim/decidim_awesome/forms/autosave.js +8 -12
  59. data/app/packs/src/decidim/decidim_awesome/forms/custom_fields_renderer.js +36 -27
  60. data/app/packs/src/decidim/decidim_awesome/forms/rich_text_plugin.js +6 -4
  61. data/app/packs/src/decidim/decidim_awesome/proposals/custom_fields.js +7 -7
  62. data/app/packs/src/decidim/decidim_awesome/proposals/images.js +2 -2
  63. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_admin.scss +8 -5
  64. data/app/permissions/decidim/decidim_awesome/admin/permissions.rb +15 -1
  65. data/app/permissions/decidim/decidim_awesome/permissions.rb +4 -6
  66. data/app/presenters/decidim/decidim_awesome/paper_trail_base_presenter.rb +28 -0
  67. data/app/presenters/decidim/decidim_awesome/participatory_space_role_presenter.rb +45 -0
  68. data/app/presenters/decidim/decidim_awesome/role_base_presenter.rb +102 -0
  69. data/app/presenters/decidim/decidim_awesome/user_entity_presenter.rb +50 -0
  70. data/app/serializers/decidim/decidim_awesome/paper_trail_version_serializer.rb +37 -0
  71. data/app/validators/concerns/decidim/decidim_awesome/etiquette_validator_override.rb +41 -0
  72. data/app/views/decidim/decidim_awesome/admin/admin_accountability/index.html.erb +64 -0
  73. data/app/views/decidim/decidim_awesome/admin/checks/_assets_tester.html.erb +2 -0
  74. data/app/views/decidim/decidim_awesome/admin/config/_form_proposals.html.erb +82 -2
  75. data/app/views/decidim/decidim_awesome/admin/shared/_filters_with_date.html.erb +56 -0
  76. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +1 -1
  77. data/app/views/layouts/decidim/admin/decidim_awesome.html.erb +1 -1
  78. data/app/views/{v0.25 → v0.27}/layouts/decidim/_head.html.erb +12 -4
  79. data/config/i18n-tasks.yml +4 -0
  80. data/config/locales/ca.yml +73 -2
  81. data/config/locales/cs.yml +66 -2
  82. data/config/locales/de.yml +72 -1
  83. data/config/locales/en.yml +93 -1
  84. data/config/locales/es.yml +72 -2
  85. data/config/locales/fr.yml +73 -2
  86. data/config/locales/it.yml +1 -2
  87. data/config/locales/ja.yml +75 -4
  88. data/config/locales/nl.yml +0 -1
  89. data/config/locales/pt-BR.yml +1 -2
  90. data/db/seeds.rb +1 -1
  91. data/lib/decidim/decidim_awesome/admin_engine.rb +15 -1
  92. data/lib/decidim/decidim_awesome/awesome.rb +55 -1
  93. data/lib/decidim/decidim_awesome/checksums.yml +22 -6
  94. data/lib/decidim/decidim_awesome/config.rb +14 -14
  95. data/lib/decidim/decidim_awesome/context_analyzers/request_analyzer.rb +1 -1
  96. data/lib/decidim/decidim_awesome/engine.rb +36 -9
  97. data/lib/decidim/decidim_awesome/iframe_component/component.rb +2 -1
  98. data/lib/decidim/decidim_awesome/menu_hacker.rb +7 -1
  99. data/lib/decidim/decidim_awesome/system_checker.rb +2 -0
  100. data/lib/decidim/decidim_awesome/test/factories.rb +7 -0
  101. data/lib/decidim/decidim_awesome/test/initializer.rb +10 -2
  102. data/lib/decidim/decidim_awesome/test/shared_examples/action_log_presenter_examples.rb +61 -0
  103. data/lib/decidim/decidim_awesome/test/shared_examples/scoped_admins_examples.rb +7 -4
  104. data/lib/decidim/decidim_awesome/test/shared_examples/summary_examples.rb +2 -2
  105. data/lib/decidim/decidim_awesome/version.rb +2 -2
  106. data/lib/tasks/decidim_awesome_active_storage_migrations_tasks.rake +1 -3
  107. data/package.json +21 -163
  108. metadata +38 -42
  109. data/app/packs/images/decidim/decidim_awesome/platoniq-logo.png +0 -0
  110. data/app/packs/src/vendor/image-resize.min.js +0 -1
  111. data/app/packs/src/vendor/image-upload.min.js +0 -6
  112. data/app/packs/src/vendor/leaflet.featuregroup.subgroup.js +0 -184
  113. data/app/views/decidim/proposals/collaborative_drafts/_edit_form_fields.html.erb +0 -83
  114. data/app/views/decidim/proposals/collaborative_drafts/show.html.erb +0 -1
  115. data/app/views/v0.25/decidim/proposals/collaborative_drafts/_show.html.erb +0 -128
  116. data/app/views/v0.26/decidim/proposals/collaborative_drafts/_show.html.erb +0 -128
  117. /data/app/views/{v0.25 → v0.27}/layouts/decidim/admin/_header.html.erb +0 -0
@@ -1,128 +0,0 @@
1
- <% add_decidim_page_title(Decidim::Proposals::CollaborativeDraft.model_name.human(count: 2)) %>
2
- <% add_decidim_meta_tags({
3
- description: present(@collaborative_draft).body,
4
- title: present(@collaborative_draft).title,
5
- url: collaborative_draft_url(@collaborative_draft.id)
6
- }) %>
7
-
8
- <% if current_user.nil? || allowed_to?(:request_access, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
9
- <div class="row">
10
- <div class="columns">
11
- <div class="callout secondary"><%= t("info-message", scope:"decidim.proposals.collaborative_drafts.show").html_safe %></div>
12
- </div>
13
- </div>
14
- <% end %>
15
-
16
- <div class="row column view-header">
17
- <div class="m-bottom">
18
- <%= link_to collaborative_drafts_path do %>
19
- <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
20
- <%= t("back", scope:"decidim.proposals.collaborative_drafts.show") %>
21
- <% end %>
22
- </div>
23
-
24
- <h2 class="heading2">
25
- <%= present(@collaborative_draft).title(links: true, html_escape: true) %>
26
- </h2>
27
-
28
- <%= cell("decidim/coauthorships", @collaborative_draft, has_actions: true, size: 3, context: { current_user: current_user }) %>
29
- </div>
30
-
31
- <div class="row">
32
- <div class="columns mediumlarge-8 large-9">
33
- <div class="section">
34
- <%== cell("decidim/proposals/collaborative_draft_m", @collaborative_draft, full_badge: true).badge %>
35
-
36
- <%= render_proposal_body(@collaborative_draft) %>
37
-
38
- <% if component_settings.geocoding_enabled? %>
39
- <%= render partial: "decidim/shared/static_map", locals: { icon_name: "proposals", geolocalizable: @collaborative_draft } %>
40
- <% end %>
41
-
42
- <%= cell "decidim/tags", @collaborative_draft, context: { extra_classes: ["tags--collaborative-draft"] } %>
43
- </div>
44
- </div>
45
-
46
- <div class="columns section view-side mediumlarge-4 large-3">
47
- <% if allowed_to?(:publish, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
48
- <div class="card text-center" id="collaborative_draft_publish">
49
- <div class="card__content">
50
- <%= cell "decidim/proposals/irreversible_action_modal", @collaborative_draft, action: :publish %>
51
- <div class="text-small">
52
- <%= t("publish_info", scope:"decidim.proposals.collaborative_drafts.show") %>
53
- <%= cell "decidim/proposals/irreversible_action_modal", @collaborative_draft, action: :withdraw %>
54
- </div>
55
- </div>
56
- </div>
57
- <% end %>
58
-
59
- <div class="card text-center">
60
- <div class="card__content">
61
- <% if @collaborative_draft.published? %>
62
- <%= cell "decidim/proposals/collaborative_draft_link_to_proposal", @collaborative_draft %>
63
- <% else %>
64
- <div>
65
- <%= resource_version_number(@collaborative_draft.versions_count, "text-large") %>
66
- <div class="text-medium">
67
- <%= resource_version_of(@collaborative_draft.versions_count) %>
68
- </div>
69
- </div>
70
-
71
- <div>
72
- <span class="text-medium">
73
- <%= link_to_other_resource_versions(collaborative_draft_versions_path(@collaborative_draft)) %>
74
- </span>
75
- </div>
76
- <% end %>
77
-
78
- <% if allowed_to?(:edit, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
79
- <%= link_to t("edit", scope:"decidim.proposals.collaborative_drafts.show"), edit_collaborative_draft_path(@collaborative_draft), class: "button hollow expanded button--sc mt-s", id: "collaborative_draft_edit" %>
80
- <% end %>
81
-
82
- <%= render "request_access_form" %>
83
-
84
- <% if @collaborative_draft.requesters.include? current_user %>
85
- <button type="button" class="button expanded button--sc mt-s">
86
- <%= t("requested_access", scope:"decidim.proposals.collaborative_drafts.show") %>
87
- </button>
88
- <% end %>
89
- </div>
90
-
91
- <div class="card__status">
92
- <ul class="card-data">
93
- <li class="card-data__item authors_status">
94
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.authors") do %>
95
- <%= icon("people", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.versions.group_by(&:whodunnit).size}" %>
96
- <% end %>
97
- </li>
98
-
99
- <li class="card-data__item versions_status">
100
- <%= link_to collaborative_draft_versions_path(@collaborative_draft) do %>
101
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.contributions") do %>
102
- <%= icon("pencil", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.versions.count}" %>
103
- <% end %>
104
- <% end %>
105
- </li>
106
- <li class="card-data__item">
107
- <%= link_to "#comments" do %>
108
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.comments") do %>
109
- <%= icon("comment-square", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.comments_count}" %>
110
- <% end %>
111
- <% end %>
112
- </li>
113
- </ul>
114
- </div>
115
- </div>
116
-
117
- <%= render partial: "collaborator_requests" %>
118
-
119
- <%= resource_reference(@collaborative_draft) %>
120
-
121
- <%= render partial: "decidim/shared/share_modal" %>
122
- </div>
123
- </div>
124
-
125
- <%= attachments_for @collaborative_draft %>
126
- <%= comments_for @collaborative_draft %>
127
-
128
- <%= cell("decidim/flag_modal", @collaborative_draft) %>
@@ -1,128 +0,0 @@
1
- <% add_decidim_page_title(Decidim::Proposals::CollaborativeDraft.model_name.human(count: 2)) %>
2
- <% add_decidim_meta_tags({
3
- description: present(@collaborative_draft).body,
4
- title: present(@collaborative_draft).title,
5
- url: collaborative_draft_url(@collaborative_draft.id)
6
- }) %>
7
-
8
- <% if current_user.nil? || allowed_to?(:request_access, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
9
- <div class="row">
10
- <div class="columns">
11
- <div class="callout secondary"><%= t("info-message", scope:"decidim.proposals.collaborative_drafts.show").html_safe %></div>
12
- </div>
13
- </div>
14
- <% end %>
15
-
16
- <div class="row column view-header">
17
- <div class="m-bottom">
18
- <%= link_to collaborative_drafts_path do %>
19
- <%= icon "chevron-left", class: "icon--small", role: "img", "aria-hidden": true %>
20
- <%= t("back", scope:"decidim.proposals.collaborative_drafts.show") %>
21
- <% end %>
22
- </div>
23
-
24
- <h2 class="heading2">
25
- <%= present(@collaborative_draft).title(links: true, html_escape: true) %>
26
- </h2>
27
-
28
- <%= cell("decidim/coauthorships", @collaborative_draft, has_actions: true, size: 3, context: { current_user: current_user }) %>
29
- </div>
30
-
31
- <div class="row">
32
- <div class="columns mediumlarge-8 large-9">
33
- <div class="section">
34
- <%== cell("decidim/proposals/collaborative_draft_m", @collaborative_draft, full_badge: true).badge %>
35
-
36
- <%= render_proposal_body(@collaborative_draft) %>
37
-
38
- <% if component_settings.geocoding_enabled? %>
39
- <%= render partial: "decidim/shared/static_map", locals: { icon_name: "proposals", geolocalizable: @collaborative_draft } %>
40
- <% end %>
41
-
42
- <%= cell "decidim/tags", @collaborative_draft, context: { extra_classes: ["tags--collaborative-draft"] } %>
43
- </div>
44
- </div>
45
-
46
- <div class="columns section view-side mediumlarge-4 large-3">
47
- <% if allowed_to?(:publish, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
48
- <div class="card text-center" id="collaborative_draft_publish">
49
- <div class="card__content">
50
- <%= cell "decidim/proposals/irreversible_action_modal", @collaborative_draft, action: :publish %>
51
- <div class="text-small">
52
- <%= t("publish_info", scope:"decidim.proposals.collaborative_drafts.show") %>
53
- <%= cell "decidim/proposals/irreversible_action_modal", @collaborative_draft, action: :withdraw %>
54
- </div>
55
- </div>
56
- </div>
57
- <% end %>
58
-
59
- <div class="card text-center">
60
- <div class="card__content">
61
- <% if @collaborative_draft.published? %>
62
- <%= cell "decidim/proposals/collaborative_draft_link_to_proposal", @collaborative_draft %>
63
- <% else %>
64
- <div>
65
- <%= resource_version_number(@collaborative_draft.versions_count, "text-large") %>
66
- <div class="text-medium">
67
- <%= resource_version_of(@collaborative_draft.versions_count) %>
68
- </div>
69
- </div>
70
-
71
- <div>
72
- <span class="text-medium">
73
- <%= link_to_other_resource_versions(collaborative_draft_versions_path(@collaborative_draft)) %>
74
- </span>
75
- </div>
76
- <% end %>
77
-
78
- <% if allowed_to?(:edit, :collaborative_draft, collaborative_draft: @collaborative_draft) %>
79
- <%= link_to t("edit", scope:"decidim.proposals.collaborative_drafts.show"), edit_collaborative_draft_path(@collaborative_draft), class: "button hollow expanded button--sc mt-s", id: "collaborative_draft_edit" %>
80
- <% end %>
81
-
82
- <%= render "request_access_form" %>
83
-
84
- <% if @collaborative_draft.requesters.include? current_user %>
85
- <button type="button" class="button expanded button--sc mt-s">
86
- <%= t("requested_access", scope:"decidim.proposals.collaborative_drafts.show") %>
87
- </button>
88
- <% end %>
89
- </div>
90
-
91
- <div class="card__status">
92
- <ul class="card-data">
93
- <li class="card-data__item authors_status">
94
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.authors") do %>
95
- <%= icon("people", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.versions.group_by(&:whodunnit).size}" %>
96
- <% end %>
97
- </li>
98
-
99
- <li class="card-data__item versions_status">
100
- <%= link_to collaborative_draft_versions_path(@collaborative_draft) do %>
101
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.contributions") do %>
102
- <%= icon("pencil", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.versions.count}" %>
103
- <% end %>
104
- <% end %>
105
- </li>
106
- <li class="card-data__item">
107
- <%= link_to "#comments" do %>
108
- <%= with_tooltip t("decidim.proposals.models.collaborative_draft.fields.comments") do %>
109
- <%= icon("comment-square", class: "icon--small", role: "img", "aria-hidden": true) + " " + "#{@collaborative_draft.comments_count}" %>
110
- <% end %>
111
- <% end %>
112
- </li>
113
- </ul>
114
- </div>
115
- </div>
116
-
117
- <%= render partial: "collaborator_requests" %>
118
-
119
- <%= resource_reference(@collaborative_draft) %>
120
-
121
- <%= render partial: "decidim/shared/share_modal" %>
122
- </div>
123
- </div>
124
-
125
- <%= attachments_for @collaborative_draft %>
126
- <%= comments_for @collaborative_draft %>
127
-
128
- <%= cell("decidim/flag_modal", @collaborative_draft) %>