[OzzModz] User Calendar Rewards

[OzzModz] User Calendar Rewards [Paid] 2.0.1

No permission to buy ($15.00)

Ozzy47

Well-known member
Ozzy47 submitted a new resource:

[OzzModz] User Calendar Rewards - Reward users for attending calendar events

Requirements:
XF 2.2+

Description:
Reward users for attending calendar events

Commissioned by @Forsaken

Adds a calendar with events limited to a range of dates in which users receive rewards (only once) if they meet criteria.

Features:
  • Сustomization of the display of the event in the calendar
  • Event background image upload support
  • Multiple rewards support per event
  • Event/event rewards export/import
  • Rewarded users log
  • Today's...

Read more about this resource...
 
ucr20.webp

ucr21.webp

Clicking the eye will activate the check modal for the event.
ucr22.webp

These are the different reward types currently available (User Title is another add-on I funded recently); rewards can be made invisible, in which case they will not show up in the reward list.
ucr23.webp

Widget after an event has been received.
ucr24.webp

Event list.
ucr25.webp

Event configuration.
ucr26.webp

Activity criteria (also all other criteria).
ucr27.webp

Reward list.
ucr28.webp

Rewarded user list.
ucr29.webp

Reward configuration (not going to go over individual rewards as they're pretty straight forward).

The event list in the screenshot is 31 background events (used for doing a full background for the table cell), 31 daily login events, and 5 streak events (7 day, 14 day, 21 day, 28 day and 31 day).

If you choose list item, the event will show for a single day, if you choose auto or block, it will show for 2 days.
 
Here are the events I had setup if anyone wants them.

Also found two errors:

When deleting events with rewards
Code:
LogicException: Attempted to set 'reward_ids' on a deleted entity src/XF/Mvc/Entity/Entity.php:588

#0 src/XF/Mvc/Entity/Entity.php(570): XF\Mvc\Entity\Entity->set('reward_ids', Array)
#1 src/addons/OzzModz/UserCalendarRewards/Entity/Event.php(293): XF\Mvc\Entity\Entity->__set('reward_ids', Array)
#2 src/addons/OzzModz/UserCalendarRewards/Entity/Reward.php(118): OzzModz\UserCalendarRewards\Entity\Event->rebuildRewardsCache()
#3 src/XF/Mvc/Entity/Entity.php(1652): OzzModz\UserCalendarRewards\Entity\Reward->_postDelete()
#4 src/addons/OzzModz/UserCalendarRewards/Entity/Event.php(343): XF\Mvc\Entity\Entity->delete()
#5 src/XF/Mvc/Entity/Entity.php(1652): OzzModz\UserCalendarRewards\Entity\Event->_postDelete()
#6 src/XF/ControllerPlugin/Delete.php(18): XF\Mvc\Entity\Entity->delete()
#7 src/addons/OzzModz/UserCalendarRewards/Admin/Controller/Event.php(259): XF\ControllerPlugin\Delete->actionDelete(Object(OzzModz\UserCalendarRewards\Entity\Event), '/admin.php?user...', '/admin.php?user...', '/admin.php?user...', Object(XF\Phrase))
#8 src/XF/Mvc/Dispatcher.php(352): OzzModz\UserCalendarRewards\Admin\Controller\Event->actionDelete(Object(XF\Mvc\ParameterBag))
#9 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('OzzModz\\UserCal...', 'Delete', Object(XF\Mvc\RouteMatch), Object(OzzModz\UserCalendarRewards\Admin\Controller\Event), NULL)
#10 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(OzzModz\UserCalendarRewards\Admin\Controller\Event), NULL)
#11 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#12 src/XF/App.php(2352): XF\Mvc\Dispatcher->run()
#13 src/XF.php(524): XF\App->run()
#14 admin.php(13): XF::runApp('XF\\Admin\\App')
#15 {main}
Deleting rewards
Code:
ErrorException: Template error: [E_USER_WARNING] Template admin:eek:zzmodz_ucr_reward_batch_delete_confirm is unknown
src/XF/Template/Templater.php:689

#0 [internal function]: XF\Template\Templater->handleTemplateError(512, '[E_USER_WARNING...', '/var/www/vhosts...', 689, Array)
#1 src/XF/Template/Templater.php(689): trigger_error('Template admin:...', 512)
#2 src/XF/Template/Templater.php(1618): XF\Template\Templater->getTemplateData('admin', 'ozzmodz_ucr_rew...')
#3 src/addons/MaZ/AMP/XF/Template/XF22/Templater.php(52): XF\Template\Templater->renderTemplate('ozzmodz_ucr_rew...', Array, true, NULL)
#4 src/XF/Template/Template.php(24): MaZ\AMP\XF\Template\XF22\Templater->renderTemplate('admin:ozzmodz_u...', Array)
#5 src/XF/Mvc/Renderer/Json.php(86): XF\Template\Template->render()
#6 src/XF/Mvc/Renderer/Json.php(70): XF\Mvc\Renderer\Json->renderHtmlFallback('OzzModz\\UserCal...', 'admin:ozzmodz_u...', Array)
#7 src/XF/Mvc/Dispatcher.php(460): XF\Mvc\Renderer\Json->renderView('OzzModz\\UserCal...', 'admin:ozzmodz_u...', Array)
#8 src/XF/Mvc/Dispatcher.php(442): XF\Mvc\Dispatcher->renderView(Object(TickTackk\DeveloperTools\XF\Mvc\Renderer\Json), Object(XF\Mvc\Reply\View))
#9 src/XF/Mvc/Dispatcher.php(402): XF\Mvc\Dispatcher->renderReply(Object(TickTackk\DeveloperTools\XF\Mvc\Renderer\Json), Object(XF\Mvc\Reply\View))
#10 src/XF/Mvc/Dispatcher.php(60): XF\Mvc\Dispatcher->render(Object(XF\Mvc\Reply\View), 'json')
#11 src/XF/App.php(2352): XF\Mvc\Dispatcher->run()
#12 src/XF.php(524): XF\App->run()
#13 admin.php(13): XF::runApp('XF\\Admin\\App')
#14 {main}
 

Attachments

Im also getting this when trying to claim rewards:
Code:
Oops! We ran into some problems.
Error: Call to undefined method DBTech\Shop\Entity\Item::getFlag() in src/addons/OzzModz/UserCalendarRewards/RewardType/DBTech/Shop/Item.php at line 49
OzzModz\UserCalendarRewards\RewardType\DBTech\Shop\Item->rewardUser() in src/addons/OzzModz/UserCalendarRewards/Service/Reward.php at line 130
OzzModz\UserCalendarRewards\Service\Reward->_save() in src/XF/Service/ValidateAndSavableTrait.php at line 42
OzzModz\UserCalendarRewards\Service\Reward->save() in src/addons/OzzModz/UserCalendarRewards/Pub/Controller/Events.php at line 61
OzzModz\UserCalendarRewards\Pub\Controller\Events->actionGetReward() in src/XF/Mvc/Dispatcher.php at line 352
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 263
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
 
Im also getting this when trying to claim rewards:
Code:
Oops! We ran into some problems.
Error: Call to undefined method DBTech\Shop\Entity\Item::getFlag() in src/addons/OzzModz/UserCalendarRewards/RewardType/DBTech/Shop/Item.php at line 49
OzzModz\UserCalendarRewards\RewardType\DBTech\Shop\Item->rewardUser() in src/addons/OzzModz/UserCalendarRewards/Service/Reward.php at line 130
OzzModz\UserCalendarRewards\Service\Reward->_save() in src/XF/Service/ValidateAndSavableTrait.php at line 42
OzzModz\UserCalendarRewards\Service\Reward->save() in src/addons/OzzModz/UserCalendarRewards/Pub/Controller/Events.php at line 61
OzzModz\UserCalendarRewards\Pub\Controller\Events->actionGetReward() in src/XF/Mvc/Dispatcher.php at line 352
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 263
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

@Painbaker will look into this as soon as he can.
 
DragonByte Shop add-on version?
I tested it with 6.6.0 and everything is ok
6.5 Maybe I'll get it updated soon.

Rand into this as well:

Code:
LogicException: Attempted to set 'reward_ids' on a deleted entity in src/XF/Mvc/Entity/Entity.php at line 590
XF\Mvc\Entity\Entity->set() in src/XF/Mvc/Entity/Entity.php at line 572
XF\Mvc\Entity\Entity->__set() in src/addons/OzzModz/UserCalendarRewards/Entity/Event.php at line 293
OzzModz\UserCalendarRewards\Entity\Event->rebuildRewardsCache() in src/addons/OzzModz/UserCalendarRewards/Entity/Reward.php at line 118
OzzModz\UserCalendarRewards\Entity\Reward->_postDelete() in src/XF/Mvc/Entity/Entity.php at line 1654
XF\Mvc\Entity\Entity->delete() in src/addons/OzzModz/UserCalendarRewards/Entity/Event.php at line 343
OzzModz\UserCalendarRewards\Entity\Event->_postDelete() in src/XF/Mvc/Entity/Entity.php at line 1654
XF\Mvc\Entity\Entity->delete() in src/addons/OzzModz/UserCalendarRewards/Job/EventAction.php at line 74
OzzModz\UserCalendarRewards\Job\EventAction->doAction() in src/addons/OzzModz/UserCalendarRewards/Job/EventAction.php at line 41
OzzModz\UserCalendarRewards\Job\EventAction->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 86
XF\Job\Manager->runQueue() in src/XF/Admin/Controller/Tools.php at line 141
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 263
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 admin.php at line 13

and this

Code:
Error: Call to a member function setupTypeConfigSave() on null in src/addons/OzzModz/UserCalendarRewards/Admin/Controller/Reward.php at line 78
OzzModz\UserCalendarRewards\Admin\Controller\Reward->rewardSaveProcess() in src/addons/OzzModz/UserCalendarRewards/Admin/Controller/Reward.php at line 56
OzzModz\UserCalendarRewards\Admin\Controller\Reward->actionSave() in src/XF/Mvc/Dispatcher.php at line 352
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 263
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 admin.php at line 13
The last one is due to a reward not being set though. So maybe give out an error message instead.
 
Apologies if this has already been asked, but is there a screenshot of the actual event page anywhere?

That's with a custom style so the issues with contrast/color are because of the style, and not the addon specifically. It also did not have backgrounds added for each day.

This just uses FullCalendar as a foundation, and has the options for everything else added on to it.
 
It would be nice if the view could still be changed, for example, this also works for all other things except Christmas.

wnmg.webp

In addition, liking the individual doors as in forums and commenting would be awesome!
 
Is it possible to associate "Threads" to "Events"? So eventually the Calendar shows the link to a Thread where people can discuss the upcoming event?
 
Is it possible to associate "Threads" to "Events"? So eventually the Calendar shows the link to a Thread where people can discuss the upcoming event?

@Ozzy47 @Painbaker eventually id like to sponsor this change because connecting events to Threads or for example "external links" like Discord Events or Twitch Live or YouTube can be interesting if you plan a "live event" + prizes.
 
Top Bottom