Here is an example user:
From what I can see, there is no option not to display your own badges to other people. Is there?
From what I can see, there is no option not to display your own badges to other people. Is there?
ya im getting the same errorsAre you getting the same or other errors on 2.3.2 Patch Level 5? Please attach them.
Older versions are not recommended to use on production as there were important fixes in the latest patches.
ErrorException: [E_WARNING] Attempt to read property "Category" on null src/addons/OzzModz/Badges/Repository/UserBadge.php:123
Generated by: 7Pebbles Feb 6, 2023 at 12:28 PM
Stack trace
#0 src/addons/OzzModz/Badges/Repository/UserBadge.php(123): XF::handlePhpError(2, '[E_WARNING] Att...', '/home/agor/publ...', 123)
#1 src/addons/OzzModz/Badges/XF/Pub/Controller/Member.php(34): OzzModz\Badges\Repository\UserBadge->getUserBadgesData(4704)
#2 src/XF/Mvc/Dispatcher.php(352): OzzModz\Badges\XF\Pub\Controller\Member->actionBadges(Object(XF\Mvc\ParameterBag))
#3 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('XF:Member', 'Badges', Object(XF\Mvc\RouteMatch), Object(OzzModz\Badges\XF\Pub\Controller\Member), NULL)
#4 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(OzzModz\Badges\XF\Pub\Controller\Member), NULL)
#5 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#6 src/XF/App.php(2353): XF\Mvc\Dispatcher->run()
#7 src/XF.php(524): XF\App->run()
#8 index.php(20): XF::runApp('XF\\Pub\\App')
#9 {main}
Request state
array(4) {
["url"] => string(185) "/index.php?members/7pebbles.4704/badges&_xfRequestUri=%2Findex.php%3Fmembers%2F7pebbles.4704%2F&_xfWithData=1&_xfToken=1675715293%2Ca437eff44b35c53ad8cadd84ab0426dc&_xfResponseType=json"
["referrer"] => string(60) "https://forum.agoraroad.com/index.php?members/7pebbles.4704/"
["_GET"] => array(5) {
["members/7pebbles_4704/badges"] => string(0) ""
["_xfRequestUri"] => string(33) "/index.php?members/7pebbles.4704/"
["_xfWithData"] => string(1) "1"
["_xfToken"] => string(43) "1675715293,a437eff44b35c53ad8cadd84ab0426dc"
["_xfResponseType"] => string(4) "json"
}
["_POST"] => array(0) {
}
}
"This member limits who may view their full profile. "Here is an example user:
https://www.bigfooty.com/forum/members/maggie5.98636/
From what I can see, there is no option not to display your own badges to other people. Is there?
There is nothing in the latest patch on this line that could cause this errorErrorException: [E_WARNING] Attempt to read property "Category" on null src/addons/OzzModz/Badges/Repository/UserBadge.php:123
public function getUserBadgesListData(AbstractCollection $userBadges)
{
$badgeCategories = [];
$userBadgesOut = [];
$badgeIds = [];
/** @var \OzzModz\Badges\Entity\UserBadge $userBadge */
foreach ($userBadges as $userBadge)
{
$badge = $userBadge->Badge;
if (!$badge || !$badge->canView()) // null can't be passed here
{
continue;
}
$badgeIds[] = $badge->badge_id;
$category = $badge->Category;
...
}
...
}
2.3.2 Patch Level 6:
- Feature: toggle featured badges from ACP awarded users list
- Fix: Show badge title in awarded list
- Fix: properly merge stacked badges
- Fix: force highest stacking badge as featured if user has manually chosen featured badges (can be disabled in options)
ErrorException: [E_WARNING] Undefined array key "stacking_badge_id" src/addons/OzzModz/Badges/Repository/UserBadge.php:226
Stack trace
#0 src/addons/OzzModz/Badges/Repository/UserBadge.php(226): XF::handlePhpError(2, '[E_WARNING] Und...', '<file_system_path>...', 226)
#1 src/addons/OzzModz/Badges/XF/Pub/Controller/Member.php(37): OzzModz\Badges\Repository\UserBadge->mergeStackedBadgesIntoUserBadges(Object(XF\Mvc\Entity\ArrayCollection))
#2 src/XF/Mvc/Dispatcher.php(352): OzzModz\Badges\XF\Pub\Controller\Member->actionBadges(Object(XF\Mvc\ParameterBag))
#3 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('XF:Member', 'Badges', Object(XF\Mvc\RouteMatch), Object(SV\ModeratorEssentials\XF\Pub\Controller\Member), NULL)
#4 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(SV\ModeratorEssentials\XF\Pub\Controller\Member), NULL)
#5 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#6 src/XF/App.php(2483): XF\Mvc\Dispatcher->run()
#7 src/XF.php(524): XF\App->run()
#8 index.php(20): XF::runApp('XF\\Pub\\App')
#9 {main}
ErrorException: [E_WARNING] Undefined array key "stacking_badge_id" in src/addons/OzzModz/Badges/Repository/UserBadge.php at line 226
XF::handlePhpError() in src/addons/OzzModz/Badges/Repository/UserBadge.php at line 226
OzzModz\Badges\Repository\UserBadge->mergeStackedBadgesIntoUserBadges() in src/addons/OzzModz/Badges/Repository/UserBadge.php at line 99
OzzModz\Badges\Repository\UserBadge->getFeaturedUserBadges() in src/addons/OzzModz/Badges/XF/Entity/User.php at line 79
OzzModz\Badges\XF\Entity\User->getFeaturedBadges() in src/addons/OzzModz/Badges/XF/Entity/User.php at line 92
OzzModz\Badges\XF\Entity\User->rebuildBadgeCache() in src/addons/OzzModz/Badges/Job/UserBadgeCacheRebuild.php at line 29
OzzModz\Badges\Job\UserBadgeCacheRebuild->rebuildById() in src/XF/Job/AbstractRebuildJob.php at line 42
XF\Job\AbstractRebuildJob->run() in src/XF/Job/Manager.php at line 260
XF\Job\Manager->runJobInternal() in src/XF/Job/Manager.php at line 202
XF\Job\Manager->runJobEntry() in src/XF/Job/Manager.php at line 118
XF\Job\Manager->runByIds() in src/XF/Admin/Controller/Tools.php at line 122
XF\Admin\Controller\Tools->actionRunJob() in src/XF/Mvc/Dispatcher.php at line 352
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 259
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 115
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 57
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2483
XF\App->run() in src/XF.php at line 524
XF::runApp() in admin.php at line 13
Check my edits above, it may not be that big of an issue if nobody else has reported it yet. Might just be a rare circumstance of the particulars of the setup that triggers it. Something in the process of me adding a badge category and moving our uncategorized badges into that category fixed the error, possibly just down to a side effect of the badge data getting re-saved or something. Not sure. I can't reproduce it any further.We’ll look into it.
LogicException: Attempted to set 'featured' while a save was pending without forceSet src/XF/Mvc/Entity/Entity.php:605
Generated by: Unknown account Feb 12, 2023 at 4:43 PM
Stack trace
#0 src/XF/Mvc/Entity/Entity.php(577): XF\Mvc\Entity\Entity->set('featured', true)
#1 src/addons/OzzModz/Badges/Repository/UserBadge.php(121): XF\Mvc\Entity\Entity->__set('featured', true)
#2 [internal function]: OzzModz\Badges\Repository\UserBadge->OzzModz\Badges\Repository\{closure}(Object(OzzModz\Badges\Entity\UserBadge))
#3 src/XF/Mvc/Entity/AbstractCollection.php(197): array_filter(Array, Object(Closure))
#4 src/addons/OzzModz/Badges/Repository/UserBadge.php(128): XF\Mvc\Entity\AbstractCollection->filter(Object(Closure))
#5 src/addons/OzzModz/Badges/XF/Entity/User.php(79): OzzModz\Badges\Repository\UserBadge->getFeaturedUserBadges(Object(SV\SearchImprovements\XF\Entity\User))
#6 src/addons/OzzModz/Badges/XF/Entity/User.php(92): OzzModz\Badges\XF\Entity\User->getFeaturedBadges()
#7 src/addons/OzzModz/Badges/Entity/UserBadge.php(152): OzzModz\Badges\XF\Entity\User->rebuildBadgeCache(false)
#8 src/XF/Mvc/Entity/Entity.php(1277): OzzModz\Badges\Entity\UserBadge->_postSave()
#9 src/addons/OzzModz/Badges/Service/Award.php(158): XF\Mvc\Entity\Entity->save(true, false)
#10 src/XF/Service/ValidateAndSavableTrait.php(42): OzzModz\Badges\Service\Award->_save()
#11 src/addons/OzzModz/Badges/Repository/UserBadge.php(373): OzzModz\Badges\Service\Award->save()
#12 src/addons/OzzModz/Badges/Repository/UserBadge.php(307): OzzModz\Badges\Repository\UserBadge->updateBadgeForUser(Object(SV\SearchImprovements\XF\Entity\User), Object(OzzModz\Badges\Entity\Badge), Object(XF\Mvc\Entity\ArrayCollection))
#13 src/addons/OzzModz/Badges/Cron/Badge.php(46): OzzModz\Badges\Repository\UserBadge->updateBadgesForUser(Object(SV\SearchImprovements\XF\Entity\User), Object(XF\Mvc\Entity\ArrayCollection), Object(XF\Mvc\Entity\ArrayCollection))
#14 src/XF/Job/Cron.php(37): OzzModz\Badges\Cron\Badge::runBadgeCheck(Object(XF\Entity\CronEntry))
#15 src/XF/Job/Manager.php(260): XF\Job\Cron->run(8)
#16 src/XF/Job/Manager.php(202): XF\Job\Manager->runJobInternal(Array, 8)
#17 src/XF/Job/Manager.php(86): XF\Job\Manager->runJobEntry(Array, 8)
#18 job.php(43): XF\Job\Manager->runQueue(false, 8)
#19 {main}
Request state
array(4) {
["url"] => string(8) "/job.php"
["referrer"] => string(102) "https://www.boardgamedungeon.net/threads/terraforming-mars-1v1-tournament-30-usd-first-prize.87/page-3"
["_GET"] => array(0) {
}
["_POST"] => array(0) {
}
}
LogicException: Job OzzModz\Badges:UserBadgeUpdate: Attempted to set 'featured' while a save was pending without forceSet src/XF/Mvc/Entity/Entity.php:605
Generated by: Unknown account Feb 12, 2023 at 7:50 PM
Stack trace
#0 src/XF/Mvc/Entity/Entity.php(577): XF\Mvc\Entity\Entity->set('featured', true)
#1 src/addons/OzzModz/Badges/Repository/UserBadge.php(121): XF\Mvc\Entity\Entity->__set('featured', true)
#2 [internal function]: OzzModz\Badges\Repository\UserBadge->OzzModz\Badges\Repository\{closure}(Object(OzzModz\Badges\Entity\UserBadge))
#3 src/XF/Mvc/Entity/AbstractCollection.php(197): array_filter(Array, Object(Closure))
#4 src/addons/OzzModz/Badges/Repository/UserBadge.php(128): XF\Mvc\Entity\AbstractCollection->filter(Object(Closure))
#5 src/addons/OzzModz/Badges/XF/Entity/User.php(79): OzzModz\Badges\Repository\UserBadge->getFeaturedUserBadges(Object(SV\SearchImprovements\XF\Entity\User))
#6 src/addons/OzzModz/Badges/XF/Entity/User.php(92): OzzModz\Badges\XF\Entity\User->getFeaturedBadges()
#7 src/addons/OzzModz/Badges/Entity/UserBadge.php(152): OzzModz\Badges\XF\Entity\User->rebuildBadgeCache(false)
#8 src/XF/Mvc/Entity/Entity.php(1277): OzzModz\Badges\Entity\UserBadge->_postSave()
#9 src/addons/OzzModz/Badges/Service/Award.php(158): XF\Mvc\Entity\Entity->save(true, false)
#10 src/XF/Service/ValidateAndSavableTrait.php(42): OzzModz\Badges\Service\Award->_save()
#11 src/addons/OzzModz/Badges/Repository/UserBadge.php(373): OzzModz\Badges\Service\Award->save()
#12 src/addons/OzzModz/Badges/Job/UserBadgeUpdate.php(54): OzzModz\Badges\Repository\UserBadge->updateBadgeForUser(Object(SV\SearchImprovements\XF\Entity\User), Object(OzzModz\Badges\Entity\Badge), Object(XF\Mvc\Entity\ArrayCollection))
#13 src/XF/Job/Manager.php(260): OzzModz\Badges\Job\UserBadgeUpdate->run(8)
#14 src/XF/Job/Manager.php(202): XF\Job\Manager->runJobInternal(Array, 8)
#15 src/XF/Job/Manager.php(86): XF\Job\Manager->runJobEntry(Array, 8)
#16 job.php(43): XF\Job\Manager->runQueue(false, 8)
#17 {main}
Request state
array(4) {
["url"] => string(8) "/job.php"
["referrer"] => string(102) "https://www.boardgamedungeon.net/threads/terraforming-mars-1v1-tournament-30-usd-first-prize.87/page-3"
["_GET"] => array(0) {
}
["_POST"] => array(0) {
}
}
Sorry, doesn't seem to have worked.
Count is updated but no badges showing.
View attachment 281508View attachment 281509
It looks like the badge cache was not rebuilt after one of the updates. I'll add a condition to avoid this error.Something in the process of me adding a badge category and moving our uncategorized badges into that category fixed the error, possibly just down to a side effect of the badge data getting re-saved or something. Not sure. I can't reproduce it any further.
ErrorException: [E_WARNING] Undefined array key "stacking_badge_id" in src/addons/OzzModz/Badges/Repository/UserBadge.php at line 226
XF::handlePhpError() in src/addons/OzzModz/Badges/Repository/UserBadge.php at line 226
OzzModz\Badges\Repository\UserBadge->mergeStackedBadgesIntoUserBadges() in src/addons/OzzModz/Badges/XF/Pub/Controller/Member.php at line 37
OzzModz\Badges\XF\Pub\Controller\Member->actionBadges() in src/XF/Mvc/Dispatcher.php at line 352
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 259
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 115
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 57
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2353
XF\App->run() in src/XF.php at line 524
XF::runApp() in index.php at line 20
Also getting this on some usersHello i added the new patch and it gave me this error. how to fix plz
ErrorException: [E_WARNING] Trying to access array offset on value of type null in src/addons/OzzModz/Badges/Repository/UserBadge.php at line 217
XF::handlePhpError() in src/addons/OzzModz/Badges/Repository/UserBadge.php at line 217
OzzModz\Badges\Repository\UserBadge->OzzModz\Badges\Repository\{closure}()
usort() in src/addons/OzzModz/Badges/Repository/UserBadge.php at line 218
OzzModz\Badges\Repository\UserBadge->mergeStackedBadgesIntoUserBadges() in src/addons/OzzModz/Badges/XF/Pub/Controller/Member.php at line 37
OzzModz\Badges\XF\Pub\Controller\Member->actionBadges() in src/XF/Mvc/Dispatcher.php at line 352
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 259
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 115
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 57
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2353
XF\App->run() in src/XF.php at line 524
XF::runApp() in index.php at line 20
Several errors after last update.
Code:LogicException: Attempted to set 'featured' while a save was pending without forceSet src/XF/Mvc/Entity/Entity.php:605 Generated by: Unknown account Feb 12, 2023 at 4:43 PM Stack trace #0 src/XF/Mvc/Entity/Entity.php(577): XF\Mvc\Entity\Entity->set('featured', true) #1 src/addons/OzzModz/Badges/Repository/UserBadge.php(121): XF\Mvc\Entity\Entity->__set('featured', true) #2 [internal function]: OzzModz\Badges\Repository\UserBadge->OzzModz\Badges\Repository\{closure}(Object(OzzModz\Badges\Entity\UserBadge)) #3 src/XF/Mvc/Entity/AbstractCollection.php(197): array_filter(Array, Object(Closure)) #4 src/addons/OzzModz/Badges/Repository/UserBadge.php(128): XF\Mvc\Entity\AbstractCollection->filter(Object(Closure)) #5 src/addons/OzzModz/Badges/XF/Entity/User.php(79): OzzModz\Badges\Repository\UserBadge->getFeaturedUserBadges(Object(SV\SearchImprovements\XF\Entity\User)) #6 src/addons/OzzModz/Badges/XF/Entity/User.php(92): OzzModz\Badges\XF\Entity\User->getFeaturedBadges() #7 src/addons/OzzModz/Badges/Entity/UserBadge.php(152): OzzModz\Badges\XF\Entity\User->rebuildBadgeCache(false) #8 src/XF/Mvc/Entity/Entity.php(1277): OzzModz\Badges\Entity\UserBadge->_postSave() #9 src/addons/OzzModz/Badges/Service/Award.php(158): XF\Mvc\Entity\Entity->save(true, false) #10 src/XF/Service/ValidateAndSavableTrait.php(42): OzzModz\Badges\Service\Award->_save() #11 src/addons/OzzModz/Badges/Repository/UserBadge.php(373): OzzModz\Badges\Service\Award->save() #12 src/addons/OzzModz/Badges/Repository/UserBadge.php(307): OzzModz\Badges\Repository\UserBadge->updateBadgeForUser(Object(SV\SearchImprovements\XF\Entity\User), Object(OzzModz\Badges\Entity\Badge), Object(XF\Mvc\Entity\ArrayCollection)) #13 src/addons/OzzModz/Badges/Cron/Badge.php(46): OzzModz\Badges\Repository\UserBadge->updateBadgesForUser(Object(SV\SearchImprovements\XF\Entity\User), Object(XF\Mvc\Entity\ArrayCollection), Object(XF\Mvc\Entity\ArrayCollection)) #14 src/XF/Job/Cron.php(37): OzzModz\Badges\Cron\Badge::runBadgeCheck(Object(XF\Entity\CronEntry)) #15 src/XF/Job/Manager.php(260): XF\Job\Cron->run(8) #16 src/XF/Job/Manager.php(202): XF\Job\Manager->runJobInternal(Array, 8) #17 src/XF/Job/Manager.php(86): XF\Job\Manager->runJobEntry(Array, 8) #18 job.php(43): XF\Job\Manager->runQueue(false, 8) #19 {main} Request state array(4) { ["url"] => string(8) "/job.php" ["referrer"] => string(102) "https://www.boardgamedungeon.net/threads/terraforming-mars-1v1-tournament-30-usd-first-prize.87/page-3" ["_GET"] => array(0) { } ["_POST"] => array(0) { } }
Code:LogicException: Job OzzModz\Badges:UserBadgeUpdate: Attempted to set 'featured' while a save was pending without forceSet src/XF/Mvc/Entity/Entity.php:605 Generated by: Unknown account Feb 12, 2023 at 7:50 PM Stack trace #0 src/XF/Mvc/Entity/Entity.php(577): XF\Mvc\Entity\Entity->set('featured', true) #1 src/addons/OzzModz/Badges/Repository/UserBadge.php(121): XF\Mvc\Entity\Entity->__set('featured', true) #2 [internal function]: OzzModz\Badges\Repository\UserBadge->OzzModz\Badges\Repository\{closure}(Object(OzzModz\Badges\Entity\UserBadge)) #3 src/XF/Mvc/Entity/AbstractCollection.php(197): array_filter(Array, Object(Closure)) #4 src/addons/OzzModz/Badges/Repository/UserBadge.php(128): XF\Mvc\Entity\AbstractCollection->filter(Object(Closure)) #5 src/addons/OzzModz/Badges/XF/Entity/User.php(79): OzzModz\Badges\Repository\UserBadge->getFeaturedUserBadges(Object(SV\SearchImprovements\XF\Entity\User)) #6 src/addons/OzzModz/Badges/XF/Entity/User.php(92): OzzModz\Badges\XF\Entity\User->getFeaturedBadges() #7 src/addons/OzzModz/Badges/Entity/UserBadge.php(152): OzzModz\Badges\XF\Entity\User->rebuildBadgeCache(false) #8 src/XF/Mvc/Entity/Entity.php(1277): OzzModz\Badges\Entity\UserBadge->_postSave() #9 src/addons/OzzModz/Badges/Service/Award.php(158): XF\Mvc\Entity\Entity->save(true, false) #10 src/XF/Service/ValidateAndSavableTrait.php(42): OzzModz\Badges\Service\Award->_save() #11 src/addons/OzzModz/Badges/Repository/UserBadge.php(373): OzzModz\Badges\Service\Award->save() #12 src/addons/OzzModz/Badges/Job/UserBadgeUpdate.php(54): OzzModz\Badges\Repository\UserBadge->updateBadgeForUser(Object(SV\SearchImprovements\XF\Entity\User), Object(OzzModz\Badges\Entity\Badge), Object(XF\Mvc\Entity\ArrayCollection)) #13 src/XF/Job/Manager.php(260): OzzModz\Badges\Job\UserBadgeUpdate->run(8) #14 src/XF/Job/Manager.php(202): XF\Job\Manager->runJobInternal(Array, 8) #15 src/XF/Job/Manager.php(86): XF\Job\Manager->runJobEntry(Array, 8) #16 job.php(43): XF\Job\Manager->runQueue(false, 8) #17 {main} Request state array(4) { ["url"] => string(8) "/job.php" ["referrer"] => string(102) "https://www.boardgamedungeon.net/threads/terraforming-mars-1v1-tournament-30-usd-first-prize.87/page-3" ["_GET"] => array(0) { } ["_POST"] => array(0) { } }
2.3.2 Patch Level 7:
- Fix: avoid errors on badge stacking with outdated badge cache
- Fix: "Attempted to set 'featured' while a save was pending without forceSet" error
No, but if you use Dragonbyte Shop an item that rewards a badge can be gifted to users.Can users trade badges or give badges to other users?
We use essential cookies to make this site work, and optional cookies to enhance your experience.