You are here

function private_files_download_permission_uninstall in Private files download permission 7.2

Same name and namespace in other branches
  1. 7 private_files_download_permission.install \private_files_download_permission_uninstall()

Implements hook_uninstall().

File

./private_files_download_permission.install, line 264
Installs, updates and uninstalls module variables and settings.

Code

function private_files_download_permission_uninstall() {
  $transaction = db_transaction();
  try {
    if (FALSE !== stripos(db_driver(), 'mysql')) {

      // Remove "real" foreign keys (MySQL database).
      db_query('ALTER TABLE {private_files_download_permission_directory_user}
        DROP FOREIGN KEY {private_files_download_permission_directory_2}');
      db_query('ALTER TABLE {private_files_download_permission_directory_user}
        DROP FOREIGN KEY {private_files_download_permission_directory_user}');
      db_query('ALTER TABLE {private_files_download_permission_directory_role}
        DROP FOREIGN KEY {private_files_download_permission_directory}');
      db_query('ALTER TABLE {private_files_download_permission_directory_role}
        DROP FOREIGN KEY {private_files_download_permission_directory_role}');
    }
    else {

      // Remove "real" foreign keys (non-MySQL database).
      db_query('ALTER TABLE {private_files_download_permission_directory_user}
        DROP CONSTRAINT IF EXISTS {private_files_download_permission_directory_2}');
      db_query('ALTER TABLE {private_files_download_permission_directory_user}
        DROP CONSTRAINT IF EXISTS {private_files_download_permission_directory_user}');
      db_query('ALTER TABLE {private_files_download_permission_directory_role}
        DROP CONSTRAINT IF EXISTS {private_files_download_permission_directory}');
      db_query('ALTER TABLE {private_files_download_permission_directory_role}
        DROP CONSTRAINT IF EXISTS {private_files_download_permission_directory_role}');
    }
  } catch (Exception $e) {
    $transaction
      ->rollback();
    $t = get_t();
    drupal_set_message($t('An error occurred while removing the module. Please check the log for details.'), 'error');
  }

  // Remove preferences.
  variable_del('private_files_download_permission_by_user_checks');

  // Purge directory list from cache.
  drupal_static_reset('private_files_download_permission_directory_list');
}