diff options
| author | Christian Weiske <cweiske@cweiske.de> | 2012-04-11 20:22:33 +0200 |
|---|---|---|
| committer | Christian Weiske <cweiske@cweiske.de> | 2012-04-11 20:22:33 +0200 |
| commit | 1c14a6bfb93c914374a6b2f96aec971f8c5b3053 (patch) | |
| tree | fbc8ed02a6ad900b96dfe5259edba0bcdd0a9a66 /src/phorkie/Repositories.php | |
| parent | bf139cf4f0d6fb868d0f998d3213f7e681fbff92 (diff) | |
| download | phorkie-1c14a6bfb93c914374a6b2f96aec971f8c5b3053.tar.gz phorkie-1c14a6bfb93c914374a6b2f96aec971f8c5b3053.zip | |
separate git and work directories - gives nicer public git clone urls
Diffstat (limited to 'src/phorkie/Repositories.php')
| -rw-r--r-- | src/phorkie/Repositories.php | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/src/phorkie/Repositories.php b/src/phorkie/Repositories.php index ef59dd7..dc3387b 100644 --- a/src/phorkie/Repositories.php +++ b/src/phorkie/Repositories.php @@ -5,7 +5,8 @@ class Repositories { public function __construct() { - $this->reposDir = $GLOBALS['phorkie']['cfg']['repos']; + $this->workDir = $GLOBALS['phorkie']['cfg']['workdir']; + $this->gitDir = $GLOBALS['phorkie']['cfg']['gitdir']; } /** @@ -13,17 +14,21 @@ class Repositories */ public function createNew() { - chdir($this->reposDir); - $dirs = glob('*', GLOB_ONLYDIR); + chdir($this->gitDir); + $dirs = glob('*.git', GLOB_ONLYDIR); + array_walk($dirs, function ($dir) { return substr($dir, 0, -4); }); sort($dirs, SORT_NUMERIC); $n = end($dirs) + 1; - unset($dirs); - $dir = $this->reposDir . '/' . $n . '/'; + chdir($this->workDir); + $dir = $this->workDir . '/' . $n . '/'; mkdir($dir, 0777);//FIXME $r = new Repository(); $r->id = $n; - $r->repoDir = $dir; + $r->workDir = $dir; + $r->gitDir = $this->gitDir . '/' . $n . '.git/'; + mkdir($r->gitDir, 0777);//FIXME + return $r; } @@ -37,15 +42,15 @@ class Repositories */ public function getList($page = 0, $perPage = 10) { - chdir($this->reposDir); - $dirs = glob('*', GLOB_ONLYDIR); + chdir($this->gitDir); + $dirs = glob('*.git', GLOB_ONLYDIR); sort($dirs, SORT_NUMERIC); $some = array_slice($dirs, $page * $perPage, $perPage); $repos = array(); foreach ($some as $oneDir) { $r = new Repository(); - $r->loadById($oneDir); + $r->loadById(substr($oneDir, 0, -4)); $repos[] = $r; } return $repos; |
