mirror of
https://github.com/miniflux/v2.git
synced 2024-09-06 19:39:23 +02:00
Why: It is nice to have the ability to mark an entire category as read in the UI. The API already exposes that functionality anyway, so for consistency reasons, expose it in the UI as well What: Add a new handler in the UI to markCategoryAsRead() and amend views and router to expose the functionality in the UI
80 lines
3.3 KiB
HTML
80 lines
3.3 KiB
HTML
{{ define "title"}}{{ .category.Title }} ({{ .total }}){{ end }}
|
|
|
|
{{ define "content"}}
|
|
<section class="page-header">
|
|
<h1 dir="auto">{{ .category.Title }} ({{ .total }})</h1>
|
|
<ul>
|
|
{{ if .entries }}
|
|
<li>
|
|
<a href="#"
|
|
data-action="markPageAsRead"
|
|
data-label-question="{{ t "confirm.question" }}"
|
|
data-label-yes="{{ t "confirm.yes" }}"
|
|
data-label-no="{{ t "confirm.no" }}"
|
|
data-label-loading="{{ t "confirm.loading" }}"
|
|
data-show-only-unread="{{ if .showOnlyUnreadEntries }}1{{ end }}">{{ t "menu.mark_page_as_read" }}</a>
|
|
</li>
|
|
<li>
|
|
<a href="#"
|
|
data-confirm="true"
|
|
data-label-question="{{ t "confirm.question" }}"
|
|
data-label-yes="{{ t "confirm.yes" }}"
|
|
data-label-no="{{ t "confirm.no" }}"
|
|
data-label-loading="{{ t "confirm.loading" }}"
|
|
data-url="{{ route "markCategoryAsRead" "categoryID" .category.ID }}">{{ t "menu.mark_all_as_read" }}</a>
|
|
</li>
|
|
{{ end }}
|
|
{{ if .showOnlyUnreadEntries }}
|
|
<li>
|
|
<a href="{{ route "categoryEntriesAll" "categoryID" .category.ID }}">{{ t "menu.show_all_entries" }}</a>
|
|
</li>
|
|
{{ else }}
|
|
<li>
|
|
<a href="{{ route "categoryEntries" "categoryID" .category.ID }}">{{ t "menu.show_only_unread_entries" }}</a>
|
|
</li>
|
|
{{ end }}
|
|
<li>
|
|
<a href="{{ route "categoryFeeds" "categoryID" .category.ID }}">{{ t "menu.feeds" }}</a>
|
|
</li>
|
|
</ul>
|
|
</section>
|
|
|
|
{{ if not .entries }}
|
|
<p class="alert">{{ t "alert.no_category_entry" }}</p>
|
|
{{ else }}
|
|
<div class="items">
|
|
{{ range .entries }}
|
|
<article class="item {{ if $.user.EntrySwipe }}touch-item{{ end }} item-status-{{ .Status }}" data-id="{{ .ID }}">
|
|
<div class="item-header" dir="auto">
|
|
<span class="item-title">
|
|
{{ if ne .Feed.Icon.IconID 0 }}
|
|
<img src="{{ route "icon" "iconID" .Feed.Icon.IconID }}" width="16" height="16" loading="lazy" alt="{{ .Feed.Title }}">
|
|
{{ end }}
|
|
<a href="{{ route "categoryEntry" "categoryID" .Feed.Category.ID "entryID" .ID }}">{{ .Title }}</a>
|
|
</span>
|
|
<span class="category"><a href="{{ route "categoryEntries" "categoryID" .Feed.Category.ID }}">{{ .Feed.Category.Title }}</a></span>
|
|
</div>
|
|
{{ template "item_meta" dict "user" $.user "entry" . "hasSaveEntry" $.hasSaveEntry }}
|
|
</article>
|
|
{{ end }}
|
|
</div>
|
|
<section class="page-footer">
|
|
{{ if .entries }}
|
|
<ul>
|
|
<li>
|
|
<a href="#"
|
|
data-action="markPageAsRead"
|
|
data-label-question="{{ t "confirm.question" }}"
|
|
data-label-yes="{{ t "confirm.yes" }}"
|
|
data-label-no="{{ t "confirm.no" }}"
|
|
data-label-loading="{{ t "confirm.loading" }}"
|
|
data-show-only-unread="{{ if .showOnlyUnreadEntries }}1{{ end }}">{{ t "menu.mark_page_as_read" }}</a>
|
|
</li>
|
|
</ul>
|
|
{{ end }}
|
|
</section>
|
|
{{ template "pagination" .pagination }}
|
|
{{ end }}
|
|
|
|
{{ end }}
|