You are here

function ServiceAuditFilesNotOnServer::_auditfiles_not_on_server_get_file_list in Audit Files 8

Retrieves the file IDs to operate on.

Return value

array The file IDs.

File

src/ServiceAuditFilesNotOnServer.php, line 18
providing the service that used in not in database functionality.

Class

ServiceAuditFilesNotOnServer

Namespace

Drupal\auditfiles

Code

function _auditfiles_not_on_server_get_file_list() {
  $config = \Drupal::config('auditfiles_config.settings');
  $file_ids = [];
  $maximum_records = $config
    ->get('auditfiles_report_options_maximum_records') ? $config
    ->get('auditfiles_report_options_maximum_records') : 250;
  $connection = Database::getConnection();
  $query = $connection
    ->select('file_managed', 'fm');
  $query
    ->range(0, $maximum_records);
  $query
    ->fields('fm', [
    'fid',
    'uri',
  ]);
  $results = $query
    ->execute()
    ->fetchAll();
  foreach ($results as $result) {
    $target = drupal_realpath($result->uri);
    if (!file_exists($target)) {
      $file_ids[] = $result->fid;
    }
  }
  return $file_ids;
}