Members at Maker Forums definitely appreciate the ability to have multiple emoji reactions. We would be very sad to lose that in a migration if retort were to become unmaintained.
Retort will continue to be maintained by Pavilion.
@Ahmed_Gagan Any thoughts on the below?
For a retort reaction at priority you can use
SiteSetting.post_undo_action_window_mins =max allowed minutes
ReactionManager.new(first_retort_reaction_at_priority, by_user, Guardian.new(by_user), post).toggle!
This will handle everything, it will remove like
if the user have already liked the post and add a reaction.
Yup, I could do that. It would be a bit of a hack though
Iām not sure I could assume that workaround would remain viable over time. Itās also a bit risky. For example, if I just run that code the userās post_undo_action_window_mins
site setting would remained changed. You could change it back at the end of the migration, but doing setting changes like this on the fly to get around a guardian is not ideal.
Ideally what Iām after here is a slight change to the ReactionManager
interface to make it possible to reliably migrate retorts to reactions. Currently itās only set up to handle requests from the client.
One way to do that would be to
- abstract the guardian in
toggle!
to anensure_can_toggle
method - make the
ensure_can_toggle
method subject to aforce
option
This is the approach typically taken to handle migrations or backend imports in other parts of Discourse (if you do a search in app/
or lib/
for force
youāll see a few examples).
Does that make sense?
I think we donāt need to use the setting here, As we are not touching the likes which are already created on the post. this means we are creating new reactions to post. in this case guardian.can_delete_reaction_user?
will always be true. Just using ReactionManager.toggle
will be enough for this purpose IMO.
Discourse does a lot with Likes such as limiting number of Likes by trust level and giving people badges based on Likes.
Does adding a reaction also add to the Likes count for both users and topics?
You coud ask separately about how this interacts with the new official Discourse Reactions - Beyond Likes plugin
But Retort (which allows multiple reactions per post per user, unlike the Discourse Reactions plugin) does not interact at all with the Likes-related trust levels and badges.
@gdpelican this is a repost from Reaction emoji seem to have no verification as it seems the reaction is not part of discourse I repost it here:
I think I have discovered a bug but I donāt have a proper reproduction, but I can easily show examples of the issue, and I think my theory might be right.
Here is the issue, you are able to add non existent emoji to the post reactions. it results in :whateverYouWant:
reactions in posts.
You can see example of it on the Manjaro forum, where I noticed a specific user posts often have these non existent emojis. After asking him a few questions I concluded heās using some kind of automatic translation extension in his browser, and that probably translates the emojis :code: to his language. Unfortunately I didnāt have a reply from this user to know exactly his setup on his browser. To back my theory, you can see when he quoted someone in the following thread linked, he had translation of the original message in his quote.
See this message/thread on Manjaro forum:
See an example in the reactions, you see the issue clearly with all the proper reactions next to the invalid one:
So it seems that a user can send non existent emojis through the process of no verification of the emoji code.
Did anyone also run into this situation that the reactions misplaced on a small screen and on mobile?
Iāve updated this plugin to work with the latest discourse code.
@th21 Iāve also updated the retort HTML structure to better accomodate long retort lists, particularly on mobile
Thank you, it works!
Retorts on Mobile are messed up for me in the latest update
I think the retorts container should be above or below the toolbar, preferably above, this gives us a lot more room to work with CSS wise
Is it possible to use data explorer or console to find the most used emoji list? I was looking into
plugin_store_rows
table but found nothing helpful.
Hi, the tooltip with which users reacted with retorts is now broken on mobile. I tried messing around with z-index but was unable to successfully fix it with custom CSS. Any chance anyone could take a look?
This plugin is end-of-life. Please use the Reactions Plugin.
Discourse Reactions is a poor substitute for one key reason: it limits reactions to one per post. Thatās a dramatic reduction in the utility of reactions compared to Retort which allows people to give multiple reactions to the same post.
I really wish Retort would be maintained for this reason. The better solution would be for Discourse Reactions to be updated to allow multiple reactions.
The other big deficit is that retort allows you to select from all available emojis while you have to define a set of emojis for discourse reactions. If discourse reactions had both of these features I would gladly drop retort, but until it does my users will not be happy if I tell them theyāre losing access to 95% of emoji reactions.
There is a feature topic which shows some promiseā¦
Yes, if this is all implemented I think I could easily convince my user base to migrate. It just kinda sucks to retire the alternative before this is fully available.