/** * Returns user's photo albums list * * @param int $userId * @param int $page * @param int $limit * @param null $exclude * @return array of PHOTO_BOL_PhotoAlbum */ public function findUserAlbumList($userId, $page, $limit, $exclude = null, $includeCount = false) { $albums = $this->photoAlbumDao->getUserAlbumList($userId, $page, $limit, $exclude); $list = array(); if ($albums) { $albumIdList = array(); $albumList = array(); foreach ($albums as $key => $album) { $albumIdList[] = $album->id; $list[$key]['dto'] = $album; $albumList[] = get_object_vars($album); } $covers = $this->getAlbumCoverForList($albumList); if ($includeCount) { $counters = $this->countAlbumPhotosForList($albumIdList); } else { $counters = array_fill_keys(array_keys($covers), 0); } foreach ($albums as $key => $album) { $list[$key]['cover'] = $covers[$album->id]; $list[$key]['photo_count'] = $counters[$album->id]; } } return $list; }
/** * Returns user's photo albums list * * @param int $userId * @param int $page * @param int $limit * @param null $exclude * @return array of PHOTO_BOL_PhotoAlbum */ public function findUserAlbumList($userId, $page, $limit, $exclude = null) { $albums = $this->photoAlbumDao->getUserAlbumList($userId, $page, $limit, $exclude); $list = array(); if ($albums) { $albumIdList = array(); foreach ($albums as $key => $album) { array_push($albumIdList, $album->id); $list[$key]['dto'] = $album; } $covers = $this->getAlbumCoverForList($albumIdList); $counters = $this->countAlbumPhotosForList($albumIdList); foreach ($albums as $key => $album) { $list[$key]['cover'] = $covers[$album->id]; $list[$key]['photo_count'] = $counters[$album->id]; } } return $list; }