function salesforce_api_update_6202 in Salesforce Suite 6.2
Same name and namespace in other branches
- 7.2 salesforce_api/salesforce_api.install \salesforce_api_update_6202()
Try to fix existing maps based on the new cck support
File
- salesforce_api/
salesforce_api.install, line 275 - Installs any global tables needed for Salesforce integration.
Code
function salesforce_api_update_6202() {
$fieldmaps = salesforce_api_salesforce_field_map_load_all();
$ret = array();
$changes = array();
module_enable(array(
'sf_contrib',
));
$ret[] = array(
'success' => TRUE,
'query' => t('Enabled SF Contrib module', array(
'@map' => $new_map->name,
)),
);
foreach (content_types() as $type) {
// Add each of the fields to the node object definition.
foreach ((array) $type['fields'] as $field) {
if (empty($field['columns']['value'])) {
$changes[$field['field_name']] = array(
'old' => $field['field_name'],
'new' => $field['field_name'] . ':' . key($field['columns']),
);
}
if ($field['type'] == 'date' && !empty($field['todate'])) {
$changes[$field['field_name'] . '_todate'] = array(
'old' => $field['field_name'] . '_todate',
'new' => $field['field_name'] . ':value2',
);
}
}
}
foreach ($fieldmaps as $map) {
$new_map = $map;
$updates = FALSE;
foreach ($map->fields as $i => $field) {
if (!empty($changes[$field])) {
$new_map->fields[$i] = $changes[$field]['new'];
$updates = TRUE;
}
}
if ($updates) {
salesforce_api_fieldmap_save($new_map);
$ret[] = array(
'success' => TRUE,
'query' => t('Updated fieldmap @map', array(
'@map' => $new_map->name,
)),
);
}
}
return $ret;
}