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 / contact-form7 / triggers / form-submit.php
suretriggers / src / Integrations / contact-form7 / triggers Last commit date
form-submit.php 2 years ago
form-submit.php
134 lines
1 <?php
2 /**
3 * ContactForm7FormSubmit.
4 * php version 5.6
5 *
6 * @category ContactForm7FormSubmit
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\ContactForm7\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Traits\SingletonLoader;
18
19 if ( ! class_exists( 'ContactForm7FormSubmit' ) ) :
20
21 /**
22 * ContactForm7FormSubmit
23 *
24 * @category ContactForm7FormSubmit
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 ContactForm7FormSubmit {
34
35
36 /**
37 * Integration type.
38 *
39 * @var string
40 */
41 public $integration = 'ContactForm7';
42
43
44 /**
45 * Trigger name.
46 *
47 * @var string
48 */
49 public $trigger = 'contact_form7_form_submit';
50
51 use SingletonLoader;
52
53
54 /**
55 * Constructor
56 *
57 * @since 1.0.0
58 */
59 public function __construct() {
60 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
61 }
62
63 /**
64 * Register action.
65 *
66 * @param array $triggers trigger data.
67 * @return array
68 */
69 public function register( $triggers ) {
70
71 $triggers[ $this->integration ][ $this->trigger ] = [
72 'label' => __( 'Form Submitted', 'suretriggers' ),
73 'action' => $this->trigger,
74 'common_action' => 'wpcf7_before_send_mail',
75 'function' => [ $this, 'trigger_listener' ],
76 'priority' => 99,
77 'accepted_args' => 3,
78 ];
79 return $triggers;
80
81 }
82
83 /**
84 * Trigger listener
85 *
86 * @param object $contact_form Form.
87 * @param array $abort Result.
88 * @param object $submission Submission.
89 * @since 1.0.0
90 *
91 * @return void
92 */
93 public function trigger_listener( $contact_form, $abort, $submission ) {
94
95 if ( is_object( $submission ) ) {
96 if ( method_exists( $submission, 'get_posted_data' ) ) {
97 $submited_data = $submission->get_posted_data();
98 $context['submitted_data'] = $submited_data;
99 if ( method_exists( $submission, 'uploaded_files' ) ) {
100 $files = $submission->uploaded_files();
101 $context['files'] = $files;
102 }
103 }
104
105 if ( is_object( $contact_form ) ) {
106 if ( method_exists( $contact_form, 'id' ) && method_exists( $contact_form, 'name' ) && method_exists( $contact_form, 'title' ) ) {
107 $contact_form_data = [
108 'id' => $contact_form->id(),
109 'name' => $contact_form->name(),
110 'title' => $contact_form->title(),
111 ];
112 $context['contact_form'] = $contact_form->id();
113 $context['form_data'] = $contact_form_data;
114 AutomationController::sure_trigger_handle_trigger(
115 [
116 'trigger' => $this->trigger,
117 'context' => $context,
118 ]
119 );
120 }
121 }
122 }
123 }
124 }
125
126 /**
127 * Ignore false positive
128 *
129 * @psalm-suppress UndefinedMethod
130 */
131 ContactForm7FormSubmit::get_instance();
132
133 endif;
134