decidim-participatory_processes 0.26.0 → 0.27.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (153) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +0 -4
  3. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/filters.erb +3 -3
  4. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/show.erb +1 -0
  5. data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes_cell.rb +6 -11
  6. data/app/cells/decidim/participatory_process_groups/content_blocks/title/show.erb +3 -3
  7. data/app/cells/decidim/participatory_process_groups/content_blocks/title_cell.rb +1 -0
  8. data/app/cells/decidim/participatory_process_groups/process_filters_cell.rb +15 -18
  9. data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes/show.erb +1 -1
  10. data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_cell.rb +1 -1
  11. data/app/cells/decidim/participatory_processes/filtered_participatory_processes_cell.rb +11 -7
  12. data/app/cells/decidim/participatory_processes/process_filters/show.erb +13 -9
  13. data/app/cells/decidim/participatory_processes/process_filters/type_filter.erb +17 -0
  14. data/app/cells/decidim/participatory_processes/process_filters_cell.rb +50 -16
  15. data/app/cells/decidim/participatory_processes/process_m/tags.erb +1 -1
  16. data/app/cells/decidim/participatory_processes/process_m_cell.rb +1 -0
  17. data/app/commands/decidim/participatory_processes/admin/activate_participatory_process_step.rb +1 -1
  18. data/app/commands/decidim/participatory_processes/admin/copy_participatory_process.rb +11 -8
  19. data/app/commands/decidim/participatory_processes/admin/create_participatory_process.rb +6 -2
  20. data/app/commands/decidim/participatory_processes/admin/create_participatory_process_group.rb +1 -1
  21. data/app/commands/decidim/participatory_processes/admin/create_participatory_process_step.rb +1 -1
  22. data/app/commands/decidim/participatory_processes/admin/create_participatory_process_type.rb +47 -0
  23. data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_admin.rb +1 -1
  24. data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_group.rb +1 -1
  25. data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_step.rb +1 -1
  26. data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_type.rb +49 -0
  27. data/app/commands/decidim/participatory_processes/admin/import_participatory_process.rb +9 -6
  28. data/app/commands/decidim/participatory_processes/admin/notify_role_assigned_to_participatory_process.rb +1 -1
  29. data/app/commands/decidim/participatory_processes/admin/publish_participatory_process.rb +1 -1
  30. data/app/commands/decidim/participatory_processes/admin/reorder_participatory_process_steps.rb +1 -1
  31. data/app/commands/decidim/participatory_processes/admin/unpublish_participatory_process.rb +1 -1
  32. data/app/commands/decidim/participatory_processes/admin/update_participatory_process.rb +2 -1
  33. data/app/commands/decidim/participatory_processes/admin/update_participatory_process_group.rb +1 -1
  34. data/app/commands/decidim/participatory_processes/admin/update_participatory_process_step.rb +1 -1
  35. data/app/commands/decidim/participatory_processes/admin/update_participatory_process_type.rb +49 -0
  36. data/app/controllers/decidim/participatory_processes/admin/participatory_process_copies_controller.rb +1 -1
  37. data/app/controllers/decidim/participatory_processes/admin/participatory_process_types_controller.rb +98 -0
  38. data/app/controllers/decidim/participatory_processes/admin/reminders_controller.rb +14 -0
  39. data/app/controllers/decidim/participatory_processes/participatory_processes_controller.rb +8 -7
  40. data/app/events/decidim/participatory_process_role_assigned_event.rb +1 -1
  41. data/app/forms/decidim/participatory_processes/admin/participatory_process_form.rb +16 -0
  42. data/app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb +5 -7
  43. data/app/forms/decidim/participatory_processes/admin/participatory_process_type_form.rb +20 -0
  44. data/app/models/decidim/participatory_process.rb +35 -6
  45. data/app/models/decidim/participatory_process_type.rb +27 -0
  46. data/app/permissions/decidim/participatory_processes/permissions.rb +14 -0
  47. data/app/presenters/decidim/log/value_types/participatory_process_type_presenter.rb +27 -0
  48. data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_presenter.rb +3 -2
  49. data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_type_presenter.rb +38 -0
  50. data/app/presenters/decidim/participatory_processes/participatory_process_group_stats_presenter.rb +4 -1
  51. data/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb +5 -1
  52. data/app/presenters/decidim/participatory_processes/participatory_process_stats_presenter.rb +4 -1
  53. data/app/queries/decidim/participatory_processes/admin/admin_users.rb +1 -1
  54. data/app/queries/decidim/participatory_processes/admin/moderators.rb +1 -1
  55. data/app/queries/decidim/participatory_processes/filtered_participatory_process_groups.rb +1 -1
  56. data/app/queries/decidim/participatory_processes/filtered_participatory_processes.rb +1 -1
  57. data/app/queries/decidim/participatory_processes/group_participatory_processes.rb +1 -1
  58. data/app/queries/decidim/participatory_processes/group_published_participatory_processes.rb +2 -2
  59. data/app/queries/decidim/participatory_processes/highlighted_participatory_processes.rb +1 -1
  60. data/app/queries/decidim/participatory_processes/organization_participatory_process_groups.rb +1 -1
  61. data/app/queries/decidim/participatory_processes/organization_participatory_processes.rb +1 -1
  62. data/app/queries/decidim/participatory_processes/organization_prioritized_participatory_process_groups.rb +2 -2
  63. data/app/queries/decidim/participatory_processes/organization_prioritized_participatory_processes.rb +2 -2
  64. data/app/queries/decidim/participatory_processes/organization_promoted_participatory_process_groups.rb +1 -1
  65. data/app/queries/decidim/participatory_processes/organization_published_participatory_processes.rb +2 -2
  66. data/app/queries/decidim/participatory_processes/participatory_processes_by_group.rb +1 -1
  67. data/app/queries/decidim/participatory_processes/prioritized_participatory_processes.rb +1 -1
  68. data/app/queries/decidim/participatory_processes/promoted_participatory_process_groups.rb +1 -1
  69. data/app/queries/decidim/participatory_processes/promoted_participatory_processes.rb +1 -1
  70. data/app/queries/decidim/participatory_processes/published_participatory_processes.rb +1 -1
  71. data/app/queries/decidim/participatory_processes/stats_followers_count.rb +2 -2
  72. data/app/queries/decidim/participatory_processes/stats_participants_count.rb +2 -2
  73. data/app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb +1 -1
  74. data/app/queries/decidim/participatory_processes/visible_participatory_processes.rb +1 -1
  75. data/app/serializers/decidim/participatory_processes/participatory_process_importer.rb +1 -1
  76. data/app/views/decidim/participatory_process_steps/_participatory_process_step.html.erb +1 -1
  77. data/app/views/decidim/participatory_processes/admin/participatory_process_types/_form.html.erb +11 -0
  78. data/app/views/decidim/participatory_processes/admin/participatory_process_types/edit.html.erb +9 -0
  79. data/app/views/decidim/participatory_processes/admin/participatory_process_types/index.html.erb +60 -0
  80. data/app/views/decidim/participatory_processes/admin/participatory_process_types/new.html.erb +9 -0
  81. data/app/views/decidim/participatory_processes/admin/participatory_processes/_form.html.erb +10 -0
  82. data/app/views/decidim/participatory_processes/participatory_process_groups/show.html.erb +3 -1
  83. data/app/views/decidim/participatory_processes/participatory_process_groups/show.js.erb +9 -6
  84. data/app/views/decidim/participatory_processes/participatory_process_steps/index.html.erb +1 -1
  85. data/app/views/decidim/participatory_processes/participatory_processes/index.html.erb +3 -1
  86. data/app/views/decidim/participatory_processes/participatory_processes/index.js.erb +3 -1
  87. data/app/views/decidim/participatory_processes/participatory_processes/show.html.erb +1 -0
  88. data/app/views/layouts/decidim/_process_header.html.erb +3 -3
  89. data/app/views/layouts/decidim/admin/participatory_process_type.html.erb +15 -0
  90. data/config/locales/am-ET.yml +1 -0
  91. data/config/locales/ar.yml +1 -0
  92. data/config/locales/bg.yml +1 -0
  93. data/config/locales/ca.yml +45 -1
  94. data/config/locales/cs.yml +45 -1
  95. data/config/locales/da.yml +1 -0
  96. data/config/locales/de.yml +4 -7
  97. data/config/locales/el.yml +1 -6
  98. data/config/locales/en.yml +44 -1
  99. data/config/locales/eo.yml +1 -0
  100. data/config/locales/es-MX.yml +45 -1
  101. data/config/locales/es-PY.yml +45 -1
  102. data/config/locales/es.yml +45 -1
  103. data/config/locales/et.yml +1 -0
  104. data/config/locales/eu.yml +1 -6
  105. data/config/locales/fi-plain.yml +45 -1
  106. data/config/locales/fi.yml +45 -1
  107. data/config/locales/fr-CA.yml +45 -1
  108. data/config/locales/fr.yml +48 -4
  109. data/config/locales/ga-IE.yml +1 -0
  110. data/config/locales/gl.yml +3 -6
  111. data/config/locales/hr.yml +1 -0
  112. data/config/locales/hu.yml +3 -6
  113. data/config/locales/id-ID.yml +1 -0
  114. data/config/locales/is-IS.yml +2 -1
  115. data/config/locales/it.yml +3 -6
  116. data/config/locales/ja.yml +48 -4
  117. data/config/locales/ko.yml +1 -0
  118. data/config/locales/lb.yml +1 -6
  119. data/config/locales/lt.yml +1 -0
  120. data/config/locales/lv.yml +1 -6
  121. data/config/locales/mt.yml +1 -0
  122. data/config/locales/nl.yml +1 -6
  123. data/config/locales/no.yml +20 -7
  124. data/config/locales/om-ET.yml +1 -0
  125. data/config/locales/pl.yml +7 -6
  126. data/config/locales/pt-BR.yml +2 -7
  127. data/config/locales/pt.yml +1 -6
  128. data/config/locales/ro-RO.yml +1 -6
  129. data/config/locales/ru.yml +1 -0
  130. data/config/locales/si-LK.yml +1 -0
  131. data/config/locales/sk.yml +1 -6
  132. data/config/locales/sl.yml +1 -0
  133. data/config/locales/so-SO.yml +1 -0
  134. data/config/locales/sr-CS.yml +1 -0
  135. data/config/locales/sv.yml +15 -6
  136. data/config/locales/sw-KE.yml +1 -0
  137. data/config/locales/ti-ER.yml +1 -0
  138. data/config/locales/tr-TR.yml +1 -6
  139. data/config/locales/uk.yml +1 -0
  140. data/config/locales/val-ES.yml +1 -0
  141. data/config/locales/vi.yml +1 -0
  142. data/config/locales/zh-CN.yml +1 -6
  143. data/config/locales/zh-TW.yml +1 -0
  144. data/db/migrate/20211125202008_create_decidim_participatory_process_types.rb +22 -0
  145. data/lib/decidim/api/participatory_process_type_type.rb +17 -0
  146. data/lib/decidim/participatory_processes/admin_engine.rb +12 -1
  147. data/lib/decidim/participatory_processes/api.rb +1 -0
  148. data/lib/decidim/participatory_processes/participatory_space.rb +17 -8
  149. data/lib/decidim/participatory_processes/query_extensions.rb +22 -0
  150. data/lib/decidim/participatory_processes/test/factories.rb +17 -0
  151. data/lib/decidim/participatory_processes/version.rb +1 -1
  152. metadata +31 -15
  153. data/app/services/decidim/participatory_processes/participatory_process_search.rb +0 -27
@@ -4,7 +4,11 @@ module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # A presenter to render metrics in ParticipatoryProcesses statistics page
6
6
  class ParticipatoryProcessMetricChartsPresenter < Decidim::MetricChartsPresenter
7
- attribute :participatory_process, Decidim::ParticipatoryProcess
7
+ delegate :hidden_field_tag, :link_to, :capture, to: :view_context
8
+
9
+ def participatory_process
10
+ __getobj__.fetch(:participatory_process)
11
+ end
8
12
 
9
13
  def params
10
14
  capture do
@@ -4,9 +4,12 @@ module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # A presenter to render statistics in the homepage.
6
6
  class ParticipatoryProcessStatsPresenter < Decidim::StatsPresenter
7
- attribute :participatory_process, Decidim::ParticipatoryProcess
8
7
  include Decidim::IconHelper
9
8
 
9
+ def participatory_process
10
+ __getobj__.fetch(:participatory_process)
11
+ end
12
+
10
13
  # Public: returns a collection of stats (Hash) for the Process Home.
11
14
  def collection
12
15
  highlighted_stats = process_participants_stats
@@ -5,7 +5,7 @@ module Decidim
5
5
  module Admin
6
6
  # A class used to find the admins for a participatory process including
7
7
  # organization admins.
8
- class AdminUsers < Rectify::Query
8
+ class AdminUsers < Decidim::Query
9
9
  # Syntactic sugar to initialize the class and return the queried objects.
10
10
  #
11
11
  # process - a process that needs to find its process admins
@@ -5,7 +5,7 @@ module Decidim
5
5
  module Admin
6
6
  # A class used to find the users that can moderate the participatory
7
7
  # process.
8
- class Moderators < Rectify::Query
8
+ class Moderators < Decidim::Query
9
9
  # Syntactic sugar to initialize the class and return the queried objects.
10
10
  #
11
11
  # process - a process that needs to find its moderators
@@ -5,7 +5,7 @@ module Decidim
5
5
  # This query class filters participatory processes groups given a filter name.
6
6
  # The filter is applied checking the start and end dates of the processes in
7
7
  # the group.
8
- class FilteredParticipatoryProcessGroups < Rectify::Query
8
+ class FilteredParticipatoryProcessGroups < Decidim::Query
9
9
  def initialize(filter = "active")
10
10
  @filter = filter
11
11
  end
@@ -4,7 +4,7 @@ module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters participatory processes given a filter name.
6
6
  # It uses the start and end dates to select the correct processes.
7
- class FilteredParticipatoryProcesses < Rectify::Query
7
+ class FilteredParticipatoryProcesses < Decidim::Query
8
8
  def initialize(filter = "active")
9
9
  @filter = filter
10
10
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters all processes of a participatory process group
6
- class GroupParticipatoryProcesses < Rectify::Query
6
+ class GroupParticipatoryProcesses < Decidim::Query
7
7
  def initialize(group)
8
8
  @group = group
9
9
  end
@@ -3,14 +3,14 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters published processes of a participatory process group
6
- class GroupPublishedParticipatoryProcesses < Rectify::Query
6
+ class GroupPublishedParticipatoryProcesses < Decidim::Query
7
7
  def initialize(group, user = nil)
8
8
  @group = group
9
9
  @user = user
10
10
  end
11
11
 
12
12
  def query
13
- Rectify::Query.merge(
13
+ Decidim::Query.merge(
14
14
  GroupParticipatoryProcesses.new(@group),
15
15
  VisibleParticipatoryProcesses.new(@user),
16
16
  PublishedParticipatoryProcesses.new
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query selects some prioritized processes.
6
- class HighlightedParticipatoryProcesses < Rectify::Query
6
+ class HighlightedParticipatoryProcesses < Decidim::Query
7
7
  def query
8
8
  PrioritizedParticipatoryProcesses.new.query.limit(8)
9
9
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters participatory process groups given an organization.
6
- class OrganizationParticipatoryProcessGroups < Rectify::Query
6
+ class OrganizationParticipatoryProcessGroups < Decidim::Query
7
7
  def initialize(organization)
8
8
  @organization = organization
9
9
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters all processes given an organization.
6
- class OrganizationParticipatoryProcesses < Rectify::Query
6
+ class OrganizationParticipatoryProcesses < Decidim::Query
7
7
  def initialize(organization)
8
8
  @organization = organization
9
9
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters participatory process groups given an organization and a filter.
6
- class OrganizationPrioritizedParticipatoryProcessGroups < Rectify::Query
6
+ class OrganizationPrioritizedParticipatoryProcessGroups < Decidim::Query
7
7
  def initialize(organization, filter = "active", user = nil)
8
8
  @organization = organization
9
9
  @filter = filter
@@ -11,7 +11,7 @@ module Decidim
11
11
  end
12
12
 
13
13
  def query
14
- Rectify::Query.merge(
14
+ Decidim::Query.merge(
15
15
  OrganizationParticipatoryProcessGroups.new(@organization),
16
16
  FilteredParticipatoryProcessGroups.new(@filter),
17
17
  VisibleParticipatoryProcessGroups.new(@user)
@@ -4,7 +4,7 @@ module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters public processes given an organization and a
6
6
  # filter in a meaningful prioritized order.
7
- class OrganizationPrioritizedParticipatoryProcesses < Rectify::Query
7
+ class OrganizationPrioritizedParticipatoryProcesses < Decidim::Query
8
8
  def initialize(organization, filter = "active", user = nil)
9
9
  @organization = organization
10
10
  @filter = filter
@@ -12,7 +12,7 @@ module Decidim
12
12
  end
13
13
 
14
14
  def query
15
- Rectify::Query.merge(
15
+ Decidim::Query.merge(
16
16
  OrganizationPublishedParticipatoryProcesses.new(@organization, @user),
17
17
  PrioritizedParticipatoryProcesses.new,
18
18
  FilteredParticipatoryProcesses.new(@filter)
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters participatory process groups given an organization.
6
- class OrganizationPromotedParticipatoryProcessGroups < Rectify::Query
6
+ class OrganizationPromotedParticipatoryProcessGroups < Decidim::Query
7
7
  def initialize(organization)
8
8
  @organization = organization
9
9
  end
@@ -3,14 +3,14 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters published processes given an organization.
6
- class OrganizationPublishedParticipatoryProcesses < Rectify::Query
6
+ class OrganizationPublishedParticipatoryProcesses < Decidim::Query
7
7
  def initialize(organization, user = nil)
8
8
  @organization = organization
9
9
  @user = user
10
10
  end
11
11
 
12
12
  def query
13
- Rectify::Query.merge(
13
+ Decidim::Query.merge(
14
14
  OrganizationParticipatoryProcesses.new(@organization),
15
15
  VisibleParticipatoryProcesses.new(@user),
16
16
  PublishedParticipatoryProcesses.new
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # A class used to find the ParticipatoryProcesses from a ProcessGroup.
6
- class ParticipatoryProcessesByGroup < Rectify::Query
6
+ class ParticipatoryProcessesByGroup < Decidim::Query
7
7
  # Syntactic sugar to initialize the class and return the queried objects.
8
8
  def self.for(process_group)
9
9
  new(process_group).query
@@ -4,7 +4,7 @@ module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query orders processes by importance, prioritizing promoted processes
6
6
  # first, and closest to finalization date second.
7
- class PrioritizedParticipatoryProcesses < Rectify::Query
7
+ class PrioritizedParticipatoryProcesses < Decidim::Query
8
8
  def query
9
9
  Decidim::ParticipatoryProcess.order(promoted: :desc).includes(:active_step).order("decidim_participatory_process_steps.end_date ASC")
10
10
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query filters participatory process groups so only promoted ones are returned.
6
- class PromotedParticipatoryProcessGroups < Rectify::Query
6
+ class PromotedParticipatoryProcessGroups < Decidim::Query
7
7
  def query
8
8
  Decidim::ParticipatoryProcessGroup.promoted
9
9
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query filters processes so only promoted ones are returned.
6
- class PromotedParticipatoryProcesses < Rectify::Query
6
+ class PromotedParticipatoryProcesses < Decidim::Query
7
7
  def query
8
8
  Decidim::ParticipatoryProcess.promoted
9
9
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query filters published processes only.
6
- class PublishedParticipatoryProcesses < Rectify::Query
6
+ class PublishedParticipatoryProcesses < Decidim::Query
7
7
  def query
8
8
  Decidim::ParticipatoryProcess.published
9
9
  end
@@ -4,10 +4,10 @@ module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This class counts all Followers of a participatory process or
6
6
  # participatory processes belonging to a participatory process group
7
- class StatsFollowersCount < Rectify::Query
7
+ class StatsFollowersCount < Decidim::Query
8
8
  def self.for(participatory_space)
9
9
  return 0 unless participatory_space.is_a?(Decidim::ParticipatoryProcess) ||
10
- participatory_space.is_a?(Decidim::ParticipatoryProcessGroup) && participatory_space.participatory_processes.exists?
10
+ (participatory_space.is_a?(Decidim::ParticipatoryProcessGroup) && participatory_space.participatory_processes.exists?)
11
11
 
12
12
  new(participatory_space).query
13
13
  end
@@ -4,10 +4,10 @@ module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This class counts unique Participants on a participatory process or
6
6
  # participatory processes belonging to a participatory process group
7
- class StatsParticipantsCount < Rectify::Query
7
+ class StatsParticipantsCount < Decidim::Query
8
8
  def self.for(participatory_space)
9
9
  return 0 unless participatory_space.is_a?(Decidim::ParticipatoryProcess) ||
10
- participatory_space.is_a?(Decidim::ParticipatoryProcessGroup) && participatory_space.participatory_processes.exists?
10
+ (participatory_space.is_a?(Decidim::ParticipatoryProcessGroup) && participatory_space.participatory_processes.exists?)
11
11
 
12
12
  new(participatory_space).query
13
13
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters participatory processes given a current_user.
6
- class VisibleParticipatoryProcessGroups < Rectify::Query
6
+ class VisibleParticipatoryProcessGroups < Decidim::Query
7
7
  def initialize(current_user)
8
8
  @current_user = current_user
9
9
  end
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  module ParticipatoryProcesses
5
5
  # This query class filters participatory processes given a current_user.
6
- class VisibleParticipatoryProcesses < Rectify::Query
6
+ class VisibleParticipatoryProcesses < Decidim::Query
7
7
  def initialize(current_user)
8
8
  @current_user = current_user
9
9
  end
@@ -116,7 +116,7 @@ module Decidim
116
116
  attachments["files"].map do |file|
117
117
  next unless remote_file_exists?(file["remote_file_url"])
118
118
 
119
- file_tmp = URI.open(file["remote_file_url"])
119
+ file_tmp = URI.parse(file["remote_file_url"]).open
120
120
 
121
121
  Decidim.traceability.perform_action!("create", Attachment, @user) do
122
122
  attachment = Attachment.new(
@@ -7,7 +7,7 @@
7
7
  <span class="timeline__date text-small">
8
8
  <%= participatory_space_helpers.step_dates(participatory_process_step) %>
9
9
  </span>
10
- <h4 class="timeline__title heading4"><%= translated_attribute(participatory_process_step.title) %></h4>
10
+ <h3 class="timeline__title heading4"><%= translated_attribute(participatory_process_step.title) %></h3>
11
11
  </div>
12
12
  <div class="timeline__content">
13
13
  <%= translated_attribute(participatory_process_step.description).html_safe %>
@@ -0,0 +1,11 @@
1
+ <div class="card">
2
+ <div class="card-divider">
3
+ <h2 class="card-title"><%= t("participatory_process_types.form.title", scope: "decidim.admin") %></h2>
4
+ </div>
5
+
6
+ <div class="card-section">
7
+ <div class="row column">
8
+ <%= form.translated :text_field, :title, autofocus: true %>
9
+ </div>
10
+ </div>
11
+ </div>
@@ -0,0 +1,9 @@
1
+ <%= decidim_form_for(@form, html: { class: "form edit_participatory_process_type" }) do |f| %>
2
+ <h2 class="process-title-summary">
3
+ <%= t("participatory_process_types.edit.title", scope: "decidim.admin") %>
4
+ </h2>
5
+ <%= render partial: "form", object: f %>
6
+ <div class="button--double form-general-submit">
7
+ <%= f.submit t("participatory_process_types.edit.update", scope: "decidim.admin"), class: "button" %>
8
+ </div>
9
+ <% end %>
@@ -0,0 +1,60 @@
1
+ <div class="card" id="participatory-process-types">
2
+ <div class="card-divider">
3
+ <h2 class="card-title">
4
+ <%= t("titles.participatory_process_types", scope: "decidim.admin") %>
5
+ <%= link_to(
6
+ t("actions.new_process_type", scope: "decidim.admin"),
7
+ [:new, :participatory_process_type],
8
+ class: "button tiny button--title"
9
+ ) if allowed_to? :create, :participatory_process_type %>
10
+ </h2>
11
+ </div>
12
+ <div class="card-section">
13
+ <div class="table-scroll">
14
+ <table class="table-list">
15
+ <thead>
16
+ <tr>
17
+ <th><%= t("models.participatory_process_type.fields.title", scope: "decidim.admin") %></th>
18
+ <th><%= t("models.participatory_process_type.fields.created_at", scope: "decidim.admin") %></th>
19
+ <th></th>
20
+ </tr>
21
+ </thead>
22
+ <tbody>
23
+ <% collection.each do |participatory_process_type| %>
24
+ <tr>
25
+ <td>
26
+ <% if allowed_to?(:update, :participatory_process_type, participatory_process_type: participatory_process_type) %>
27
+ <%= link_to(
28
+ translated_attribute(participatory_process_type.title),
29
+ edit_participatory_process_type_path(participatory_process_type)
30
+ ) %>
31
+ <% else %>
32
+ <%= translated_attribute(participatory_process_type.title) %></td>
33
+ <% end %>
34
+ <td><%= l(participatory_process_type.created_at, format: :short) %></td>
35
+ <td class="table-list__actions">
36
+ <% if allowed_to?(:update, :participatory_process_type, participatory_process_type: participatory_process_type) %>
37
+ <%= icon_link_to(
38
+ "pencil",
39
+ edit_participatory_process_type_path(participatory_process_type),
40
+ t("actions.edit", scope: "decidim.admin"),
41
+ class: "action-icon--new"
42
+ ) %>
43
+ <% end %>
44
+ <% if allowed_to?(:destroy, :participatory_process_type, participatory_process_type: participatory_process_type) %>
45
+ <%= icon_link_to(
46
+ "circle-x",
47
+ participatory_process_type_path(participatory_process_type),
48
+ t("actions.destroy", scope: "decidim.admin"),
49
+ class: "action-icon--remove",
50
+ method: :delete,
51
+ data: { confirm: t("actions.confirm_destroy", scope: "decidim.admin") }
52
+ ) %>
53
+ <% end %>
54
+ </td>
55
+ <% end %>
56
+ </tbody>
57
+ </table>
58
+ </div>
59
+ </div>
60
+ </div>
@@ -0,0 +1,9 @@
1
+ <%= decidim_form_for(@form, html: { class: "form new_participatory_process_type" }) do |f| %>
2
+ <h2 class="process-title-summary">
3
+ <%= t("participatory_process_types.new.title", scope: "decidim.admin") %>
4
+ </h2>
5
+ <%= render partial: "form", object: f %>
6
+ <div class="button--double form-general-submit">
7
+ <%= f.submit t("participatory_process_types.new.create", scope: "decidim.admin"), class: "button" %>
8
+ </div>
9
+ <% end %>
@@ -188,6 +188,16 @@
188
188
  <div class="row column">
189
189
  <%= form.check_box :show_metrics %>
190
190
  </div>
191
+
192
+ <% if @form.participatory_process_types_for_select.present? %>
193
+ <div class="row column">
194
+ <%= form.select(
195
+ :participatory_process_type_id,
196
+ @form.participatory_process_types_for_select,
197
+ include_blank: t(".select_participatory_process_type")
198
+ ) %>
199
+ </div>
200
+ <% end %>
191
201
  </div>
192
202
  </div>
193
203
 
@@ -19,4 +19,6 @@
19
19
  </div>
20
20
  </div>
21
21
 
22
- <%= javascript_pack_tag "decidim_participatory_processes" %>
22
+ <% content_for :js_content do %>
23
+ <%= javascript_pack_tag "decidim_participatory_processes" %>
24
+ <% end %>
@@ -1,12 +1,15 @@
1
1
  var $grid = $('#processes-grid');
2
- var $assembliesFilter = $('#processes-filter');
2
+ var $order_by_filters = $grid.find('.processes-grid-order-by');
3
+ var $loading = $grid.find('.loading');
3
4
 
4
5
  $grid.find('.card-grid').html('<%= j(cell(
5
6
  "decidim/participatory_processes/filtered_participatory_processes",
6
7
  participatory_processes
7
8
  ).show).strip.html_safe %>');
8
- $grid.find('.processes-grid-order-by').html('<%= j(cell(
9
- "decidim/participatory_process_groups/process_filters",
10
- group,
11
- base_relation: participatory_processes
12
- ).show).strip.html_safe %>');
9
+ $order_by_filters.html('<%= j(cell(
10
+ "decidim/participatory_process_groups/process_filters",
11
+ group,
12
+ base_relation: participatory_processes
13
+ ).show).strip.html_safe %>');
14
+ $order_by_filters.foundation();
15
+ $loading.hide();
@@ -10,7 +10,7 @@
10
10
  <%= t(".back_to_process") %>
11
11
  <% end %>
12
12
 
13
- <h3 class="section-heading"><%= t("participatory_process_steps.index.process_steps", scope: "decidim") %></h3>
13
+ <h2 class="section-heading"><%= t("participatory_process_steps.index.process_steps", scope: "decidim") %></h2>
14
14
  <%= render partial: "timeline" %>
15
15
  </div>
16
16
  </div>
@@ -30,4 +30,6 @@ edit_link(
30
30
  </section>
31
31
  <% end %>
32
32
 
33
- <%= javascript_pack_tag "decidim_participatory_processes" %>
33
+ <% content_for :js_content do %>
34
+ <%= javascript_pack_tag "decidim_participatory_processes" %>
35
+ <% end %>
@@ -1,6 +1,8 @@
1
1
  var $grid = $('#processes-grid');
2
+ var $order_by_filters = $grid.find('.processes-grid-order-by');
2
3
  var $loading = $grid.find('.loading');
3
4
 
4
5
  $grid.find('.card-grid').html('<%= j(render(collection)).strip.html_safe %>');
5
- $grid.find('.processes-grid-order-by').html('<%= j(render(partial: "decidim/participatory_processes/participatory_processes/order_by_processes", locals: { include_filter: true })).strip.html_safe %>');
6
+ $order_by_filters.html('<%= j(render(partial: "decidim/participatory_processes/participatory_processes/order_by_processes", locals: { include_filter: true })).strip.html_safe %>');
7
+ $order_by_filters.foundation();
6
8
  $loading.hide();
@@ -27,6 +27,7 @@
27
27
  <div class="row">
28
28
  <div class="columns medium-7 mediumlarge-8">
29
29
  <div class="section">
30
+ <h2 class="show-for-sr"><%= t(".title") %></h2>
30
31
  <% if participatory_process_group.present? %>
31
32
  <%= render partial: "participatory_process_group" %>
32
33
  <% end %>
@@ -11,14 +11,14 @@
11
11
  </h1>
12
12
  </div>
13
13
  <div>
14
- <h2 class="text-highlight heading-small">
14
+ <p class="text-highlight heading-small">
15
15
  <% if current_participatory_space.hashtag.present? %>
16
16
  <span class="process-header__hashtag">
17
- <%= link_to "##{decidim_html_escape(current_participatory_space.hashtag)}", "https://twitter.com/hashtag/#{decidim_html_escape(current_participatory_space.hashtag)}", target: "_blank" %>
17
+ <%= link_to "##{decidim_html_escape(current_participatory_space.hashtag)}", twitter_hashtag_url(decidim_html_escape(current_participatory_space.hashtag)), target: "_blank" %>
18
18
  </span>
19
19
  <% end %>
20
20
  <%= translated_attribute(current_participatory_space.subtitle) %>
21
- </h2>
21
+ </p>
22
22
  </div>
23
23
  </div>
24
24
  <%= render partial: "layouts/decidim/process_header_steps", locals: { participatory_process: current_participatory_space } %>
@@ -0,0 +1,15 @@
1
+ <% content_for :sidebar_menu_nav do %>
2
+ <%= sidebar_menu(:admin_participatory_processes_menu).render %>
3
+ <% end %>
4
+
5
+ <%= render "layouts/decidim/admin/application" do %>
6
+ <div class="process-title">
7
+ <div class="process-title-content">
8
+ <%= link_to t("decidim.admin.titles.participatory_processes"), decidim_participatory_processes.participatory_processes_path, target: "_blank" %>
9
+ </div>
10
+ </div>
11
+
12
+ <div class="process-content">
13
+ <%= yield %>
14
+ </div>
15
+ <% end %>
@@ -1 +1,2 @@
1
+ ---
1
2
  am:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  ar:
2
3
  activemodel:
3
4
  attributes:
@@ -1,3 +1,4 @@
1
+ ---
1
2
  bg:
2
3
  activemodel:
3
4
  attributes: