You are here

function salesforce_api_id_load in Salesforce Suite 7.2

Same name and namespace in other branches
  1. 5.2 salesforce_api/salesforce_api.module \salesforce_api_id_load()
  2. 6.2 salesforce_api/salesforce_api.module \salesforce_api_id_load()
  3. 7 salesforce_api/salesforce_api.module \salesforce_api_id_load()
5 calls to salesforce_api_id_load()
sf_entity_entity_load in sf_entity/sf_entity.module
Implements hook_entity_load().
sf_entity_save in sf_entity/sf_entity.module
_sf_entity_export_nodereference in sf_entity/sf_entity.module
_sf_entity_export_termreference in sf_entity/sf_entity.module
_sf_entity_export_userreference in sf_entity/sf_entity.module

File

salesforce_api/salesforce_api.module, line 1284
Defines an API that enables modules to interact with the Salesforce server.

Code

function salesforce_api_id_load($oid, $entity_name, $bundle_name = NULL) {

  // Query the main ID table for the associated data.
  if (empty($bundle_name)) {
    $result = db_query("SELECT sfid, name FROM {salesforce_object_map} WHERE drupal_entity = :drupal_entity AND oid = :oid", array(
      ':drupal_entity' => $entity_name,
      ':oid' => $oid,
    ));
  }
  else {
    $result = db_query("SELECT sfid, name FROM {salesforce_object_map} WHERE drupal_entity = :drupal_entity AND drupal_bundle = :drupal_bundle AND oid = :oid", array(
      ':drupal_entity' => $entity_name,
      'drupal_bundle' => $bundle_name,
      ':oid' => $oid,
    ));
  }
  $data = $result
    ->fetchObject();

  // Return an empty array if no data was found.
  if (!$data) {
    return (object) array(
      'sfid' => NULL,
      'name' => NULL,
    );
  }
  else {

    // Otherwise return the Salesforce object type and ID.
    return $data;
  }
}