You are here

public static function Updater::findInfoFile in Drupal 7

Figure out what the most important (or only) info file is in a directory.

Since there is no enforcement of which info file is the project's "main" info file, this will get one with the same name as the directory, or the first one it finds. Not ideal, but needs a larger solution.

Parameters

string $directory: Directory to search in.

Return value

string Path to the info file.

1 call to Updater::findInfoFile()
Updater::getProjectTitle in includes/updater.inc
Return the project name from a Drupal info file.

File

includes/updater.inc, line 138
Classes used for updating various files in the Drupal webroot. These classes use a FileTransfer object to actually perform the operations. Normally, the FileTransfer is provided when the site owner is redirected to authorize.php as part of a multistep…

Class

Updater
Base class for Updaters used in Drupal.

Code

public static function findInfoFile($directory) {
  $info_files = file_scan_directory($directory, '/.*\\.info$/');
  if (!$info_files) {
    return FALSE;
  }
  foreach ($info_files as $info_file) {
    if (drupal_substr($info_file->filename, 0, -5) == drupal_basename($directory)) {

      // Info file Has the same name as the directory, return it.
      return $info_file->uri;
    }
  }

  // Otherwise, return the first one.
  $info_file = array_shift($info_files);
  return $info_file->uri;
}