Link plugins in the newly installed addon repo to /addon so they are accessible

This commit is contained in:
Andrew Manning 2016-05-10 21:00:10 -04:00
parent 78b40e6363
commit 2882eef42f

View File

@ -1785,6 +1785,25 @@ class Admin extends \Zotlabs\Web\Controller {
$repoDir = $addonDir.'/'.$repoName;
$tempAddonDir = __DIR__ . '/../../store/git/sys/temp/' . $repoName;
rename($tempAddonDir, $repoDir);
$files = array_diff(scandir($repoDir), array('.', '..'));
logger('files: ' . json_encode($files));
foreach ($files as $file)
{
if(is_dir($repoDir.'/'.$file) && $file !== '.git') {
$source = realpath(__DIR__ . '/../../extend/addon/'.$repoName.'/'.$file.'/');
$source = '../extend/addon/'.$repoName.'/'.$file;
$target = realpath(__DIR__ . '/../../addon/').'/'.$file;
logger('file: ' . json_encode($file));
logger('source: ' . $source);
logger('target: ' . $target);
unlink($target);
if(!symlink($source, $target)) {
logger('Error linking addons to /addon');
json_return_and_die(array('message' => 'Error linking addons to /addon', 'success' => false));
}
}
}
$git = new GitRepo('sys', $repoURL, false, $repoName, $repoDir);
$repo = $git->probeRepo();
json_return_and_die(array('repo'=> $repo, 'message' => '', 'success' => true));