decidim-assemblies 0.9.3 → 0.10.0
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/commands/decidim/assemblies/admin/create_assembly.rb +18 -6
- data/app/commands/decidim/assemblies/admin/create_assembly_admin.rb +29 -10
- data/app/commands/decidim/assemblies/admin/destroy_assembly_admin.rb +53 -0
- data/app/commands/decidim/assemblies/admin/publish_assembly.rb +8 -3
- data/app/commands/decidim/assemblies/admin/unpublish_assembly.rb +9 -4
- data/app/commands/decidim/assemblies/admin/update_assembly.rb +11 -1
- data/app/commands/decidim/assemblies/admin/update_assembly_admin.rb +11 -1
- data/app/controllers/decidim/assemblies/admin/assembly_attachment_collections_controller.rb +26 -0
- data/app/controllers/decidim/assemblies/admin/assembly_publications_controller.rb +2 -2
- data/app/controllers/decidim/assemblies/admin/assembly_user_roles_controller.rb +6 -4
- data/app/controllers/decidim/assemblies/assemblies_controller.rb +1 -0
- data/app/forms/decidim/assemblies/admin/assembly_copy_form.rb +1 -1
- data/app/forms/decidim/assemblies/admin/assembly_form.rb +7 -1
- data/app/models/decidim/assemblies/abilities/admin/assembly_admin_ability.rb +4 -0
- data/app/models/decidim/assemblies/abilities/admin/assembly_role_ability.rb +2 -2
- data/app/models/decidim/assemblies/abilities/assembly_role_ability.rb +2 -2
- data/app/models/decidim/assembly.rb +11 -3
- data/app/models/decidim/assembly_user_role.rb +8 -0
- data/app/presenters/decidim/assemblies/admin_log/assembly_presenter.rb +61 -0
- data/app/presenters/decidim/assemblies/admin_log/assembly_user_role_presenter.rb +53 -0
- data/app/presenters/decidim/assemblies/admin_log/value_types/role_presenter.rb +22 -0
- data/app/views/decidim/assemblies/admin/assemblies/_form.html.erb +4 -0
- data/app/views/decidim/assemblies/assemblies/show.html.erb +9 -0
- data/app/views/layouts/decidim/admin/assembly.html.erb +15 -3
- data/config/locales/ca.yml +22 -2
- data/config/locales/en.yml +20 -0
- data/config/locales/es.yml +20 -0
- data/config/locales/eu.yml +20 -0
- data/config/locales/fi.yml +20 -0
- data/config/locales/fr.yml +32 -12
- data/config/locales/gl.yml +20 -0
- data/config/locales/it.yml +20 -0
- data/config/locales/nl.yml +20 -0
- data/config/locales/pl.yml +20 -5
- data/config/locales/pt-BR.yml +20 -0
- data/config/locales/pt.yml +20 -0
- data/config/locales/sv.yml +20 -0
- data/config/locales/uk.yml +28 -4
- data/db/migrate/20180125104426_add_reference_to_assemblies.rb +7 -0
- data/db/migrate/20180216091553_add_area_to_assemblies.rb +7 -0
- data/lib/decidim/assemblies/admin_engine.rb +1 -0
- data/lib/decidim/assemblies/participatory_space.rb +14 -0
- data/lib/decidim/assemblies/version.rb +1 -1
- metadata +16 -9
@@ -6,17 +6,21 @@ module Decidim
|
|
6
6
|
# several features (proposals, debates...) that can be enabled or disabled.
|
7
7
|
class Assembly < ApplicationRecord
|
8
8
|
include Decidim::HasAttachments
|
9
|
+
include Decidim::HasAttachmentCollections
|
9
10
|
include Decidim::Participable
|
10
11
|
include Decidim::Publicable
|
11
12
|
include Decidim::Scopable
|
12
13
|
include Decidim::Followable
|
14
|
+
include Decidim::HasReference
|
15
|
+
include Decidim::Traceable
|
16
|
+
include Decidim::Loggable
|
13
17
|
|
14
18
|
belongs_to :organization,
|
15
19
|
foreign_key: "decidim_organization_id",
|
16
20
|
class_name: "Decidim::Organization"
|
17
|
-
belongs_to :
|
18
|
-
foreign_key: "
|
19
|
-
class_name: "Decidim::
|
21
|
+
belongs_to :area,
|
22
|
+
foreign_key: "decidim_area_id",
|
23
|
+
class_name: "Decidim::Area",
|
20
24
|
optional: true
|
21
25
|
has_many :categories,
|
22
26
|
foreign_key: "decidim_participatory_space_id",
|
@@ -39,6 +43,10 @@ module Decidim
|
|
39
43
|
where(promoted: true)
|
40
44
|
end
|
41
45
|
|
46
|
+
def self.log_presenter_class_for(_log)
|
47
|
+
Decidim::Assemblies::AdminLog::AssemblyPresenter
|
48
|
+
end
|
49
|
+
|
42
50
|
def hashtag
|
43
51
|
attributes["hashtag"].to_s.delete("#")
|
44
52
|
end
|
@@ -4,13 +4,21 @@ module Decidim
|
|
4
4
|
# Defines a relation between a user and an assembly, and what kind of relation
|
5
5
|
# does the user have.
|
6
6
|
class AssemblyUserRole < ApplicationRecord
|
7
|
+
include Traceable
|
8
|
+
include Loggable
|
9
|
+
|
7
10
|
belongs_to :user, foreign_key: "decidim_user_id", class_name: "Decidim::User", optional: true
|
8
11
|
belongs_to :assembly, foreign_key: "decidim_assembly_id", class_name: "Decidim::Assembly", optional: true
|
12
|
+
alias participatory_space assembly
|
9
13
|
|
10
14
|
ROLES = %w(admin collaborator moderator).freeze
|
11
15
|
validates :role, inclusion: { in: ROLES }, uniqueness: { scope: [:user, :assembly] }
|
12
16
|
validate :user_and_assembly_same_organization
|
13
17
|
|
18
|
+
def self.log_presenter_class_for(_log)
|
19
|
+
Decidim::Assemblies::AdminLog::AssemblyUserRolePresenter
|
20
|
+
end
|
21
|
+
|
14
22
|
private
|
15
23
|
|
16
24
|
# Private: check if the process and the user have the same organization
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Assemblies
|
5
|
+
module AdminLog
|
6
|
+
# This class holds the logic to present a `Decidim::Assembly`
|
7
|
+
# for the `AdminLog` log.
|
8
|
+
#
|
9
|
+
# Usage should be automatic and you shouldn't need to call this class
|
10
|
+
# directly, but here's an example:
|
11
|
+
#
|
12
|
+
# action_log = Decidim::ActionLog.last
|
13
|
+
# view_helpers # => this comes from the views
|
14
|
+
# AssemblyPresenter.new(action_log, view_helpers).present
|
15
|
+
class AssemblyPresenter < Decidim::Log::BasePresenter
|
16
|
+
private
|
17
|
+
|
18
|
+
def diff_fields_mapping
|
19
|
+
{
|
20
|
+
description: :i18n,
|
21
|
+
hashtag: :string,
|
22
|
+
decidim_area_id: :area,
|
23
|
+
decidim_scope_id: :scope,
|
24
|
+
developer_group: :i18n,
|
25
|
+
local_area: :i18n,
|
26
|
+
meta_scope: :i18n,
|
27
|
+
participatory_scope: :i18n,
|
28
|
+
participatory_structure: :i18n,
|
29
|
+
promoted: :boolean,
|
30
|
+
published_at: :date,
|
31
|
+
reference: :string,
|
32
|
+
scopes_enabled: :boolean,
|
33
|
+
short_description: :i18n,
|
34
|
+
show_statistics: :boolean,
|
35
|
+
slug: :default,
|
36
|
+
subtitle: :i18n,
|
37
|
+
target: :i18n,
|
38
|
+
title: :i18n
|
39
|
+
}
|
40
|
+
end
|
41
|
+
|
42
|
+
def i18n_labels_scope
|
43
|
+
"activemodel.attributes.assembly"
|
44
|
+
end
|
45
|
+
|
46
|
+
def action_string
|
47
|
+
case action
|
48
|
+
when "create", "publish", "unpublish", "update"
|
49
|
+
"decidim.admin_log.assembly.#{action}"
|
50
|
+
else
|
51
|
+
super
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
def has_diff?
|
56
|
+
action == "unpublish" || super
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Assemblies
|
5
|
+
module AdminLog
|
6
|
+
# This class holds the logic to present a `Decidim::AssemblyUserRole`
|
7
|
+
# for the `AdminLog` log.
|
8
|
+
#
|
9
|
+
# Usage should be automatic and you shouldn't need to call this class
|
10
|
+
# directly, but here's an example:
|
11
|
+
#
|
12
|
+
# action_log = Decidim::ActionLog.last
|
13
|
+
# view_helpers # => this comes from the views
|
14
|
+
# AssemblyUserRolePresenter.new(action_log, view_helpers).present
|
15
|
+
class AssemblyUserRolePresenter < Decidim::Log::BasePresenter
|
16
|
+
private
|
17
|
+
|
18
|
+
def diff_fields_mapping
|
19
|
+
{
|
20
|
+
role: "Decidim::Assemblies::AdminLog::ValueTypes::RolePresenter"
|
21
|
+
}
|
22
|
+
end
|
23
|
+
|
24
|
+
def i18n_labels_scope
|
25
|
+
"activemodel.attributes.assembly_user_role"
|
26
|
+
end
|
27
|
+
|
28
|
+
def action_string
|
29
|
+
case action
|
30
|
+
when "create", "delete", "update"
|
31
|
+
"decidim.admin_log.assembly_user_role.#{action}"
|
32
|
+
else
|
33
|
+
super
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
def changeset
|
38
|
+
return super unless action.to_s == "delete"
|
39
|
+
|
40
|
+
Decidim::Log::DiffChangesetCalculator.new(
|
41
|
+
{ role: [action_log.version.object["role"], ""] },
|
42
|
+
diff_fields_mapping,
|
43
|
+
i18n_labels_scope
|
44
|
+
).changeset
|
45
|
+
end
|
46
|
+
|
47
|
+
def has_diff?
|
48
|
+
action == "delete" || super
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Assemblies
|
5
|
+
module AdminLog
|
6
|
+
module ValueTypes
|
7
|
+
# This class presents the given value as a user role. Check
|
8
|
+
# the `DefaultPresenter` for more info on how value
|
9
|
+
# presenters work.
|
10
|
+
class RolePresenter < Decidim::Log::ValueTypes::DefaultPresenter
|
11
|
+
# Public: Presents the value as a user role.
|
12
|
+
#
|
13
|
+
# Returns an HTML-safe String.
|
14
|
+
def present
|
15
|
+
return if value.blank?
|
16
|
+
h.t(value, scope: "decidim.admin.models.assembly_user_role.roles", default: value)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -75,6 +75,10 @@
|
|
75
75
|
<%= scopes_picker_field form, :scope_id, root: nil %>
|
76
76
|
</div>
|
77
77
|
|
78
|
+
<div class="row column">
|
79
|
+
<%= form.select :area_id, option_groups_from_collection_for_select(current_organization.area_types, :areas, :translated_name, :id, :translated_name, current_assembly.try(:decidim_area_id)), include_blank: t(".select_an_area") %>
|
80
|
+
</div>
|
81
|
+
|
78
82
|
<div class="row column">
|
79
83
|
<%= form.translated :text_field, :participatory_scope %>
|
80
84
|
</div>
|
@@ -65,7 +65,16 @@
|
|
65
65
|
<%= translated_attribute(current_participatory_space.participatory_structure) %>
|
66
66
|
</div>
|
67
67
|
<% end %>
|
68
|
+
|
69
|
+
<% if translated_attribute(current_participatory_space.try(:area).try(:name)).present? %>
|
70
|
+
<div class="definition-data__item area">
|
71
|
+
<span class="definition-data__title"><%= t("assemblies.show.area", scope: "decidim") %></span>
|
72
|
+
<%= translated_attribute(current_participatory_space.area.area_type.name) %> - <%= translated_attribute(current_participatory_space.area.name) %>
|
73
|
+
</div>
|
74
|
+
<% end %>
|
75
|
+
|
68
76
|
</div>
|
77
|
+
<%= resource_reference(current_participatory_space) %>
|
69
78
|
<%= render partial: "decidim/shared/share_modal" %>
|
70
79
|
<%= embed_modal_for assembly_assembly_widget_url(current_participatory_space, format: :js) %>
|
71
80
|
</div>
|
@@ -30,9 +30,21 @@
|
|
30
30
|
<%= aria_selected_link_to t("categories", scope: "decidim.admin.menu.assemblies_submenu"), decidim_admin_assemblies.categories_path(current_participatory_space) %>
|
31
31
|
</li>
|
32
32
|
<% end %>
|
33
|
-
<% if can? :read, Decidim::Attachment %>
|
34
|
-
<li
|
35
|
-
|
33
|
+
<% if can?(:read, Decidim::AttachmentCollection) || can?(:read, Decidim::Attachment) %>
|
34
|
+
<li>
|
35
|
+
<span class="secondary-nav__subtitle"><%= t("attachments", scope: "decidim.admin.menu.assemblies_submenu") %></span>
|
36
|
+
<ul>
|
37
|
+
<% if can? :read, Decidim::AttachmentCollection %>
|
38
|
+
<li <% if is_active_link?(decidim_admin_assemblies.assembly_attachment_collections_path(current_participatory_space)) %> class="is-active" <% end %>>
|
39
|
+
<%= aria_selected_link_to t("attachment_collections", scope: "decidim.admin.menu.assemblies_submenu"), decidim_admin_assemblies.assembly_attachment_collections_path(current_participatory_space) %>
|
40
|
+
</li>
|
41
|
+
<% end %>
|
42
|
+
<% if can? :read, Decidim::Attachment %>
|
43
|
+
<li <% if is_active_link?(decidim_admin_assemblies.assembly_attachments_path(current_participatory_space)) %> class="is-active" <% end %>>
|
44
|
+
<%= aria_selected_link_to t("attachment_files", scope: "decidim.admin.menu.assemblies_submenu"), decidim_admin_assemblies.assembly_attachments_path(current_participatory_space) %>
|
45
|
+
</li>
|
46
|
+
<% end %>
|
47
|
+
</ul>
|
36
48
|
</li>
|
37
49
|
<% end %>
|
38
50
|
<% if can? :read, Decidim::AssemblyUserRole %>
|
data/config/locales/ca.yml
CHANGED
@@ -2,9 +2,12 @@ ca:
|
|
2
2
|
activemodel:
|
3
3
|
attributes:
|
4
4
|
assembly:
|
5
|
+
area_id: Àrea
|
5
6
|
banner_image: Imatge de bàner
|
6
7
|
copy_categories: Copiar categories
|
7
8
|
copy_features: Copiar funcionalitats
|
9
|
+
decidim_area_id: Àrea
|
10
|
+
decidim_scope_id: Abast
|
8
11
|
description: Descripció
|
9
12
|
developer_group: Grup promotor
|
10
13
|
domain: Àrees municipals
|
@@ -15,13 +18,15 @@ ca:
|
|
15
18
|
participatory_scope: Àmbit participatiu
|
16
19
|
participatory_structure: Estructura participativa
|
17
20
|
promoted: Destacat
|
21
|
+
published_at: Publicat el
|
18
22
|
scope_id: Àmbit
|
19
23
|
scopes_enabled: Àmbit habilitat
|
20
24
|
short_description: Descripció breu
|
25
|
+
show_statistics: Mostra estadístiques
|
21
26
|
slug: Nom curt d'URL
|
22
27
|
subtitle: Subtítol
|
23
28
|
target: A qui va dirigit?
|
24
|
-
title:
|
29
|
+
title: Títol
|
25
30
|
decidim:
|
26
31
|
admin:
|
27
32
|
assemblies:
|
@@ -80,6 +85,8 @@ ca:
|
|
80
85
|
assemblies: Assemblees
|
81
86
|
assemblies_submenu:
|
82
87
|
assembly_admins: Usuaris de l'assemblea
|
88
|
+
attachment_collections: Col·leccions
|
89
|
+
attachment_files: Fitxers
|
83
90
|
attachments: Adjunts
|
84
91
|
categories: Categories
|
85
92
|
features: Funcionalitats
|
@@ -91,7 +98,7 @@ ca:
|
|
91
98
|
created_at: Data de creació
|
92
99
|
promoted: Destacat
|
93
100
|
published: Publicat
|
94
|
-
title:
|
101
|
+
title: Títol
|
95
102
|
name: Assemblea
|
96
103
|
assembly_user_role:
|
97
104
|
fields:
|
@@ -105,10 +112,21 @@ ca:
|
|
105
112
|
moderator: Moderador
|
106
113
|
titles:
|
107
114
|
assemblies: Assemblees
|
115
|
+
admin_log:
|
116
|
+
assembly:
|
117
|
+
create: "%{user_name} ha creat l'assemblea %{resource_name}"
|
118
|
+
publish: "%{user_name} ha publicat l'assemblea %{resource_name}"
|
119
|
+
unpublish: "%{user_name} ha despublicat l'assemblea %{resource_name}"
|
120
|
+
update: "%{user_name} ha actualitzat l'assemblea %{resource_name}"
|
121
|
+
assembly_user_role:
|
122
|
+
create: "%{user_name} ha convidat %{resource_name} a l'assemblea %{space_name}"
|
123
|
+
delete: "%{user_name} ha eliminat l'usuari %{resource_name} de l'assemblea %{space_name}"
|
124
|
+
update: "%{user_name} ha canviat el rol de %{resource_name} a l'assemblea %{space_name}"
|
108
125
|
assemblies:
|
109
126
|
admin:
|
110
127
|
assemblies:
|
111
128
|
form:
|
129
|
+
select_an_area: Selecciona una àrea
|
112
130
|
slug_help: 'Els noms curts d''URL s''utilitzen per generar les URL que apunten a aquesta assemblea. Només accepta lletres, números i guions, i ha de començar amb una lletra. Exemple: %{url}'
|
113
131
|
assembly_copies:
|
114
132
|
form:
|
@@ -121,6 +139,7 @@ ca:
|
|
121
139
|
active_assemblies: Assemblees actives
|
122
140
|
see_all_assemblies: Veure totes les assemblees
|
123
141
|
show:
|
142
|
+
area: Àrea
|
124
143
|
developer_group: Grup promotor
|
125
144
|
local_area: Àrea municipal
|
126
145
|
participatory_scope: Àmbit participatiu
|
@@ -131,6 +150,7 @@ ca:
|
|
131
150
|
answers_count: Respostes
|
132
151
|
assemblies_count: Assemblees
|
133
152
|
comments_count: Comentaris
|
153
|
+
endorsements_count: Adhesions
|
134
154
|
headline: Activitat
|
135
155
|
meetings_count: Trobades presencials
|
136
156
|
orders_count: Vots
|
data/config/locales/en.yml
CHANGED
@@ -3,9 +3,12 @@ en:
|
|
3
3
|
activemodel:
|
4
4
|
attributes:
|
5
5
|
assembly:
|
6
|
+
area_id: Area
|
6
7
|
banner_image: Banner image
|
7
8
|
copy_categories: Copy categories
|
8
9
|
copy_features: Copy features
|
10
|
+
decidim_area_id: Area
|
11
|
+
decidim_scope_id: Scope
|
9
12
|
description: Description
|
10
13
|
developer_group: Developer group
|
11
14
|
domain: Domain
|
@@ -16,9 +19,11 @@ en:
|
|
16
19
|
participatory_scope: Participatory scope
|
17
20
|
participatory_structure: Participatory structure
|
18
21
|
promoted: Promoted
|
22
|
+
published_at: Published at
|
19
23
|
scope_id: Scope
|
20
24
|
scopes_enabled: Scopes enabled
|
21
25
|
short_description: Short description
|
26
|
+
show_statistics: Show statistics
|
22
27
|
slug: URL slug
|
23
28
|
subtitle: Subtitle
|
24
29
|
target: Target
|
@@ -81,6 +86,8 @@ en:
|
|
81
86
|
assemblies: Assemblies
|
82
87
|
assemblies_submenu:
|
83
88
|
assembly_admins: Assembly users
|
89
|
+
attachment_collections: Collections
|
90
|
+
attachment_files: Files
|
84
91
|
attachments: Attachments
|
85
92
|
categories: Categories
|
86
93
|
features: Features
|
@@ -106,10 +113,21 @@ en:
|
|
106
113
|
moderator: Moderator
|
107
114
|
titles:
|
108
115
|
assemblies: Assemblies
|
116
|
+
admin_log:
|
117
|
+
assembly:
|
118
|
+
create: "%{user_name} created the %{resource_name} assembly"
|
119
|
+
publish: "%{user_name} published the %{resource_name} assembly"
|
120
|
+
unpublish: "%{user_name} unpublished the %{resource_name} assembly"
|
121
|
+
update: "%{user_name} updated the %{resource_name} assembly"
|
122
|
+
assembly_user_role:
|
123
|
+
create: "%{user_name} invited %{resource_name} to the %{space_name} assembly"
|
124
|
+
delete: "%{user_name} removed the user %{resource_name} from the %{space_name} assembly"
|
125
|
+
update: "%{user_name} changed the role of %{resource_name} in the %{space_name} assembly"
|
109
126
|
assemblies:
|
110
127
|
admin:
|
111
128
|
assemblies:
|
112
129
|
form:
|
130
|
+
select_an_area: Select an Area
|
113
131
|
slug_help: 'URL slugs are used to generate the URLs that point to this assembly. Only accepts letters, numbers and dashes, and must start with a letter. Example: %{url}'
|
114
132
|
assembly_copies:
|
115
133
|
form:
|
@@ -122,6 +140,7 @@ en:
|
|
122
140
|
active_assemblies: Active assemblies
|
123
141
|
see_all_assemblies: See all assemblies
|
124
142
|
show:
|
143
|
+
area: Area
|
125
144
|
developer_group: Developer group
|
126
145
|
local_area: Local area
|
127
146
|
participatory_scope: Participatory scope
|
@@ -132,6 +151,7 @@ en:
|
|
132
151
|
answers_count: Answers
|
133
152
|
assemblies_count: Assemblies
|
134
153
|
comments_count: Comments
|
154
|
+
endorsements_count: Endorsements
|
135
155
|
headline: Activity
|
136
156
|
meetings_count: Meetings
|
137
157
|
orders_count: Votes
|
data/config/locales/es.yml
CHANGED
@@ -2,9 +2,12 @@ es:
|
|
2
2
|
activemodel:
|
3
3
|
attributes:
|
4
4
|
assembly:
|
5
|
+
area_id: Área
|
5
6
|
banner_image: Imagen de banner
|
6
7
|
copy_categories: Copiar categorías
|
7
8
|
copy_features: Copiar funcionalidades
|
9
|
+
decidim_area_id: Área
|
10
|
+
decidim_scope_id: Ámbito
|
8
11
|
description: Descripción
|
9
12
|
developer_group: Grupo promotor
|
10
13
|
domain: Dominio
|
@@ -15,9 +18,11 @@ es:
|
|
15
18
|
participatory_scope: Ámbito participativo
|
16
19
|
participatory_structure: Estructura participativa
|
17
20
|
promoted: Destacado
|
21
|
+
published_at: Publicado
|
18
22
|
scope_id: Ámbito
|
19
23
|
scopes_enabled: Ámbitos habilitados
|
20
24
|
short_description: Descripción breve
|
25
|
+
show_statistics: Mostrar estadísticas
|
21
26
|
slug: Texto corto de URL
|
22
27
|
subtitle: Subtítulo
|
23
28
|
target: '¿A quién va dirigido?'
|
@@ -80,6 +85,8 @@ es:
|
|
80
85
|
assemblies: Asambleas
|
81
86
|
assemblies_submenu:
|
82
87
|
assembly_admins: Usuarios de la asamblea
|
88
|
+
attachment_collections: Colecciones
|
89
|
+
attachment_files: Archivos
|
83
90
|
attachments: Archivos adjuntos
|
84
91
|
categories: Categorías
|
85
92
|
features: Funcionalidades
|
@@ -105,10 +112,21 @@ es:
|
|
105
112
|
moderator: Moderador
|
106
113
|
titles:
|
107
114
|
assemblies: Asambleas
|
115
|
+
admin_log:
|
116
|
+
assembly:
|
117
|
+
create: "%{user_name} creó la asamblea %{resource_name}"
|
118
|
+
publish: "%{user_name} publicó la asamblea %{resource_name}"
|
119
|
+
unpublish: "%{user_name} despublicó la asamblea %{resource_name}"
|
120
|
+
update: "%{user_name} actualizó la asamblea %{resource_name}"
|
121
|
+
assembly_user_role:
|
122
|
+
create: "%{user_name} invitó %{resource_name} a la asamblea %{space_name}"
|
123
|
+
delete: "%{user_name} eliminó al usuario %{resource_name} de la asamblea %{space_name}"
|
124
|
+
update: "%{user_name} cambió el rol de %{resource_name} en la asamblea %{space_name}"
|
108
125
|
assemblies:
|
109
126
|
admin:
|
110
127
|
assemblies:
|
111
128
|
form:
|
129
|
+
select_an_area: Seleccione un Área
|
112
130
|
slug_help: 'Los textos cortos de URL se utilizan para generar las URL que apuntan a esta asamblea. Sólo acepta letras, números y guiones, y debe comenzar con una letra. Ejemplo: %{url}'
|
113
131
|
assembly_copies:
|
114
132
|
form:
|
@@ -121,6 +139,7 @@ es:
|
|
121
139
|
active_assemblies: Asambleas activas
|
122
140
|
see_all_assemblies: Ver todas las asambleas
|
123
141
|
show:
|
142
|
+
area: Área
|
124
143
|
developer_group: Grupo promotor
|
125
144
|
local_area: Áreas municipales
|
126
145
|
participatory_scope: Ámbito participativo
|
@@ -131,6 +150,7 @@ es:
|
|
131
150
|
answers_count: Respuestas
|
132
151
|
assemblies_count: Asambleas
|
133
152
|
comments_count: Comentarios
|
153
|
+
endorsements_count: Respaldos
|
134
154
|
headline: Actividad
|
135
155
|
meetings_count: Encuentros
|
136
156
|
orders_count: Votos
|