Automator_Recipe_Process_Complete::maybe_get_triggers_of_a_recipe( $args = array() )
When there are multiple triggers in a recipe, $args only contains the last run trigger info.
Contents
Description Description
It creates issues in the parsing of the tokens. This is an attempt to fix the issue by returning all triggers of a recipe in an already passing $args.
Parameters Parameters
- $args
-
(Optional)
Default value: array()
Return Return
(array|mixed|void)
Source Source
File: src/core/lib/process/class-automator-recipe-process-complete.php
public function maybe_get_triggers_of_a_recipe( $args = array() ) { if ( empty( $args ) ) { // Something is wrong here! return $args; } $user_id = isset( $args['user_id'] ) ? $args['user_id'] : null; $recipe_id = isset( $args['recipe_id'] ) ? $args['recipe_id'] : null; $recipe_log_id = isset( $args['recipe_log_id'] ) ? $args['recipe_log_id'] : null; $run_number = isset( $args['run_number'] ) ? $args['run_number'] : null; if ( null === $user_id || null === $recipe_id || null === $recipe_log_id ) { return $args; } $recipe_triggers = Automator()->db->trigger->get_triggers_by_recipe_log_id( $user_id, $recipe_id, $recipe_log_id, $run_number ); if ( empty( $recipe_triggers ) ) { return $args; } foreach ( $recipe_triggers as $recipe_trigger ) { $trigger_id = $recipe_trigger->automator_trigger_id; $trigger_log_id = $recipe_trigger->trigger_log_id; $args['recipe_triggers'][ $trigger_id ] = array( 'recipe_id' => $recipe_id, 'recipe_log_id' => $recipe_log_id, 'trigger_id' => $trigger_id, 'trigger_log_id' => $trigger_log_id, 'user_id' => $user_id, 'run_number' => $args['run_number'], 'meta' => $args['meta'], 'code' => $args['code'], ); } return $args; }
Expand full source code Collapse full source code View on Github
Changelog Changelog
Version | Description |
---|---|
4.3 | Introduced. |