LLMS_Engagements::maybe_trigger_engagement()
Handles all actions that could potentially trigger an engagement
Description Description
It will fire or schedule the actions after gathering all necessary data.
Return Return
(void)
Source Source
File: includes/class.llms.engagements.php
468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 | public function maybe_trigger_engagement() { // Parse incoming hook data. $hook = $this ->parse_hook( current_filter(), func_get_args() ); // We need a user and a trigger to proceed, related_post is optional though. if ( ! $hook [ 'user_id' ] || ! $hook [ 'trigger_type' ] ) { return ; } // Gather triggerable engagements matching the supplied criteria. $engagements = $this ->get_engagements( $hook [ 'trigger_type' ], $hook [ 'related_post_id' ] ); // Loop through the retrieved engagements and trigger them. foreach ( $engagements as $engagement ) { $handler = $this ->parse_engagement( $engagement , $hook ); $this ->trigger_engagement( $handler , $engagement ->delay ); } } |
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
Version | Description |
---|---|
6.0.0 | Major refactor to reduce code complexity. |
3.39.0 | Treat also llms_rest_student_registered action. |
3.11.0 | Unknown. |
2.3.0 | Introduced. |