How is this solution working so far? Has anyone else put it under scrutiny yet?
Just a heads up, I’m keeping track of everyone’s feedback, but working on this component has been a lower priority while we wait for the improvements @sam mentioned.
I haven’t tried it at this point, but it seems like it should be totally fine to use a similar approach for displaying trust level badges. It’s non-trust level badges that would need the improvement Sam mentioned.
It would be helpful to know how people use this component, or at least how they would like to use it.
- Trust Level badges
- Other badges
- A mix of both
If there’s enough interest in Trust Levels, I can make a separate “Trust Level Post Flair” component that can be deprecated once the performance of this component can be improved.
Just a note here that we’ve made an open source version of this in a plugin, which serializes the badges along with the post itself, to address the performance issue mentioned above
As to the selection of which badges will be featured, the user does this themselves in their profile, in a new user-specific setting.
Has this component stopped displaying custom image uploads for anyone else? It defaults to the font awesome icon, and if no FA icon is selected, it displays “undefined”, regardless of whether a custom icon has been uploaded or not.
Thanks for bringing that up @Andrew8H! Should be fixed with:
For all others - make sure your Discourse site had been updated after 2021-03-17T07:00:00Z before updating this component.
Perfect! Fixed! Splendid support as per usual. Thank you @tshenry
After installing this component, most of the icons on the page disappear and I’m seeing this error in the console.
Uncaught Error: Could not find module
@ember/runloop imported from `discourse/initializers/initialize-discourse-post-badges
Is there something else I should be adding/editing? Thanks!
Hmm, I am not able to reproduce the error. A few things to check on:
- Can you confirm you are running the latest, tests-passed version of Discourse?
- How are the Post Badges component’s theme settings configured?
- Do you have any plugins installed on your site?
Thank you for the quick reply, I’m using Discourse 2.3.2 which looks quite old. On the settings, they are still on defaults. I don’t believe there are any plugins, this was the first component I installed.
It sounds like an upgrade may be needed?
Yes, 2.3.2 is very old at this point. You will definitely want to upgrade, and for reasons that go well beyond compatibility with this component
Ugh. I missed this warning. I’m running Discourse 2.6.3. I’m assuming that came out before March 17, since I lost my custom images. Is there any way for me to downgrade this component?
Let me add a workaround. Hang tight.
Edit: @jtbayly it should work now if you update the component. Sorry for the trouble! I’ll try to be more careful about backwards compatibility going forward.
Thanks much. Worked like a charm.
We seem to be getting more 429 errors these days due to this add-on (I can’t put my finger on when that started, but I’d say in the last 2-3 months). Are there still plans to reduce the number of requests?
Unfortunately, it doesn’t seem that time has permitted yet for the core changes that would be required. The priority is probably going to be even lower now that there is a plugin that handles it in a more graceful manner:
If the component is becoming an issue for your community, I would highly recommend switching over the the plugin if possible.
Sorry to not have better news!
I took a look, but the functionality is different from the TC: in the plugin, users can set which badges to show. In the TC, the site admin decides. I’ll see if I can fork it to make it do what I need.
That’s my use case as well. Let’s us know if you get it working, please.
How do you setup the plugin? Do you use your theme component?
Ah okay read some later posts where moved to user end.
This component has issues with New installs will default to Ember CLI builds in Production
_application-fe5f714a0b25da04a163bd904e96336e.js:6171 An error occurred in the "Post Badges" theme/component: TypeError: Cannot read properties of undefined (reading 'currentProp') at 6dd3e4df7d5d30781da2109aaad4015405b3f832.js?__ws=discourse.myforum.tld:108 at e.withPluginApi (_application-fe5f714a0b25da04a163bd904e96336e.js:4070) at Object.initialize (6dd3e4df7d5d30781da2109aaad4015405b3f832.js?__ws=discourse.myforum.tld:107) at Object.s.initialize (_application-fe5f714a0b25da04a163bd904e96336e.js:60) at _vendor-89acebf53895afcc5339ec7eda71567e.js:2730 at e.each (_vendor-89acebf53895afcc5339ec7eda71567e.js:4074) at e.walk (_vendor-89acebf53895afcc5339ec7eda71567e.js:4064) at e.each (_vendor-89acebf53895afcc5339ec7eda71567e.js:4056) at e.topsort (_vendor-89acebf53895afcc5339ec7eda71567e.js:4056) at n._runInitializer (_vendor-89acebf53895afcc5339ec7eda71567e.js:2733) (anonymous) @ _application-fe5f714a0b25da04a163bd904e96336e.js:6171 _application-fe5f714a0b25da04a163bd904e96336e.js:4072 To prevent errors, add a `pluginId` key to your changes when calling `modifyClass` ie @ _application-fe5f714a0b25da04a163bd904e96336e.js:4072 _application-fe5f714a0b25da04a163bd904e96336e.js:4072
Thanks for the report, that should be fixed now.