decidim-participatory_processes 0.26.2 → 0.27.0.rc2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +0 -4
- data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/filters.erb +3 -3
- data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes/show.erb +1 -0
- data/app/cells/decidim/participatory_process_groups/content_blocks/highlighted_participatory_processes_cell.rb +6 -11
- data/app/cells/decidim/participatory_process_groups/process_filters_cell.rb +15 -18
- data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes/show.erb +1 -1
- data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes/single_process.erb +1 -1
- data/app/cells/decidim/participatory_processes/content_blocks/highlighted_processes_cell.rb +1 -1
- data/app/cells/decidim/participatory_processes/filtered_participatory_processes_cell.rb +11 -7
- data/app/cells/decidim/participatory_processes/process_filters/show.erb +13 -9
- data/app/cells/decidim/participatory_processes/process_filters/type_filter.erb +17 -0
- data/app/cells/decidim/participatory_processes/process_filters_cell.rb +50 -16
- data/app/cells/decidim/participatory_processes/process_group_s/image.erb +1 -1
- data/app/cells/decidim/participatory_processes/process_s/image.erb +1 -1
- data/app/commands/decidim/participatory_processes/admin/activate_participatory_process_step.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/copy_participatory_process.rb +11 -8
- data/app/commands/decidim/participatory_processes/admin/create_participatory_process.rb +2 -1
- data/app/commands/decidim/participatory_processes/admin/create_participatory_process_group.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/create_participatory_process_step.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/create_participatory_process_type.rb +47 -0
- data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_admin.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_group.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_step.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/destroy_participatory_process_type.rb +49 -0
- data/app/commands/decidim/participatory_processes/admin/import_participatory_process.rb +9 -6
- data/app/commands/decidim/participatory_processes/admin/notify_role_assigned_to_participatory_process.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/publish_participatory_process.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/reorder_participatory_process_steps.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/unpublish_participatory_process.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/update_participatory_process.rb +2 -1
- data/app/commands/decidim/participatory_processes/admin/update_participatory_process_group.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/update_participatory_process_step.rb +1 -1
- data/app/commands/decidim/participatory_processes/admin/update_participatory_process_type.rb +49 -0
- data/app/controllers/decidim/participatory_processes/admin/participatory_process_copies_controller.rb +1 -1
- data/app/controllers/decidim/participatory_processes/admin/participatory_process_types_controller.rb +98 -0
- data/app/controllers/decidim/participatory_processes/admin/reminders_controller.rb +14 -0
- data/app/controllers/decidim/participatory_processes/participatory_processes_controller.rb +8 -7
- data/app/events/decidim/participatory_process_role_assigned_event.rb +1 -1
- data/app/forms/decidim/participatory_processes/admin/participatory_process_form.rb +16 -0
- data/app/forms/decidim/participatory_processes/admin/participatory_process_import_form.rb +5 -7
- data/app/forms/decidim/participatory_processes/admin/participatory_process_type_form.rb +20 -0
- data/app/models/decidim/participatory_process.rb +35 -6
- data/app/models/decidim/participatory_process_type.rb +27 -0
- data/app/permissions/decidim/participatory_processes/permissions.rb +14 -0
- data/app/presenters/decidim/log/value_types/participatory_process_type_presenter.rb +27 -0
- data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_presenter.rb +3 -2
- data/app/presenters/decidim/participatory_processes/admin_log/participatory_process_type_presenter.rb +38 -0
- data/app/presenters/decidim/participatory_processes/participatory_process_group_stats_presenter.rb +4 -1
- data/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb +5 -1
- data/app/presenters/decidim/participatory_processes/participatory_process_stats_presenter.rb +4 -1
- data/app/queries/decidim/participatory_processes/admin/admin_users.rb +1 -1
- data/app/queries/decidim/participatory_processes/admin/moderators.rb +1 -1
- data/app/queries/decidim/participatory_processes/filtered_participatory_process_groups.rb +1 -1
- data/app/queries/decidim/participatory_processes/filtered_participatory_processes.rb +1 -1
- data/app/queries/decidim/participatory_processes/group_participatory_processes.rb +1 -1
- data/app/queries/decidim/participatory_processes/group_published_participatory_processes.rb +2 -2
- data/app/queries/decidim/participatory_processes/highlighted_participatory_processes.rb +1 -1
- data/app/queries/decidim/participatory_processes/organization_participatory_process_groups.rb +1 -1
- data/app/queries/decidim/participatory_processes/organization_participatory_processes.rb +1 -1
- data/app/queries/decidim/participatory_processes/organization_prioritized_participatory_process_groups.rb +2 -2
- data/app/queries/decidim/participatory_processes/organization_prioritized_participatory_processes.rb +2 -2
- data/app/queries/decidim/participatory_processes/organization_promoted_participatory_process_groups.rb +1 -1
- data/app/queries/decidim/participatory_processes/organization_published_participatory_processes.rb +2 -2
- data/app/queries/decidim/participatory_processes/participatory_processes_by_group.rb +1 -1
- data/app/queries/decidim/participatory_processes/prioritized_participatory_processes.rb +1 -1
- data/app/queries/decidim/participatory_processes/promoted_participatory_process_groups.rb +1 -1
- data/app/queries/decidim/participatory_processes/promoted_participatory_processes.rb +1 -1
- data/app/queries/decidim/participatory_processes/published_participatory_processes.rb +1 -1
- data/app/queries/decidim/participatory_processes/stats_followers_count.rb +2 -2
- data/app/queries/decidim/participatory_processes/stats_participants_count.rb +2 -2
- data/app/queries/decidim/participatory_processes/visible_participatory_process_groups.rb +1 -1
- data/app/queries/decidim/participatory_processes/visible_participatory_processes.rb +1 -1
- data/app/serializers/decidim/participatory_processes/participatory_process_importer.rb +4 -3
- data/app/views/decidim/participatory_processes/admin/participatory_process_types/_form.html.erb +11 -0
- data/app/views/decidim/participatory_processes/admin/participatory_process_types/edit.html.erb +9 -0
- data/app/views/decidim/participatory_processes/admin/participatory_process_types/index.html.erb +60 -0
- data/app/views/decidim/participatory_processes/admin/participatory_process_types/new.html.erb +9 -0
- data/app/views/decidim/participatory_processes/admin/participatory_processes/_form.html.erb +10 -0
- data/app/views/decidim/participatory_processes/participatory_process_groups/show.html.erb +3 -1
- data/app/views/decidim/participatory_processes/participatory_process_groups/show.js.erb +9 -6
- data/app/views/decidim/participatory_processes/participatory_processes/_promoted_process.html.erb +1 -1
- data/app/views/decidim/participatory_processes/participatory_processes/_promoted_process_group.html.erb +1 -1
- data/app/views/decidim/participatory_processes/participatory_processes/index.html.erb +3 -1
- data/app/views/decidim/participatory_processes/participatory_processes/index.js.erb +3 -1
- data/app/views/layouts/decidim/_process_header.html.erb +1 -1
- data/app/views/layouts/decidim/admin/participatory_process_type.html.erb +15 -0
- data/config/locales/ar.yml +1 -0
- data/config/locales/bg.yml +1 -0
- data/config/locales/ca.yml +43 -1
- data/config/locales/cs.yml +49 -7
- data/config/locales/de.yml +38 -1
- data/config/locales/el.yml +1 -6
- data/config/locales/en.yml +42 -1
- data/config/locales/es-MX.yml +43 -1
- data/config/locales/es-PY.yml +43 -1
- data/config/locales/es.yml +43 -1
- data/config/locales/eu.yml +1 -6
- data/config/locales/fi-plain.yml +43 -1
- data/config/locales/fi.yml +43 -1
- data/config/locales/fr-CA.yml +43 -1
- data/config/locales/fr.yml +44 -2
- data/config/locales/ga-IE.yml +1 -0
- data/config/locales/gl.yml +1 -6
- data/config/locales/hu.yml +116 -1
- data/config/locales/id-ID.yml +1 -0
- data/config/locales/is-IS.yml +2 -1
- data/config/locales/it.yml +1 -6
- data/config/locales/ja.yml +43 -1
- data/config/locales/lb.yml +1 -6
- data/config/locales/lt.yml +546 -0
- data/config/locales/lv.yml +1 -6
- data/config/locales/nl.yml +1 -6
- data/config/locales/no.yml +17 -6
- data/config/locales/pl.yml +7 -6
- data/config/locales/pt-BR.yml +1 -6
- data/config/locales/pt.yml +1 -6
- data/config/locales/ro-RO.yml +1 -6
- data/config/locales/ru.yml +1 -0
- data/config/locales/sk.yml +1 -6
- data/config/locales/sl.yml +1 -0
- data/config/locales/sr-CS.yml +1 -0
- data/config/locales/sv.yml +15 -6
- data/config/locales/tr-TR.yml +1 -6
- data/config/locales/uk.yml +1 -0
- data/config/locales/zh-CN.yml +1 -6
- data/db/migrate/20211125202008_create_decidim_participatory_process_types.rb +22 -0
- data/lib/decidim/api/participatory_process_type_type.rb +17 -0
- data/lib/decidim/participatory_processes/admin_engine.rb +12 -1
- data/lib/decidim/participatory_processes/api.rb +1 -0
- data/lib/decidim/participatory_processes/participatory_space.rb +17 -8
- data/lib/decidim/participatory_processes/query_extensions.rb +22 -0
- data/lib/decidim/participatory_processes/test/factories.rb +17 -0
- data/lib/decidim/participatory_processes/version.rb +1 -1
- metadata +31 -15
- data/app/services/decidim/participatory_processes/participatory_process_search.rb +0 -27
@@ -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 <
|
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 <
|
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 <
|
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 <
|
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
|
-
|
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 <
|
6
|
+
class HighlightedParticipatoryProcesses < Decidim::Query
|
7
7
|
def query
|
8
8
|
PrioritizedParticipatoryProcesses.new.query.limit(8)
|
9
9
|
end
|
data/app/queries/decidim/participatory_processes/organization_participatory_process_groups.rb
CHANGED
@@ -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 <
|
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 <
|
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 <
|
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
|
-
|
14
|
+
Decidim::Query.merge(
|
15
15
|
OrganizationParticipatoryProcessGroups.new(@organization),
|
16
16
|
FilteredParticipatoryProcessGroups.new(@filter),
|
17
17
|
VisibleParticipatoryProcessGroups.new(@user)
|
data/app/queries/decidim/participatory_processes/organization_prioritized_participatory_processes.rb
CHANGED
@@ -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 <
|
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
|
-
|
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 <
|
6
|
+
class OrganizationPromotedParticipatoryProcessGroups < Decidim::Query
|
7
7
|
def initialize(organization)
|
8
8
|
@organization = organization
|
9
9
|
end
|
data/app/queries/decidim/participatory_processes/organization_published_participatory_processes.rb
CHANGED
@@ -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 <
|
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
|
-
|
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 <
|
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 <
|
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 <
|
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 <
|
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 <
|
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 <
|
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 <
|
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 <
|
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 <
|
6
|
+
class VisibleParticipatoryProcesses < Decidim::Query
|
7
7
|
def initialize(current_user)
|
8
8
|
@current_user = current_user
|
9
9
|
end
|
@@ -44,8 +44,9 @@ module Decidim
|
|
44
44
|
scopes_enabled: attributes["scopes_enabled"],
|
45
45
|
participatory_process_group: import_process_group(attributes["participatory_process_group"])
|
46
46
|
)
|
47
|
-
@imported_process.
|
48
|
-
@imported_process.
|
47
|
+
@imported_process.attached_uploader(:hero_image).remote_url = attributes["remote_hero_image_url"] if attributes["remote_hero_image_url"].present?
|
48
|
+
@imported_process.attached_uploader(:banner_image).remote_url = attributes["remote_banner_image_url"] if attributes["remote_banner_image_url"].present?
|
49
|
+
|
49
50
|
@imported_process.save!
|
50
51
|
@imported_process
|
51
52
|
end
|
@@ -116,7 +117,7 @@ module Decidim
|
|
116
117
|
attachments["files"].map do |file|
|
117
118
|
next unless remote_file_exists?(file["remote_file_url"])
|
118
119
|
|
119
|
-
file_tmp = URI.
|
120
|
+
file_tmp = URI.parse(file["remote_file_url"]).open
|
120
121
|
|
121
122
|
Decidim.traceability.perform_action!("create", Attachment, @user) do
|
122
123
|
attachment = Attachment.new(
|
data/app/views/decidim/participatory_processes/admin/participatory_process_types/_form.html.erb
ADDED
@@ -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>
|
data/app/views/decidim/participatory_processes/admin/participatory_process_types/edit.html.erb
ADDED
@@ -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 %>
|
data/app/views/decidim/participatory_processes/admin/participatory_process_types/index.html.erb
ADDED
@@ -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
|
|
@@ -1,12 +1,15 @@
|
|
1
1
|
var $grid = $('#processes-grid');
|
2
|
-
var $
|
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
|
-
$
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
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();
|
data/app/views/decidim/participatory_processes/participatory_processes/_promoted_process.html.erb
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
</div>
|
15
15
|
<div class="columns mediumlarge-8 large-6 card--process__column">
|
16
16
|
<div class="card--full__image"
|
17
|
-
style="background-image:url(<%= promoted_process.attached_uploader(:hero_image).path %>)">
|
17
|
+
style="background-image:url('<%= promoted_process.attached_uploader(:hero_image).path %>')">
|
18
18
|
<div class="card__content row collapse">
|
19
19
|
<div class="large-6 large-offset-6 columns">
|
20
20
|
<%= link_to participatory_process_cta_path(promoted_process), class: "button expanded button--sc" do %>
|
@@ -14,7 +14,7 @@
|
|
14
14
|
</div>
|
15
15
|
</div>
|
16
16
|
<div class="columns mediumlarge-8 large-6 card--process__column">
|
17
|
-
<div class="card--full__image" style="background-image:url(<%= cta_settings&.image_url || promoted_process_group.attached_uploader(:hero_image).path %>)">
|
17
|
+
<div class="card--full__image" style="background-image:url('<%= cta_settings&.image_url || promoted_process_group.attached_uploader(:hero_image).path %>')">
|
18
18
|
<% if cta_settings.present? %>
|
19
19
|
<div class="card__content row collapse">
|
20
20
|
<div class="large-6 large-offset-6 columns">
|
@@ -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
|
-
$
|
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();
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<div class="process-header">
|
2
2
|
<div class="process-header__inner">
|
3
3
|
<div class="row column process-header__main"
|
4
|
-
style="background-image:url(<%= current_participatory_space.attached_uploader(:banner_image).path %>);">
|
4
|
+
style="background-image:url('<%= current_participatory_space.attached_uploader(:banner_image).path %>');">
|
5
5
|
</div>
|
6
6
|
<div class="process-header__container row collapse column">
|
7
7
|
<div class="columns mediumlarge-8 process-header__info">
|
@@ -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 %>
|
data/config/locales/ar.yml
CHANGED
data/config/locales/bg.yml
CHANGED
data/config/locales/ca.yml
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
---
|
1
2
|
ca:
|
2
3
|
activemodel:
|
3
4
|
attributes:
|
@@ -56,6 +57,8 @@ ca:
|
|
56
57
|
short_description: Breu descripció
|
57
58
|
start_date: Data d'inici
|
58
59
|
title: Títol
|
60
|
+
participatory_process_type:
|
61
|
+
title: Títol
|
59
62
|
participatory_process_user_role:
|
60
63
|
email: Correu electrònic
|
61
64
|
name: Nom
|
@@ -65,7 +68,7 @@ ca:
|
|
65
68
|
participatory_process:
|
66
69
|
attributes:
|
67
70
|
document:
|
68
|
-
|
71
|
+
allowed_file_content_types: 'Tipus de document invàlid. Els formats que s''accepten són: %{types}'
|
69
72
|
models:
|
70
73
|
decidim/participatory_process_step_activated_event: Fase activada
|
71
74
|
decidim/participatory_process_step_changed_event: Fase modificada
|
@@ -96,6 +99,7 @@ ca:
|
|
96
99
|
new_process: Nou procés
|
97
100
|
new_process_group: Nou grup de processos
|
98
101
|
new_process_step: Nova fase
|
102
|
+
new_process_type: Nou tipus de procés
|
99
103
|
new_process_user_role: Nova administradora del procés
|
100
104
|
preview: Previsualitzar
|
101
105
|
publish: Publicar
|
@@ -106,6 +110,7 @@ ca:
|
|
106
110
|
participatory_process_groups_submenu:
|
107
111
|
info: Informació
|
108
112
|
landing_page: Pàgina d'inici
|
113
|
+
participatory_process_types: Tipus de procés
|
109
114
|
participatory_processes: Processos
|
110
115
|
participatory_processes_submenu:
|
111
116
|
attachment_collections: Carpetes
|
@@ -137,6 +142,11 @@ ca:
|
|
137
142
|
start_date: Data d'inici
|
138
143
|
title: Títol
|
139
144
|
name: Fase del procés participatiu
|
145
|
+
participatory_process_type:
|
146
|
+
fields:
|
147
|
+
created_at: Creat el
|
148
|
+
title: Títol
|
149
|
+
name: Tipus de procés
|
140
150
|
participatory_process_user_role:
|
141
151
|
fields:
|
142
152
|
email: Correu electrònic
|
@@ -219,6 +229,23 @@ ca:
|
|
219
229
|
update:
|
220
230
|
error: S'ha produït un error en l'actualització d'aquesta fase de procés participatiu.
|
221
231
|
success: La fase de procés participatiu s'ha actualitzat correctament.
|
232
|
+
participatory_process_types:
|
233
|
+
create:
|
234
|
+
error: S'ha produït un error en crear un nou tipus de procés.
|
235
|
+
success: Tipus de procés creat correctament.
|
236
|
+
destroy:
|
237
|
+
success: Tipus de procés eliminat correctament.
|
238
|
+
edit:
|
239
|
+
title: Editar el tipus de procés
|
240
|
+
update: Actualitzar
|
241
|
+
form:
|
242
|
+
title: Títol
|
243
|
+
new:
|
244
|
+
create: Crear
|
245
|
+
title: Nou tipus de procés
|
246
|
+
update:
|
247
|
+
error: S'ha produït un error en actualitzar aquest tipus de procés.
|
248
|
+
success: Tipus de procés actualitzat correctament.
|
222
249
|
participatory_process_user_roles:
|
223
250
|
create:
|
224
251
|
error: S'ha produït un error en afegir una participant en aquest procés participatiu.
|
@@ -263,6 +290,7 @@ ca:
|
|
263
290
|
success: Grup de processos participatius creat correctament.
|
264
291
|
titles:
|
265
292
|
participatory_process_groups: Grups de processos participatius
|
293
|
+
participatory_process_types: Tipus de processos participatius
|
266
294
|
participatory_processes: Processos participatius
|
267
295
|
users:
|
268
296
|
resend_invitation:
|
@@ -271,6 +299,9 @@ ca:
|
|
271
299
|
admin_log:
|
272
300
|
participatory_process:
|
273
301
|
create: "%{user_name} ha creat el procés participatiu %{resource_name}"
|
302
|
+
duplicate: "%{user_name} ha duplicat el procés participatiu %{resource_name}"
|
303
|
+
export: "%{user_name} ha exportat el procés participatiu %{resource_name}"
|
304
|
+
import: "%{user_name} ha importat el procés participatiu %{resource_name}"
|
274
305
|
publish: "%{user_name} ha publicat el procés participatiu %{resource_name}"
|
275
306
|
unpublish: "%{user_name} ha despublicat el procés participatiu %{resource_name}"
|
276
307
|
update: "%{user_name} ha actualitzat el procés participatiu %{resource_name}"
|
@@ -282,6 +313,10 @@ ca:
|
|
282
313
|
create: "%{user_name} ha creat la fase %{resource_name} en el procés participatiu %{space_name}"
|
283
314
|
delete: "%{user_name} ha eliminat la fase %{resource_name} en el procés participatiu %{space_name}"
|
284
315
|
update: "%{user_name} ha actualitzat la fase %{resource_name} en el procés participatiu %{space_name}"
|
316
|
+
participatory_process_type:
|
317
|
+
create: "%{user_name} ha creat el tipus de procés participatiu %{resource_name}"
|
318
|
+
delete: "%{user_name} ha esborrat el tipus de procés participatiu %{resource_name}"
|
319
|
+
update: "%{user_name} ha actualitzat el tipus de procés participatiu %{resource_name}"
|
285
320
|
participatory_process_user_role:
|
286
321
|
create: "%{user_name} ha convidat la participant %{resource_name} al procés participatiu %{space_name}"
|
287
322
|
delete: "%{user_name} ha eliminat la participant %{resource_name} del procés participatiu %{space_name}"
|
@@ -309,6 +344,10 @@ ca:
|
|
309
344
|
contextual: "<p>Un <strong>procés participatiu</strong> és una seqüència d'activitats participatives (p.e. primer omplir una enquesta, després realitzar propostes, debatre-les en trobades presencials o virtuals, i finalment prioritzar-les) amb l'objectiu de definir y prendre una decisió sobre un tema específic.</p> <p>Exemples de processos participatius són: un procés d'elecció de les membres d'un comitè (on primer es presenten unes candidatures, després es debat i finalment s'escull una candidatura), pressupostos participatius (on es realitzen propostes, es valoren econòmicament i es voten amb el pressupost disponible), un procés de planificació estratègica, la redacció col·laborativa d'un reglament o norma, el disseny d'un espai urbà o la producció d'un pla de polítiques públiques.</p>\n"
|
310
345
|
page: "<p>Un <strong>procés participatiu</strong> és una seqüència d'activitats participatives (p.e. primer omplir una enquesta, després realitzar propostes, debatre-les en trobades presencials o virtuals, i finalment prioritzar-les) amb l'objectiu de definir y prendre una decisió sobre un tema específic.</p> <p>Exemples de processos participatius són: un procés d'elecció de les membres d'un comitè (on primer es presenten unes candidatures, després es debat i finalment s'escull una candidatura), pressupostos participatius (on es realitzen propostes, es valoren econòmicament i es voten amb el pressupost disponible), un procés de planificació estratègica, la redacció col·laborativa d'un reglament o norma, el disseny d'un espai urbà o la producció d'un pla de polítiques públiques.</p>\n"
|
311
346
|
title: Què és un procés participatiu?
|
347
|
+
log:
|
348
|
+
value_types:
|
349
|
+
participatory_process_type_presenter:
|
350
|
+
not_found: 'Aquest tipus de procés no s''ha trobat a la base de dades (ID: %{id})'
|
312
351
|
menu:
|
313
352
|
processes: Processos
|
314
353
|
metrics:
|
@@ -384,6 +423,7 @@ ca:
|
|
384
423
|
related_processes: Processos relacionats
|
385
424
|
scope_type_max_depth_help: Restringeix la profunditat del filtre d'àmbit. Es mostrarà des del filtre general fins al filtre seleccionat.
|
386
425
|
select_an_area: Selecciona una àrea
|
426
|
+
select_participatory_process_type: Selecciona un tipus de procés
|
387
427
|
select_process_group: Selecciona un grup de processos
|
388
428
|
slug_help: 'Els noms curts d''URL s''utilitzen per generar els URL que apunten a aquest procés. Només accepta lletres, números i guions, i ha de començar amb una lletra. Exemple: %{url}'
|
389
429
|
title: Informació general
|
@@ -410,6 +450,7 @@ ca:
|
|
410
450
|
back_to_process: Torna a la pàgina de procés
|
411
451
|
participatory_processes:
|
412
452
|
filters:
|
453
|
+
all_types: Tots els tipus
|
413
454
|
counters:
|
414
455
|
active:
|
415
456
|
one: Un procés actiu
|
@@ -427,6 +468,7 @@ ca:
|
|
427
468
|
no_active: Sense processos actius
|
428
469
|
no_active_nor_upcoming: No hi ha processos actius ni futurs
|
429
470
|
no_active_nor_upcoming_callout: No hi ha processos actius ni futurs. Aquí hi ha una llista dels anteriors.
|
471
|
+
filter_by: Mostrar
|
430
472
|
names:
|
431
473
|
active: Actius
|
432
474
|
all: Tots
|