Rev 1 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
<?phpdeclare(strict_types=1);namespace LeadersLinked\Helper;use Laminas\View\Helper\AbstractHelper;use Laminas\Db\Adapter\AdapterInterface;use LeadersLinked\Cache\CacheInterface;use Laminas\Log\LoggerInterface;use Laminas\Authentication\AuthenticationService;use LeadersLinked\Mapper\UserMapper;use LeadersLinked\Library\Functions;use LeadersLinked\Plugin\CurrentUserPlugin;use Laminas\Paginator\Adapter\DbSelect;use LeadersLinked\Mapper\QueryMapper;use LeadersLinked\Mapper\ProfileVisitMapper;use LeadersLinked\Mapper\CompanyFollowerMapper;use LeadersLinked\Model\User;class CompanyFollowerHelper extends AbstractHelper{/**** @var AdapterInterface*/private $adapter;/**** @param AdapterInterface $adapter*/public function __construct($adapter){$this->adapter = $adapter;}public function __invoke($company_id){$companyFollowerMapper = CompanyFollowerMapper::getInstance($this->adapter);$records = $companyFollowerMapper->fetchAllByCompanyId($company_id);$ids = [];foreach($records as $record){if(!in_array($record->follower_id, $ids)) {array_push($ids, $record->follower_id);}}$items = [];if($ids) {$mapper = QueryMapper::getInstance($this->adapter);$select = $mapper->getSql()->select(UserMapper::_TABLE);$select->columns(['uuid','first_name', 'last_name', 'image']);$select->where->in('id',$ids);$select->where->equalTo('status',User::STATUS_ACTIVE);$select->order(['last_name','first_name']);//echo $select->getSqlString($this->adapter->platform);$items = $mapper->fetchAll($select);}return $this->getView()->render('helpers/company-followers.phtml', ['items' => $items]);}}