. * */ namespace Friendica\Factory\Api\Friendica; use Friendica\BaseFactory; use Friendica\Database\Database; use Friendica\Network\HTTPException; use Psr\Log\LoggerInterface; use Friendica\Factory\Api\Twitter\User as TwitterUser; class Group extends BaseFactory { /** @var twitterUser entity */ private $twitterUser; /** @var Database */ private $database; public function __construct(LoggerInterface $logger, TwitterUser $twitteruser, Database $dba) { parent::__construct($logger); $this->twitterUser = $twitteruser; $this->dba = $dba; } /** * @param int $id id of the group * @return array * @throws HTTPException\InternalServerErrorException */ public function createFromId(int $id): array { $group = $this->dba->selectFirst('group', [], ['id' => $id, 'deleted' => false]); if (empty($group)) { return []; } $user = $this->twitterUser->createFromUserId($group['uid'])->toArray(); $object = new \Friendica\Object\Api\Friendica\Group($group, $user); return $object->toArray(); } }