From e38a4df2eea93a9734998df91d29a15c7bf666d8 Mon Sep 17 00:00:00 2001 From: Netkas Date: Wed, 7 Dec 2022 18:08:38 -0500 Subject: [PATCH] Added 'list' command to CredentialMenu.php https://git.n64.cc/nosial/ncc/-/issues/27 --- src/ncc/CLI/CredentialMenu.php | 38 ++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/src/ncc/CLI/CredentialMenu.php b/src/ncc/CLI/CredentialMenu.php index cb3ebc7..faf2fce 100644 --- a/src/ncc/CLI/CredentialMenu.php +++ b/src/ncc/CLI/CredentialMenu.php @@ -50,9 +50,47 @@ return; } + if(isset($args['list'])) + { + try + { + self::listEntries(); + } + catch(Exception $e) + { + Console::outException('Cannot list credentials.', $e, 1); + } + + return; + } + self::displayOptions(); } + /** + * Prints the list of entries in the vault + * + * @return void + */ + public static function listEntries(): void + { + $credential_manager = new CredentialManager(); + $entries = $credential_manager->getVault()->getEntries(); + + if(count($entries) === 0) + { + Console::out('No credentials found.'); + return; + } + + foreach($entries as $entry) + { + Console::out(sprintf('%s%s', $entry->getName(), ($entry->isEncrypted() ? ' (encrypted)' : ''))); + } + + Console::out('Total: ' . count($entries)); + } + /** * @param $args * @return void