diff --git a/index.php b/index.php index 6543e74..a6370a9 100644 --- a/index.php +++ b/index.php @@ -5,6 +5,10 @@ * https://github.com/klaussilveira/gitlist */ +if (!file_exists('config.ini')) { + die("Please, create the config.ini file."); +} + $config = parse_ini_file('config.ini', true); if (empty($config['git']['repositories']) || !is_dir($config['git']['repositories'])) { diff --git a/lib/Git/Client.php b/lib/Git/Client.php index 252e636..b94cc92 100644 --- a/lib/Git/Client.php +++ b/lib/Git/Client.php @@ -85,28 +85,30 @@ class Client continue; } - $isBare = file_exists($file->getPathname() . '/HEAD'); - $isRepository = file_exists($file->getPathname() . '/.git/HEAD'); + if ($file->isDir()) { + $isBare = file_exists($file->getPathname() . '/HEAD'); + $isRepository = file_exists($file->getPathname() . '/.git/HEAD'); - if ($file->isDir() && $isRepository || $isBare) { - if (in_array($file->getPathname(), $this->app['hidden'])) { + if ($isRepository || $isBare) { + if (in_array($file->getPathname(), $this->app['hidden'])) { + continue; + } + + if ($isBare) { + $description = $file->getPathname() . '/description'; + } else { + $description = $file->getPathname() . '/.git/description'; + } + + if (file_exists($description)) { + $description = file_get_contents($description); + } else { + $description = 'There is no repository description file. Please, create one to remove this message.'; + } + + $repositories[] = array('name' => $file->getFilename(), 'path' => $file->getPathname(), 'description' => $description); continue; } - - if ($isBare) { - $description = $file->getPathname() . '/description'; - } else { - $description = $file->getPathname() . '/.git/description'; - } - - if (file_exists($description)) { - $description = file_get_contents($description); - } else { - $description = 'There is no repository description file. Please, create one to remove this message.'; - } - - $repositories[] = array('name' => $file->getFilename(), 'path' => $file->getPathname(), 'description' => $description); - continue; } }