Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
AC_USER_REMOVE_TAG::process_action( int $user_id, array $action_data, int $recipe_id, array $args, $parsed )
Contents
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Warning: foreach() argument must be of type array|object, string given in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 830
Warning: Array to string conversion in /home/customer/www/docs.automatorplugin.com/public_html/wp-content/themes/wporg-developer/inc/template-tags.php on line 825
Parameters Parameters
- $user_id
(Required)
- $action_data
(Required)
- $recipe_id
(Required)
- $args
(Required)
- $parsed
(Required)
Return Return
(Uncanny_Automatorvoid.)
Source Source
File: src/integrations/active-campaign/actions/ac-user-remove-tag.php
protected function process_action( $user_id, $action_data, $recipe_id, $args, $parsed ) { $ac_helper = Automator()->helpers->recipe->active_campaign->options; $tag_id = isset( $parsed[ $this->get_action_meta() ] ) ? sanitize_text_field( $parsed[ $this->get_action_meta() ] ) : 0; // Get the contact id of the user connected to ActiveCampaign. $user = get_user_by( 'ID', $user_id ); $contact = $ac_helper->get_user_by_email( $user->data->user_email ); if ( true === $contact['error'] ) { $action_data['complete_with_errors'] = true; Automator()->complete->action( $user_id, $action_data, $recipe_id, $contact['message'] ); } $contact_id = isset( $contact['message']->id ) ? $contact['message']->id : 0; // Form data. $form_data = array( 'action' => 'get_contact_tags', 'url' => get_option( 'uap_active_campaign_api_url', '' ), 'token' => get_option( 'uap_active_campaign_api_key', '' ), 'contactId' => $contact_id, ); $response = wp_remote_post( $this->ac_endpoint_uri, array( 'body' => $form_data, ) ); if ( is_wp_error( $response ) ) { $action_data['complete_with_errors'] = true; Automator()->complete->action( $user_id, $action_data, $recipe_id, $response->get_error_message() ); return; } $body = json_decode( wp_remote_retrieve_body( $response ) ); $contact_tags = isset( $body->data->contactTags ) ? $body->data->contactTags : ''; $contact_tag_id = 0; if ( ! empty( $contact_tags ) ) { foreach ( $contact_tags as $contact_tag ) { if ( $tag_id === $contact_tag->tag ) { $contact_tag_id = $contact_tag->id; } } } // Delete the tag. $form_data = array( 'action' => 'delete_contact_tag', 'url' => get_option( 'uap_active_campaign_api_url', '' ), 'token' => get_option( 'uap_active_campaign_api_key', '' ), 'contactTagId' => $contact_tag_id, ); $response = wp_remote_post( $this->ac_endpoint_uri, array( 'body' => $form_data, ) ); if ( is_wp_error( $response ) ) { $action_data['complete_with_errors'] = true; Automator()->complete->action( $user_id, $action_data, $recipe_id, $response->get_error_message() ); return; } $body = json_decode( wp_remote_retrieve_body( $response ) ); $message = isset( $body->data->message ) ? $body->data->message : ''; if ( 0 === $contact_tag_id ) { $action_data['complete_with_errors'] = true; /* translators: The error message */ $message = sprintf( __( 'The contact %s does not contain the specified tag.', 'uncanny-automator' ), $user->data->user_email ); Automator()->complete->action( $user_id, $action_data, $recipe_id, $message ); return; } if ( ! empty( $message ) ) { $action_data['complete_with_errors'] = true; Automator()->complete->action( $user_id, $action_data, $recipe_id, $message ); return; } Automator()->complete->action( $user_id, $action_data, $recipe_id ); }
Expand full source code Collapse full source code View on Github