$this->assignView(
'pagetitle',
- t('Picture wall') .' - '. $this->container->conf->get('general.title', 'Shaarli')
+ t('Picture wall') . ' - ' . $this->container->conf->get('general.title', 'Shaarli')
);
// Optionally filter the results:
- $links = $this->container->bookmarkService->search($request->getQueryParams());
- $linksToDisplay = [];
+ $bookmarks = $this->container->bookmarkService->search($request->getQueryParams())->getBookmarks();
+ $links = [];
// Get only bookmarks which have a thumbnail.
// Note: we do not retrieve thumbnails here, the request is too heavy.
$formatter = $this->container->formatterFactory->getFormatter('raw');
- foreach ($links as $key => $link) {
- if (!empty($link->getThumbnail())) {
- $linksToDisplay[] = $formatter->format($link);
+ foreach ($bookmarks as $key => $bookmark) {
+ if (!empty($bookmark->getThumbnail())) {
+ $links[] = $formatter->format($bookmark);
}
}
- $data = $this->executeHooks($linksToDisplay);
+ $data = ['linksToDisplay' => $links];
+ $this->executePageHooks('render_picwall', $data, TemplatePage::PICTURE_WALL);
+
foreach ($data as $key => $value) {
$this->assignView($key, $value);
}
return $response->write($this->render(TemplatePage::PICTURE_WALL));
}
-
- /**
- * @param mixed[] $linksToDisplay List of formatted bookmarks
- *
- * @return mixed[] Template data after active plugins render_picwall hook execution.
- */
- protected function executeHooks(array $linksToDisplay): array
- {
- $data = [
- 'linksToDisplay' => $linksToDisplay,
- ];
- $this->container->pluginManager->executeHooks(
- 'render_picwall',
- $data,
- ['loggedin' => $this->container->loginManager->isLoggedIn()]
- );
-
- return $data;
- }
}