function instagram_feeds_uninstall_process in Instagram Feeds 7
Callback function to implement batch process operations.
1 string reference to 'instagram_feeds_uninstall_process'
- _instagram_feeds_uninstall in ./
instagram_feeds.install - Helper function to run batch operations for removing all Instagram content.
File
- ./
instagram_feeds.install, line 181 - Instagram Feeds feature updates. Update hooks - enable modules, etc.
Code
function instagram_feeds_uninstall_process($operation, $data, &$context = array()) {
switch ($operation) {
case 'node_type_delete':
$types = node_type_get_types();
node_type_delete($data);
$context['message'] = t('Removing node type !type', array(
'!type' => $types[$data]->name,
));
break;
case 'fields_delete':
$fields = field_info_instances($data['entity_type'], $data['bundle']);
foreach ($fields as $field) {
$instance = field_info_instance($data['entity_type'], $field['field_name'], $data['bundle']);
field_delete_instance($instance);
}
$context['message'] = t('Removing fields for !entity_type', array(
'!entity_type' => $data['entity_type'],
));
break;
case 'blocks_delete':
$context['message'] = t('Removing blocks...');
db_delete('block')
->condition('module', 'instagram_feeds')
->execute();
db_delete('block_role')
->condition('module', 'instagram_feeds')
->execute();
break;
case 'node_delete':
node_delete_multiple($data);
$context['message'] = t('Removing nodes...');
break;
case 'taxonomy_delete':
$vocabulary = taxonomy_vocabulary_machine_name_load($data);
taxonomy_vocabulary_delete($vocabulary->vid);
$context['message'] = t('Terms and vocabulary !vocabulary were deleted.', array(
'!vocabulary' => $vocabulary->name,
));
break;
case 'variables_delete':
variable_del('instagram_feeds_client_id');
variable_del('instagram_feeds_client_secret');
variable_del('instagram_feeds_access_token');
variable_del('instagram_feeds_items_expiration_time');
variable_del('instagram_feeds_block_ids');
variable_del('instagram_feeds_remove_unused_terms');
variable_del('instagram_feeds_download_attempts');
variable_del('instagram_feeds_limit_imgs_per_feed');
$context['message'] = t('Instagram Feeds settings deleted.');
break;
case 'feeds_importer_delete':
feeds_importer($data)
->delete();
$context['message'] = t('Instagram Feed Importer deleted.');
break;
case 'cache_clear':
cache_clear_all();
$context['message'] = t('All cache was cleared.');
break;
case 'delete_flags':
if (module_exists('flag')) {
$context['message'] = t('Deleting flags.');
foreach ($data as $flag_name) {
$flag = flag_load($flag_name, TRUE);
if ($flag) {
$flag
->delete();
}
}
}
break;
}
if (drupal_is_cli() && isset($context['message']) && !empty($context['message'])) {
echo $context['message'], "\n";
}
}