You are here

function media_entity_soundcloud_install in Media entity Soundcloud 8.2

Same name and namespace in other branches
  1. 8 media_entity_soundcloud.install \media_entity_soundcloud_install()
  2. 3.x media_entity_soundcloud.install \media_entity_soundcloud_install()

Implements hook_install().

File

./media_entity_soundcloud.install, line 11
Install, uninstall and update hooks for Media entity Soundcloud module.

Code

function media_entity_soundcloud_install() {
  $source = drupal_get_path('module', 'media_entity_soundcloud') . '/images/icons';
  $destination = \Drupal::config('media.settings')
    ->get('icon_base_uri');
  file_prepare_directory($destination, FILE_CREATE_DIRECTORY | FILE_MODIFY_PERMISSIONS);
  $files = file_scan_directory($source, '/.*\\.(svg|png|jpg|jpeg|gif)$/');
  foreach ($files as $file) {

    // When reinstalling we don't want to copy the icons when
    // they already exist. The icons could be replaced (by a contrib module or
    // manually), so we don't want to replace the existing files. Removing the
    // files when we uninstall could also be a problem if the files are
    // referenced somewhere else. Since showing an error that it was not
    // possible to copy the files is also confusing, we silently do nothing.
    if (!file_exists($destination . DIRECTORY_SEPARATOR . $file->filename)) {
      file_unmanaged_copy($file->uri, $destination, FILE_EXISTS_ERROR);
    }
  }
}