XF 2.1 Reactions 👍😍🤣😲🙁😡

Welcome to the third in our "Have you seen...?" series for XF 2.1. We've had a phenomenal, er, reaction, to what we've shown so far. In case you haven't seen our previous two entries, you can check them out here.

As ever, to ensure you're kept up to date, we strongly recommend giving that "Watch forum" link a poke here and enabling email notifications if you haven't done so already 🙂

Today we're going to show you something that we have been talking about doing internally for quite some time - content reactions. This concept has been popular with XF users for a long time and has spawned some popular add-ons. We have quite possibly been talking about doing it since long before it was popularised by Facebook so, finally, here we are 🙂

Let's first look at how Reactions are set up in the Admin CP:

1539619702913.webp

As you can see, we've not exactly gone overboard in terms of the reactions we're shipping by default, but this felt like a sensible selection. We've added a concept of being able to assign either "Positive", "Negative" or "Neutral" to each reaction and although some of the default reactions have negative connotations, we decided not to assign any of them as "Negative" by default.

But, let's look at adding a new negative "Dislike" reaction:

localhost_21x_admin.php_reactions_add.webp

The process here should be fairly familiar if you have ever added new smilies as it uses a very similar approach for referencing the image/sprite. For your convenience we have included a "Dislike" icon in the sprite sheet should you wish to add it yourselves.

Most of this is self explanatory, but you will see we can also specify a "Text color". You'll see this in action... now!

21reactions.gif

The behaviour of the "Like" button isn't significantly different. You can still just click/tap the button to give a like (or remove the selected reaction) but to access other reactions you can hover over the link (or tap and hold on touch devices) and a tooltip will be displayed with your active reactions.

The "Text color" value we mentioned before is applied here to indicate your selected reaction. It is also displayed in the alert templates for reactions:

Screenshot 2018-10-15 at 18.45.54.webp

We have also redesigned the reaction summary:

Screenshot 2018-10-15 at 18.58.33.webp

And the reaction overlay with a new tabbed design:

Screenshot 2018-10-15 at 19.02.20.webp

And, of course, Reactions are sent through push notifications (if not opted-out):

live.browserstack.com_dashboard (3).webp

We also show a summary of the most popular reactions (up to 3) on the thread list:

localhost_21x_index.php_forums_main-forum.2_.webp

Finally, you'll notice that the primary statistic listed on member list items, member tooltips and member statistics is no longer just a simple "like count" but instead we're now tracking an overall "Reaction score".

This metric is the total number of positive reactions minus the total number of negative reactions.

localhost_21x_index.php_members_&key=highest_reaction_score (1).webp

Most of this is self explanatory so we're probably ok to leave it there without going into too much detail.

Still quite a bit more to go, so we'll see you again later this week for more 🙂

Developers: you may be wondering about a few technical details. We have a special HYS for you guys in a couple of weeks focusing on a bit more detail for some miscellaneous power user/developer changes, so stay tuned for that!
 
Is this bar displaying last received reactions? Or is it based on the received amount? Maybe add a style option?
It's the three most received reactions.

Will it be possible to get all the reactions (and received number) within template?
It's not something we want to do, no.

Are gifs supported?
Yes

How many default reactions will be available? I think the Reactions system works properly when, well, when there are many different reactions to post):
There's 6 by default.

The problem with that is the simple fact that some people say things that aren't always polite or something the community agrees with, even if it isn't breaking any particular rules. This allows the community to bury posts, cause them to be hidden or have other repercussions for the user saying silly things.

Not everything needs to have a heavy moderator hand behind it, and with a potential negative side effect I've found that people care much more about their reputation than when its all just fluff and cherries. Without a negative reaction, the like feature is just cosmetic and really neuters part of the emotional relationship a member can have with the content and forum itself. Its like giving everyone a blue ribbon for participation if that makes any sense.
Posts can't be buried because posts are in date order and we don't attempt to hide posts which have negative reactions.

XF already has a feature to remove Likes given by a user for a period of time. This works for Reactions too, so you could just use that.
localhost_21x_admin.php_users_spam-test-1.4_edit.webp


How this Reactions box below will look when there are, lets say 50 reactions?
It would look pretty cramped so it would require some custom CSS to fit that in.

I my opinion, this box needs some more styling: smaller icons, darker background when hovering reaction, scrollbars in case of many reactions, probably a searchbox... In a few words - would be cool to see something like Discord reactions box:
It's not really something we're aiming for.

Can we set a custom +X score for reactions? If so, is there a way (user criteria?) to allow certain users to post certain reactions?
No just positive, negative and neutral.

My only question is: can I limit reactions per node?
Nope.

Hope to see an importer for current reactions...
Won't be coming from us.
 
That's shown in the first post. Reactions can be set with a positive, neutral or negative score so you would simply not use the negative score when setting up your own reactions.

Maybe the language barrier, but if I understand @Chris D correct, there is a summarization of all reaction values called reaction score, isn't it? My question was if this can be set to keep the sum >= 0. I want to avoid having people with negative score.
 
The problem with that is the simple fact that some people say things that aren't always polite or something the community agrees with, even if it isn't breaking any particular rules. This allows the community to bury posts, cause them to be hidden or have other repercussions for the user saying silly things.

Not everything needs to have a heavy moderator hand behind it, and with a potential negative side effect I've found that people care much more about their reputation than when its all just fluff and cherries. Without a negative reaction, the like feature is just cosmetic and really neuters part of the emotional relationship a member can have with the content and forum itself. Its like giving everyone a blue ribbon for participation if that makes any sense.

Now, if you're saying thats nice, an addon dev can tackle this, then I wouldn't disagree with that stance given its a vanilla core feature. I just thought I'd mention this as its an issue I deal with once a month or so. It literally takes hours to undo the damage someone has done sometimes.

Yes, mass removing reactions from a person is a much-needed option. Disabling dislikes will not solve the problem. Dislikes are a needed option, In the same way one can use positive reactions with duplicate IDs to increase his positive count. So mass removing reactions or search and remove is very useful.
 
Maybe the language barrier, but if I understand @Chris D correct, there is a summarization of all reaction values called reaction score, isn't it? My question was if this can be set to keep the sum >= 0. I want to avoid having people with negative score.
You could (as it is set by default) configure only reaction with positiv or neutral value.
If you configure reactions with negative value I see no way (short of blocking users giving a negative reaction) to prevent a negative sroce.
 
Yes, mass removing reactions from a person is a much-needed option. Disabling dislikes will not solve the problem. Dislikes are a needed option, In the same way one can use positive reactions with duplicate IDs to increase his positive count. So mass removing reactions or search and remove is very useful.
As I said in my previous post, you can already mass delete likes given by a user, and you can do the same with Reactions in XF 2.1:


localhost_21x_admin.php_users_spam-test-1.4_edit.webp

What will happen to existing likes?
We'll go into this in more detail in a future HYS but essentially any current system that uses likes only will continue to use likes only. There's a few things a developer will need to do to migrate that to reactions, but behind the scenes the likes become like reactions.

Is this still using an image sprite sheet like xf 1x? Does it have retina quality?
The default sprite is 64 x 64 but you can see from the screenshots in the first post that we actually scale that down to 32 x 32. So, essentially, this is retina compatible.
 
Top Bottom