[TH] Reactions [Deleted]

For this you'll want to disable the likes from displaying in the postbit and only show the reaction count. You can change this from a bar to text. I think we'll also be adding a separate option for each reaction type to display separately as well so you can do a line for "Positive reactions"
So this is available right now?
 
I think we'll also be adding a separate option for each reaction type to display separately as well so you can do a line for "Positive reactions"

This feature to only display a positive reaction count and also the widget in notable members is the only reason I'm not currently using this add-on even though I purchased it. There has to be a feasible way to replace "likes".

A quick question about any updates on the notable members widget as well as when you plan to enable positive reactions count to display only?

I'd love to use this add-on but I find myself constantly running into issues where I can't replace "likes". Thanks.
 
Been getting these errors in the Admin CP:

Code:
ErrorException: Template error: Division by zero internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php:160
Generated by: Viking Redbeard Apr 19, 2018 at 1:11 PM

Code:
Stack trace
#0 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(160): XF\Template\Templater->handleTemplateError(2, 'Division by zer...', 'i...', 160, Array)
#1 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#2 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(132): XF\Template\Templater->callMacro('th_display_reac...', 'react_total_per...', Array, Array)
#3 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#4 internal_data/code_cache/templates/l1/s5/public/message_macros.php(305): XF\Template\Templater->callMacro('th_display_reac...', 'react_postbit', Array, Array)
#5 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#6 internal_data/code_cache/templates/l1/s5/public/post_macros.php(38): XF\Template\Templater->callMacro('message_macros', 'user_info', Array, Array)
#7 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#8 internal_data/code_cache/templates/l1/s5/public/thread_view.php(659): XF\Template\Templater->callMacro('post_macros', 'post', Array, Array)
#9 src/XF/Template/Templater.php(1248): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array)
#10 src/XF/Template/Template.php(24): XF\Template\Templater->renderTemplate('thread_view', Array)
#11 src/XF/Mvc/Renderer/Html.php(48): XF\Template\Template->render()
#12 src/XF/Mvc/Dispatcher.php(332): XF\Mvc\Renderer\Html->renderView('XF:Thread\\View', 'public:thread_v...', Array)
#13 src/XF/Mvc/Dispatcher.php(303): XF\Mvc\Dispatcher->renderView(Object(XF\Mvc\Renderer\Html), Object(XF\Mvc\Reply\View))
#14 src/XF/Mvc/Dispatcher.php(44): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'html')
#15 src/XF/App.php(1891): XF\Mvc\Dispatcher->run()
#16 src/XF.php(328): XF\App->run()
#17 index.php(13): XF::runApp('XF\\Pub\\App')
#18 {main}

Code:
Request state
array(4) {
  ["url"] => string(25) "/threads/basic-set-up.41/"
  ["referrer"] => string(33) "https://www.yetigamer.com/forums/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(0) {
  }
}
Seems to be an issue for any user that doesn't have any "reactions".

This error, too:
Code:
[LIST]
[*]ErrorException: Template error: number_format() expects parameter 1 to be float, string given
[*] 
[*]src/XF/Language.php:804
[/LIST]

Code:
#0 [internal function]: XF\Template\Templater->handleTemplateError(2, 'number_format()...', 's...', 804, Array)
#1 src/XF/Language.php(804): number_format('NAN%', 0, '.', ',')
#2 src/XF/Template/Templater.php(3590): XF\Language->numberFormat('NAN%', 0)
#3 [internal function]: XF\Template\Templater->filterNumber(Object(ThemeHouse\Reactions\XF\Template\Templater), 'NAN%', true)
#4 src/XF/Template/Templater.php(847): call_user_func_array(Array, Array)
#5 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(162): XF\Template\Templater->filter('NAN%', Array, true)
#6 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#7 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(132): XF\Template\Templater->callMacro('th_display_reac...', 'react_total_per...', Array, Array)
#8 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#9 internal_data/code_cache/templates/l1/s5/public/message_macros.php(305): XF\Template\Templater->callMacro('th_display_reac...', 'react_postbit', Array, Array)
#10 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#11 internal_data/code_cache/templates/l1/s5/public/post_macros.php(38): XF\Template\Templater->callMacro('message_macros', 'user_info', Array, Array)
#12 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#13 internal_data/code_cache/templates/l1/s5/public/thread_view.php(659): XF\Template\Templater->callMacro('post_macros', 'post', Array, Array)
#14 src/XF/Template/Templater.php(1248): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array)
#15 src/XF/Template/Template.php(24): XF\Template\Templater->renderTemplate('thread_view', Array)
#16 src/XF/Mvc/Renderer/Html.php(48): XF\Template\Template->render()
#17 src/XF/Mvc/Dispatcher.php(332): XF\Mvc\Renderer\Html->renderView('XF:Thread\\View', 'public:thread_v...', Array)
#18 src/XF/Mvc/Dispatcher.php(303): XF\Mvc\Dispatcher->renderView(Object(XF\Mvc\Renderer\Html), Object(XF\Mvc\Reply\View))
#19 src/XF/Mvc/Dispatcher.php(44): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'html')
#20 src/XF/App.php(1891): XF\Mvc\Dispatcher->run()
#21 src/XF.php(328): XF\App->run()
#22 index.php(13): XF::runApp('XF\\Pub\\App')
#23 {main}
 
Been getting these errors in the Admin CP:

Code:
ErrorException: Template error: Division by zero internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php:160
Generated by: Viking Redbeard Apr 19, 2018 at 1:11 PM

Code:
Stack trace
#0 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(160): XF\Template\Templater->handleTemplateError(2, 'Division by zer...', 'i...', 160, Array)
#1 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#2 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(132): XF\Template\Templater->callMacro('th_display_reac...', 'react_total_per...', Array, Array)
#3 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#4 internal_data/code_cache/templates/l1/s5/public/message_macros.php(305): XF\Template\Templater->callMacro('th_display_reac...', 'react_postbit', Array, Array)
#5 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#6 internal_data/code_cache/templates/l1/s5/public/post_macros.php(38): XF\Template\Templater->callMacro('message_macros', 'user_info', Array, Array)
#7 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#8 internal_data/code_cache/templates/l1/s5/public/thread_view.php(659): XF\Template\Templater->callMacro('post_macros', 'post', Array, Array)
#9 src/XF/Template/Templater.php(1248): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array)
#10 src/XF/Template/Template.php(24): XF\Template\Templater->renderTemplate('thread_view', Array)
#11 src/XF/Mvc/Renderer/Html.php(48): XF\Template\Template->render()
#12 src/XF/Mvc/Dispatcher.php(332): XF\Mvc\Renderer\Html->renderView('XF:Thread\\View', 'public:thread_v...', Array)
#13 src/XF/Mvc/Dispatcher.php(303): XF\Mvc\Dispatcher->renderView(Object(XF\Mvc\Renderer\Html), Object(XF\Mvc\Reply\View))
#14 src/XF/Mvc/Dispatcher.php(44): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'html')
#15 src/XF/App.php(1891): XF\Mvc\Dispatcher->run()
#16 src/XF.php(328): XF\App->run()
#17 index.php(13): XF::runApp('XF\\Pub\\App')
#18 {main}

Code:
Request state
array(4) {
  ["url"] => string(25) "/threads/basic-set-up.41/"
  ["referrer"] => string(33) "https://www.yetigamer.com/forums/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(0) {
  }
}
Seems to be an issue for any user that doesn't have any "reactions".

This error, too:
Code:
[LIST]
[*]ErrorException: Template error: number_format() expects parameter 1 to be float, string given
[*] 
[*]src/XF/Language.php:804
[/LIST]

Code:
#0 [internal function]: XF\Template\Templater->handleTemplateError(2, 'number_format()...', 's...', 804, Array)
#1 src/XF/Language.php(804): number_format('NAN%', 0, '.', ',')
#2 src/XF/Template/Templater.php(3590): XF\Language->numberFormat('NAN%', 0)
#3 [internal function]: XF\Template\Templater->filterNumber(Object(ThemeHouse\Reactions\XF\Template\Templater), 'NAN%', true)
#4 src/XF/Template/Templater.php(847): call_user_func_array(Array, Array)
#5 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(162): XF\Template\Templater->filter('NAN%', Array, true)
#6 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#7 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(132): XF\Template\Templater->callMacro('th_display_reac...', 'react_total_per...', Array, Array)
#8 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#9 internal_data/code_cache/templates/l1/s5/public/message_macros.php(305): XF\Template\Templater->callMacro('th_display_reac...', 'react_postbit', Array, Array)
#10 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#11 internal_data/code_cache/templates/l1/s5/public/post_macros.php(38): XF\Template\Templater->callMacro('message_macros', 'user_info', Array, Array)
#12 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#13 internal_data/code_cache/templates/l1/s5/public/thread_view.php(659): XF\Template\Templater->callMacro('post_macros', 'post', Array, Array)
#14 src/XF/Template/Templater.php(1248): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array)
#15 src/XF/Template/Template.php(24): XF\Template\Templater->renderTemplate('thread_view', Array)
#16 src/XF/Mvc/Renderer/Html.php(48): XF\Template\Template->render()
#17 src/XF/Mvc/Dispatcher.php(332): XF\Mvc\Renderer\Html->renderView('XF:Thread\\View', 'public:thread_v...', Array)
#18 src/XF/Mvc/Dispatcher.php(303): XF\Mvc\Dispatcher->renderView(Object(XF\Mvc\Renderer\Html), Object(XF\Mvc\Reply\View))
#19 src/XF/Mvc/Dispatcher.php(44): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'html')
#20 src/XF/App.php(1891): XF\Mvc\Dispatcher->run()
#21 src/XF.php(328): XF\App->run()
#22 index.php(13): XF::runApp('XF\\Pub\\App')
#23 {main}
Will get you some help on this. If you want to create a ticket at ThemeHouse.com we can take a specific look at your board as well.
 
Been getting these errors in the Admin CP:

Code:
ErrorException: Template error: Division by zero internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php:160
Generated by: Viking Redbeard Apr 19, 2018 at 1:11 PM

Code:
Stack trace
#0 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(160): XF\Template\Templater->handleTemplateError(2, 'Division by zer...', 'i...', 160, Array)
#1 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#2 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(132): XF\Template\Templater->callMacro('th_display_reac...', 'react_total_per...', Array, Array)
#3 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#4 internal_data/code_cache/templates/l1/s5/public/message_macros.php(305): XF\Template\Templater->callMacro('th_display_reac...', 'react_postbit', Array, Array)
#5 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#6 internal_data/code_cache/templates/l1/s5/public/post_macros.php(38): XF\Template\Templater->callMacro('message_macros', 'user_info', Array, Array)
#7 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#8 internal_data/code_cache/templates/l1/s5/public/thread_view.php(659): XF\Template\Templater->callMacro('post_macros', 'post', Array, Array)
#9 src/XF/Template/Templater.php(1248): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array)
#10 src/XF/Template/Template.php(24): XF\Template\Templater->renderTemplate('thread_view', Array)
#11 src/XF/Mvc/Renderer/Html.php(48): XF\Template\Template->render()
#12 src/XF/Mvc/Dispatcher.php(332): XF\Mvc\Renderer\Html->renderView('XF:Thread\\View', 'public:thread_v...', Array)
#13 src/XF/Mvc/Dispatcher.php(303): XF\Mvc\Dispatcher->renderView(Object(XF\Mvc\Renderer\Html), Object(XF\Mvc\Reply\View))
#14 src/XF/Mvc/Dispatcher.php(44): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'html')
#15 src/XF/App.php(1891): XF\Mvc\Dispatcher->run()
#16 src/XF.php(328): XF\App->run()
#17 index.php(13): XF::runApp('XF\\Pub\\App')
#18 {main}

Code:
Request state
array(4) {
  ["url"] => string(25) "/threads/basic-set-up.41/"
  ["referrer"] => string(33) "https://www.yetigamer.com/forums/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(0) {
  }
}
Seems to be an issue for any user that doesn't have any "reactions".

This error, too:
Code:
[LIST]
[*]ErrorException: Template error: number_format() expects parameter 1 to be float, string given
[*]
[*]src/XF/Language.php:804
[/LIST]

Code:
#0 [internal function]: XF\Template\Templater->handleTemplateError(2, 'number_format()...', 's...', 804, Array)
#1 src/XF/Language.php(804): number_format('NAN%', 0, '.', ',')
#2 src/XF/Template/Templater.php(3590): XF\Language->numberFormat('NAN%', 0)
#3 [internal function]: XF\Template\Templater->filterNumber(Object(ThemeHouse\Reactions\XF\Template\Templater), 'NAN%', true)
#4 src/XF/Template/Templater.php(847): call_user_func_array(Array, Array)
#5 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(162): XF\Template\Templater->filter('NAN%', Array, true)
#6 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#7 internal_data/code_cache/templates/l1/s5/public/th_display_reactions.php(132): XF\Template\Templater->callMacro('th_display_reac...', 'react_total_per...', Array, Array)
#8 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#9 internal_data/code_cache/templates/l1/s5/public/message_macros.php(305): XF\Template\Templater->callMacro('th_display_reac...', 'react_postbit', Array, Array)
#10 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#11 internal_data/code_cache/templates/l1/s5/public/post_macros.php(38): XF\Template\Templater->callMacro('message_macros', 'user_info', Array, Array)
#12 src/XF/Template/Templater.php(661): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array, Array)
#13 internal_data/code_cache/templates/l1/s5/public/thread_view.php(659): XF\Template\Templater->callMacro('post_macros', 'post', Array, Array)
#14 src/XF/Template/Templater.php(1248): XF\Template\Templater->{closure}(Object(ThemeHouse\Reactions\XF\Template\Templater), Array)
#15 src/XF/Template/Template.php(24): XF\Template\Templater->renderTemplate('thread_view', Array)
#16 src/XF/Mvc/Renderer/Html.php(48): XF\Template\Template->render()
#17 src/XF/Mvc/Dispatcher.php(332): XF\Mvc\Renderer\Html->renderView('XF:Thread\\View', 'public:thread_v...', Array)
#18 src/XF/Mvc/Dispatcher.php(303): XF\Mvc\Dispatcher->renderView(Object(XF\Mvc\Renderer\Html), Object(XF\Mvc\Reply\View))
#19 src/XF/Mvc/Dispatcher.php(44): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'html')
#20 src/XF/App.php(1891): XF\Mvc\Dispatcher->run()
#21 src/XF.php(328): XF\App->run()
#22 index.php(13): XF::runApp('XF\\Pub\\App')
#23 {main}

Looks like there may be an issue with the percentage display type for postbit, if you temporarily switch to either text or the bar it should take care of these errors until we get the issue resolved :)
 
I just realized those errors were from yesterday. Nothing popped up today. So, false alarm! I think we are good. There was about a 10 minute period after I installed that everything was looking goofy, I wonder if a cron job needed to run. The stats were displaying as % | % | %. Things look normal today.
 
I'm not 100% sure what could be causing this as it's something we explicitly checking for, so this happening really shouldn't even be possible:

PHP:
$existingLike = $likeRepo->getLikeByContentAndLiker($this->content_type, $this->content_id, $this->react_user_id);

if ($isCreate && !$existingLike && $this->Reactor instanceof \XF\Entity\User) {
    $likeRepo->insertLike($this->content_type, $this->content_id, $this->Reactor, false);
}

Are you able to replicate this if you try to use the "Like" reaction on that post (ID 69371)
This will happen if a user double-clicks or similar which causes two network requests to be sent at 'once' and then they get processed roughly at the same time server side.

XF1 Post Ratings had a similar issue, but it's solution was horrible and didn't fully work. One of my XF1 add-ons just injects a custom flood timer of ~1 second which sidesteps the issue for the most part
 
This will happen if a user double-clicks or similar which causes two network requests to be sent at 'once' and then they get processed roughly at the same time server side.

XF1 Post Ratings had a similar issue, but it's solution was horrible and didn't fully work. One of my XF1 add-ons just injects a custom flood timer of ~1 second which sidesteps the issue for the most part

We had a sort of anti-flood system built in previously, but I bet it got removed accidentally when we added the new display styles, we'll look into this - thanks for the idea!
 
@Jake B. i had a request for some reactions based of standard emojis. like the cat with the heart eyes and the eggplant. what would be the best way to go about adding something like that in?
 
@Jake B. i had a request for some reactions based of standard emojis. like the cat with the heart eyes and the eggplant. what would be the best way to go about adding something like that in?

Don't have it in front of me right now, but you should be able to define a reaction using text, you can insert the Emoji into this field as long as you have full Unicode support enabled in XenForo
 
Don't have it in front of me right now, but you should be able to define a reaction using text, you can insert the Emoji into this field as long as you have full Unicode support enabled in XenForo
let me see how i can screw that up. i'll check back in with my failures later.
 
Don't have it in front of me right now, but you should be able to define a reaction using text, you can insert the Emoji into this field as long as you have full Unicode support enabled in XenForo
we have unicode turned on. i've tried typing in a plain name like eggplant. tried the U+ number. tried the number without the U. tired copying it from my mac but it shows the small size that's default on the keyboard menu. not sure how to get it to translate.
 
Typing in the emoji's name or the U+ number won't work, you have to actually paste in the character -- could you screenshot the small version that is showing up? Might just be a matter of increasing the font size of it in CSS
 
Typing in the emoji's name or the U+ number won't work, you have to actually paste in the character -- could you screenshot the small version that is showing up? Might just be a matter of increasing the font size of it in CSS
ask and ye shall receive. this is on my mac. haven't tried it on the mobile yet but that's obviously not an optimal solution:

mac emoji 1.webp
mac emoji 2.webp
mac emoji 3.webp
 
ask and ye shall receive. this is on my mac. haven't tried it on the mobile yet but that's obviously not an optimal solution:

View attachment 173923
View attachment 173924
View attachment 173925
Try adding this to your EXTRA.less:

CSS:
.reaction { font-size: 26px; }

Additionally @Nirjonadda -- looked into your issue and our anti-flood check is still in place. Could you check with some of the users that have triggered this error to see what browser (including version) and OS they're using so we can try to replicate it? Also, what reaction display style are you using, and is "Like" your default reaction?
 
Top Bottom