NodeBB Plugins

1.8k Topics 14.9k Posts
Most Voted Plugins

Subcategories


  • Have a question about building a plugin? Ask here
    413 Topics
    2k Posts

    A new question concerning the development of my Backblaze B2 storage plugin:

    I kind of have it working now, where files are uploaded and filenames returned properly, though it's lacking the sophisticated ways of setting host, bucket and credentials as the old s3 plugins (I'm still struggling figuring out what the hooks and functions are available to a plugin developer, since the documentation doesn't seem to be very updated and detailed).

    I noticed there is this button to export personal data, including uploaded files. How should I possibly integrate this functionality into my plugin?

    Thom

  • Need a plugin developed? Ask here!
    217 Topics
    1k Posts

    @baris said in Upgrade - nodebb-plugin-topic-ratings:

    You could filter the topics in a hook like filter:topics.filterSortedTids and only return ones that have more than a certain rating.

    GPT recommend me to do this 😹

    In plugin.json add new hook "hooks": [ { "hook": "filter:category.topics.prepare", "method": "sortTopicsByRating" } ] In library.js add new methid sortTopicsByRating plugin.sortTopicsByRating = function (data, callback) { if (data.req.query.sort === 'rating') { data.req.query.sort = '-rating'; } callback(null, data); }; In templates/categories.tpl add this code for sorted <li data-sort="rating"><a href="#">[[global:topics_sorted_by_rating]]</a></li> In public/js/topic-ratings.js add this javascript $(window).on('action:ajaxify.end', function () { var $sortDropdown = $('.category-header .dropdown-menu'); if ($sortDropdown.length) { var $ratingSortItem = $('<li data-sort="rating"><a href="#">[[global:topics_sorted_by_rating]]</a></li>'); $sortDropdown.append($ratingSortItem); $ratingSortItem.on('click', function () { var url = window.location.href; url = url.replace(/(\?|&)sort=\w+/, ''); url += (url.indexOf('?') >= 0 ? '&' : '?') + 'sort=rating'; ajaxify.go(url); }); } });

    Bot say after this I can sorted a topics via url ?sort=rating

    I'm not tested this code, but it looks not bad...