From 4b997bc8b27fc25efd1f7a0797b78ee666ef9688 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Nicolas=20L=C5=93uillet?= Date: Mon, 20 Apr 2020 19:00:58 +0200 Subject: [PATCH] Added route to list entries with annotations --- app/config/security.yml | 4 ++-- .../CoreBundle/Controller/EntryController.php | 19 ++++++++++++++++++- .../Controller/ExportController.php | 9 ++++++++- .../CoreBundle/Repository/EntryRepository.php | 19 +++++++++++++++++++ .../Resources/translations/messages.da.yml | 2 ++ .../Resources/translations/messages.de.yml | 2 ++ .../Resources/translations/messages.en.yml | 2 ++ .../Resources/translations/messages.es.yml | 2 ++ .../Resources/translations/messages.fa.yml | 2 ++ .../Resources/translations/messages.fr.yml | 2 ++ .../Resources/translations/messages.it.yml | 2 ++ .../Resources/translations/messages.ja.yml | 2 ++ .../Resources/translations/messages.oc.yml | 2 ++ .../Resources/translations/messages.pl.yml | 2 ++ .../Resources/translations/messages.pt.yml | 2 ++ .../Resources/translations/messages.ro.yml | 2 ++ .../Resources/translations/messages.ru.yml | 2 ++ .../Resources/translations/messages.th.yml | 2 ++ .../Resources/translations/messages.tr.yml | 2 ++ .../Resources/translations/messages.zh.yml | 2 ++ .../themes/common/Entry/_title.html.twig | 2 ++ .../views/themes/material/layout.html.twig | 5 +++++ .../CoreBundle/Twig/WallabagExtension.php | 3 +++ 23 files changed, 89 insertions(+), 4 deletions(-) diff --git a/app/config/security.yml b/app/config/security.yml index 760b2550..894bb83f 100644 --- a/app/config/security.yml +++ b/app/config/security.yml @@ -69,11 +69,11 @@ security: - { path: ^/logout, roles: [IS_AUTHENTICATED_ANONYMOUSLY, IS_AUTHENTICATED_2FA_IN_PROGRESS] } - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY } - - { path: /(unread|starred|archive|all).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: /(unread|starred|archive|with_annotations|all).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/locale, role: IS_AUTHENTICATED_ANONYMOUSLY } - { path: /tags/(.*).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/feed, roles: IS_AUTHENTICATED_ANONYMOUSLY } - - { path: /(unread|starred|archive).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } # For backwards compatibility + - { path: /(unread|starred|archive|with_annotations).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } # For backwards compatibility - { path: ^/share, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/settings, roles: ROLE_SUPER_ADMIN } - { path: ^/annotations, roles: ROLE_USER } diff --git a/src/Wallabag/CoreBundle/Controller/EntryController.php b/src/Wallabag/CoreBundle/Controller/EntryController.php index ba5bfbe2..2c4b5536 100644 --- a/src/Wallabag/CoreBundle/Controller/EntryController.php +++ b/src/Wallabag/CoreBundle/Controller/EntryController.php @@ -235,12 +235,26 @@ class EntryController extends Controller return $this->showEntries('untagged', $request, $page); } + /** + * Shows entries with annotations for current user. + * + * @param int $page + * + * @Route("/with_annotations/list/{page}", name="with_annotations", defaults={"page" = "1"}) + * + * @return \Symfony\Component\HttpFoundation\Response + */ + public function showWithAnnotationsEntriesAction(Request $request, $page) + { + return $this->showEntries('with_annotations', $request, $page); + } + /** * Shows random entry depending on the given type. * * @param string $type * - * @Route("/{type}/random", name="random_entry", requirements={"type": "unread|starred|archive|untagged|all"}) + * @Route("/{type}/random", name="random_entry", requirements={"type": "unread|starred|archive|untagged|with_annotations|all"}) * * @return \Symfony\Component\HttpFoundation\RedirectResponse */ @@ -503,6 +517,9 @@ class EntryController extends Controller case 'archive': $qb = $repository->getBuilderForArchiveByUser($this->getUser()->getId()); break; + case 'with_annotations': + $qb = $repository->getBuilderForAnnotationsByUser($this->getUser()->getId()); + break; case 'unread': $qb = $repository->getBuilderForUnreadByUser($this->getUser()->getId()); break; diff --git a/src/Wallabag/CoreBundle/Controller/ExportController.php b/src/Wallabag/CoreBundle/Controller/ExportController.php index cec8d499..8517e7a9 100644 --- a/src/Wallabag/CoreBundle/Controller/ExportController.php +++ b/src/Wallabag/CoreBundle/Controller/ExportController.php @@ -47,7 +47,7 @@ class ExportController extends Controller * * @Route("/export/{category}.{format}", name="export_entries", requirements={ * "format": "epub|mobi|pdf|json|xml|txt|csv", - * "category": "all|unread|starred|archive|tag_entries|untagged|search" + * "category": "all|unread|starred|archive|tag_entries|untagged|search|with_annotations" * }) * * @return \Symfony\Component\HttpFoundation\Response @@ -80,6 +80,13 @@ class ExportController extends Controller ->getResult(); $title = 'Search ' . $searchTerm; + } elseif ('with_annotations' === $category) { + $entries = $repository->getBuilderForAnnotationsByUser( + $this->getUser()->getId() + )->getQuery() + ->getResult(); + + $title = 'With annotations'; } else { $entries = $repository ->$methodBuilder($this->getUser()->getId()) diff --git a/src/Wallabag/CoreBundle/Repository/EntryRepository.php b/src/Wallabag/CoreBundle/Repository/EntryRepository.php index bfd07937..9f25ad4c 100644 --- a/src/Wallabag/CoreBundle/Repository/EntryRepository.php +++ b/src/Wallabag/CoreBundle/Repository/EntryRepository.php @@ -115,6 +115,21 @@ class EntryRepository extends EntityRepository return $this->sortQueryBuilder($this->getRawBuilderForUntaggedByUser($userId)); } + /** + * Retrieve entries with annotations for a user. + * + * @param int $userId + * + * @return QueryBuilder + */ + public function getBuilderForAnnotationsByUser($userId) + { + return $this + ->getSortedQueryBuilderByUser($userId) + ->innerJoin('e.annotations', 'a') + ; + } + /** * Retrieve untagged entries for a user. * @@ -520,6 +535,10 @@ class EntryRepository extends EntityRepository $qb->leftJoin('e.tags', 't'); $qb->andWhere('t.id is null'); break; + case 'with_annotations': + $qb->leftJoin('e.annotations', 'a'); + $qb->andWhere('a.id is not null'); + break; } $ids = $qb->getQuery()->getArrayResult(); diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml index 4d525979..b233789f 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml @@ -20,6 +20,7 @@ menu: starred: 'Favoritter' archive: 'Arkiv' all_articles: 'Alle artikler' + # with_annotations: 'With annotations' config: 'Opsætning' tags: 'Tags' # internal_settings: 'Internal Settings' @@ -194,6 +195,7 @@ entry: # starred: 'Starred entries' # archived: 'Archived entries' # filtered: 'Filtered entries' + # with_annotations: 'Entries with annotations' # filtered_tags: 'Filtered by tags:' # filtered_search: 'Filtered by search:' # untagged: 'Untagged entries' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml index cd70c99f..d955c046 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml @@ -20,6 +20,7 @@ menu: starred: 'Favoriten' archive: 'Archiv' all_articles: 'Alle Artikel' + # with_annotations: 'With annotations' config: 'Konfiguration' tags: 'Tags' internal_settings: 'Interne Einstellungen' @@ -194,6 +195,7 @@ entry: starred: 'Favorisierte Einträge' archived: 'Archivierte Einträge' filtered: 'Gefilterte Einträge' + # with_annotations: 'Entries with annotations' filtered_tags: 'Gefiltert nach Tags:' filtered_search: 'Gefiltert nach Suche:' untagged: 'Nicht getaggte Einträge' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml index 1bc32423..6e7f5693 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml @@ -20,6 +20,7 @@ menu: starred: 'Starred' archive: 'Archive' all_articles: 'All entries' + with_annotations: 'With annotations' config: 'Config' tags: 'Tags' internal_settings: 'Internal Settings' @@ -194,6 +195,7 @@ entry: starred: 'Starred entries' archived: 'Archived entries' filtered: 'Filtered entries' + with_annotations: 'Entries with annotations' filtered_tags: 'Filtered by tags:' filtered_search: 'Filtered by search:' untagged: 'Untagged entries' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml index bced72e9..2164a618 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml @@ -20,6 +20,7 @@ menu: starred: 'Favoritos' archive: 'Archivo' all_articles: 'Todos los artículos' + # with_annotations: 'With annotations' config: 'Configuración' tags: 'Etiquetas' internal_settings: 'Configuración interna' @@ -194,6 +195,7 @@ entry: starred: 'Artículos favoritos' archived: 'Artículos archivados' filtered: 'Artículos filtrados' + # with_annotations: 'Entries with annotations' filtered_tags: 'Filtrado por etiquetas:' filtered_search: 'Filtrado por búsqueda:' untagged: 'Artículos sin etiquetas' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml index 0704204a..be14f53d 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml @@ -20,6 +20,7 @@ menu: starred: 'برگزیده' archive: 'بایگانی' all_articles: 'همه' + # with_annotations: 'With annotations' config: 'پیکربندی' tags: 'برچسب‌ها' internal_settings: 'تنظیمات درونی' @@ -194,6 +195,7 @@ entry: starred: 'مقاله‌های برگزیده' archived: 'مقاله‌های بایگانی‌شده' filtered: 'مقاله‌های فیلترشده' + # with_annotations: 'Entries with annotations' # filtered_tags: 'Filtered by tags:' # filtered_search: 'Filtered by search:' # untagged: 'Untagged entries' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml index 5d5878eb..65a87710 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml @@ -20,6 +20,7 @@ menu: starred: "Favoris" archive: "Lus" all_articles: "Tous les articles" + with_annotations: 'Avec annotations' config: "Configuration" tags: "Tags" internal_settings: "Configuration interne" @@ -194,6 +195,7 @@ entry: starred: "Articles favoris" archived: "Articles lus" filtered: "Articles filtrés" + with_annotations: 'Articles avec annotations' filtered_tags: "Articles filtrés par tags :" filtered_search: "Articles filtrés par recherche :" untagged: "Article sans tag" diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml index 23e72f20..ef1f0d9f 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml @@ -20,6 +20,7 @@ menu: starred: 'Preferiti' archive: 'Archivio' all_articles: 'Tutti' + # with_annotations: 'With annotations' config: 'Configurazione' tags: 'Etichette' internal_settings: 'Strumenti' @@ -194,6 +195,7 @@ entry: starred: 'Contenuti preferiti' archived: 'Contenuti archiviati' filtered: 'Contenuti filtrati' + # with_annotations: 'Entries with annotations' filtered_tags: 'Filtrati per etichetta:' filtered_search: 'Filtrati per ricerca:' untagged: 'Articoli non etichettati' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.ja.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.ja.yml index f6530a83..d1a2d055 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.ja.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.ja.yml @@ -20,6 +20,7 @@ menu: starred: 'お気に入り' archive: 'アーカイブ済み' all_articles: '全ての記事' + # with_annotations: 'With annotations' config: '設定' tags: 'タグ' internal_settings: '内部設定' @@ -194,6 +195,7 @@ entry: starred: 'お気に入りの記事' archived: 'アーカイブ済みの記事' filtered: '記事の絞り込み' + # with_annotations: 'Entries with annotations' filtered_tags: 'タグ検索:' filtered_search: '単語検索:' untagged: 'タグの無い記事' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml index 6ddff6ea..f4409ddd 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml @@ -20,6 +20,7 @@ menu: starred: 'Favorits' archive: 'Legits' all_articles: 'Totes los articles' + # with_annotations: 'With annotations' config: 'Configuracion' tags: 'Etiquetas' internal_settings: 'Configuracion intèrna' @@ -194,6 +195,7 @@ entry: starred: 'Articles favorits' archived: 'Articles legits' filtered: 'Articles filtrats' + # with_annotations: 'Entries with annotations' filtered_tags: 'Articles filtrats per etiquetas :' filtered_search: 'Articles filtrats per recèrca :' untagged: 'Articles sens etiqueta' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml index 770477c9..d595796f 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml @@ -20,6 +20,7 @@ menu: starred: 'Oznaczone gwiazdką' archive: 'Archiwum' all_articles: 'Wszystkie' + # with_annotations: 'With annotations' config: 'Konfiguracja' tags: 'Tagi' internal_settings: 'Wewnętrzne ustawienia' @@ -194,6 +195,7 @@ entry: starred: 'Wpisy oznaczone gwiazdką' archived: 'Zarchiwizowane wpisy' filtered: 'Odfiltrowane wpisy' + # with_annotations: 'Entries with annotations' filtered_tags: 'Filtrowane po tagach:' filtered_search: 'Filtrowanie po wyszukiwaniu:' untagged: 'Odtaguj wpisy' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml index d993cb05..dcd0b89b 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml @@ -20,6 +20,7 @@ menu: starred: 'Destacado' archive: 'Arquivo' all_articles: 'Todos os artigos' + # with_annotations: 'With annotations' config: 'Configurações' tags: 'Tags' internal_settings: 'Configurações Internas' @@ -194,6 +195,7 @@ entry: starred: 'Artigos destacados' archived: 'Artigos arquivados' filtered: 'Artigos filtrados' + # with_annotations: 'Entries with annotations' filtered_tags: 'Filtrar por tags:' filtered_search: 'Filtrar por busca:' untagged: 'Entradas sem tags' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml index bc8b72e0..d699a749 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml @@ -20,6 +20,7 @@ menu: starred: 'Cu steluță' archive: 'Arhivă' all_articles: 'Toate' + # with_annotations: 'With annotations' config: 'Configurație' tags: 'Tag-uri' # internal_settings: 'Internal Settings' @@ -194,6 +195,7 @@ entry: # starred: 'Starred entries' # archived: 'Archived entries' # filtered: 'Filtered entries' + # with_annotations: 'Entries with annotations' # filtered_tags: 'Filtered by tags:' # filtered_search: 'Filtered by search:' # untagged: 'Untagged entries' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml index 2f7f55e5..13a257ef 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml @@ -20,6 +20,7 @@ menu: starred: 'Помеченные' archive: 'Архивные' all_articles: 'Все записи' + # with_annotations: 'With annotations' config: 'Настройки' tags: 'Теги' internal_settings: 'Внутренние настройки' @@ -194,6 +195,7 @@ entry: starred: 'Помеченные записи' archived: 'Архивные записи' filtered: 'Отфильтрованные записи' + # with_annotations: 'Entries with annotations' filtered_tags: 'Отфильтрованные по тегу:' filtered_search: 'Отфильтрованные по поиску:' untagged: 'Записи без тегов' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml index 48e1c34a..495f9337 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml @@ -20,6 +20,7 @@ menu: starred: 'ทำการแสดง' archive: 'เอกสาร' all_articles: 'รายการทั้งหมด' + # with_annotations: 'With annotations' config: 'กำหนดค่า' tags: 'แท็ก' internal_settings: 'ตั้งค่าภายใน' @@ -194,6 +195,7 @@ entry: starred: 'รายการที่แสดง' archived: 'รายการเอกสาร' filtered: 'รายการที่กลั่นกรอง' + # with_annotations: 'Entries with annotations' filtered_tags: 'แท็กทีกลั่นกรอง่:' filtered_search: 'การค้นหาที่กลั่นกรอง:' untagged: 'รายการที่ไม่ได้แท็ก' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml index 19029c0b..163dc1d1 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml @@ -20,6 +20,7 @@ menu: starred: 'Favoriler' archive: 'Arşiv' all_articles: 'Hepsi' + # with_annotations: 'With annotations' config: 'Yapılandırma' tags: 'Etiketler' # internal_settings: 'Internal Settings' @@ -194,6 +195,7 @@ entry: # starred: 'Starred entries' # archived: 'Archived entries' # filtered: 'Filtered entries' + # with_annotations: 'Entries with annotations' # filtered_tags: 'Filtered by tags:' # filtered_search: 'Filtered by search:' # untagged: 'Untagged entries' diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.zh.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.zh.yml index f48ce37a..115701da 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.zh.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.zh.yml @@ -20,6 +20,7 @@ menu: starred: '星标' archive: '存档' all_articles: '所有项目' + # with_annotations: 'With annotations' config: '配置' tags: '标签' internal_settings: '内部设置' @@ -194,6 +195,7 @@ entry: starred: '星标项目' archived: '存档项目' filtered: '筛选后项目' + # with_annotations: 'Entries with annotations' filtered_tags: '根据标签筛选:' filtered_search: '根据搜索筛选:' untagged: '无标签项目' diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_title.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_title.html.twig index 5c17e9f7..d93e5a67 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_title.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_title.html.twig @@ -12,6 +12,8 @@ {{ 'entry.page_titles.filtered_tags'|trans }} {{ filter }} {% elseif currentRoute == 'untagged' %} {{ 'entry.page_titles.untagged'|trans }} +{% elseif currentRoute == 'with_annotations' %} + {{ 'entry.page_titles.with_annotations'|trans }} {% else %} {{ 'entry.page_titles.unread'|trans }} {% endif %} diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/layout.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/layout.html.twig index c51d07fc..6c4ae40b 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/material/layout.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/material/layout.html.twig @@ -40,6 +40,8 @@ {% set activeRoute = null %} {% if currentRoute == 'all' or currentRouteFromQueryParams == 'all' %} {% set activeRoute = 'all' %} + {% elseif currentRoute == 'with_annotations' or currentRouteFromQueryParams == 'with_annotations' %} + {% set activeRoute = 'with_annotations' %} {% elseif currentRoute == 'archive' or currentRouteFromQueryParams == 'archive' %} {% set activeRoute = 'archive' %} {% elseif currentRoute == 'starred' or currentRouteFromQueryParams == 'starred' %} @@ -59,6 +61,9 @@
  • {{ 'menu.left.archive'|trans }} {{ count_entries('archive') }}
  • +
  • + {{ 'menu.left.with_annotations'|trans }} {{ count_entries('with_annotations') }} +
  • {{ 'menu.left.all_articles'|trans }} {{ count_entries('all') }}
  • diff --git a/src/Wallabag/CoreBundle/Twig/WallabagExtension.php b/src/Wallabag/CoreBundle/Twig/WallabagExtension.php index 47af3c8e..e0f67375 100644 --- a/src/Wallabag/CoreBundle/Twig/WallabagExtension.php +++ b/src/Wallabag/CoreBundle/Twig/WallabagExtension.php @@ -94,6 +94,9 @@ class WallabagExtension extends AbstractExtension implements GlobalsInterface case 'unread': $qb = $this->entryRepository->getBuilderForUnreadByUser($user->getId()); break; + case 'with_annotations': + $qb = $this->entryRepository->getBuilderForAnnotationsByUser($user->getId()); + break; case 'all': $qb = $this->entryRepository->getBuilderForAllByUser($user->getId()); break; -- 2.41.0