Advertisement
verygoodplugins

Untitled

Aug 23rd, 2017
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. function healthexcel_wpf_infusionsoft_tag_staff_members() {
  3.  
  4.     if ( empty( $_REQUEST['contactId'] ) ) {
  5.         return false;
  6.         // wp_die( '<h3>Error</h3>Referring Practitioner Contact ID not provided! Aborting.', 'Error', 500 );
  7.     } else if ( empty( $_REQUEST['isTagId'] ) ) {
  8.         return false;
  9.         // wp_die( '<h3>Error</h3>Target Tag ID not provided! Aborting.', 'Error', 500 );
  10.     }
  11.  
  12.     $app = tboc_healthexcel_isdk_api();
  13.     if ( is_wp_error( $app ) ) {
  14.         return;
  15.     }
  16.     $practitioner_contact_id = (int) $_REQUEST['contactId'];
  17.  
  18.     // Search for contacts with Referring Practitioner field value equal to contactId value
  19.     $returnFields = array('Id');
  20.     $staffMembers = $app->dsFind(
  21.         'Contact',                // table
  22.         1,                        // limit
  23.         0,                        // page
  24.         '_ReferringPractitioner', // fieldName
  25.         $practitioner_contact_id, // fieldValue
  26.         $returnFields             // returnFields
  27.     );
  28.  
  29.     // Check do we have success array with contacts from IS?
  30.     if ( empty( $staffMembers ) ) {
  31.         return true;
  32.         // wp_die( '<h3>Nothing to do!</h3>No staff members registered by this practitioner. Aborting.', 'OK', 200 );
  33.     }
  34.  
  35.     // Extract staff member contactId
  36.     $contact_id = (int) $staffMembers[0]['Id'];
  37.  
  38.     // Extract IS Tag ID's
  39.     $is_tag_id = $_REQUEST['isTagId'];
  40.     $tag_ids = explode(',', $is_tag_id);
  41.  
  42.     // Get WordPress user ID
  43.     $user_id = wp_fusion()->user->get_user_id( $contact_id );
  44.  
  45.     // If no matching user found apply tags directly in Infusionsoft
  46.     if( $user_id == false ) {
  47.  
  48.         $ret = wp_fusion()->crm->apply_tags( $tag_ids, $contact_id );
  49.  
  50.     } else {
  51.  
  52.         $ret = wp_fusion()->user->apply_tags( $tag_ids, $user_id );
  53.  
  54.     }
  55.  
  56.     if ( is_wp_error( $ret ) || $ret == false ) {
  57.         error_log('Error performing request');
  58.         error_log(print_r($ret, true));
  59.     }
  60.  
  61.     wp_die();
  62.  
  63. } // END function healthexcel_wpf_infusionsoft_tag_staff_members() {
  64. add_action( 'wp_ajax_nopriv_wpf_tag_staff_members', 'healthexcel_wpf_infusionsoft_tag_staff_members' );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement