PluginProbe ʕ •ᴥ•ʔ
OttoKit: All-in-One Automation Platform / 1.1.36
OttoKit: All-in-One Automation Platform v1.1.36
1.1.37 1.1.36 1.1.35 1.1.34 1.1.33 1.1.32 1.1.31 1.1.30 1.1.29 1.1.28 1.1.27 1.1.9 trunk 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.19 1.0.20 1.0.21 1.0.22 1.0.23 1.0.24 1.0.25 1.0.26 1.0.27 1.0.28 1.0.29 1.0.30 1.0.31 1.0.32 1.0.33 1.0.34 1.0.35 1.0.36 1.0.37 1.0.38 1.0.39 1.0.40 1.0.41 1.0.42 1.0.43 1.0.44 1.0.45 1.0.46 1.0.47 1.0.48 1.0.49 1.0.50 1.0.51 1.0.52 1.0.53 1.0.54 1.0.55 1.0.56 1.0.57 1.0.58 1.0.59 1.0.60 1.0.61 1.0.62 1.0.63 1.0.64 1.0.65 1.0.66 1.0.67 1.0.68 1.0.69 1.0.7 1.0.70 1.0.71 1.0.72 1.0.73 1.0.74 1.0.75 1.0.76 1.0.77 1.0.78 1.0.79 1.0.8 1.0.80 1.0.81 1.0.82 1.0.83 1.0.84 1.0.85 1.0.86 1.0.87 1.0.88 1.0.89 1.0.9 1.0.90 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.20 1.1.21 1.1.22 1.1.23 1.1.24 1.1.25 1.1.26 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8
suretriggers / src / Integrations / fluentsmtp / triggers / error-in-email-delivery.php
suretriggers / src / Integrations / fluentsmtp / triggers Last commit date
error-in-email-delivery.php 1 month ago
error-in-email-delivery.php
121 lines
1 <?php
2 /**
3 * ErrorInEmailDelivery.
4 * php version 5.6
5 *
6 * @category ErrorInEmailDelivery
7 * @package SureTriggers
8 * @author BSF <username@example.com>
9 * @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
10 * @link https://www.brainstormforce.com/
11 * @since 1.0.0
12 */
13
14 namespace SureTriggers\Integrations\FluentSMTP\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Traits\SingletonLoader;
18
19 if ( ! class_exists( 'ErrorInEmailDelivery' ) ) :
20
21 /**
22 * ErrorInEmailDelivery
23 *
24 * @category ErrorInEmailDelivery
25 * @package SureTriggers
26 * @author BSF <username@example.com>
27 * @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
28 * @link https://www.brainstormforce.com/
29 * @since 1.0.0
30 *
31 * @psalm-suppress UndefinedTrait
32 */
33 class ErrorInEmailDelivery {
34
35 /**
36 * Integration type.
37 *
38 * @var string
39 */
40 public $integration = 'FluentSMTP';
41
42 /**
43 * Trigger name.
44 *
45 * @var string
46 */
47 public $trigger = 'fs_email_delivery_error';
48
49 use SingletonLoader;
50
51 /**
52 * Constructor
53 *
54 * @since 1.0.0
55 */
56 public function __construct() {
57 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
58 }
59
60 /**
61 * Register action.
62 *
63 * @param array $triggers trigger data.
64 * @return array
65 */
66 public function register( $triggers ) {
67 $triggers[ $this->integration ][ $this->trigger ] = [
68 'label' => __( 'Error in Email Delivery', 'suretriggers' ),
69 'action' => 'fs_email_delivery_error',
70 'common_action' => 'fluentmail_email_sending_failed_no_fallback',
71 'function' => [ $this, 'trigger_listener' ],
72 'priority' => 10,
73 'accepted_args' => 3,
74 ];
75
76 return $triggers;
77 }
78
79 /**
80 * Trigger listener
81 *
82 * @param int $log_id ID.
83 * @param array $handler ID.
84 * @param array $data Data.
85 * @since 1.0.0
86 *
87 * @return void
88 */
89 public function trigger_listener( $log_id, $handler, $data ) {
90 if ( empty( $data ) ) {
91 return;
92 }
93
94 $context['to'] = st_safe_unserialize( $data['to'] );
95 $context['from'] = $data['from'];
96 $context['subject'] = $data['subject'];
97 $context['body'] = $data['body'];
98 $context['attachments'] = st_safe_unserialize( $data['attachments'] );
99 $context['status'] = $data['status'];
100 $context['response'] = st_safe_unserialize( $data['response'] );
101 $context['headers'] = st_safe_unserialize( $data['headers'] );
102 $context['extra'] = st_safe_unserialize( $data['extra'] );
103
104 AutomationController::sure_trigger_handle_trigger(
105 [
106 'trigger' => $this->trigger,
107 'context' => $context,
108 ]
109 );
110 }
111 }
112
113 /**
114 * Ignore false positive
115 *
116 * @psalm-suppress UndefinedMethod
117 */
118 ErrorInEmailDelivery::get_instance();
119
120 endif;
121