PluginProbe ʕ •ᴥ•ʔ
OttoKit: All-in-One Automation Platform / 1.1.32
OttoKit: All-in-One Automation Platform v1.1.32
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 / mailerpress / triggers / campaign-created.php
suretriggers / src / Integrations / mailerpress / triggers Last commit date
campaign-created.php 7 months ago contact-added-to-list.php 7 months ago contact-removed-from-list.php 7 months ago contact-updated.php 7 months ago list-created.php 7 months ago new-contact-created.php 7 months ago tag-added-to-contact.php 7 months ago tag-created.php 7 months ago tag-removed-from-contact.php 7 months ago
campaign-created.php
132 lines
1 <?php
2 /**
3 * CampaignCreated.
4 * php version 5.6
5 *
6 * @category CampaignCreated
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\MailerPress\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Traits\SingletonLoader;
18 use SureTriggers\Integrations\WordPress\WordPress;
19
20 if ( ! class_exists( 'CampaignCreated' ) ) :
21
22 /**
23 * CampaignCreated
24 *
25 * @category CampaignCreated
26 * @package SureTriggers
27 * @author BSF <username@example.com>
28 * @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
29 * @link https://www.brainstormforce.com/
30 * @since 1.0.0
31 *
32 * @psalm-suppress UndefinedTrait
33 */
34 class CampaignCreated {
35
36 /**
37 * Integration type.
38 *
39 * @var string
40 */
41 public $integration = 'MailerPress';
42
43 /**
44 * Trigger name.
45 *
46 * @var string
47 */
48 public $trigger = 'mailerpress_campaign_created';
49
50 use SingletonLoader;
51
52 /**
53 * Constructor
54 *
55 * @since 1.0.0
56 */
57 public function __construct() {
58 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
59 }
60
61 /**
62 * Register action.
63 *
64 * @param array $triggers trigger data.
65 * @return array
66 */
67 public function register( $triggers ) {
68 $triggers[ $this->integration ][ $this->trigger ] = [
69 'label' => __( 'Campaign Created', 'suretriggers' ),
70 'action' => $this->trigger,
71 'common_action' => 'mailerpress_campaign_created',
72 'function' => [ $this, 'trigger_listener' ],
73 'priority' => 10,
74 'accepted_args' => 1,
75 ];
76
77 return $triggers;
78 }
79
80 /**
81 * Trigger listener
82 *
83 * @param int $campaign_id Campaign ID.
84 * @return void
85 */
86 public function trigger_listener( $campaign_id ) {
87 if ( empty( $campaign_id ) ) {
88 return;
89 }
90
91 global $wpdb;
92
93 // Get campaign details.
94 $campaign = $wpdb->get_row(
95 $wpdb->prepare(
96 'SELECT * FROM `' . esc_sql( $wpdb->prefix . 'mailerpress_campaigns' ) . '` WHERE campaign_id = %d',
97 $campaign_id
98 )
99 );
100
101 if ( ! $campaign ) {
102 return;
103 }
104
105 $context = WordPress::get_user_context( get_current_user_id() );
106 $context['campaign'] = [
107 'campaign_id' => (int) $campaign->campaign_id,
108 'name' => $campaign->name,
109 'subject' => $campaign->subject,
110 'status' => $campaign->status,
111 'type' => $campaign->type,
112 'created_at' => $campaign->created_at,
113 'updated_at' => $campaign->updated_at,
114 ];
115 AutomationController::sure_trigger_handle_trigger(
116 [
117 'trigger' => $this->trigger,
118 'context' => $context,
119 ]
120 );
121 }
122 }
123
124 /**
125 * Ignore false positive
126 *
127 * @psalm-suppress UndefinedMethod
128 */
129 CampaignCreated::get_instance();
130
131 endif;
132