Exemple #1
0
 static function createSfdcLead()
 {
     include "./config.php";
     $mySforceConnection = new SforceEnterpriseClient();
     $mySforceConnection->createConnection($SfdcWsdl);
     $mySforceConnection->login($SfdcUsername, $SfdcPassword . $SfdcSecurityToken);
     $records = array();
     $records[0] = new stdclass();
     // $records[0]->Company = $_SESSION['userEmail'];
     $records[0]->Company = $_SESSION['userEmail'];
     $records[0]->Email = $_SESSION['userEmail'];
     $records[0]->FirstName = $_SESSION['userFname'];
     $records[0]->LastName = $_SESSION['userLname'];
     $records[0]->Phone = $_SESSION['userPhone'];
     $records[0]->Street = $_SESSION['userAddress1'];
     $records[0]->City = $_SESSION['userCity'];
     $records[0]->Country = $_SESSION['userCountry'];
     $records[0]->State = $_SESSION['userState'];
     $records[0]->PostalCode = $_SESSION['userPostalCode'];
     $records[0]->Description = 'This lead arrived from the website and abandoned the shopping cart flow prior to completing the transaction';
     $records[0]->Status = 'Open';
     $records[0]->LeadSource = 'Web';
     $response = $mySforceConnection->create($records, 'Lead');
     return $response[0];
 }
$msg = $_POST['msg'];
$WP = $_GET['WP'];
$case_manage_img = "<img class='case-manager-img text-center' src=\"https://res.cloudinary.com/theexpertinstitute-com/image/upload/c_thumb,g_face:center,h_60,w_60/v40/users/{$UID}.jpg\">";
if ($na == 'send') {
    define("SOAP_CLIENT_BASEDIR", "./wp-content/Force.com-Toolkit-for-PHP-master/soapclient");
    require_once SOAP_CLIENT_BASEDIR . '/SforceEnterpriseClient.php';
    require_once './wp-content/Force.com-Toolkit-for-PHP-master/samples/userAuth.php';
    ini_set("soap.wsdl_cache_enabled", "0");
    $mySforceConnection = new SforceEnterpriseClient();
    $mySoapClient = $mySforceConnection->createConnection(SOAP_CLIENT_BASEDIR . '/enterprise.wsdl.xml');
    $mylogin = $mySforceConnection->login($USERNAME, $PASSWORD);
    $sObject = new stdclass();
    $sObject->Contact__c = $IDU;
    $sObject->Message__c = $msg;
    $sObject->Opportunity__c = $IDO;
    $createResponse = $mySforceConnection->create(array($sObject), 'Opportunity_Messages__c');
    $id = $createResponse[0];
    $id_msg = $id->id;
    echo "<META http-equiv=\"refresh\" content=\"0;URL=https://theexpertinstitute.secure.force.com/Client/ClientCaseDetail?IDO={$IDO}&IDU={$IDU}&WP={$WP}#chatter\">";
    ?>
  </head> 
<?php 
} else {
    ?>
  



<div class="container main-container" style="display: none;">

  <div class=" sec-intro mb">
             $response = $mySforceConnection->update($records, $list_id);
             if ($contactform_obj->cfg['debug']) {
                 echo 'UPD CONTACT ' . $sf_contact_res->Id . "\r\n";
             }
         }
     }
     if ($sf_addcontact) {
         // flag is set to false if duplicates are found in exist req
         if ($contactform_obj->cfg['debug']) {
             echo 'ADD CONTACT';
         }
         // The Id must be unset, else the contact will be updated instead of being added, even when using the create() method
         // Would trigger Error code: INVALID_FIELD_FOR_INSERT_UPDATE
         // Cannot specify Id in an insert call
         unset($records[0]->Id);
         $response = $mySforceConnection->create($records, $list_id);
     }
     // REQUIRED_FIELD_MISSING
     if (isset($response[0]->errors[0]->statusCode) && $response[0]->errors[0]->statusCode && isset($response[0]->errors[0]->message) && $response[0]->errors[0]->message) {
         if ($contactform_obj->cfg['debug']) {
             print_r($response);
         }
         $admin_api_error[$service_id]['error_code'] = $response[0]->errors[0]->statusCode;
         $admin_api_error[$service_id]['error_message'] = $response[0]->errors[0]->message;
     }
 } catch (SoapFault $soapFault) {
     // INVALID FIELD NAME, INVALID OBJECT TYPE (Contact, Lead, etc.)
     if ($contactform_obj->cfg['debug']) {
         print_r($soapFault);
         echo "\r\n";
     }
Exemple #4
0
<?php

require './codes.php';
// contains the DB credentials and connection
require_once './Force.com-Toolkit-for-PHP/soapclient/SforceEnterpriseClient.php';
$mySforceConnection = new SforceEnterpriseClient();
$wsdl = './test.enterprise.wsdl.xml';
//$wsdl = './enterprise.wsdl.xml';
$mySforceConnection->createConnection($wsdl);
$mySforceConnection->login(USERNAME, PASSWORD . SECURITY_TOKEN);
$C = new Codes();
$codes = $C->generateMany($number_of_codes);
$prep = $C->prepareCodesForInsert($codes);
//	echo 'Prefix : ' .$C->prefix .'<br />';
//	echo '<pre>';
//	print_r($codes);
//	echo '</pre>';
/************************** INSERT DATA INTO SF **************************/
$records = array();
$i = 0;
foreach ($prep as $code) {
    $records[$i] = new stdclass();
    $records[$i]->Contract_Deal_Attribute__c = $cda;
    $records[$i]->Voucher_Code__c = $code;
    $i++;
}
$response = $mySforceConnection->create($records, 'External_Voucher_Code__c');
print_r(json_encode($response));
function salesforce_save_choice()
{
    global $avail_id;
    $IDU = $_POST['idu'];
    $IDU_Type = $_POST['idu_type'];
    $chosen_start = $_POST['chosen_start'];
    $chosen_end = $_POST['chosen_end'];
    $chosen_offset = $_POST['chosen_offset'];
    $avail_id = $_POST['avail_id'];
    $utc_offset = $_POST['utc_offset'];
    $userPhonenumber = $_POST['userPhonenumber'];
    $userNotes = $_POST['userNotes'];
    $id_opp = $_POST['id_opp'];
    $nonce = $_POST['nonce'];
    if (check_ajax_referer('save-choice', $nonce, false)) {
        echo $nonce;
        die('Security Check:');
    } else {
        //nonce check passed
        if ($avail_id == '') {
            echo 'no id';
            return;
        }
        $server_base = $_SERVER['DOCUMENT_ROOT'];
        define("SOAP_CLIENT_BASEDIR", "{$server_base}/wp-content/Force.com-Toolkit-for-PHP-master/soapclient");
        require_once SOAP_CLIENT_BASEDIR . '/SforceEnterpriseClient.php';
        require_once "{$server_base}/wp-content/Force.com-Toolkit-for-PHP-master/samples/userAuth.php";
        ini_set("soap.wsdl_cache_enabled", "0");
        $mySforceConnection = new SforceEnterpriseClient();
        $mySoapClient = $mySforceConnection->createConnection(SOAP_CLIENT_BASEDIR . '/enterprise.wsdl.xml');
        $mylogin = $mySforceConnection->login($USERNAME, $PASSWORD);
        // $ID=$_GET['ID'];
        $query = "SELECT Id,Json_Times__c From Conference_Call__c  WHERE  Id='{$avail_id}'";
        $response = $mySforceConnection->query($query);
        foreach ($response->records as $record) {
            $json_times = $record->Json_Times__c;
        }
        $date_start = explode('T', $chosen_start);
        $date_start = $date_start[0];
        $date_start = $date_start . "T";
        $temp = explode($date_start, $json_times);
        $temp = $temp[1];
        $offset_hour = intval(substr($temp, 9, 2)) * 60 / -1;
        $sObject1 = new stdClass();
        $sObject1->Time_start__c = $chosen_start;
        $sObject1->Time_end__c = $chosen_end;
        if ($IDU_Type == 'Expert') {
            $sObject1->Timezone_Expert__c = $chosen_offset;
            $sObject1->Expert_Phone_Call__c = $userPhonenumber;
            $sObject1->Expert_Call_Note__c = $userNotes;
            $sObject1->Timezone_Contact__c = $offset_hour;
        }
        if ($IDU_Type == 'Attorney') {
            $sObject1->Timezone_Expert__c = $offset_hour;
            $sObject1->Timezone_Contact__c = $chosen_offset;
            $sObject1->Contact_Phone_Call__c = $userPhonenumber;
            $sObject1->Client_Call_Info__c = $userNotes;
        }
        $sObject1->Status__c = 'Confirmed';
        $sObject1->Id = $avail_id;
        $response = $mySforceConnection->update(array($sObject1), 'Conference_Call__c');
        $sObject11 = new stdClass();
        $sObject11->StageName = 'CC Scheduled';
        $sObject11->Id = $id_opp;
        $response = $mySforceConnection->update(array($sObject11), 'Opportunity');
        if ($IDU_Type == 'Expert') {
            $query = "SELECT Id, Expert__c,E_ID__c, Contact__c,Opportunity__c,Time_start_Contact__c,Start_Contact_Text__c From Conference_Call__c  WHERE   Id='{$avail_id}' ";
            $response = $mySforceConnection->query($query);
            foreach ($response->records as $record) {
                $utc_offset_client = $record->Timezone_Contact__c;
                $Time_client_start = $record->Time_start_Contact__c;
                $eid = $record->E_ID__c;
                $attorneyID = $record->Contact__c;
                $client_start = $record->Start_Contact_Text__c;
                $url = site_url();
                $cc_link = "{$url}/scheduler/?ID={$record->Opportunity__c}&IDCC={$avail_id}&IDU={$attorneyID}";
                $msg = "Conference Call Scheduled w/ Expert {$eid} for {$client_start}";
                $sObject3 = new stdclass();
                $sObject3->Expert__c = $record->Expert__c;
                $sObject3->Message__c = $msg;
                $sObject3->Opportunity__c = $record->Opportunity__c;
                $createResponse = $mySforceConnection->create(array($sObject3), 'Opportunity_Messages__c');
                $id = $createResponse[0];
            }
        }
        die;
    }
}
Exemple #6
0
     if (isset($new_lead[0]->FirstName)) {
         $new_lead[0]->LastName = $new_lead[0]->FirstName;
     } else {
         $new_lead[0]->LastName = 'N/A';
     }
 }
 $new_lead[0]->LastName = 'N/A';
 unset($new_lead[0]->FirstName);
 // TESTING
 //$new_lead[0]->LastName = NULL;
 $gnl_lead = $lead['SNLID__c'];
 $check_lead = new CheckLead($gnl_lead);
 print '<pre>';
 // CREATE/UPDATE LEAD
 if (!isset($check_lead->checklead)) {
     $response = $ENT->create($new_lead, 'lead');
     if (isset($response[0]->errors)) {
         $record = array($gnl_lead, NULL, $response[0]->errors[0]->message . ' ' . $response[0]->errors[0]->statusCode, 'error');
         $dispense = new DispenseRecord($record);
     } else {
         $record = array($gnl_lead, $response[0]->id, 'success', 'new');
         $dispense = new DispenseRecord($record);
     }
 } else {
     // Update Lead
     $gnlObject = new stdClass();
     $gnlObject->ID = $check_lead->checklead;
     $gnlObject->Classification__c = $lead['Classification__c'];
     $gnlObject->Lead_Date__c = $lead['Lead_Date__c'];
     $gnlObject->Phone_Call_Notes__c = $lead['notes'];
     $response = $ENT->update(array($gnlObject), 'Lead');
if ($id == '') {
    $sObject = new stdclass();
    $sObject->Contact__c = $id_contact;
    $sObject->Expert__c = $id_expert;
    $sObject->Json_Times__c = $json_times;
    $sObject->Opportunity__c = $id_opp;
    $sObject->Opportunities_Expert__c = $id_expert_opp;
    $sObject->Status__c = 'New Request';
    $sObject->Leading_Type__c = 'Attorney';
    $sObject->Auto_Mode__c = 0;
    $msg = "Conference Call requested with Expert {$EID}";
    $sObject3 = new stdclass();
    $sObject3->Contact__c = $id_contact;
    $sObject3->Message__c = $msg;
    $sObject3->Opportunity__c = $id_opp;
    $createResponse = $mySforceConnection->create(array($sObject3), 'Opportunity_Messages__c');
    $id = $createResponse[0];
    $createResponse = $mySforceConnection->create(array($sObject), 'Conference_Call__c');
    $response = $createResponse[0];
    $id = $response->id;
    $sObject1 = new stdClass();
    $sObject1->StageName = 'CC Requested';
    $sObject1->Id = $id_opp;
    $response = $mySforceConnection->update(array($sObject1), 'Opportunity');
}
$site = get_site_url();
// https://logintei.staging.wpengine.com/scheduler/?ID=006E0000004dajd&IDCC=a1lE0000000NboUIAS&IDU=003E000000HTeqLIAT
echo "<META http-equiv=\"refresh\" content=\"0;URL={$site}/scheduler/?ID={$id_opp}&IDCC={$id}&IDU={$id_contact}&WP={$WP}\">";
?>

function export_to_saleforce(
  $to_address,
  $account_holder_name = null,
  $account_sort_code = null,
  $account_number = null
) {

  require_once "salesforce-api/soapclient/SforceEnterpriseClient.php";

  try {
    // get a salesforce connection object instance
    $my_sforce_connection = new SforceEnterpriseClient();

    if (SALESFORCE_SANDBOX === true) {
      $from_address = get_custom("worldpay_confirmation_email_from_sandbox");
      $salesforce_password = get_custom("salesforce_password_sandbox");
      $salesforce_security_token = get_custom("salesforce_security_token_sandbox");
      $salesforce_username = get_custom("salesforce_username_sandbox");
      $my_sforce_connection->createConnection(dirname(__FILE__) . "/enterprise_staging.wsdl.xml");
    } else {
      $from_address = get_custom("worldpay_confirmation_email_from");
      $salesforce_password = get_custom("salesforce_password");
      $salesforce_security_token = get_custom("salesforce_security_token");
      $salesforce_username = get_custom("salesforce_username");
      $my_sforce_connection->createConnection(dirname(__FILE__) . "/enterprise_main.wsdl.xml");
    }
    // fill in the definition of the SF system we are connecting
    // Woodenspoon will need to supply an up to date enterprise WSDL
    $ini = ini_set("soap.wsdl_cache_enabled", "0");

    // from userAuth.php or somewhere else
    $my_sforce_connection->login(
      $salesforce_username,
      $salesforce_password . $salesforce_security_token
    );

    $s_contact_obj = new stdclass();
    $s_member_obj = new stdclass();
    $s_direct_deb_obj = new stdclass();

    /*Contact Entry*/
    $s_contact_obj->Email = $_SESSION["email"]; //Monthly
    $s_contact_obj->FirstName = $_SESSION["firstName"];
    $s_contact_obj->LastName = $_SESSION["lastName"];
    $s_contact_obj->MobilePhone = $_SESSION["phone"];
    $s_contact_obj->Salutation = $_SESSION["title"];
    // $s_contact_obj->HomePhone = $_SESSION["home-phone"];

    // if ($_SESSION["date_of_birth"] != "--") { $s_contact_obj->Birthdate = $_SESSION["date_of_birth"]; }
    $s_contact_obj->MailingCity = $_SESSION["town"];
    $s_contact_obj->MailingCountry = $_SESSION["country"];
    $s_contact_obj->MailingPostalCode = $_SESSION["postcode"];
    $s_contact_obj->MailingStreet = $_SESSION["addressLine1"] . " " . $_SESSION["addressLine2"];
    $s_contact_obj->Description = $_SESSION["comments"];
    if ($_SESSION["dataProtection"]) {
      $s_contact_obj->Data_Protection_Received__c = 1;
    }
    $s_contact_obj->Date_Relationship_Begun__c = date("Y-m-d");

    // $s_contact_obj->Primary_Address_Type__c = $_SESSION["address_type"];
    if ($_SESSION["giftAid"] == "true") {
      $s_contact_obj->Said_Yes_to_Gift_Aid__c = 1; //Monthly
    } else {
      $s_contact_obj->Not_eligible_for_Gift_Aid__c = 1; //Monthly
    }
    // create the SF record. This process returns the unique SF id of the record
    // there is NO checking for duplicates here. This is performed in SF.
    $createResponse2 = $my_sforce_connection->create(array($s_contact_obj), "Contact");

    /*Membership Entry*/
    // this field links the just created contact (the id) to the about to be created membership entry
    $s_member_obj->Members_Name__c = $createResponse2[0]->id;

    $s_member_obj->Date_Membership_From__c = date("Y-m-d"); //"2014-08-14";
    // $s_member_obj->Stirred_Into_Action_By__c = $_SESSION["hear_about_us"];

    if ($_SESSION["donationRepetition"] == "oneoff") {
      $s_member_obj->Membership_Status__c = "Non Member";
    } else {
      $s_member_obj->Membership_Status__c = "Member";
    }
    $createResponse1 = $my_sforce_connection->create(array($s_member_obj), "Membership__c");

    /*
    the next two bits of code NEED logic to be placed around them
    I do not know how you are going to decide if this is a direct debit
    or non direct debit money.

    You will need to put an IF ELSE around the next two blocks of code

    Remember these field format values MUST be validated earlier at input
    by the customer

     */
    $s_direct_deb_obj->Payment_Method__c = $_SESSION["paymentMethod"];
    if ($_SESSION["paymentMethod"] == "Direct Debit") {
      /* BLOCK 1 Direct Debit Entry*/
      $s_direct_deb_obj->Bank_Account_Name__c = $account_holder_name;
      $s_direct_deb_obj->Sort_Code__c = $account_sort_code;
      $s_direct_deb_obj->Account_Number__c = $account_number;
      $s_direct_deb_obj->First_Collection_Amount__c = $_SESSION["donationAmountOther"];
      $s_direct_deb_obj->Payment_Type__c = "Membership Payment"; //Monthly
    } else {
      /* BLOCK2 Non-Direct Debit Entry*/
      $s_direct_deb_obj->RecordTypeId = "01240000000DjRYAA0";
      $s_direct_deb_obj->Gift_Amount__c = $_SESSION["donationAmountOther"];
    }

    //Monthly

    if ($_SESSION["donationRepetition"] == "oneoff") {
      $s_direct_deb_obj->Payment_Status__c = "One-off Payment";
      $s_direct_deb_obj->Collection_Frequency__c = "One-off Payment";
      $s_direct_deb_obj->Annual_Reminder__c = date("F");
    } else {
      $s_direct_deb_obj->Payment_Status__c = "Ongoing Collection";
      $s_direct_deb_obj->Payment_Type__c = "Membership Payment";
      if ($_SESSION["donationRepetition"] == "year") {
        $s_direct_deb_obj->Collection_Frequency__c = "Annually";
      }
      if ($_SESSION["donationRepetition"] == "month") {
        $s_direct_deb_obj->Collection_Frequency__c = "Monthly";
      }
    }
    /* end of block 2 */

    /* for both types of collection this bit of code actually creates the record in SF */

    // create the direct debit record in SF - not truely a DD always
    $s_direct_deb_obj->Contact__c = $createResponse2[0]->id;
    $s_direct_deb_obj->Membership__c = $createResponse1[0]->id;
    $createResponse = $my_sforce_connection->create(array($s_direct_deb_obj), "Direct_Debit__c");

    $to = $_SESSION["email"];
    $subject = get_custom("thank_you_email_subject");
    $message = str_replace("%name%", $_SESSION["firstName"], get_custom("thank_you_email_body"));

    $headers[] = "Content-Type: text/plain; charset=UTF-8";
    $headers[] = "From: Woodenspoon <" . $from_address . ">";

    wp_mail($to, $subject, $message, $headers);

    if ($createResponse[0]->success != 1 || $createResponse2[0]->success != 1 || $createResponse1[0]->success != 1) {
      salesforce_error_mail($to_address, $account_holder_name, $account_sort_code, $account_number, $createResponse, $createResponse2, $createResponse1);
    }

  } catch (Exception $e) {
    salesforce_error_mail($to_address, $account_holder_name, $account_sort_code, $account_number, bull, null, null);
  }
  session_destroy();
}
Exemple #9
0
 foreach ($response->records as $record) {
     echo $record->Id . ": " . $record->FirstName . " " . $record->LastName . " " . $record->Phone . "<br/>\n";
 }
 echo "<br/>Now, create some records<br/><br/>\n";
 $records = array();
 $records[0] = new stdclass();
 $records[0]->FirstName = 'John';
 $records[0]->LastName = 'Smith';
 $records[0]->Phone = '(510) 555-5555';
 $records[0]->BirthDate = '1957-01-25';
 $records[1] = new stdclass();
 $records[1]->FirstName = 'Mary';
 $records[1]->LastName = 'Jones';
 $records[1]->Phone = '(510) 486-9969';
 $records[1]->BirthDate = '1977-01-25';
 $response = $mySforceConnection->create($records, 'Contact');
 $ids = array();
 foreach ($response as $i => $result) {
     echo $result->success == 1 ? $records[$i]->FirstName . " " . $records[$i]->LastName . " " . $records[$i]->Phone . " created with id " . $result->id . "<br/>\n" : "Error: " . $result->errors->message . "<br/>\n";
     array_push($ids, $result->id);
 }
 echo "<br/>Retrieve the newly created records:<br/><br/>\n";
 $response = $mySforceConnection->retrieve('Id, FirstName, LastName, Phone', 'Contact', $ids);
 foreach ($response as $record) {
     echo $record->Id . ": " . $record->FirstName . " " . $record->LastName . " " . $record->Phone . "<br/>\n";
 }
 echo "<br/>Next, update the new records<br/><br/>\n";
 $records[0] = new stdclass();
 $records[0]->Id = $ids[0];
 $records[0]->Phone = '(415) 555-5555';
 $records[1] = new stdclass();
if ($na == 'upload') {
    define("SOAP_CLIENT_BASEDIR", "./wp-content/Force.com-Toolkit-for-PHP-master/soapclient");
    require_once SOAP_CLIENT_BASEDIR . '/SforceEnterpriseClient.php';
    require_once './wp-content/Force.com-Toolkit-for-PHP-master/samples/userAuth.php';
    ini_set("soap.wsdl_cache_enabled", "0");
    $mySforceConnection = new SforceEnterpriseClient();
    $mySoapClient = $mySforceConnection->createConnection(SOAP_CLIENT_BASEDIR . '/enterprise.wsdl.xml');
    $mylogin = $mySforceConnection->login($USERNAME, $PASSWORD);
    $file = $_FILES["filebutton"]["tmp_name"];
    $fileName = $_FILES["filebutton"]["name"];
    if ($fileName != "") {
        $sObject = new stdclass();
        $sObject->Name = $fileName;
        $sObject->Opportunity__c = $IDO;
        $sObject->Description__c = $desc;
        $createResponse = $mySforceConnection->create(array($sObject), 'Opportunity_Attachment__c');
        $id = $createResponse[0];
        $id_attach_header = $id->id;
        $handle = fopen($file, 'rb');
        $file_content = fread($handle, filesize($file));
        fclose($handle);
        $encoded = chunk_split(base64_encode($file_content));
        $sObject = new stdclass();
        $sObject->Name = $fileName;
        $sObject->ParentId = $id_attach_header;
        $sObject->body = $encoded;
        $createResponse = $mySforceConnection->create(array($sObject), 'Attachment');
        $id = $createResponse[0];
        $IDattach = $id->id;
        $sObject1 = new stdClass();
        $sObject1->Id = $id_attach_header;