public static function Salesforce::convertId in Salesforce Suite 7.3
Converts a 15-character case-sensitive Salesforce ID to 18-character case-insensitive ID. If input is not 15-characters, return input unaltered.
Parameters
string $sfid15: 15-character case-sensitive Salesforce ID
Return value
string 18-character case-insensitive Salesforce ID
2 calls to Salesforce::convertId()
- salesforce_mapping_object_form_save_mapping_validate in modules/
salesforce_mapping/ includes/ salesforce_mapping_object.admin.inc - salesforce_mapping_object_form_validate in modules/
salesforce_mapping/ includes/ salesforce_mapping_object.admin.inc - Implements hook_form_validate().
File
- includes/
salesforce.inc, line 43 - Objects, properties, and methods to communicate with the Salesforce REST API
Class
- Salesforce
- Ability to authorize and communicate with the Salesforce REST API.
Code
public static function convertId($sfid15) {
if (strlen($sfid15) != 15) {
return $sfid15;
}
$chunks = str_split($sfid15, 5);
$extra = '';
foreach ($chunks as $chunk) {
$chars = str_split($chunk, 1);
$bits = '';
foreach ($chars as $char) {
$bits .= !is_numeric($char) && $char == strtoupper($char) ? '1' : '0';
}
$map = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ012345';
$extra .= substr($map, base_convert(strrev($bits), 2, 10), 1);
}
return $sfid15 . $extra;
}