diff --git a/lib/Command/CirclesList.php b/lib/Command/CirclesList.php index 6df5cc5d8..5a054cd19 100644 --- a/lib/Command/CirclesList.php +++ b/lib/Command/CirclesList.php @@ -223,25 +223,26 @@ private function displayCircles(array $circles): void { $table->setHeaders( ['Single Id', 'Name', 'Config', 'Source', 'Owner', 'Instance', 'Population'] ); - $table->render(); $displayName = $this->input->getOption('display-name'); $display = ($this->input->getOption('def') ? Circle::FLAGS_LONG : Circle::FLAGS_SHORT); + $rows = []; foreach ($circles as $circle) { $owner = $circle->getOwner(); - $table->appendRow( - [ - $circle->getSingleId(), - $this->cut(($displayName ? $circle->getDisplayName() : $circle->getName()), 40), - json_encode(Circle::getCircleFlags($circle, $display)), - Circle::$DEF_SOURCE[$circle->getSource()], - $this->cut($displayName ? $owner->getDisplayName() : $owner->getUserId(), 40), - $this->configService->displayInstance($owner->getInstance()), - ((string)$circle->getPopulation()) . '/' - . ((string)$this->getInt('members_limit', $circle->getSettings(), -1)) - . ' (' . ((string)$circle->getPopulationInherited()) . ')' - ] - ); + $rows[] = [ + $circle->getSingleId(), + $this->cut(($displayName ? $circle->getDisplayName() : $circle->getName()), 40), + json_encode(Circle::getCircleFlags($circle, $display)), + Circle::$DEF_SOURCE[$circle->getSource()], + $this->cut($displayName ? $owner->getDisplayName() : $owner->getUserId(), 40), + $this->configService->displayInstance($owner->getInstance()), + ((string)$circle->getPopulation()) . '/' + . ((string)$this->getInt('members_limit', $circle->getSettings(), -1)) + . ' (' . ((string)$circle->getPopulationInherited()) . ')' + ]; } + + $table->setRows($rows); + $table->render(); } } diff --git a/lib/Command/CirclesMemberships.php b/lib/Command/CirclesMemberships.php index 924bd12a8..d6ff98824 100644 --- a/lib/Command/CirclesMemberships.php +++ b/lib/Command/CirclesMemberships.php @@ -357,28 +357,29 @@ private function manageAllMemberships() { $output = $output->section(); $table = new Table($output); $table->setHeaders(['Circle Id', 'Name', 'Source', 'Owner', 'Instance', 'Updated', 'Memberships']); - $table->render(); $count = 0; + $rows = []; foreach ($circles as $circle) { $owner = $circle->getOwner(); $updated = $this->membershipService->manageMemberships($circle->getSingleId()); $count += $updated; $federatedUser = $this->circleRequest->getFederatedUserBySingleId($circle->getSingleId()); - $table->appendRow( - [ - $circle->getSingleId(), - $circle->getDisplayName(), - ($circle->getSource() > 0) ? Circle::$DEF_SOURCE[$circle->getSource()] : '', - $owner->getUserId(), - $this->configService->displayInstance($owner->getInstance()), - $updated, - sizeof($federatedUser->getMemberships()) - ] - ); + $rows[] = [ + $circle->getSingleId(), + $circle->getDisplayName(), + ($circle->getSource() > 0) ? Circle::$DEF_SOURCE[$circle->getSource()] : '', + $owner->getUserId(), + $this->configService->displayInstance($owner->getInstance()), + $updated, + sizeof($federatedUser->getMemberships()) + ]; } + $table->setRows($rows); + $table->render(); + $output->writeln(((string)$count) . ' memberships updated'); } } diff --git a/lib/Command/CirclesRemote.php b/lib/Command/CirclesRemote.php index 1c20634fc..38ae88227 100644 --- a/lib/Command/CirclesRemote.php +++ b/lib/Command/CirclesRemote.php @@ -461,8 +461,8 @@ private function checkRemoteInstances(): void { $output = $output->section(); $table = new Table($output); $table->setHeaders(['Instance', 'Type', 'iface', 'UID', 'Authed', 'Aliases']); - $table->render(); + $rows = []; foreach ($instances as $instance) { try { $current = $this->remoteStreamService->retrieveRemoteInstance($instance->getInstance()); @@ -475,17 +475,18 @@ private function checkRemoteInstances(): void { $currentUid = '' . $e->getMessage() . ''; } - $table->appendRow( - [ - $instance->getInstance(), - $instance->getType(), - InterfaceService::$LIST_IFACE[$instance->getInterface()], - $instance->getUid(), - $currentUid, - json_encode($instance->getAliases()) - ] - ); + $rows[] = [ + $instance->getInstance(), + $instance->getType(), + InterfaceService::$LIST_IFACE[$instance->getInterface()], + $instance->getUid(), + $currentUid, + json_encode($instance->getAliases()) + ]; } + + $table->setRows($rows); + $table->render(); } diff --git a/lib/Command/CirclesTest.php b/lib/Command/CirclesTest.php index 039128eeb..627b9aff4 100644 --- a/lib/Command/CirclesTest.php +++ b/lib/Command/CirclesTest.php @@ -162,18 +162,18 @@ protected function execute(InputInterface $input, OutputInterface $output): int $output = new ConsoleOutput(); $table = new Table($output->section()); $table->setHeaders(['SingleId', 'Circle Name', 'Type']); - $table->render(); + $rows = []; foreach ($circles as $entry) { - $table->appendRow( - [ - $entry->getSingleId(), - $entry->getDisplayName(), - Circle::$DEF_SOURCE[$entry->getSource()] - ] - ); + $rows[] = [ + $entry->getSingleId(), + $entry->getDisplayName(), + Circle::$DEF_SOURCE[$entry->getSource()] + ]; } + $table->setRows($rows); + $table->render(); return 0; $federatedUser = $circlesManager->getFederatedUser('test1', Member::TYPE_USER); @@ -204,18 +204,19 @@ protected function execute(InputInterface $input, OutputInterface $output): int $output = new ConsoleOutput(); $table = new Table($output->section()); $table->setHeaders(['SingleId', 'Circle Name', 'Type']); - $table->render(); + $rows = []; foreach ($circles as $entry) { - $table->appendRow( - [ - $entry->getSingleId(), - $entry->getDisplayName(), - Circle::$DEF_SOURCE[$entry->getSource()] - ] - ); + $rows[] = [ + $entry->getSingleId(), + $entry->getDisplayName(), + Circle::$DEF_SOURCE[$entry->getSource()] + ]; } + $table->setRows($rows); + $table->render(); + // exit return 0; diff --git a/lib/Command/MembersList.php b/lib/Command/MembersList.php index 236034736..82f709038 100644 --- a/lib/Command/MembersList.php +++ b/lib/Command/MembersList.php @@ -215,8 +215,8 @@ protected function execute(InputInterface $input, OutputInterface $output): int 'Username', 'Level', 'Invited By' ] ); - $table->render(); + $rows = []; foreach ($members as $member) { if ($member->getCircleId() === $circleId) { $level = $member->getLevel(); @@ -224,28 +224,29 @@ protected function execute(InputInterface $input, OutputInterface $output): int $level = $member->getInheritanceFrom()->getLevel(); } - $table->appendRow( - [ - $member->getCircleId(), - $member->getCircle()->getDisplayName(), - $member->getId(), - $member->getSingleId(), - Member::$TYPE[$member->getUserType()], - $member->hasBasedOn() ? Circle::$DEF_SOURCE[$member->getBasedOn()->getSource()] : '', - $this->configService->displayFederatedUser( - $member, - $this->input->getOption('display-name') - ), - ($level > 0) ? Member::$DEF_LEVEL[$level] : - '(' . strtolower($member->getStatus()) . ')', - ($member->hasInvitedBy()) ? $this->configService->displayFederatedUser( - $member->getInvitedBy(), - $this->input->getOption('display-name') - ) : 'Unknown' - ] - ); + $rows[] = [ + $member->getCircleId(), + $member->getCircle()->getDisplayName(), + $member->getId(), + $member->getSingleId(), + Member::$TYPE[$member->getUserType()], + $member->hasBasedOn() ? Circle::$DEF_SOURCE[$member->getBasedOn()->getSource()] : '', + $this->configService->displayFederatedUser( + $member, + $this->input->getOption('display-name') + ), + ($level > 0) ? Member::$DEF_LEVEL[$level] : + '(' . strtolower($member->getStatus()) . ')', + ($member->hasInvitedBy()) ? $this->configService->displayFederatedUser( + $member->getInvitedBy(), + $this->input->getOption('display-name') + ) : 'Unknown' + ]; } + $table->setRows($rows); + $table->render(); + return 0; } diff --git a/lib/Command/MembersSearch.php b/lib/Command/MembersSearch.php index e54a235c3..2808952b0 100644 --- a/lib/Command/MembersSearch.php +++ b/lib/Command/MembersSearch.php @@ -87,20 +87,21 @@ private function displaySearchResult(array $result) { $output = $output->section(); $table = new Table($output); $table->setHeaders(['SingleId', 'UserId', 'UserType', 'Instance']); - $table->render(); + $rows = []; foreach ($result as $entry) { if (!$result instanceof IFederatedUser) { continue; } - $table->appendRow( - [ - $entry->getSingleId(), - $entry->getUserId(), - Member::$TYPE[$entry->getUserType()], - $this->configService->displayInstance($entry->getInstance()) - ] - ); + $rows[] = [ + $entry->getSingleId(), + $entry->getUserId(), + Member::$TYPE[$entry->getUserType()], + $this->configService->displayInstance($entry->getInstance()) + ]; } + + $table->setRows($rows); + $table->render(); } } diff --git a/lib/Command/SharesFiles.php b/lib/Command/SharesFiles.php index f0d14acc0..0e3018b9a 100644 --- a/lib/Command/SharesFiles.php +++ b/lib/Command/SharesFiles.php @@ -193,8 +193,8 @@ private function displayShares( } $table->setHeaders($headers); - $table->render(); + $rows = []; foreach ($shareWrappers as $share) { if (!$filterRecipient) { $recipient = $share->getInitiator(); @@ -230,8 +230,11 @@ private function displayShares( ); } - $table->appendRow($row); + $rows[] = $row; } + + $table->setRows($rows); + $table->render(); }