PluginProbe ʕ •ᴥ•ʔ
OttoKit: All-in-One Automation Platform / 1.1.35
OttoKit: All-in-One Automation Platform v1.1.35
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 / suredash / triggers / suredash-post-submitted.php
suretriggers / src / Integrations / suredash / triggers Last commit date
suredash-comment-deleted.php 8 months ago suredash-comment-edited.php 8 months ago suredash-comment-submitted.php 8 months ago suredash-course-completed.php 10 months ago suredash-item-bookmarked.php 8 months ago suredash-post-deleted.php 8 months ago suredash-post-edited.php 8 months ago suredash-post-liked.php 10 months ago suredash-post-submitted.php 8 months ago suredash-space-deleted.php 8 months ago
suredash-post-submitted.php
123 lines
1 <?php
2 /**
3 * SureDashPostSubmit trigger for handling post submission events.
4 * php version 5.6
5 *
6 * @category SureDashPostSubmit
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\SureDash\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Integrations\WordPress\WordPress;
18 use SureTriggers\Traits\SingletonLoader;
19
20 /**
21 * SureDashPostSubmit
22 *
23 * @category SureDashPostSubmit
24 * @package SureTriggers
25 * @author BSF <username@example.com>
26 * @license https://www.gnu.org/licenses/gpl-3.0.html GPLv3
27 * @link https://www.brainstormforce.com/
28 * @since 1.0.0
29 */
30 class SureDashPostSubmit {
31
32 /**
33 * Integration type.
34 *
35 * @var string
36 */
37 public $integration = 'SureDash';
38
39 /**
40 * Trigger name.
41 *
42 * @var string
43 */
44 public $trigger = 'suredash_after_post_submit';
45
46 use SingletonLoader;
47
48 /**
49 * Constructor
50 *
51 * @since 1.0.0
52 */
53 public function __construct() {
54 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
55 }
56
57 /**
58 * Register a trigger.
59 *
60 * @param array $triggers triggers.
61 * @return array
62 */
63 public function register( $triggers ) {
64 $triggers[ $this->integration ][ $this->trigger ] = [
65 'label' => __( 'Post Submitted', 'suretriggers' ),
66 'action' => 'suredash_after_post_submit',
67 'function' => [ $this, 'trigger_listener' ],
68 'priority' => 10,
69 'accepted_args' => 2,
70 ];
71 return $triggers;
72 }
73
74 /**
75 * Trigger listener for post submission events.
76 *
77 * @param int $post_id Post ID.
78 * @param array $filtered_data Filtered form data.
79 * @since 1.0.0
80 *
81 * @return void
82 */
83 public function trigger_listener( $post_id, $filtered_data ) {
84 if ( ! $post_id ) {
85 return;
86 }
87
88 $post = get_post( $post_id );
89 if ( ! $post instanceof \WP_Post ) {
90 return;
91 }
92
93 $user_id = (int) $post->post_author;
94 if ( ! $user_id ) {
95 return;
96 }
97
98 $context = WordPress::get_user_context( $user_id );
99 $context['post_id'] = $post_id;
100 $context['post_title'] = $post->post_title;
101 $context['post_content'] = $post->post_content;
102 $context['post_excerpt'] = $post->post_excerpt;
103 $context['post_status'] = $post->post_status;
104 $context['post_author'] = $post->post_author;
105 $context['post_date'] = $post->post_date;
106 $context['post_modified'] = $post->post_modified;
107 $context['post_type'] = $post->post_type;
108 $context['post_name'] = $post->post_name;
109 $context['post_permalink'] = get_permalink( $post_id );
110 if ( is_array( $filtered_data ) && ! empty( $filtered_data ) ) {
111 $context['form_data'] = $filtered_data;
112 }
113 AutomationController::sure_trigger_handle_trigger(
114 [
115 'trigger' => $this->trigger,
116 'context' => $context,
117 ]
118 );
119 }
120 }
121
122 SureDashPostSubmit::get_instance();
123