protected static function _xenMediaPhotoIndexParams($team) { $categoryModel = self::$controller->getModelFromCache('XenGallery_Model_Category'); $category = $categoryModel->getCategoryById(self::$setup->getOption('XenMediaCategoryId')); $noPermission = false; if (!$category) { $noPermission = true; } else { if (!$categoryModel->canAddMediaToCategory($category)) { $noPermission = true; } } if ($noPermission) { return array('templateName' => 'Team_photo', 'viewName' => '', 'provider' => 'XenGallery', 'noPermission' => true); } $mediaModel = self::$controller->getModelFromCache('XenGallery_Model_Media'); $albumModel = self::$controller->getModelFromCache('XenGallery_Model_Album'); $order = self::$input->filterSingle('order', XenForo_Input::STRING); $type = self::$input->filterSingle('type', XenForo_Input::STRING); $page = self::$input->filterSingle('page', XenForo_Input::UINT); $perPage = XenForo_Application::getOptions()->xengalleryMediaMaxPerPage; $visitor = XenForo_Visitor::getInstance(); $conditions = array('deleted' => $mediaModel->canViewDeletedMedia(), 'type' => $type ? $type : 'all', 'privacyUserId' => $visitor->user_id, 'viewAlbums' => $albumModel->canViewAlbums(), 'viewCategoryIds' => $mediaModel->getViewableCategoriesForVisitor($visitor->toArray()), 'newerThan' => $mediaModel->getMediaHomeCutOff(), 'social_group_id' => $team['team_id']); $fetchOptions = self::_getMediaFetchOptions() + array('order' => $order ? $order : 'media_date', 'orderDirection' => 'desc', 'page' => $page, 'perPage' => $perPage); $fetchOptions['join'] |= XenGallery_Model_Media::FETCH_PRIVACY; $media = $mediaModel->getMedia($conditions, $fetchOptions); $media = $mediaModel->prepareMediaItems($media); $inlineModOptions = $mediaModel->prepareInlineModOptions($media); $ignoredNames = array(); foreach ($media as $item) { if (!empty($item['isIgnored'])) { $ignoredNames[] = $item['username']; } } $mediaCount = $mediaModel->countMedia($conditions, $fetchOptions); self::$controller->canonicalizePageNumber($page, $perPage, $mediaCount, TEAM_ROUTE_PREFIX . '/photos', $team); self::$controller->canonicalizeRequestUrl(XenForo_Link::buildPublicLink(TEAM_ROUTE_PREFIX . '/photos', $team, array('page' => $page))); $pageNavParams = array('order' => $order, 'type' => $type); return array('templateName' => 'Team_photo', 'viewName' => '', 'provider' => 'XenGallery', 'canViewRatings' => $mediaModel->canViewRatings(), 'mediaHome' => true, 'media' => $media, 'ignoredNames' => array_unique($ignoredNames), 'mediaCount' => $mediaCount, 'page' => $page <= 1 ? '' : $page, 'perPage' => $perPage, 'pageNavParams' => $pageNavParams, 'order' => $order, 'type' => $type, 'time' => XenForo_Application::$time, 'showTypeTabs' => $albumModel->canViewAlbums(), 'inlineModOptions' => $inlineModOptions, 'userPage' => false); }