From f73a74967ec0d68756743cd17fae65a5b2245628 Mon Sep 17 00:00:00 2001 From: Andrew Manning Date: Sat, 7 May 2016 22:12:12 -0400 Subject: Existing addon repos are listed on plugin page with controls for updating, removing, and switching branches. --- Zotlabs/Module/Admin.php | 31 ++++++++++++++++++++++++++++--- view/tpl/admin_plugins.tpl | 34 +++++++++++++++++++++++++++++++++- 2 files changed, 61 insertions(+), 4 deletions(-) diff --git a/Zotlabs/Module/Admin.php b/Zotlabs/Module/Admin.php index 68508fdb0..b4c372f84 100644 --- a/Zotlabs/Module/Admin.php +++ b/Zotlabs/Module/Admin.php @@ -1364,11 +1364,18 @@ class Admin extends \Zotlabs\Web\Controller { get_markup_template('generic_modal.tpl'), array( '$id' => $newRepoModalID, '$title' => t('Install new repo'), - '$ok' => t('OK'), + '$ok' => t('Install'), '$cancel' => t('Cancel') ) ); + $reponames = $this->listAddonRepos(); + $addonrepos = []; + foreach($reponames as $repo) { + $addonrepos[] = array('name' => $repo, 'description' => ''); + // TODO: Parse repo info to provide more information about repos + } + $t = get_markup_template('admin_plugins.tpl'); return replace_macros($t, array( '$title' => t('Administration'), @@ -1383,10 +1390,28 @@ class Admin extends \Zotlabs\Web\Controller { '$expandform' => false, '$form' => $admin_plugins_add_repo_form, '$newRepoModal' => $newRepoModal, - '$newRepoModalID' => $newRepoModalID + '$newRepoModalID' => $newRepoModalID, + '$addonrepos' => $addonrepos, + '$repoUpdateButton' => t('Update'), + '$repoBranchButton' => t('Switch branch'), + '$repoRemoveButton' => t('Remove') )); } - + + function listAddonRepos() { + $addonrepos = []; + $addonDir = __DIR__ . '/../../extend/addon/'; + if ($handle = opendir($addonDir)) { + while (false !== ($entry = readdir($handle))) { + if ($entry != "." && $entry != "..") { + $addonrepos[] = $entry; + } + } + closedir($handle); + } + return $addonrepos; + } + static public function plugin_sort($a,$b) { return(strcmp(strtolower($a[2]['name']),strtolower($b[2]['name']))); } diff --git a/view/tpl/admin_plugins.tpl b/view/tpl/admin_plugins.tpl index 3ba83986f..9e1d05a44 100755 --- a/view/tpl/admin_plugins.tpl +++ b/view/tpl/admin_plugins.tpl @@ -14,7 +14,20 @@
-
+
+

Installed Addon Repositories

+ {{foreach $addonrepos as $repo}} +
+
+

{{$repo.name}}

+
{{$repo.description}}
+ + + +
+
+ {{/foreach}} +
{{foreach $plugins as $p}}
@@ -36,6 +49,9 @@
{{$newRepoModal}} \ No newline at end of file -- cgit v1.2.3