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 / peepso / triggers / user-updates-specific-profile-field-value.php
suretriggers / src / Integrations / peepso / triggers Last commit date
user-follows-member.php 2 years ago user-gains-follower.php 2 years ago user-loses-follower.php 2 years ago user-unfollows-member.php 2 years ago user-updates-avatar.php 2 years ago user-updates-specific-profile-field-value.php 2 years ago user-updates-specific-profile-field.php 2 years ago write-activity-post.php 3 years ago
user-updates-specific-profile-field-value.php
146 lines
1 <?php
2 /**
3 * UserUpdatesSpecificProfileFieldValue.
4 * php version 5.6
5 *
6 * @category UserUpdatesSpecificProfileFieldValue
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\PeepSo\Triggers;
15
16 use SureTriggers\Controllers\AutomationController;
17 use SureTriggers\Integrations\WordPress\WordPress;
18 use SureTriggers\Traits\SingletonLoader;
19 use PeepSoUser;
20
21 /**
22 * UserUpdatesSpecificProfileFieldValue
23 *
24 * @category UserUpdatesSpecificProfileFieldValue
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 class UserUpdatesSpecificProfileFieldValue {
32
33
34 /**
35 * Integration type.
36 *
37 * @var string
38 */
39 public $integration = 'PeepSo';
40
41 /**
42 * Trigger name.
43 *
44 * @var string
45 */
46 public $trigger = 'peepso_user_updates_specific_profile_field_value';
47
48 use SingletonLoader;
49
50 /**
51 * Constructor
52 *
53 * @since 1.0.0
54 */
55 public function __construct() {
56 add_filter( 'sure_trigger_register_trigger', [ $this, 'register' ] );
57 }
58
59 /**
60 * Register action.
61 *
62 * @param array $triggers trigger data.
63 * @return array
64 */
65 public function register( $triggers ) {
66
67 $triggers[ $this->integration ][ $this->trigger ] = [
68 'label' => __( 'User Updates Specific Profile Field Value', 'suretriggers' ),
69 'action' => $this->trigger,
70 'common_action' => 'peepso_ajax_start',
71 'function' => [ $this, 'trigger_listener' ],
72 'priority' => 10,
73 'accepted_args' => 1,
74 ];
75
76 return $triggers;
77 }
78
79 /**
80 * Trigger listener
81 *
82 * @param array $data Data.
83 *
84 * @return void
85 */
86 public function trigger_listener( $data ) {
87
88 $post_data = $_POST; // @codingStandardsIgnoreLine
89
90 if ( ! class_exists( 'PeepSoUser' ) ) {
91 return;
92 }
93
94 $ajax_actions = [
95 'profilefieldsajax.savefield',
96 'profilefieldsajax.save_acc',
97 'profilepreferencesajax.savepreference',
98 ];
99
100 if ( ! in_array( $data, $ajax_actions ) ) {
101 return;
102 }
103
104 if ( ! isset( $post_data['id'] ) || ! isset( $post_data['value'] ) ) {
105 return;
106 }
107
108 if ( 'profilefieldsajax.savefield' === $data ) {
109 $context['user_profile_field_id'] = sanitize_key( $post_data['id'] );
110 $context['user_profile_field_value'] = sanitize_key( $post_data['value'] );
111 }
112
113 $user_id = $post_data['view_user_id'];
114
115 $user = PeepSoUser::get_instance( $user_id );
116 $user->profile_fields->load_fields();
117 $user_fields = $user->profile_fields->get_fields();
118 foreach ( $user_fields as $key => $value ) {
119 $val = get_user_meta( $user_id, $value->key, true );
120 if ( '' != $val ) {
121 $context[ $value->title ] = $val;
122 }
123 }
124 $curruser = get_userdata( $user_id );
125 $context['user_id'] = $user_id;
126 $context['user_email'] = $user->get_email();
127 $context['avatar_url'] = $user->get_avatar();
128 $context['profile_url'] = $user->get_profileurl();
129 $context['about_me'] = get_user_meta( $user_id, 'description', true );
130 if ( $curruser instanceof \WP_User ) {
131 $context['website'] = $curruser->user_url;
132 }
133 $context['role'] = $user->get_user_role();
134
135 AutomationController::sure_trigger_handle_trigger(
136 [
137 'trigger' => $this->trigger,
138 'context' => $context,
139 ]
140 );
141 }
142
143 }
144
145 UserUpdatesSpecificProfileFieldValue::get_instance();
146