function salesforce_api_update_6204 in Salesforce Suite 6.2
Same name and namespace in other branches
- 7.2 salesforce_api/salesforce_api.install \salesforce_api_update_6204()
Remove erroneous sf_user_skip_export elements from database.
File
- salesforce_api/
salesforce_api.install, line 327 - Installs any global tables needed for Salesforce integration.
Code
function salesforce_api_update_6204(&$sandbox) {
$ret = array();
if (empty($sandbox['uids'])) {
$where = " data like '%%sf_user_skip_export%%'";
$sandbox['n_users'] = 0;
$sandbox['uids'] = array();
$result = db_query('SELECT uid FROM {users} WHERE ' . $where);
while ($uid = db_result($result)) {
$sandbox['uids'][] = $uid;
$sandbox['n_users']++;
}
if (empty($sandbox['n_users'])) {
return array(
array(
'success' => TRUE,
'query' => t('No updates to process.'),
),
);
}
$sandbox['position'] = 0;
}
$uid = $sandbox['uids'][$sandbox['position']];
$account = user_load($uid);
$account->sf_user_skip_export = TRUE;
user_save($account, array(
'sf_user_skip_export' => NULL,
));
$sandbox['position']++;
$finished = $sandbox['position'] / $sandbox['n_users'];
if ($finished >= 1) {
return array(
array(
'success' => TRUE,
'query' => t('Fixed !n user accounts.', array(
'!n' => $sandbox['n_users'],
)),
),
);
}
else {
return array(
'#finished' => $finished,
);
}
}