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 / suredash / triggers / suredash-post-edited.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-edited.php
119 lines
1 <?php
2 /**
3 * SureDashPostEdited trigger for handling post edit events.
4 * php version 5.6
5 *
6 * @category SureDashPostEdited
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 * SureDashPostEdited
22 *
23 * @category SureDashPostEdited
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 SureDashPostEdited {
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_post_edited';
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 Edited', 'suretriggers' ),
66 'action' => 'suredash_after_post_edited',
67 'function' => [ $this, 'trigger_listener' ],
68 'priority' => 10,
69 'accepted_args' => 2,
70 ];
71 return $triggers;
72 }
73
74 /**
75 * Trigger listener for post edit events.
76 *
77 * @param int $post_id Post ID.
78 * @param int $current_user_id Current user ID.
79 * @since 1.0.0
80 *
81 * @return void
82 */
83 public function trigger_listener( $post_id, $current_user_id ) {
84 if ( ! $post_id || ! $current_user_id ) {
85 return;
86 }
87
88 $post = get_post( $post_id );
89 if ( ! $post instanceof \WP_Post ) {
90 return;
91 }
92
93 $context = WordPress::get_user_context( $current_user_id );
94 $context['post_id'] = $post_id;
95 $context['post_title'] = $post->post_title;
96 $context['post_content'] = $post->post_content;
97 $context['post_excerpt'] = $post->post_excerpt;
98 $context['post_status'] = $post->post_status;
99 $context['post_author'] = $post->post_author;
100 $context['post_date'] = $post->post_date;
101 $context['post_modified'] = $post->post_modified;
102 $context['post_type'] = $post->post_type;
103 $context['post_name'] = $post->post_name;
104 $context['post_permalink'] = get_permalink( $post_id );
105
106 $context['editor_user_id'] = $current_user_id;
107 $context['is_author_editing'] = ( $post->post_author == $current_user_id );
108
109 AutomationController::sure_trigger_handle_trigger(
110 [
111 'trigger' => $this->trigger,
112 'context' => $context,
113 ]
114 );
115 }
116 }
117
118 SureDashPostEdited::get_instance();
119