Exemple #1
0
 /**
  * Build the Salesforce.com API client
  *
  * @return  SforcePartnerClient
  */
 private function client()
 {
     // Get the path to the Toolkit, set in the options on install.
     $toolkit_path = JPATH_SITE . '/components/com_fabrik/libs/salesforce';
     // Ok, now use SOAP to send the information to SalesForce
     require_once $toolkit_path . '/soapclient/SforcePartnerClient.php';
     require_once $toolkit_path . '/soapclient/SforceHeaderOptions.php';
     // Salesforce Login information
     $wsdl = $toolkit_path . '/soapclient/partner.wsdl.xml';
     // Process of logging on and getting a salesforce.com session
     $client = new SforcePartnerClient();
     $client->createConnection($wsdl);
     return $client;
 }
 /**
  * connect to salesforce, get sforceClient
  * @return SforcePartnerClient
  */
 public static function getClient()
 {
     if (self::$_sForceClient == NULL) {
         $sforceClient = new SforcePartnerClient();
         // TODO now only partner client supported.
         $soapClient = $sforceClient->createConnection(self::$wsdlPartner);
         if (PHP_SAPI != 'cli') {
             @session_start();
             if (isset($_SESSION[self::SESSION_KEY])) {
                 $conf = $_SESSION[self::SESSION_KEY];
                 $sforceClient->setEndpoint($conf->location);
                 $sforceClient->setSessionHeader($conf->sessionId);
             } else {
                 $sforceLogin = $sforceClient->login(self::$username, self::$password . self::$securityToken);
                 $conf = new stdClass();
                 $conf->location = $sforceClient->getLocation();
                 $conf->sessionId = $sforceClient->getSessionId();
                 $_SESSION[self::SESSION_KEY] = $conf;
             }
         } else {
             $sforceLogin = $sforceClient->login(self::$username, self::$password . self::$securityToken);
         }
         self::$_sForceClient = $sforceClient;
     }
     return self::$_sForceClient;
 }
 public function __construct()
 {
     require_once LIB_DIR . '/config.php';
     $mySforceConnection = new SforcePartnerClient();
     $mySoapClient = $mySforceConnection->createConnection(SOAP_CLIENT_BASEDIR . '/partner.wsdl.xml');
     $mylogin = $mySforceConnection->login($USERNAME, $PASSWORD . $TOKEN);
     $this->sforce = $mySforceConnection;
     // get the program
     $query1 = "Select Id From TC_Program__c Where Name = '{$this->YEAR}'";
     $result = $this->sforce->query($query1);
     $program = unpackSObjects($result);
     //print_r($program);
     $this->progId = $program[0]->Id;
     // get the metrics
     $query2 = "Select a.Id, a.Question_ID__c, a.Question_Text__c, a.Median_Value__c, a.Mean_Value__c, \r\n                       a.Trend__c, a.Software_1__c, a.Software_2__c, Benchmark_High__c, Benchmark_Low__c \r\n        \t           From Annual_Metric__c a\r\n        \t           Where Top_Company__c = '{$this->progId}'";
     $result = $this->sforce->query($query2);
     $this->metrics = unpackSObjects($result);
     //$this->dump($this->metrics);
 }
Exemple #4
0
 private function __construct()
 {
     parent::__construct();
     include LIB_DIR . '/config.php';
     if (is_null($sfuser)) {
         die('No SF user defined');
     }
     try {
         $this->conn = $this->createConnection(SOAP_CLIENT_BASEDIR . '/partner.wsdl.xml');
         // SANDBOX
         //$this->conn = $this->createConnection(SOAP_CLIENT_BASEDIR.'/sandbox.wsdl.xml');
         //$sfuser = $sfuser.'.dev';
         $this->loginResult = $this->login($sfuser, $sfpass . $sftoken);
         writeLog($this->loginResult, 'SF login');
         $this->serverURL = substr($this->loginResult->serverUrl, 0, strpos($this->loginResult->serverUrl, '.com') + 5);
     } catch (Exception $ex) {
         sendError($ex, "SFDC Login Failure");
     }
 }
}
/****** Returns an encrypted & utf8-encoded *******/
define("ENCRYPTION_KEY", "thisisaloudofbull");
function simple_encrypt($text, $salt)
{
    return trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $salt, $text, MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND))));
}
function simple_decrypt($text, $salt)
{
    return trim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $salt, base64_decode($text), MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND)));
}
/*****************salesforce*******************/
require_once PATH . '/includes/salesforce/SforcePartnerClient.php';
$sf_connect = false;
try {
    $mySforceConnection = new SforcePartnerClient();
    $mySoapClient = $mySforceConnection->createConnection(PATH . "/includes/salesforce/partner.wsdl.xml");
    $mylogin = $mySforceConnection->login("*****@*****.**", simple_decrypt('1wDiGNrvb0Wnu4YlKnag4jiY6jNmsSB+CzBdMO7JOVw=', ENCRYPTION_KEY) . 'XLXKi5uo7dyODWL3E70ZoUc7h');
    $sf_connect = true;
} catch (Exception $e) {
    $sf_connect = false;
}
/*****************sendmail*******************/
function sendMail($email, $subject, $msg = NULL)
{
    $message = '';
    if ($msg == NULL) {
        $msg = $this->contents;
    }
    $message .= $msg;
    $message = wordwrap($message, 70);
 function sendSalesforceNotification()
 {
     if ($this->formrow->salesforce_enabled != 1) {
         return;
     }
     define("BF_SOAP_CLIENT_BASEDIR", JPATH_SITE . DS . 'administrator' . DS . 'components' . DS . 'com_breezingforms' . DS . 'libraries' . DS . 'salesforce');
     if (!class_exists('SforcePartnerClient')) {
         require_once BF_SOAP_CLIENT_BASEDIR . '/SforcePartnerClient.php';
     }
     if (!class_exists('SforceHeaderOptions')) {
         require_once BF_SOAP_CLIENT_BASEDIR . '/SforceHeaderOptions.php';
     }
     try {
         $mySforceConnection = new SforcePartnerClient();
         $trunc = new AllowFieldTruncationHeader(true);
         $mySforceConnection->setAllowFieldTruncationHeader($trunc);
         $mySoapClient = $mySforceConnection->createConnection(BF_SOAP_CLIENT_BASEDIR . '/partner.wsdl.xml');
         $mylogin = $mySforceConnection->login($this->formrow->salesforce_username, $this->formrow->salesforce_password . $this->formrow->salesforce_token);
         $sobjects = $mySforceConnection->describeSObject($this->formrow->salesforce_type)->fields;
         $fields = array();
         $this->formrow->salesforce_fields = explode(',', $this->formrow->salesforce_fields);
         foreach ($this->formrow->salesforce_fields as $sfields) {
             foreach ($this->sfdata as $savedata) {
                 $sfield = explode('::', $sfields);
                 if ($sfield[0] == $savedata[1]) {
                     foreach ($sobjects as $sobject) {
                         // forcing some primitives
                         if ($sobject->name == $sfield[1]) {
                             switch ($sobject->type) {
                                 case 'boolean':
                                     $savedata[4] = $savedata[4] ? 1 : 0;
                                     break;
                                 case 'int':
                                     $savedata[4] = intval($savedata[4]);
                                     break;
                                 case 'double':
                                     $savedata[4] = doubleval($savedata[4]);
                                     break;
                             }
                             break;
                         }
                     }
                     $fields[$sfield[1]] = '<![CDATA[' . $savedata[4] . ']]>';
                     // bug in SF Toolkit appeareantly requires CDATA
                     break;
                 }
             }
         }
         $sObject = new SObject();
         $sObject->fields = $fields;
         $sObject->type = $this->formrow->salesforce_type;
         $createResponse = $mySforceConnection->create(array($sObject));
     } catch (Exception $e) {
         echo 'Salesforce Exception: ' . $e->getMessage();
         session_write_close();
         exit;
     }
 }
<pre>
<?php 
// SOAP_CLIENT_BASEDIR - folder that contains the PHP Toolkit and your WSDL
// $USERNAME - variable that contains your Salesforce.com username (must be in the form of an email)
// $PASSWORD - variable that contains your Salesforce.ocm password
define("SOAP_CLIENT_BASEDIR", "../soapclient");
$USERNAME = '******';
$PASSWORD = '******';
require_once SOAP_CLIENT_BASEDIR . '/SforcePartnerClient.php';
require_once SOAP_CLIENT_BASEDIR . '/SforceHeaderOptions.php';
$query = "Select o.OrganizationType, o.Id From Organization o where id = '00D300000007gjdEAA'";
try {
    $mySforceConnection = new SforcePartnerClient();
    $mySoapClient = $mySforceConnection->createConnection(SOAP_CLIENT_BASEDIR . '/partner.wsdl.xml');
    $mylogin = $mySforceConnection->login($USERNAME, $PASSWORD);
    print_r($mySforceConnection->getUserInfo());
    //print_r($mylogin->userInfo);
    echo "***** Get Server Timestamp *****\n";
    //$response = $mySforceConnection->getServerTimestamp();
    //	print_r($response);
    //print_r($mySforceConnection->describeSObject('User'));
    //$result = $mySforceConnection->query($query);
    //print_r($result);
} catch (Exception $e) {
    print_r($e);
}
?>
</pre>
 public static function get_api($settings = array(), $after_refresh = false)
 {
     // If it's already set, use it.
     if (!empty(self::$api)) {
         self::log_debug("get_api(): API connection already set.");
         return self::$api;
     }
     if (!is_array($settings) || empty($settings)) {
         $settings = self::$settings;
         if (!is_array($settings) || empty($settings)) {
             $settings = get_option("gf_salesforce_settings");
         }
     }
     // If the settings aren't set...return false
     if (!is_array($settings) || empty($settings)) {
         self::log_error("get_api(): Settings not set, so we can't get the Salesforce connection.");
         return false;
     }
     $libpath = plugin_dir_path(KWS_GF_Salesforce::$file) . 'lib/Force.com-Toolkit-for-PHP/soapclient/';
     $enterprise = apply_filters('gf_salesforce_enterprise', false, $settings);
     try {
         //This is instantiating the service used for the sfdc api
         if ($enterprise) {
             if (!class_exists("SforceEnterpriseClient")) {
                 require_once $libpath . 'SforceEnterpriseClient.php';
             }
             $mySforceConnection = new SforceEnterpriseClient();
             $_wsdl = 'enterprise.wsdl.xml';
         } else {
             if (!class_exists("SforcePartnerClient")) {
                 require_once $libpath . 'SforcePartnerClient.php';
             }
             $mySforceConnection = new SforcePartnerClient();
             $_wsdl = 'partner.wsdl.xml';
         }
         if (self::GF_SF_SANDBOX && file_exists($libpath . 'sandbox.wsdl.xml')) {
             $_wsdl = 'sandbox.wsdl.xml';
         }
         /**
          * Create a connection using SforceBaseClient::createConnection().
          *
          * @param string $wsdl   Salesforce.com Partner WSDL
          * @param object $proxy  (optional) proxy settings with properties host, port,
          *                       login and password
          * @param array $soap_options (optional) Additional options to send to the
          *                       SoapClient constructor. @see
          *                       http://php.net/manual/en/soapclient.soapclient.php
          */
         $mySforceConnection->createConnection(apply_filters('gf_salesforce_wsdl', $libpath . $_wsdl), apply_filters('gf_salesforce_proxy', NULL), apply_filters('gf_salesforce_soap_options', array()));
         /**
          * Set access using OAuth instead of Basic
          * @link  https://developer.salesforce.com/blogs/developer-relations/2011/03/oauth-and-the-soap-api.html
          */
         $token = self::getAccessToken();
         if (empty($token)) {
             self::log_debug("get_api(): The access token is empty - app is not yet authenticated");
             return false;
         }
         $mySforceConnection->setSessionHeader($token);
         $mySforceConnection->setEndpoint(self::getEndpoint($token));
         $mySforceConnection = apply_filters('gf_salesforce_connection', $mySforceConnection);
         //let's force some action through the connection to make sure is up and running!
         $timestamp = $mySforceConnection->getServerTimestamp();
         self::$api = $mySforceConnection;
         return $mySforceConnection;
     } catch (Exception $e) {
         self::log_error(sprintf("get_api(): There was an error getting the connection to Salesforce. The error message was: %s\nHere's the exception: %s", $e->getMessage(), print_r($e, true)));
         // The token has expired. We need to refresh the token.
         if (isset($e->faultcode) && in_array($e->faultcode, array('sf:INVALID_SESSION_ID', 'UNKNOWN_EXCEPTION')) && !$after_refresh) {
             try {
                 self::log_error("get_api(): The access token has expired; fetching a refresh token.");
                 // Refresh the token
                 $refreshToken = self::refreshToken();
                 // If the token fetch failed, return false.
                 if (empty($refreshToken)) {
                     self::log_error('get_api(): The refreshToken call has failed. This may be due to your Salesforce Instance "Refresh Token Policy". If it is not set to "Refresh token is valid until revoked" (the default), that can cause problems.');
                     self::log_error('See http://www.salesforce.com/us/developer/docs/packagingGuide/Content/connected_app_manage_edit.htm#oauth_policies for more information.');
                     return false;
                 }
             } catch (Exception $e) {
                 self::log_error(sprintf("get_api(): There was an error refreshing the access token to Salesforce. The error message was: %s\nHere's the exception: %s", $e->getMessage(), print_r($e, true)));
                 return false;
             }
             self::log_error("get_api(): The refresh token has been fetched; now trying get_api() again.");
             // And try one more time.
             return self::get_api($settings, true);
         }
         self::log_error(sprintf("get_api(): Token was not refreshed for this error: %s ", $e->getMessage()));
         return isset($e->faultstring) ? $e->faultstring : false;
     }
 }
function getSession($USERNAME, $PASSWORD)
{
    $sessionId = '';
    try {
        $mySforceConnection = new SforcePartnerClient();
        $mySoapClient = $mySforceConnection->createConnection('phpToolkit/partner.wsdl.xml');
        $mylogin = $mySforceConnection->login($USERNAME, $PASSWORD);
        $sessionId = $mylogin->sessionId;
    } catch (Exception $e) {
        print_r($mySforceConnection->getLastRequest());
        echo $e->faultstring;
    }
    return $sessionId;
}
Exemple #10
0
 static function edit($option, $tabpane, $pkg, $ids, $caller)
 {
     global $database;
     JArrayHelper::toInteger($ids);
     $database = JFactory::getDBO();
     $row = new facileFormsForms($database);
     if ($ids[0]) {
         $row->load($ids[0]);
     } else {
         $row->package = $pkg;
         $row->class1 = 'content_outline';
         $row->width = 400;
         $row->widthmode = 0;
         $row->height = 500;
         $row->heightmode = 0;
         $row->pages = 1;
         $row->emailntf = 1;
         $row->mb_emailntf = 1;
         $row->emaillog = 1;
         $row->mb_emaillog = 1;
         $row->emailxml = 0;
         $row->mb_emailxml = 0;
         $row->dblog = 1;
         $row->script1cond = 0;
         $row->script2cond = 0;
         $row->piece1cond = 0;
         $row->piece2cond = 0;
         $row->piece3cond = 0;
         $row->piece4cond = 0;
         $row->published = 1;
         $row->runmode = 0;
         $row->prevmode = 2;
         $row->prevwidth = 400;
         $row->custom_mail_subject = '';
         $row->mb_custom_mail_subject = '';
         $row->alt_mailfrom = '';
         $row->mb_alt_mailfrom = '';
         $row->alt_fromname = '';
         $row->mb_alt_fromname = '';
         $row->email_type = 0;
         $row->mb_email_type = 0;
         $row->email_custom_html = 0;
         $row->mb_email_custom_html = 0;
         $row->email_custom_template = '';
         $row->mb_email_custom_template = '';
         $row->salesforce_token = '';
         $row->salesforce_enabled = 0;
         $row->salesforce_fields = '';
         $row->salesforce_username = '';
         $row->salesforce_password = '';
         $row->dropbox_email = '';
         $row->dropbox_password = '';
         $row->dropbox_folder = '';
         $row->dropbox_submission_enabled = 0;
         $row->dropbox_submission_types = 'pdf';
         $row->tags_form = '';
         $row->tags_content = '';
         $row->tags_content_template = '';
         $row->tags_content_template_default_element = 0;
         $row->tags_content_default_category = 1;
         $row->tags_content_default_state = 1;
         $row->tags_content_default_access = 1;
         $row->tags_content_default_language = '*';
         $row->tags_content_default_featured = 0;
         $row->tags_content_default_publishup = '';
         $row->tags_content_default_publishdown = '';
         $row->autoheight = 0;
         $database->setQuery("select max(ordering)+1 from #__facileforms_forms");
         $row->ordering = $database->loadResult();
     }
     // if
     if ($row->tags_content_default_publishup == '0000-00-00 00:00:00') {
         $row->tags_content_default_publishup = '';
     }
     if ($row->tags_content_default_publishdown == '0000-00-00 00:00:00') {
         $row->tags_content_default_publishdown = '';
     }
     $row->dropbox_submission_types = explode(',', $row->dropbox_submission_types);
     $row->salesforce_types = array();
     $row->salesforce_type_fields = array();
     $row->breezingforms_fields = array();
     $row->salesforce_error = '';
     if ($row->salesforce_enabled && $ids[0]) {
         try {
             define("BF_SOAP_CLIENT_BASEDIR", JPATH_SITE . DS . 'administrator' . DS . 'components' . DS . 'com_breezingforms' . DS . 'libraries' . DS . 'salesforce');
             if (!class_exists('SforcePartnerClient')) {
                 require_once BF_SOAP_CLIENT_BASEDIR . '/SforcePartnerClient.php';
             }
             if (!class_exists('SforceHeaderOptions')) {
                 require_once BF_SOAP_CLIENT_BASEDIR . '/SforceHeaderOptions.php';
             }
             $mySforceConnection = new SforcePartnerClient();
             $mySoapClient = $mySforceConnection->createConnection(BF_SOAP_CLIENT_BASEDIR . '/partner.wsdl.xml');
             $mylogin = $mySforceConnection->login($row->salesforce_username, $row->salesforce_password . $row->salesforce_token);
             $row->salesforce_types = $mySforceConnection->describeGlobal()->sobjects;
             // retrieve fields from Lead by default
             $sobjects = array();
             if ($row->salesforce_type == '') {
                 $row->salesforce_type = 'Lead';
                 $sobjects = $mySforceConnection->describeSObject('Lead')->fields;
             } else {
                 $sobjects = $mySforceConnection->describeSObject($row->salesforce_type)->fields;
             }
             $row->salesforce_type_fields = $sobjects;
             $row->salesforce_fields = explode(',', $row->salesforce_fields);
             $database->setQuery("Select `title`,`name` From #__facileforms_elements Where form = " . $ids[0] . " And `title` Not In ('bfFakeTitle','bfFakeTitle2','bfFakeTitle3','bfFakeTitle4','bfFakeTitle5') Order By ordering");
             $row->breezingforms_fields = $database->loadObjectList();
         } catch (Exception $e) {
             $row->salesforce_error = $e->getMessage();
         }
     }
     $lists = array();
     $database->setQuery("select id, concat(package,'::',name) as text " . "from #__facileforms_scripts " . "where published=1 and type='Form Init' " . "order by text, id desc");
     $lists['init'] = $database->loadObjectList();
     $database->setQuery("select id, concat(package,'::',name) as text " . "from #__facileforms_scripts " . "where published=1 and type='Form Submitted' " . "order by text, id desc");
     $lists['submitted'] = $database->loadObjectList();
     $database->setQuery("select id, concat(package,'::',name) as text " . "from #__facileforms_pieces " . "where published=1 and type='Before Form' " . "order by text, id desc");
     $lists['piece1'] = $database->loadObjectList();
     $database->setQuery("select id, concat(package,'::',name) as text " . "from #__facileforms_pieces " . "where published=1 and type='After Form' " . "order by text, id desc");
     $lists['piece2'] = $database->loadObjectList();
     $database->setQuery("select id, concat(package,'::',name) as text " . "from #__facileforms_pieces " . "where published=1 and type='Begin Submit' " . "order by text, id desc");
     $lists['piece3'] = $database->loadObjectList();
     $database->setQuery("select id, concat(package,'::',name) as text " . "from #__facileforms_pieces " . "where published=1 and type='End Submit' " . "order by text, id desc");
     $lists['piece4'] = $database->loadObjectList();
     $order = JHTML::_('list.genericordering', "select ordering as value, title as text " . "from #__facileforms_forms " . "where package = " . $database->quote($pkg) . " " . "order by ordering");
     $lists['ordering'] = JHTML::_('select.genericlist', $order, 'ordering', 'class="inputbox" size="1"', 'value', 'text', intval($row->ordering));
     HTML_facileFormsForm::edit($option, $tabpane, $pkg, $row, $lists, $caller);
 }
Exemple #11
0
    echo $_POST["tc_Purchase_Order_Number__c"];
    ?>
">
<input type="hidden" name="formstate" value="confirm">
</form>
</body>
</html>

<?php 
} elseif ($_REQUEST['formstate'] == 'confirm') {
    $log = fopen('sforce.log', 'a');
    define("SOAP_CLIENT_BASEDIR", "../../sforce");
    require_once SOAP_CLIENT_BASEDIR . '/config.inc';
    require_once SOAP_CLIENT_BASEDIR . '/SforcePartnerClient.php';
    require_once SOAP_CLIENT_BASEDIR . '/SforceHeaderOptions.php';
    $sforce = new SforcePartnerClient();
    $client = $sforce->createConnection(SOAP_CLIENT_BASEDIR . '/partner.wsdl.xml');
    $mylogin = $sforce->login($USERNAME, $PASSWORD . $TOKEN);
    if ($log) {
        fwrite($log, date('c') . " - Login\n");
        fwrite($log, 'Entry from ' . $_POST['company'] . ' by ' . $_POST['first_name'] . ' ' . $_POST['last_name'] . "\n");
    }
    // retrieve the program
    $query = "Select Id From TC_Program__c Where Name = '2010'";
    try {
        $response = $sforce->query($query);
    } catch (Exception $ex) {
        sendError($ex, $_POST["company"]);
        exit;
    }
    $records = $response->records;
 public static function get_api($settings = array())
 {
     if (!class_exists("SforcePartnerClient")) {
         require_once plugin_dir_path(__FILE__) . 'developerforce/include/SforcePartnerClient.php';
     }
     // If it's already set, use it.
     if (!empty(self::$api)) {
         return self::$api;
     }
     if (!is_array($settings) || empty($settings)) {
         $settings = self::$settings;
         if (!is_array($settings) || empty($settings)) {
             $settings = get_option("gf_salesforce_settings");
         }
     }
     if (!is_array($settings) || empty($settings)) {
         return false;
     }
     extract($settings);
     try {
         //This is instantiating the service used for the sfdc api
         $conn = new SforcePartnerClient();
         $conn->createconnection(plugin_dir_path(__FILE__) . 'developerforce/include/partner.wsdl.xml');
         $mylogin = $conn->login($username, $password . $securitytoken);
         self::$api = $conn;
         return $conn;
     } catch (Exception $e) {
         return isset($e->faultstring) ? $e->faultstring : false;
     }
 }
<?php

// SOAP_CLIENT_BASEDIR - folder that contains the PHP Toolkit and your WSDL
// $USERNAME - variable that contains your Salesforce.com username (must be in the form of an email)
// $PASSWORD - variable that contains your Salesforce.com password
define("SOAP_CLIENT_BASEDIR", "soapclient");
require_once SOAP_CLIENT_BASEDIR . '/SforcePartnerClient.php';
require_once SOAP_CLIENT_BASEDIR . '/SforceHeaderOptions.php';
require_once 'samples/userAuth.php';
try {
    $mySforceConnection = new SforcePartnerClient();
    $mySoapClient = $mySforceConnection->createConnection(SOAP_CLIENT_BASEDIR . '/partner.wsdl.xml');
    $mylogin = $mySforceConnection->login($USERNAME, $PASSWORD);
    $query = 'Select Name, BillingStreet, BillingCity, BillingState From Account limit 20';
    $response = $mySforceConnection->query($query);
    $queryResult = new QueryResult($response);
    for ($queryResult->rewind(); $queryResult->pointer < $queryResult->size; $queryResult->next()) {
        print_r($queryResult->current());
    }
} catch (Exception $e) {
    print_r($mySforceConnection->getLastRequest());
    echo $e->faultstring;
}
Exemple #14
0
function PostSalesforce($awebreg)
{
    // input: array $awebreg contains a range of form field data from some user-registration context
    // output:  whatever you want it to be; this exmaple returns the LeadId of the inserted person, along with the CampaignId the lead was assigned to.
    ini_set("soap.wsdl_cache_enabled", "0");
    // general SOAP wsdl caching - no caching?
    require_once 'salesforce/soapclient/SforcePartnerClient.php';
    // Partner or Enterprise?  Leroy provides this local WSDL
    require_once 'salesforce/soapclient/SforceHeaderOptions.php';
    // Certain headers in a separate
    $wsdl = 'salesforce/soapclient/aigpartner.wsdl.xml';
    // Shissler
    $userName = "******";
    // Shissler
    $password = "******";
    // I think this is built by requesting the key in the SF online wasteland.
    // Process of logging on and getting a salesforce.com session
    // Process of logging on and getting a salesforce.com session
    // Process of logging on and getting a salesforce.com session
    // Process of logging on and getting a salesforce.com session
    $client = new SforcePartnerClient();
    // Partner or Enterprise?
    if ($client) {
        $csfresult .= writelog("+++ Connection Attempt START +++");
        $client->createConnection($wsdl);
        $csfresult .= writelog("+++ Connection Attempt ENDED +++");
        if ($client) {
            $csfresult .= writelog("+++ Login Attempt START, with u/p " . $userName . "/" . $password . " +++");
            $loginResult = $client->login($userName, $password);
            $csfresult .= writelog("+++ Login Attempt ENDED +++");
            if ($loginResult) {
                $areturn['login'] = parseObjectToString($loginResult);
                $csfresult .= writelog("*** login ***\n" . $areturn['login']);
            } else {
                $areturn['login'] = "******";
                $csfresult .= writelog("#### LOGIN FAILED ####");
                return $areturn;
                die;
            }
        } else {
            $areturn['login'] = "******";
            $csfresult .= writelog("#### CREATECONNECTION FAILED ####");
            return $areturn;
            die;
        }
    } else {
        $areturn['login'] = "******";
        $csfresult .= writelog("#### sforcePartnerClient create FAILED ####");
        return $areturn;
        die;
    }
    // Build up the transaction payload based on the incoming array of data fields
    // Build up the transaction payload based on the incoming array of data fields
    // Build up the transaction payload based on the incoming array of data fields
    // Build up the transaction payload based on the incoming array of data fields
    $records = array();
    // Parse out Industry from the 3-level choice sent in from the form
    $aIndustry = explode("|", $awebreg['Industry']);
    // This is specific to old AS site, where a form returned a 3-level SF Industry code, showing the Industry/Sub/SF object id
    $thisIndustry = $aIndustry[0];
    $records[0] = new SObject();
    $records[0]->fields = array('FirstName' => htmlspecialchars($awebreg['FirstName']), 'LastName' => htmlspecialchars($awebreg['LastName']), 'Phone' => htmlspecialchars($awebreg['Phone']), 'Company' => htmlspecialchars($awebreg['Company']), 'Salutation' => htmlspecialchars($awebreg['salutation']), 'Title' => htmlspecialchars($awebreg['JobTitle']), 'Leadsource' => 'Web Direct', 'Email' => htmlspecialchars($awebreg['Useremail']), 'Street' => htmlspecialchars($awebreg['Address1']), 'City' => htmlspecialchars($awebreg['City']), 'State' => htmlspecialchars($awebreg['State']), 'PostalCode' => htmlspecialchars($awebreg['Zip']), 'Country' => htmlspecialchars($awebreg['Country']), 'HasOptedOutofEmail' => '0', 'Product_line__c' => 'Portable Analytical Instruments', 'Industry' => htmlspecialchars($thisIndustry), 'Markets_Application__c' => $awebreg['subIndustry'], 'Description' => htmlspecialchars("WebInquiry=" . $awebreg['HowBetterServed'] . ". Visitor was on webpage: " . $awebreg['WasOnPage']), 'RecordTypeId' => '012600000001BnZ');
    $records[0]->type = 'Lead';
    // Attempt the create
    $response = $client->create($records);
    $leadId = $response->id;
    // an ugly SF ID reference
    // now insert CampaignMember - new on 2014/08/03
    $createFields = array('CampaignId' => $awebreg['CampaignId'], 'LeadId' => $leadId, 'Status' => 'Web To Lead');
    $camprecords[0] = new SObject();
    $camprecords[0]->fields = $createFields;
    $camprecords[0]->type = 'CampaignMember';
    $createResp = $client->create($camprecords, 'CampaignMember');
    $campaignId = $response->id;
    // I'm not sure this actually works, but it makes sense from the response of the Lead creation above.
    return array($leadId, $campaignId);
}
// Salesforceへの登録処理
// 事前に必要な情報を宣言します
require_once dirname(__FILE__) . '/soapclient/SforcePartnerClient.php';
// 今回は特定のセールスフォース組織に依存しないような場合に利用する
// Partner WSDL ファイルを利用します。
define("PARTNER_WSDL_FILE", "./configs/partner.wsdl.xml");
define("WS_TWILIO_WSDL_FILE", "./configs/WS_TwilioDemo.wsdl.xml");
// セールスフォースへAPI接続する場合、接続元のIPアドレス許可が必要となりますが、
// 代替手段として、今回はセキュリティトークンを発行してIPアドレス許可の設定はスキップします。
define("SECURITY_TOKEN", "i695PQ92Vqxj8AWp2fqlBzVX0");
// API でログインするセールスフォースのアカウントです。
define("LOGIN_ID", "*****@*****.**");
// パスワードの後ろにセキュリティトークンを付けます。
define("LOGIN_PASS", "sis-515user" . SECURITY_TOKEN);
// 接続用クラスを生成します。
$sforce_connection = new SforcePartnerClient();
$soap_client = $sforce_connection->createConnection(PARTNER_WSDL_FILE, null);
try {
    // セールスフォースへログインを実行します。
    $login = $sforce_connection->login(LOGIN_ID, LOGIN_PASS);
    //var_dump($login);
} catch (Exception $e) {
    var_dump($e);
}
// SOAPクライアントを作成します
$parsedURL = parse_url($sforce_connection->getLocation());
define("_SFDC_SERVER_", substr($parsedURL['host'], 0, strpos($parsedURL['host'], '.')));
define("_WS_NAME_", "WS_TwilioDemo");
define("_WS_ENDPOINT_", 'https://login.salesforce.com/services/wsdl/class/' . _WS_NAME_);
define("_WS_NAMESPACE_", 'http://soap.sforce.com/schemas/class/' . _WS_NAME_);
$client = new SoapClient(WS_TWILIO_WSDL_FILE);
Exemple #16
0
     echo $result->success == 1 ? $result->id . " updated<br/>\n" : "Error: " . $result->errors->message . "<br/>\n";
 }
 echo "<br/>Retrieve the updated records again to check the update:";
 echo "<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/>Finally, delete the records:<br/><br/>\n";
 $response = $mySforceConnection->delete($ids);
 foreach ($response as $result) {
     echo $result->success == 1 ? $result->id . " deleted<br/>\n" : "Error: " . $result->errors->message . "<br/>\n";
 }
 echo "</td><td>";
 echo "Now let's use the partner client<br/><br/>\n";
 $mySforceConnection = new SforcePartnerClient();
 $mySforceConnection->createConnection("soapclient/partner.wsdl.xml");
 if (isset($_SESSION['partnerSessionId'])) {
     $location = $_SESSION['partnerLocation'];
     $sessionId = $_SESSION['partnerSessionId'];
     $mySforceConnection->setEndpoint($location);
     $mySforceConnection->setSessionHeader($sessionId);
     echo "Used session ID for partner<br/><br/>\n";
 } else {
     $mySforceConnection->login(USERNAME, PASSWORD . SECURITY_TOKEN);
     $_SESSION['partnerLocation'] = $mySforceConnection->getLocation();
     $_SESSION['partnerSessionId'] = $mySforceConnection->getSessionId();
     echo "Logged in with partner<br/><br/>\n";
 }
 $query = "SELECT Id, FirstName, LastName, Phone from Contact";
 $response = $mySforceConnection->query($query);
<?php

// SOAP_CLIENT_BASEDIR - folder that contains the PHP Toolkit and your WSDL
// $USERNAME - variable that contains your Salesforce.com username (must be in the form of an email)
// $PASSWORD - variable that contains your Salesforce.ocm password
define("SOAP_CLIENT_BASEDIR", "../soapclient");
$USERNAME = '******';
$PASSWORD = "******";
require_once SOAP_CLIENT_BASEDIR . '/SforcePartnerClient.php';
require_once SOAP_CLIENT_BASEDIR . '/SforceHeaderOptions.php';
try {
    $mySforceConnection = new SforcePartnerClient();
    $mySoapClient = $mySforceConnection->createConnection(SOAP_CLIENT_BASEDIR . '/enterprise.wsdl.xml');
    $mylogin = $mySforceConnection->login($USERNAME, $PASSWORD);
    echo "***** Get Server Timestamp *****\n";
    $response = $mySforceConnection->getServerTimestamp();
    print_r($response);
} catch (Exception $e) {
    print_r($e);
}
 function establish(ConnectionConfiguration $connConfig)
 {
     $connection = new SforcePartnerClient();
     $connection->createConnection($this->buildWsdlPath($connConfig));
     $connection->setEndpoint($this->buildEndpoint($connConfig));
     $connection->setSessionHeader($connConfig->getSessionId());
     $connection->setCallOptions(new CallOptions($connConfig->getClientId(), WorkbenchConfig::get()->value('callOptions_defaultNamespace')));
     if (WorkbenchContext::get()->isApiVersionAtLeast(27.0)) {
         if (!WorkbenchConfig::get()->value('ownerChangeOptions_transferAttachments') || !WorkbenchConfig::get()->value('ownerChangeOptions_transferOpenActivities')) {
             $connection->setOwnerChangeOptionsHeader(new OwnerChangeOptionsHeader(WorkbenchConfig::get()->value('ownerChangeOptions_transferAttachments'), WorkbenchConfig::get()->value('ownerChangeOptions_transferOpenActivities')));
         }
     }
     if (WorkbenchConfig::get()->value('assignmentRuleHeader_assignmentRuleId') || WorkbenchConfig::get()->value('assignmentRuleHeader_useDefaultRule')) {
         $connection->setAssignmentRuleHeader(new AssignmentRuleHeader(WorkbenchConfig::get()->value('assignmentRuleHeader_assignmentRuleId'), WorkbenchConfig::get()->value('assignmentRuleHeader_useDefaultRule')));
     }
     if (WorkbenchConfig::get()->value('mruHeader_updateMru')) {
         $connection->setMruHeader(new MruHeader(WorkbenchConfig::get()->value('mruHeader_updateMru')));
     }
     if (WorkbenchConfig::get()->value('queryOptions_batchSize')) {
         $connection->setQueryOptions(new QueryOptions(WorkbenchConfig::get()->value('queryOptions_batchSize')));
     }
     if (WorkbenchConfig::get()->value('emailHeader_triggerAutoResponseEmail') || WorkbenchConfig::get()->value('emailHeader_triggerOtherEmail') || WorkbenchConfig::get()->value('emailHeader_triggertriggerUserEmail')) {
         $connection->setEmailHeader(new EmailHeader(WorkbenchConfig::get()->value('emailHeader_triggerAutoResponseEmail'), WorkbenchConfig::get()->value('emailHeader_triggerOtherEmail'), WorkbenchConfig::get()->value('emailHeader_triggertriggerUserEmail')));
     }
     if (WorkbenchConfig::get()->value('UserTerritoryDeleteHeader_transferToUserId')) {
         $connection->setUserTerritoryDeleteHeader(new UserTerritoryDeleteHeader(WorkbenchConfig::get()->value('UserTerritoryDeleteHeader_transferToUserId')));
     }
     if (WorkbenchConfig::get()->value('allowFieldTruncationHeader_allowFieldTruncation')) {
         $connection->setAllowFieldTruncationHeader(new AllowFieldTruncationHeader(WorkbenchConfig::get()->value('allowFieldTruncationHeader_allowFieldTruncation')));
     }
     if (WorkbenchConfig::get()->value('allOrNoneHeader_allOrNone')) {
         $connection->setAllOrNoneHeader(new AllOrNoneHeader(WorkbenchConfig::get()->value('allOrNoneHeader_allOrNone')));
     }
     if (WorkbenchConfig::get()->value('disableFeedTrackingHeader_disableFeedTracking')) {
         $connection->setDisableFeedTrackingHeader(new DisableFeedTrackingHeader(WorkbenchConfig::get()->value('disableFeedTrackingHeader_disableFeedTracking')));
     }
     if (WorkbenchConfig::get()->value('localOptions_language')) {
         $connection->setLocaleOptions(new LocaleOptions(WorkbenchConfig::get()->value('localOptions_language')));
     }
     if (WorkbenchConfig::get()->value('packageVersionHeader_include') && WorkbenchConfig::get()->value('packageVersion_namespace') && WorkbenchConfig::get()->value('packageVersion_majorNumber') && WorkbenchConfig::get()->value('packageVersion_minorNumber')) {
         $connection->setPackageVersionHeader(WorkbenchConfig::get()->value("packageVersion_namespace"), WorkbenchConfig::get()->value("packageVersion_majorNumber"), WorkbenchConfig::get()->value("packageVersion_minorNumber"));
     }
     return $connection;
 }