aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Manning <tamanning@zoho.com>2016-05-18 21:32:23 -0400
committerAndrew Manning <tamanning@zoho.com>2016-05-18 21:32:23 -0400
commit77eb9bcfa04faee0fbf20a1d9fae90bdf0dcbcc3 (patch)
tree50e501548895da5e92aaf5e5e28562f7fa39ccc2
parentc17b47518d57de90264378ff082e8a2576bec273 (diff)
downloadvolse-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.php12
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));