decidim-proposals 0.4.0 → 0.4.1
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.
- checksums.yaml +4 -4
- data/app/controllers/decidim/proposals/proposals_controller.rb +2 -1
- data/app/forms/decidim/proposals/admin/proposal_answer_form.rb +1 -1
- data/app/helpers/decidim/proposals/application_helper.rb +23 -11
- data/app/models/decidim/proposals/abilities/{admin_user.rb → admin_ability.rb} +5 -12
- data/app/models/decidim/proposals/abilities/{current_user.rb → current_user_ability.rb} +1 -2
- data/app/models/decidim/proposals/abilities/{process_admin_user.rb → participatory_process_admin_ability.rb} +10 -22
- data/app/models/decidim/proposals/abilities/participatory_process_moderator_ability.rb +19 -0
- data/app/models/decidim/proposals/proposal.rb +8 -0
- data/app/services/decidim/proposals/proposal_search.rb +5 -2
- data/app/views/decidim/proposals/admin/proposal_answers/edit.html.erb +1 -1
- data/app/views/decidim/proposals/proposals/_filters.html.erb +1 -1
- data/app/views/decidim/proposals/proposals/_proposal_badge.html.erb +1 -1
- data/app/views/decidim/proposals/proposals/_proposals.html.erb +10 -1
- data/config/locales/ca.yml +3 -0
- data/config/locales/en.yml +3 -0
- data/config/locales/es.yml +3 -0
- data/lib/decidim/proposals/admin_engine.rb +5 -2
- data/lib/decidim/proposals/engine.rb +1 -1
- data/lib/decidim/proposals/feature.rb +4 -0
- data/lib/decidim/proposals/proposal_serializer.rb +4 -0
- metadata +18 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 119d43dd9b091b7b6f894a98cf5b1a5b0f8e5b38
|
4
|
+
data.tar.gz: 60787db2fd895e03b62fed6f3f69c69db1feb23c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 94c3bcb27db06bfe1010caa03994bab8601107a5b1b05fe18cb2d1bf04b3e3e6e5a72a7ab9615c12d45c1b29237e0fa1c14933035c8b8d4cf1bcd4c32e3727be
|
7
|
+
data.tar.gz: fd598e7e6ae7842ffb504f6d2fa600e447ef22681347a6489b31ee7fdc44a628e3355d5d36ce40061d19f61bb537a8139e95e6304e3eadcb0f3d71baf31a651c
|
@@ -8,6 +8,7 @@ module Decidim
|
|
8
8
|
include FormFactory
|
9
9
|
include FilterResource
|
10
10
|
include Orderable
|
11
|
+
include Paginable
|
11
12
|
|
12
13
|
helper_method :geocoded_proposals
|
13
14
|
|
@@ -30,7 +31,7 @@ module Decidim
|
|
30
31
|
[]
|
31
32
|
end
|
32
33
|
|
33
|
-
@proposals = @proposals
|
34
|
+
@proposals = paginate(@proposals)
|
34
35
|
@proposals = reorder(@proposals)
|
35
36
|
end
|
36
37
|
|
@@ -11,7 +11,7 @@ module Decidim
|
|
11
11
|
translatable_attribute :answer, String
|
12
12
|
attribute :state, String
|
13
13
|
|
14
|
-
validates :state, presence: true, inclusion: { in: %w(accepted rejected) }
|
14
|
+
validates :state, presence: true, inclusion: { in: %w(accepted rejected evaluating) }
|
15
15
|
validates :answer, translatable_presence: true, if: ->(form) { form.state == "rejected" }
|
16
16
|
end
|
17
17
|
end
|
@@ -17,15 +17,7 @@ module Decidim
|
|
17
17
|
#
|
18
18
|
# Returns a String.
|
19
19
|
def humanize_proposal_state(state)
|
20
|
-
|
21
|
-
"accepted"
|
22
|
-
elsif state == "rejected"
|
23
|
-
"rejected"
|
24
|
-
else
|
25
|
-
"not_answered"
|
26
|
-
end
|
27
|
-
|
28
|
-
I18n.t(value, scope: "decidim.proposals.answers")
|
20
|
+
I18n.t(state, scope: "decidim.proposals.answers", default: :not_answered)
|
29
21
|
end
|
30
22
|
|
31
23
|
# Public: The css class applied based on the proposal state.
|
@@ -34,14 +26,34 @@ module Decidim
|
|
34
26
|
#
|
35
27
|
# Returns a String.
|
36
28
|
def proposal_state_css_class(state)
|
37
|
-
|
29
|
+
case state
|
30
|
+
when "accepted"
|
38
31
|
"text-success"
|
39
|
-
|
32
|
+
when "rejected"
|
40
33
|
"text-alert"
|
34
|
+
when "evaluating"
|
35
|
+
"text-info"
|
41
36
|
else
|
42
37
|
"text-warning"
|
43
38
|
end
|
44
39
|
end
|
40
|
+
|
41
|
+
# Public: The css class applied based on the proposal state to
|
42
|
+
# the proposal badge.
|
43
|
+
#
|
44
|
+
# state - The String state of the proposal.
|
45
|
+
#
|
46
|
+
# Returns a String.
|
47
|
+
def proposal_state_badge_css_class(state)
|
48
|
+
case state
|
49
|
+
when "accepted"
|
50
|
+
"success"
|
51
|
+
when "rejected"
|
52
|
+
"warning"
|
53
|
+
when "evaluating"
|
54
|
+
"secondary"
|
55
|
+
end
|
56
|
+
end
|
45
57
|
end
|
46
58
|
end
|
47
59
|
end
|
@@ -5,16 +5,9 @@ module Decidim
|
|
5
5
|
module Abilities
|
6
6
|
# Defines the abilities related to proposals for a logged in admin user.
|
7
7
|
# Intended to be used with `cancancan`.
|
8
|
-
class
|
9
|
-
|
10
|
-
|
11
|
-
attr_reader :user, :context
|
12
|
-
|
13
|
-
def initialize(user, context)
|
14
|
-
return unless user && user.role?(:admin)
|
15
|
-
|
16
|
-
@user = user
|
17
|
-
@context = context
|
8
|
+
class AdminAbility < Decidim::Abilities::AdminAbility
|
9
|
+
def define_abilities
|
10
|
+
super
|
18
11
|
|
19
12
|
can :manage, Proposal
|
20
13
|
can :unreport, Proposal
|
@@ -26,11 +19,11 @@ module Decidim
|
|
26
19
|
private
|
27
20
|
|
28
21
|
def current_settings
|
29
|
-
context.fetch(:current_settings, nil)
|
22
|
+
@context.fetch(:current_settings, nil)
|
30
23
|
end
|
31
24
|
|
32
25
|
def feature_settings
|
33
|
-
context.fetch(:feature_settings, nil)
|
26
|
+
@context.fetch(:feature_settings, nil)
|
34
27
|
end
|
35
28
|
|
36
29
|
def can_create_proposal?
|
@@ -5,7 +5,7 @@ module Decidim
|
|
5
5
|
module Abilities
|
6
6
|
# Defines the abilities related to proposals for a logged in user.
|
7
7
|
# Intended to be used with `cancancan`.
|
8
|
-
class
|
8
|
+
class CurrentUserAbility
|
9
9
|
include CanCan::Ability
|
10
10
|
|
11
11
|
attr_reader :user, :context
|
@@ -27,7 +27,6 @@ module Decidim
|
|
27
27
|
can :create, Proposal if authorized?(:create) && creation_enabled?
|
28
28
|
|
29
29
|
can :report, Proposal
|
30
|
-
can :report, Decidim::Comments::Comment
|
31
30
|
end
|
32
31
|
|
33
32
|
private
|
@@ -5,22 +5,14 @@ module Decidim
|
|
5
5
|
module Abilities
|
6
6
|
# Defines the abilities related to proposals for a logged in process admin user.
|
7
7
|
# Intended to be used with `cancancan`.
|
8
|
-
class
|
9
|
-
|
8
|
+
class ParticipatoryProcessAdminAbility < Decidim::Abilities::ParticipatoryProcessAdminAbility
|
9
|
+
def define_participatory_process_abilities
|
10
|
+
super
|
10
11
|
|
11
|
-
|
12
|
-
|
13
|
-
def initialize(user, context)
|
14
|
-
return unless user && !user.role?(:admin)
|
15
|
-
|
16
|
-
@user = user
|
17
|
-
@context = context
|
18
|
-
|
19
|
-
can :manage, Proposal do |proposal|
|
20
|
-
participatory_processes.include?(proposal.feature.participatory_process)
|
12
|
+
can [:manage, :unreport, :hide], Proposal do |proposal|
|
13
|
+
can_manage_process?(proposal.feature.participatory_process)
|
21
14
|
end
|
22
|
-
|
23
|
-
can :hide, Proposal
|
15
|
+
|
24
16
|
cannot :create, Proposal unless can_create_proposal?
|
25
17
|
cannot :update, Proposal unless can_update_proposal?
|
26
18
|
end
|
@@ -28,31 +20,27 @@ module Decidim
|
|
28
20
|
private
|
29
21
|
|
30
22
|
def current_settings
|
31
|
-
context.fetch(:current_settings, nil)
|
23
|
+
@context.fetch(:current_settings, nil)
|
32
24
|
end
|
33
25
|
|
34
26
|
def feature_settings
|
35
|
-
context.fetch(:feature_settings, nil)
|
27
|
+
@context.fetch(:feature_settings, nil)
|
36
28
|
end
|
37
29
|
|
38
30
|
def current_feature
|
39
|
-
context.fetch(:current_feature, nil)
|
31
|
+
@context.fetch(:current_feature, nil)
|
40
32
|
end
|
41
33
|
|
42
34
|
def can_create_proposal?
|
43
35
|
current_settings.try(:creation_enabled?) &&
|
44
36
|
feature_settings.try(:official_proposals_enabled) &&
|
45
|
-
|
37
|
+
can_manage_process?(current_feature.try(:participatory_process))
|
46
38
|
end
|
47
39
|
|
48
40
|
def can_update_proposal?
|
49
41
|
current_settings.try(:proposal_answering_enabled) &&
|
50
42
|
feature_settings.try(:proposal_answering_enabled)
|
51
43
|
end
|
52
|
-
|
53
|
-
def participatory_processes
|
54
|
-
@participatory_processes ||= Decidim::Admin::ManageableParticipatoryProcessesForUser.for(@user)
|
55
|
-
end
|
56
44
|
end
|
57
45
|
end
|
58
46
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Proposals
|
5
|
+
module Abilities
|
6
|
+
# Defines the abilities related to proposals for a logged in process admin user.
|
7
|
+
# Intended to be used with `cancancan`.
|
8
|
+
class ParticipatoryProcessModeratorAbility < Decidim::Abilities::ParticipatoryProcessModeratorAbility
|
9
|
+
def define_participatory_process_abilities
|
10
|
+
super
|
11
|
+
|
12
|
+
can [:unreport, :hide], Proposal do |proposal|
|
13
|
+
can_manage_process?(proposal.feature.participatory_process)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -23,6 +23,7 @@ module Decidim
|
|
23
23
|
|
24
24
|
scope :accepted, -> { where(state: "accepted") }
|
25
25
|
scope :rejected, -> { where(state: "rejected") }
|
26
|
+
scope :evaluating, -> { where(state: "evaluating") }
|
26
27
|
|
27
28
|
def self.order_randomly(seed)
|
28
29
|
transaction do
|
@@ -67,6 +68,13 @@ module Decidim
|
|
67
68
|
state == "rejected"
|
68
69
|
end
|
69
70
|
|
71
|
+
# Public: Checks if the organization has marked the proposal as evaluating it.
|
72
|
+
#
|
73
|
+
# Returns Boolean.
|
74
|
+
def evaluating?
|
75
|
+
state == "evaluating"
|
76
|
+
end
|
77
|
+
|
70
78
|
# Public: Overrides the `commentable?` Commentable concern method.
|
71
79
|
def commentable?
|
72
80
|
feature.settings.comments_enabled?
|
@@ -47,10 +47,13 @@ module Decidim
|
|
47
47
|
|
48
48
|
# Handle the state filter
|
49
49
|
def search_state
|
50
|
-
|
50
|
+
case state
|
51
|
+
when "accepted"
|
51
52
|
query.accepted
|
52
|
-
|
53
|
+
when "rejected"
|
53
54
|
query.rejected
|
55
|
+
when "evaluating"
|
56
|
+
query.evaluating
|
54
57
|
else # Assume 'all'
|
55
58
|
query
|
56
59
|
end
|
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
<div class="card-section">
|
8
8
|
<div class="row column">
|
9
|
-
<%= f.collection_radio_buttons :state, [["accepted", t('.accepted')], ["rejected", t('.rejected')]], :first, :last, prompt: true %>
|
9
|
+
<%= f.collection_radio_buttons :state, [["accepted", t('.accepted')], ["rejected", t('.rejected')], ["evaluating", t('.evaluating')]], :first, :last, prompt: true %>
|
10
10
|
</div>
|
11
11
|
|
12
12
|
<div class="row column">
|
@@ -17,7 +17,7 @@
|
|
17
17
|
<% end %>
|
18
18
|
|
19
19
|
<% if feature_settings.proposal_answering_enabled && current_settings.proposal_answering_enabled %>
|
20
|
-
<%= form.collection_radio_buttons :state, [["all", t('.all')], ["accepted", t('.accepted')], ["rejected", t('.rejected')]], :first, :last, legend_title: t('.state') %>
|
20
|
+
<%= form.collection_radio_buttons :state, [["all", t('.all')], ["accepted", t('.accepted')], ["rejected", t('.rejected')], ["evaluating", t('.evaluating')]], :first, :last, legend_title: t('.state') %>
|
21
21
|
<% end %>
|
22
22
|
|
23
23
|
<% if linked_classes_for(Decidim::Proposals::Proposal).any? %>
|
@@ -1,3 +1,3 @@
|
|
1
1
|
<% if proposal.answered? %>
|
2
|
-
<span class="<%= (proposal.
|
2
|
+
<span class="<%= proposal_state_badge_css_class(proposal.state) %> label proposal-status"><%= humanize_proposal_state proposal.state %></span>
|
3
3
|
<% end %>
|
@@ -1,4 +1,13 @@
|
|
1
|
-
|
1
|
+
<div class="collection-sort-controls row small-up-1 medium-up-3 card-grid">
|
2
|
+
<div class="column">
|
3
|
+
<%= order_selector available_orders, i18n_scope: "decidim.proposals.proposals.orders" %>
|
4
|
+
</div>
|
5
|
+
|
6
|
+
<div class="column">
|
7
|
+
<%= render partial: "decidim/shared/results_per_page" %>
|
8
|
+
</div>
|
9
|
+
</div>
|
10
|
+
|
2
11
|
<div class="row small-up-1 medium-up-2 card-grid">
|
3
12
|
<%= render @proposals %>
|
4
13
|
</div>
|
data/config/locales/ca.yml
CHANGED
@@ -48,6 +48,7 @@ ca:
|
|
48
48
|
edit:
|
49
49
|
accepted: Acceptada
|
50
50
|
answer_proposal: Resposta
|
51
|
+
evaluating: En avaluació
|
51
52
|
rejected: Rebutjada
|
52
53
|
title: Respondre a la proposta %{title}
|
53
54
|
proposals:
|
@@ -66,6 +67,7 @@ ca:
|
|
66
67
|
title: Crear proposta
|
67
68
|
answers:
|
68
69
|
accepted: Acceptada
|
70
|
+
evaluating: En avaluació
|
69
71
|
not_answered: No resposta
|
70
72
|
rejected: Rebutjada
|
71
73
|
create:
|
@@ -97,6 +99,7 @@ ca:
|
|
97
99
|
category: Categoria
|
98
100
|
category_prompt: Selecciona una categoria
|
99
101
|
citizenship: Ciutadania
|
102
|
+
evaluating: En avaluació
|
100
103
|
official: Oficial
|
101
104
|
origin: Origen
|
102
105
|
rejected: Rebutjades
|
data/config/locales/en.yml
CHANGED
@@ -50,6 +50,7 @@ en:
|
|
50
50
|
edit:
|
51
51
|
accepted: Accepted
|
52
52
|
answer_proposal: Answer
|
53
|
+
evaluating: Evaluating
|
53
54
|
rejected: Rejected
|
54
55
|
title: Answer for proposal %{title}
|
55
56
|
proposals:
|
@@ -68,6 +69,7 @@ en:
|
|
68
69
|
title: Create proposal
|
69
70
|
answers:
|
70
71
|
accepted: Accepted
|
72
|
+
evaluating: Evaluating
|
71
73
|
not_answered: Not answered
|
72
74
|
rejected: Rejected
|
73
75
|
create:
|
@@ -99,6 +101,7 @@ en:
|
|
99
101
|
category: Category
|
100
102
|
category_prompt: Select a category
|
101
103
|
citizenship: Citizenship
|
104
|
+
evaluating: Evaluating
|
102
105
|
official: Official
|
103
106
|
origin: Origin
|
104
107
|
rejected: Rejected
|
data/config/locales/es.yml
CHANGED
@@ -48,6 +48,7 @@ es:
|
|
48
48
|
edit:
|
49
49
|
accepted: Aceptada
|
50
50
|
answer_proposal: Respuesta
|
51
|
+
evaluating: En evaluación
|
51
52
|
rejected: Rechazada
|
52
53
|
title: Responder a la propuesta %{title}
|
53
54
|
proposals:
|
@@ -66,6 +67,7 @@ es:
|
|
66
67
|
title: Crear propuesta
|
67
68
|
answers:
|
68
69
|
accepted: Aceptadas
|
70
|
+
evaluating: En evaluación
|
69
71
|
not_answered: No contestada
|
70
72
|
rejected: Rechazada
|
71
73
|
create:
|
@@ -97,6 +99,7 @@ es:
|
|
97
99
|
category: Categoría
|
98
100
|
category_prompt: Selecciona una categoría
|
99
101
|
citizenship: Ciudadanía
|
102
|
+
evaluating: En evaluación
|
100
103
|
official: Oficial
|
101
104
|
origin: Origen
|
102
105
|
rejected: Rechazadas
|
@@ -18,8 +18,11 @@ module Decidim
|
|
18
18
|
|
19
19
|
initializer "decidim_proposals.inject_abilities_to_user" do |_app|
|
20
20
|
Decidim.configure do |config|
|
21
|
-
config.admin_abilities += [
|
22
|
-
|
21
|
+
config.admin_abilities += [
|
22
|
+
"Decidim::Proposals::Abilities::AdminAbility",
|
23
|
+
"Decidim::Proposals::Abilities::ParticipatoryProcessAdminAbility",
|
24
|
+
"Decidim::Proposals::Abilities::ParticipatoryProcessModeratorAbility"
|
25
|
+
]
|
23
26
|
end
|
24
27
|
end
|
25
28
|
|
@@ -25,7 +25,7 @@ module Decidim
|
|
25
25
|
|
26
26
|
initializer "decidim_proposals.inject_abilities_to_user" do |_app|
|
27
27
|
Decidim.configure do |config|
|
28
|
-
config.abilities += ["Decidim::Proposals::Abilities::
|
28
|
+
config.abilities += ["Decidim::Proposals::Abilities::CurrentUserAbility"]
|
29
29
|
end
|
30
30
|
end
|
31
31
|
end
|
@@ -114,6 +114,10 @@ Decidim.register_feature(:proposals) do |feature|
|
|
114
114
|
proposal.answered_at = Time.current
|
115
115
|
proposal.answer = Decidim::Faker::Localized.sentence(10)
|
116
116
|
proposal.save!
|
117
|
+
elsif n > 6
|
118
|
+
proposal.state = "evaluating"
|
119
|
+
proposal.answered_at = Time.current
|
120
|
+
proposal.save!
|
117
121
|
end
|
118
122
|
|
119
123
|
rand(3).times do |m|
|
@@ -21,6 +21,10 @@ module Decidim
|
|
21
21
|
id: @proposal.category.try(:id),
|
22
22
|
name: @proposal.category.try(:name)
|
23
23
|
},
|
24
|
+
scope: {
|
25
|
+
id: @proposal.scope.try(:id),
|
26
|
+
name: @proposal.scope.try(:name)
|
27
|
+
},
|
24
28
|
title: @proposal.title,
|
25
29
|
body: @proposal.body,
|
26
30
|
votes: @proposal.proposal_votes_count,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: decidim-proposals
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josep Jaume Rey Peroy
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2017-
|
13
|
+
date: 2017-08-02 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: decidim-core
|
@@ -18,28 +18,28 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - '='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.4.
|
21
|
+
version: 0.4.1
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
26
|
- - '='
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version: 0.4.
|
28
|
+
version: 0.4.1
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: decidim-comments
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
33
|
- - '='
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version: 0.4.
|
35
|
+
version: 0.4.1
|
36
36
|
type: :runtime
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
40
|
- - '='
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version: 0.4.
|
42
|
+
version: 0.4.1
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: rectify
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
@@ -88,56 +88,56 @@ dependencies:
|
|
88
88
|
requirements:
|
89
89
|
- - '='
|
90
90
|
- !ruby/object:Gem::Version
|
91
|
-
version: 0.4.
|
91
|
+
version: 0.4.1
|
92
92
|
type: :development
|
93
93
|
prerelease: false
|
94
94
|
version_requirements: !ruby/object:Gem::Requirement
|
95
95
|
requirements:
|
96
96
|
- - '='
|
97
97
|
- !ruby/object:Gem::Version
|
98
|
-
version: 0.4.
|
98
|
+
version: 0.4.1
|
99
99
|
- !ruby/object:Gem::Dependency
|
100
100
|
name: decidim-meetings
|
101
101
|
requirement: !ruby/object:Gem::Requirement
|
102
102
|
requirements:
|
103
103
|
- - '='
|
104
104
|
- !ruby/object:Gem::Version
|
105
|
-
version: 0.4.
|
105
|
+
version: 0.4.1
|
106
106
|
type: :development
|
107
107
|
prerelease: false
|
108
108
|
version_requirements: !ruby/object:Gem::Requirement
|
109
109
|
requirements:
|
110
110
|
- - '='
|
111
111
|
- !ruby/object:Gem::Version
|
112
|
-
version: 0.4.
|
112
|
+
version: 0.4.1
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: decidim-results
|
115
115
|
requirement: !ruby/object:Gem::Requirement
|
116
116
|
requirements:
|
117
117
|
- - '='
|
118
118
|
- !ruby/object:Gem::Version
|
119
|
-
version: 0.4.
|
119
|
+
version: 0.4.1
|
120
120
|
type: :development
|
121
121
|
prerelease: false
|
122
122
|
version_requirements: !ruby/object:Gem::Requirement
|
123
123
|
requirements:
|
124
124
|
- - '='
|
125
125
|
- !ruby/object:Gem::Version
|
126
|
-
version: 0.4.
|
126
|
+
version: 0.4.1
|
127
127
|
- !ruby/object:Gem::Dependency
|
128
128
|
name: decidim-budgets
|
129
129
|
requirement: !ruby/object:Gem::Requirement
|
130
130
|
requirements:
|
131
131
|
- - '='
|
132
132
|
- !ruby/object:Gem::Version
|
133
|
-
version: 0.4.
|
133
|
+
version: 0.4.1
|
134
134
|
type: :development
|
135
135
|
prerelease: false
|
136
136
|
version_requirements: !ruby/object:Gem::Requirement
|
137
137
|
requirements:
|
138
138
|
- - '='
|
139
139
|
- !ruby/object:Gem::Version
|
140
|
-
version: 0.4.
|
140
|
+
version: 0.4.1
|
141
141
|
description: A proposals component for decidim's participatory processes.
|
142
142
|
email:
|
143
143
|
- josepjaume@gmail.com
|
@@ -175,9 +175,10 @@ files:
|
|
175
175
|
- app/helpers/decidim/proposals/application_helper.rb
|
176
176
|
- app/helpers/decidim/proposals/map_helper.rb
|
177
177
|
- app/helpers/decidim/proposals/proposal_votes_helper.rb
|
178
|
-
- app/models/decidim/proposals/abilities/
|
179
|
-
- app/models/decidim/proposals/abilities/
|
180
|
-
- app/models/decidim/proposals/abilities/
|
178
|
+
- app/models/decidim/proposals/abilities/admin_ability.rb
|
179
|
+
- app/models/decidim/proposals/abilities/current_user_ability.rb
|
180
|
+
- app/models/decidim/proposals/abilities/participatory_process_admin_ability.rb
|
181
|
+
- app/models/decidim/proposals/abilities/participatory_process_moderator_ability.rb
|
181
182
|
- app/models/decidim/proposals/application_record.rb
|
182
183
|
- app/models/decidim/proposals/proposal.rb
|
183
184
|
- app/models/decidim/proposals/proposal_vote.rb
|