Estou apenas começando a brincar com isso (sem codificação agêntica).
Tenho a impressão de que não seria preciso muito esforço para converter isso em um Componente de Tema que controle apenas a Página Inicial de um site — por exemplo, um que já utilize o Tema Horizon. Isso seria uma ideia ruim?
Além disso, notei alguns problemas:
O Bloco de Eventos Futuros não ordena os tópicos
Ele simplesmente lista os tópicos de eventos por data de criação; isso é extremamente inútil!!
O ask.discourse.com sugere esse tipo de alteração para corrigir o problema, o que posso confirmar que funciona (perdoem minha falta de pensamento crítico humano):
@bind
async fetchEvents() {
const count = this.args.count || 5;
const results = await ajax("discourse-post-event/events");
if (!results.events?.length) {
return null;
}
const now = new Date();
// Separa eventos passados e futuros, depois ordena em ordem crescente pela data de início
const upcoming = results.events
.filter((e) => new Date(e.starts_at) >= now)
.sort((a, b) => new Date(a.starts_at) - new Date(b.starts_at));
return upcoming.slice(0, count);
}
O Bloco de Banners de Categoria não respeita as configurações
Ele é exibido em todas as categorias (não apenas nas especificadas) e parece não atualizar durante a navegação (somente ao recarregar a página).