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 / formidable-forms / triggers / user-updates-entry-in-form.php
suretriggers / src / Integrations / formidable-forms / triggers Last commit date
formidable-form-submit.php 1 month ago user-updates-entry-in-form.php 1 month ago
user-updates-entry-in-form.php
141 lines
1 <?php
2 /**
3 * UserUpdatesEntryInForm.
4 * php version 5.6
5 *
6 * @category UserUpdatesEntryInForm
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\FormidableForms\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Traits\SingletonLoader;
18 use FrmEntryMeta;
19
20 if ( ! class_exists( 'UserUpdatesEntryInForm' ) ) :
21
22 /**
23 * UserUpdatesEntryInForm
24 *
25 * @category UserUpdatesEntryInForm
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 UserUpdatesEntryInForm {
35
36
37 /**
38 * Integration type.
39 *
40 * @var string
41 */
42 public $integration = 'FormidableForms';
43
44
45 /**
46 * Trigger name.
47 *
48 * @var string
49 */
50 public $trigger = 'ff_user_updates_entry_form';
51
52 use SingletonLoader;
53
54
55 /**
56 * Constructor
57 *
58 * @since 1.0.0
59 */
60 public function __construct() {
61 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
62 }
63
64 /**
65 * Register action.
66 *
67 * @param array $triggers trigger data.
68 * @return array
69 */
70 public function register( $triggers ) {
71
72 $triggers[ $this->integration ][ $this->trigger ] = [
73 'label' => __( 'Form Entry Updated', 'suretriggers' ),
74 'action' => $this->trigger,
75 'common_action' => 'frm_after_update_entry',
76 'function' => [ $this, 'trigger_listener' ],
77 'priority' => 10,
78 'accepted_args' => 2,
79 ];
80 return $triggers;
81
82 }
83
84 /**
85 * Trigger listener
86 *
87 * @param int $entry_id Response Data.
88 * @param int $form_id Post Data.
89 * @since 1.0.0
90 *
91 * @return void
92 */
93 public function trigger_listener( $entry_id, $form_id ) {
94 global $wpdb;
95 if ( empty( $entry_id ) ) {
96 return;
97 }
98
99 if ( class_exists( '\FrmEntryMeta' ) ) {
100 $metas = FrmEntryMeta::get_entry_meta_info( $entry_id );
101
102 $data = [];
103
104 foreach ( $metas as $meta ) {
105 $field_id = $meta->field_id;
106 $field_name = $wpdb->get_var( $wpdb->prepare( 'SELECT name FROM ' . $wpdb->prefix . 'frm_fields WHERE id=%d', $field_id ) );
107 $data_val = st_safe_unserialize( $meta->meta_value );
108 if ( is_array( $data_val ) ) {
109 foreach ( $data_val as $key => $val ) {
110 $data[ $key ] = $val;
111 }
112 } else {
113 $data[ $field_name ] = $data_val;
114 }
115 }
116 } else {
117 $data = [];
118 }
119
120 $context['entry_id'] = $entry_id;
121 $context['entry'] = $data;
122 $context['formidable_form'] = (int) $form_id;
123
124 AutomationController::sure_trigger_handle_trigger(
125 [
126 'trigger' => $this->trigger,
127 'context' => $context,
128 ]
129 );
130 }
131 }
132
133 /**
134 * Ignore false positive
135 *
136 * @psalm-suppress UndefinedMethod
137 */
138 UserUpdatesEntryInForm::get_instance();
139
140 endif;
141