function theme_salesforce_api_object_options in Salesforce Suite 7.2
Same name and namespace in other branches
- 6.2 salesforce_api/salesforce_api.admin.inc \theme_salesforce_api_object_options()
- 7 salesforce_api/salesforce_api.admin.inc \theme_salesforce_api_object_options()
Theming function for salesforce_api_admin_object(). For locally-cached Salesforce objects, add a "re-map" link next to the checkbox, if there are errors.
1 theme call to theme_salesforce_api_object_options()
- salesforce_api_admin_object in salesforce_api/
salesforce_api.admin.inc - Ask Salesforce for a list of objects and display a checklist for the user. Based on user selection, set up or tear down cached/synched Salesforce data. @todo make this more user-friendly. At the moment it's possible for an admin user to blow…
File
- salesforce_api/
salesforce_api.admin.inc, line 1318 - Contains the admin page callbacks for the Salesforce module, including forms for general settings and fieldmap administration.
Code
function theme_salesforce_api_object_options($variables) {
$element = $variables['element'];
if (empty($element['objects']['#options'])) {
return drupal_render($element);
}
$objects = $element['objects'];
$options = $objects['#options'];
// Disable checkboxes for Salesforce object types which are currently in use.
foreach ($options as $key => $value) {
if (empty($objects[$key]['#value'])) {
continue;
}
if (!empty($element['disabled_types']['#value'][$key])) {
$element['objects'][$key]['#attributes']['disabled'] = 'disabled';
$element['objects'][$key]['#description'] = t('This object is in use by one or more fieldmaps and cannot be disabled.');
}
// @todo: Add back per-object configuration settings if there are any.
// $link = l(t('configure'), SALESFORCE_PATH_OBJECT . '/' . $key);
if (isset($_SESSION['objects_error']) && $_SESSION['objects_error'][$key]) {
$element['objects'][$key]['#prefix'] = '<div class="error">';
$element['objects'][$key]['#suffix'] = '</div>';
unset($_SESSION['objects_error'][$key]);
$link = l(t('re-map fields'), SALESFORCE_PATH_OBJECT . '/' . $key);
$element['objects'][$key]['#title'] .= ' | ' . $link;
}
}
unset($_SESSION['objects_error']);
return drupal_render_children($element);
}