Reply reminder - Remind users to reply to new users topics with zero replies

Consegui chegar quase lá analisando Custom Top Navigation Links.

<script type="text/discourse-plugin" version="0.8.18">
if (I18n.translations.en) {
    I18n.translations.en.js.filters.needsreply = {title: "Precisa de Resposta", help: "Tópicos sem resposta"};
}

// PERSONALIZE ESSES VALORES
// Defina a consulta de pesquisa
let search_query = '?max_posts=1';
// Exclua certas categorias de exibir o item de menu "Precisa de Resposta"
let excludeList = ['pitches', 'weekly-recap', 'staff'];

api.addNavigationBarItem({
name: "needsreply",
displayName:"Precisa de Resposta",
title: "Precisa de Resposta",
href: "/latest" + search_query
});

// Adiciona a classe ativa ao botão "Precisa de Resposta"
api.modifyClass('component:navigation-item', {
    active: Ember.computed("contentFilterMode", "filterMode", function () {
        let contentFilterMode = this.get('content').get('filterMode');
        console.log(window.location.search.split('&')[0], search_query.split('&')[0])
        if (window.location.search && window.location.search.split('&')[0] === search_query.split('&')[0]) {
            return contentFilterMode === "needsreply";
        } else {
            return this._super(contentFilterMode, this.get('filterMode'));
        }
    }),
});


// Remove o filtro max_posts e o filtro de tags
api.modifyClass('controller:discovery/topics', {
    resetParams: function () {
        this.setProperties({max_posts: null});
        this.setProperties({tags: null});
        this._super();
    }
});


</script>

A única parte que ainda não consegui entender é como acessar a categoria atual neste script.

No código original, o Discourse.NavItem permite acessar a categoria atual. Com base nesse código, alteramos dinamicamente o comportamento do link (ocultá-lo ou alterar o href para visualizar apenas postagens nesta categoria).

Alguém pode recomendar uma solução para injetar a categoria atual no script acima, para que eu possa personalizar o comportamento do link dependendo da categoria que o usuário está visualizando?

1 curtida