Изменение переменных, связанных с 'New Topic'

Я пытаюсь изменить поведение createTopicDisabled в файле tag-show.js. Не могу понять, как переопределить его, как я видел здесь.


Я пробовал использовать api.modifyClass() и api.modifyClassStatic() следующим образом:

api.modifyClass("controller:tag-show", {
    @discourseComputed(
        "canCreateTopic",
        "category",
        "canCreateTopicOnCategory",
        "tag",
        "canCreateTopicOnTag")
    createTopicDisabled(
        canCreateTopic,
        category,
        canCreateTopicOnCategory,
        tag,
        canCreateTopicOnTag)
    {
        return false;
    }
})

А также:

api.modifyClass("controller:tag-show", {
    createTopicDisabled: function() { return false; }
)

И различные другие варианты.


Я также пробовал получить контроллер по умолчанию и переоткрыть его, что успешно работало при переопределении действий:

const TagShowController = require('discourse/controllers/tag-show').default;
TagShowController.reopen({
    createTopicDisabled: function() {
        return false;
    }
})

Пока ни один из этих методов не сработал. Буду очень признателен за любую помощь.

1 лайк