diff options
author | Andrew Manning <tamanning@zoho.com> | 2016-05-18 21:32:23 -0400 |
---|---|---|
committer | Andrew Manning <tamanning@zoho.com> | 2016-05-18 21:32:23 -0400 |
commit | 77eb9bcfa04faee0fbf20a1d9fae90bdf0dcbcc3 (patch) | |
tree | 50e501548895da5e92aaf5e5e28562f7fa39ccc2 | |
parent | c17b47518d57de90264378ff082e8a2576bec273 (diff) | |
download | volse-hubzilla-77eb9bcfa04faee0fbf20a1d9fae90bdf0dcbcc3.tar.gz volse-hubzilla-77eb9bcfa04faee0fbf20a1d9fae90bdf0dcbcc3.tar.bz2 volse-hubzilla-77eb9bcfa04faee0fbf20a1d9fae90bdf0dcbcc3.zip |
Link new plugins when updating repos via admin/plugins
-rw-r--r-- | Zotlabs/Module/Admin.php | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 9b54a4081..cb843e212 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1758,6 +1758,18 @@ class Admin extends \Zotlabs\Web\Controller { $git = new GitRepo('sys', null, false, $repoName, $repoDir); try { if ($git->pull()) { + $files = array_diff(scandir($repoDir), array('.', '..')); + foreach ($files as $file) { + if (is_dir($repoDir . '/' . $file) && $file !== '.git') { + $source = '../extend/addon/' . $repoName . '/' . $file; + $target = realpath(__DIR__ . '/../../addon/') . '/' . $file; + 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)); + } + } + } json_return_and_die(array('message' => 'Repo updated.', 'success' => true)); } else { json_return_and_die(array('message' => 'Error updating addon repo.', 'success' => false)); |