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 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) (limited to 'Zotlabs/Module/Admin.php') 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']))); } -- cgit v1.2.3