You are here

function salesforce_mapping_object_render_property in Salesforce Suite 7.3

Helper method to return human readable versions of mapping properties.

Parameters

SalesforceMappingObject $mapping: Fully loaded mapping object.

string $name: Property name.

string $property: Property value.

Return value

string Property value.

2 calls to salesforce_mapping_object_render_property()
SalesforceMappingObjectController::buildContent in modules/salesforce_mapping/includes/salesforce_mapping_object.controller.inc
Override to include revision history and select properties.
salesforce_mapping_object_overview_table in modules/salesforce_mapping/includes/salesforce_mapping_object.admin.inc
Generate the overview filter form/table for mappings.

File

modules/salesforce_mapping/salesforce_mapping.module, line 891

Code

function salesforce_mapping_object_render_property($mapping, $name, $property) {
  $value = $property
    ->value();
  if ($value == '' or $value == NULL) {
    return '';
  }
  switch ($name) {
    case 'salesforce_id':
      $salesforce_url = $mapping->salesforce_url
        ->value();
      if ($salesforce_url) {
        $content = l($mapping->salesforce_id
          ->value(), $salesforce_url, array(
          'attributes' => array(
            'target' => '_blank',
          ),
        ));
      }
      else {
        $content = $mapping->salesforce_id
          ->value();
      }
      break;
    case 'created':
    case 'last_sync':
    case 'entity_updated':
      $content = format_date($property
        ->value());
      break;
    case 'last_sync_status':
      $statuses = salesforce_mapping_object_sync_status();
      $content = isset($statuses[$property
        ->value()]) ? $statuses[$property
        ->value()] : NULL;
      break;
    case 'last_sync_action':
      $content = drupal_ucfirst($property
        ->value());
      break;
    case 'entity':
      if ($uri = entity_uri($property
        ->type(), $property
        ->value())) {
        $content = l($property
          ->label(), $uri['path'], $uri['options']);
      }
      else {
        $content = check_plain($property
          ->label());
      }
      break;
    case 'entity_type':

      // Get human readable entity label.
      $entity_info = entity_get_info($property
        ->value());
      $content = $entity_info['label'];
      break;
    case 'entity_id':
    case 'last_sync_message':
      $content = check_plain($property
        ->value());
      break;
    default:
      $content = $property
        ->value();
  }
  return $content;
}