decidim-blogs 0.31.0.rc2 → 0.31.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/blogs/posts_controller.rb +3 -3
- data/app/models/decidim/blogs/post.rb +1 -0
- data/app/presenters/decidim/blogs/post_presenter.rb +0 -1
- data/config/locales/fi.yml +1 -1
- data/config/locales/pt-BR.yml +77 -4
- data/config/locales/ro-RO.yml +6 -0
- data/lib/decidim/blogs/component.rb +12 -0
- data/lib/decidim/blogs/engine.rb +6 -0
- data/lib/decidim/blogs/version.rb +1 -1
- metadata +16 -16
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 21bf1933900d2930b37fb4cbea5e273e0e097ac7e7ac670afb617fe1a96dad56
|
|
4
|
+
data.tar.gz: a5390aaae7de3a8da1b17f9941852fd9e6ec2ecc3ec1667aa1ecf031fdd988ee
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e9b40fead18ffed4ce005077b953ad67db8b14d3ce9beaa1baa56ab859ac1940dd1797149cc8e3bf835853d89f4915ca00030a263104ecb05ed3bff9e6c52a31
|
|
7
|
+
data.tar.gz: 5c4ddf20755bd68bff18666572d840feed5a40f399defa34bdce29362a6d3b31eabcb98f22cb2740d6c7d480ec841a783a16c9fe7d2265f91825d44d2312505a
|
|
@@ -91,9 +91,9 @@ module Decidim
|
|
|
91
91
|
|
|
92
92
|
def posts
|
|
93
93
|
@posts ||= if current_user&.admin?
|
|
94
|
-
Post.where(component: current_component)
|
|
94
|
+
Post.where(component: current_component).published_at_desc
|
|
95
95
|
else
|
|
96
|
-
Post.published.where(component: current_component)
|
|
96
|
+
Post.published.where(component: current_component).published_at_desc
|
|
97
97
|
end
|
|
98
98
|
end
|
|
99
99
|
|
|
@@ -101,7 +101,7 @@ module Decidim
|
|
|
101
101
|
def posts_most_commented
|
|
102
102
|
@posts_most_commented ||= posts.joins(:comments).group(:id)
|
|
103
103
|
.select("count(decidim_comments_comments.id) as counter")
|
|
104
|
-
.select("decidim_blogs_posts.*").order("counter DESC").
|
|
104
|
+
.select("decidim_blogs_posts.*").order("counter DESC").published_at_desc.limit(7)
|
|
105
105
|
end
|
|
106
106
|
end
|
|
107
107
|
end
|
|
@@ -29,6 +29,7 @@ module Decidim
|
|
|
29
29
|
validates :title, presence: true
|
|
30
30
|
|
|
31
31
|
scope :created_at_desc, -> { order(arel_table[:created_at].desc) }
|
|
32
|
+
scope :published_at_desc, -> { order(arel_table[:published_at].desc) }
|
|
32
33
|
scope :published, -> { where(published_at: ..Time.current) }
|
|
33
34
|
|
|
34
35
|
searchable_fields({
|
data/config/locales/fi.yml
CHANGED
data/config/locales/pt-BR.yml
CHANGED
|
@@ -8,30 +8,43 @@ pt-BR:
|
|
|
8
8
|
published_at: Horário da publicação
|
|
9
9
|
title: Título
|
|
10
10
|
models:
|
|
11
|
-
decidim/blogs/create_post_event: Nova postagem no blog
|
|
11
|
+
decidim/blogs/create_post_event: Nova postagem no ‘blog’
|
|
12
12
|
activerecord:
|
|
13
13
|
models:
|
|
14
14
|
decidim/blogs/post:
|
|
15
15
|
one: Postagem
|
|
16
16
|
other: Postagens
|
|
17
17
|
decidim:
|
|
18
|
+
admin:
|
|
19
|
+
admin_log:
|
|
20
|
+
changeset:
|
|
21
|
+
posts: Postagens
|
|
22
|
+
tooltips:
|
|
23
|
+
deleted_posts_info: Não é possível excluir este post
|
|
18
24
|
blogs:
|
|
19
25
|
actions:
|
|
20
26
|
author_id: Criar publicação como
|
|
27
|
+
confirm_delete_post: Deseja mesmo excluir este post?
|
|
28
|
+
deleted_posts_info: Postagens excluídas podem ser restaurados da lixeira.
|
|
21
29
|
edit: Editar
|
|
22
30
|
new: Nova postagem
|
|
23
31
|
title: Ações
|
|
32
|
+
view_deleted_posts: Ver propostas excluídas
|
|
24
33
|
admin:
|
|
25
34
|
posts:
|
|
26
35
|
create:
|
|
27
36
|
invalid: Houve um problema ao criar esta postagem.
|
|
28
37
|
success: Post criado com sucesso.
|
|
38
|
+
destroy:
|
|
39
|
+
success: Postagem excluída com sucesso.
|
|
29
40
|
edit:
|
|
30
41
|
save: Atualizar
|
|
31
42
|
title: Editar publicação
|
|
32
43
|
index:
|
|
33
44
|
not_published_yet: Não publicado.
|
|
34
45
|
title: Postagens
|
|
46
|
+
manage_trash:
|
|
47
|
+
title: Postagens excluídas
|
|
35
48
|
new:
|
|
36
49
|
create: Criar
|
|
37
50
|
title: Criar post
|
|
@@ -40,9 +53,11 @@ pt-BR:
|
|
|
40
53
|
success: Post salvo com sucesso.
|
|
41
54
|
admin_log:
|
|
42
55
|
post:
|
|
43
|
-
create: "%{user_name}
|
|
44
|
-
delete: "O %{user_name} excluiu a publicação no blog %{resource_name} do %{space_name}"
|
|
45
|
-
|
|
56
|
+
create: "%{user_name} Criou a publicação no ‘blog’ %{resource_name} do %{space_name}"
|
|
57
|
+
delete: "O %{user_name} excluiu a publicação no ‘blog’ %{resource_name} do %{space_name}"
|
|
58
|
+
restore: "%{user_name} restaurou a postagem do blog %{resource_name} no %{space_name}"
|
|
59
|
+
soft_delete: "%{user_name} moveu a postagem do blog %{resource_name} no %{space_name} para a lixeira"
|
|
60
|
+
update: "%{user_name} Atualizou a publicação no ‘blog’ %{resource_name} do %{space_name}"
|
|
46
61
|
content_blocks:
|
|
47
62
|
highlighted_posts:
|
|
48
63
|
last_published: Último publicado
|
|
@@ -57,29 +72,59 @@ pt-BR:
|
|
|
57
72
|
body: Corpo
|
|
58
73
|
official_blog_post: Publicação oficial
|
|
59
74
|
published_at: Horário da publicação
|
|
75
|
+
taxonomies: Taxonomias
|
|
60
76
|
title: Título
|
|
61
77
|
posts:
|
|
78
|
+
edit:
|
|
79
|
+
add_attachments: Adicionar anexos
|
|
80
|
+
attachment_legend: Adicionar um documento ou uma imagem
|
|
81
|
+
back: Voltar à postagem
|
|
82
|
+
button: Atualizar
|
|
83
|
+
edit_attachments: Editar anexos
|
|
84
|
+
title: Editar postagem
|
|
85
|
+
form:
|
|
86
|
+
author_id: Autor
|
|
87
|
+
body: Corpo
|
|
88
|
+
title: Título
|
|
62
89
|
index:
|
|
63
90
|
count:
|
|
64
91
|
one: "%{count} publicação"
|
|
65
92
|
other: "%{count} publicações"
|
|
66
93
|
empty: Não existem publicações ainda.
|
|
94
|
+
new_post: Nova postagem
|
|
95
|
+
menu_actions:
|
|
96
|
+
button_destroy: Excluir postagem
|
|
97
|
+
button_destroy_confirm: Tem certeza que deseja excluir esta postagem?
|
|
98
|
+
button_edit: Editar postagem
|
|
99
|
+
new:
|
|
100
|
+
back: Voltar às postagens
|
|
101
|
+
button: Criar
|
|
102
|
+
title: Criar nova postagem
|
|
67
103
|
components:
|
|
68
104
|
blogs:
|
|
69
105
|
actions:
|
|
70
106
|
comment: Comentário
|
|
71
107
|
create: Criar
|
|
72
108
|
destroy: Excluir
|
|
109
|
+
like: Curti
|
|
73
110
|
update: Atualizar
|
|
74
111
|
name: Blog
|
|
75
112
|
settings:
|
|
76
113
|
global:
|
|
77
114
|
announcement: Anúncio
|
|
115
|
+
attachments_allowed: Permitir anexos
|
|
78
116
|
comments_enabled: Comentários ativados
|
|
79
117
|
comments_max_length: Tamanho máximo de comentários (deixe 0 para o valor padrão)
|
|
118
|
+
creation_enabled_for_participants: Os usuários podem criar postagens
|
|
119
|
+
define_taxonomy_filters: Por favor, defina alguns filtros para este espaço participativo antes de usar esta configuração.
|
|
120
|
+
no_taxonomy_filters_found: Nenhum filtro de taxonomia encontrado.
|
|
121
|
+
taxonomy_filters: Selecione filtros para o componente
|
|
122
|
+
taxonomy_filters_add: Adicionar filtro
|
|
80
123
|
step:
|
|
81
124
|
announcement: Anúncio
|
|
82
125
|
comments_blocked: Comentários bloqueados
|
|
126
|
+
likes_blocked: Curtidas bloqueadas
|
|
127
|
+
likes_enabled: Curtidas ativadas
|
|
83
128
|
events:
|
|
84
129
|
blogs:
|
|
85
130
|
post_created:
|
|
@@ -87,5 +132,33 @@ pt-BR:
|
|
|
87
132
|
email_outro: Você recebeu esta notificação porque está seguindo "%{participatory_space_title}". Você pode deixar de segui-lo no link anterior.
|
|
88
133
|
email_subject: Nova postagem publicada em %{participatory_space_title}
|
|
89
134
|
notification_title: A postagem <a href="%{resource_path}">%{resource_title}</a> foi publicada em %{participatory_space_title}
|
|
135
|
+
open_data:
|
|
136
|
+
help:
|
|
137
|
+
post_comments:
|
|
138
|
+
alignment: Se este comentário foi um favorito, contra ou neutro
|
|
139
|
+
author: O nome do usuário que fez este comentário
|
|
140
|
+
body: O comentário em si
|
|
141
|
+
commentable_id: A identificação única do comentável
|
|
142
|
+
commentable_type: O tipo do comentário (se foi um resultado, uma proposta, etc.)
|
|
143
|
+
created_at: A data em que este comentário foi criado
|
|
144
|
+
depth: O lugar onde este comentário está nos três comentários (se for uma resposta ou uma resposta de uma resposta)
|
|
145
|
+
id: O ID deste comentário
|
|
146
|
+
locale: O idioma (localidade) que o participante tinha ao deixar este comentário
|
|
147
|
+
root_commentable_url: O URL do recurso relacionado a este comentário
|
|
148
|
+
posts:
|
|
149
|
+
author: Informações do autor
|
|
150
|
+
body: O corpo da postagem
|
|
151
|
+
comments_count: O número de comentários que esta publicação recebeu
|
|
152
|
+
component: O componente ao qual a postagem pertence
|
|
153
|
+
created_at: A data em que esta publicação foi criada
|
|
154
|
+
follows_count: O número de seguidores que esta publicação tem
|
|
155
|
+
id: O identificador único desta publicação
|
|
156
|
+
likes_count: O número de curtidas que esta publicação tem
|
|
157
|
+
participatory_space: A que espaço (por exemplo, Processo Participativo ou Assembleia) pertence esta publicação
|
|
158
|
+
published_at: A data em que esta postagem foi publicada
|
|
159
|
+
title: O título da postagem
|
|
160
|
+
updated_at: Última data em que esta publicação foi atualizada
|
|
161
|
+
url: O URL para esta postagem
|
|
90
162
|
statistics:
|
|
91
163
|
posts_count: Postagens
|
|
164
|
+
posts_count_tooltip: O número de atualizações ou posts de ‘blog’, publicados.
|
data/config/locales/ro-RO.yml
CHANGED
|
@@ -20,6 +20,8 @@ ro:
|
|
|
20
20
|
admin_log:
|
|
21
21
|
changeset:
|
|
22
22
|
posts: Postări
|
|
23
|
+
tooltips:
|
|
24
|
+
deleted_posts_info: Nu se poate șterge această postare
|
|
23
25
|
blogs:
|
|
24
26
|
actions:
|
|
25
27
|
author_id: Creeați postare ca
|
|
@@ -106,6 +108,7 @@ ro:
|
|
|
106
108
|
comment: Comentați
|
|
107
109
|
create: Creați
|
|
108
110
|
destroy: Ștergeți
|
|
111
|
+
like: Apreciere
|
|
109
112
|
update: Actualizați
|
|
110
113
|
name: Blog
|
|
111
114
|
settings:
|
|
@@ -122,6 +125,8 @@ ro:
|
|
|
122
125
|
step:
|
|
123
126
|
announcement: Anunț
|
|
124
127
|
comments_blocked: Comentarii blocate
|
|
128
|
+
likes_blocked: Aprecieri blocate
|
|
129
|
+
likes_enabled: Aprecieri activate
|
|
125
130
|
events:
|
|
126
131
|
blogs:
|
|
127
132
|
post_created:
|
|
@@ -150,6 +155,7 @@ ro:
|
|
|
150
155
|
created_at: Data la care acestă postare a fost creată
|
|
151
156
|
follows_count: Numărul de urmăritori al acestei postări
|
|
152
157
|
id: Identificatorul unic al acestei postări
|
|
158
|
+
likes_count: Numărul de aprecieri pe care le are această postare
|
|
153
159
|
participatory_space: Cărui spațiu (de exemplu, proces participativ sau adunare) aparține această postare
|
|
154
160
|
published_at: Data la care acestă postare a fost publicată
|
|
155
161
|
title: Titlul postării
|
|
@@ -13,6 +13,18 @@ Decidim.register_component(:blogs) do |component|
|
|
|
13
13
|
raise StandardError, "Cannot remove this component" if Decidim::Blogs::Post.where(component: instance).any?
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
+
component.on(:publish) do |instance|
|
|
17
|
+
Decidim::Blogs::Post.where(component: instance).find_in_batches(batch_size: 100) do |batch|
|
|
18
|
+
Decidim::UpdateSearchIndexesJob.perform_later(batch)
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
component.on(:unpublish) do |instance|
|
|
23
|
+
Decidim::Blogs::Post.where(component: instance).find_in_batches(batch_size: 100) do |batch|
|
|
24
|
+
Decidim::RemoveSearchIndexesJob.perform_later(batch)
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
16
28
|
component.register_stat :posts_count,
|
|
17
29
|
primary: true,
|
|
18
30
|
priority: Decidim::StatsRegistry::MEDIUM_PRIORITY,
|
data/lib/decidim/blogs/engine.rb
CHANGED
|
@@ -25,6 +25,12 @@ module Decidim
|
|
|
25
25
|
Decidim.icons.register(name: "Decidim::Blogs::Post", icon: "pen-nib-line", description: "Blogs post", category: "activity", engine: :core)
|
|
26
26
|
end
|
|
27
27
|
|
|
28
|
+
initializer "decidim_blogs.data_migrate", after: "decidim_core.data_migrate" do
|
|
29
|
+
DataMigrate.configure do |config|
|
|
30
|
+
config.data_migrations_path << root.join("db/data").to_s
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
28
34
|
initializer "decidim_blogs.add_cells_view_paths" do
|
|
29
35
|
Cell::ViewModel.view_paths << File.expand_path("#{Decidim::Blogs::Engine.root}/app/cells")
|
|
30
36
|
Cell::ViewModel.view_paths << File.expand_path("#{Decidim::Blogs::Engine.root}/app/views") # for partials
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: decidim-blogs
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.31.
|
|
4
|
+
version: 0.31.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Isaac Massot Gil
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-01-28 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: decidim-admin
|
|
@@ -16,98 +16,98 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - '='
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 0.31.
|
|
19
|
+
version: 0.31.1
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - '='
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: 0.31.
|
|
26
|
+
version: 0.31.1
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: decidim-comments
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
31
|
- - '='
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: 0.31.
|
|
33
|
+
version: 0.31.1
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
38
|
- - '='
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: 0.31.
|
|
40
|
+
version: 0.31.1
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: decidim-core
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
45
|
- - '='
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: 0.31.
|
|
47
|
+
version: 0.31.1
|
|
48
48
|
type: :runtime
|
|
49
49
|
prerelease: false
|
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
51
|
requirements:
|
|
52
52
|
- - '='
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: 0.31.
|
|
54
|
+
version: 0.31.1
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
56
|
name: decidim-admin
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
58
58
|
requirements:
|
|
59
59
|
- - '='
|
|
60
60
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: 0.31.
|
|
61
|
+
version: 0.31.1
|
|
62
62
|
type: :development
|
|
63
63
|
prerelease: false
|
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
65
|
requirements:
|
|
66
66
|
- - '='
|
|
67
67
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: 0.31.
|
|
68
|
+
version: 0.31.1
|
|
69
69
|
- !ruby/object:Gem::Dependency
|
|
70
70
|
name: decidim-assemblies
|
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
|
72
72
|
requirements:
|
|
73
73
|
- - '='
|
|
74
74
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: 0.31.
|
|
75
|
+
version: 0.31.1
|
|
76
76
|
type: :development
|
|
77
77
|
prerelease: false
|
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
79
|
requirements:
|
|
80
80
|
- - '='
|
|
81
81
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: 0.31.
|
|
82
|
+
version: 0.31.1
|
|
83
83
|
- !ruby/object:Gem::Dependency
|
|
84
84
|
name: decidim-dev
|
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
|
86
86
|
requirements:
|
|
87
87
|
- - '='
|
|
88
88
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: 0.31.
|
|
89
|
+
version: 0.31.1
|
|
90
90
|
type: :development
|
|
91
91
|
prerelease: false
|
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
93
|
requirements:
|
|
94
94
|
- - '='
|
|
95
95
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: 0.31.
|
|
96
|
+
version: 0.31.1
|
|
97
97
|
- !ruby/object:Gem::Dependency
|
|
98
98
|
name: decidim-participatory_processes
|
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
|
100
100
|
requirements:
|
|
101
101
|
- - '='
|
|
102
102
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: 0.31.
|
|
103
|
+
version: 0.31.1
|
|
104
104
|
type: :development
|
|
105
105
|
prerelease: false
|
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
107
|
requirements:
|
|
108
108
|
- - '='
|
|
109
109
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: 0.31.
|
|
110
|
+
version: 0.31.1
|
|
111
111
|
description: A Blog component for decidim's participatory spaces.
|
|
112
112
|
email:
|
|
113
113
|
- isaac.mg@coditramuntana.com
|