| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- {{ define "title"}}{{ .feed.Title }} ({{ .total }}){{ end }}
- {{ define "page_header"}}
- <section class="page-header" aria-labelledby="page-header-title">
- <h1 id="page-header-title" dir="auto">
- <a href="{{ .feed.SiteURL | safeURL }}" title="{{ .feed.SiteURL }}" {{ if $.user.OpenExternalLinksInNewTab }}target="_blank"{{ else }}rel="noopener"{{ end }} data-original-link="{{ .user.MarkReadOnView }}">{{ .feed.Title }}</a>
- <span aria-hidden="true">({{ .total }})</span>
- </h1>
- <span class="sr-only">
- {{ if .showOnlyUnreadEntries }}
- {{ plural "page.unread_entry_count" .total .total }}
- {{ else }}
- {{ plural "page.total_entry_count" .total .total }}
- {{ end }}
- </span>
- <nav aria-label="{{ .feed.Title }} {{ t "menu.title" }}">
- <ul>
- {{ if .entries }}
- <li>
- <button
- class="page-button"
- 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 }}">{{ icon "mark-page-as-read" }}{{ t "menu.mark_page_as_read" }}</button>
- </li>
- <li>
- <button
- class="page-button"
- 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 "markFeedAsRead" "feedID" .feed.ID }}">{{ icon "mark-all-as-read" }}{{ t "menu.mark_all_as_read" }}</button>
- </li>
- {{ end }}
- {{ if .showOnlyUnreadEntries }}
- <li>
- <a class="page-link" href="{{ route "feedEntriesAll" "feedID" .feed.ID }}">{{ icon "show-all-entries" }}{{ t "menu.show_all_entries" }}</a>
- </li>
- {{ else }}
- <li>
- <a class="page-link" href="{{ route "feedEntries" "feedID" .feed.ID }}">{{ icon "show-unread-entries" }}{{ t "menu.show_only_unread_entries" }}</a>
- </li>
- {{ end }}
- <li>
- <button
- class="page-button"
- data-confirm="true"
- data-label-question="{{ t "confirm.question.refresh" }}"
- data-label-yes="{{ t "confirm.yes" }}"
- data-label-no="{{ t "confirm.no" }}"
- data-label-loading="{{ t "confirm.loading" }}"
- data-url="{{ route "refreshFeed" "feedID" .feed.ID }}?forceRefresh=true"
- data-no-action-url="{{ route "refreshFeed" "feedID" .feed.ID }}?forceRefresh=false">{{ icon "refresh" }}{{ t "menu.refresh_feed" }}</button>
- </li>
- <li>
- <a class="page-link" href="{{ route "editFeed" "feedID" .feed.ID }}">{{ icon "edit" }}{{ t "menu.edit_feed" }}</a>
- </li>
- <li>
- <button
- class="page-button"
- data-confirm="true"
- data-action="remove-feed"
- 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 "removeFeed" "feedID" .feed.ID }}"
- data-redirect-url="{{ route "feeds" }}">{{ icon "delete" }}{{ t "action.remove_feed" }}</button>
- </li>
- </ul>
- </nav>
- </section>
- {{ end }}
- {{ define "content"}}
- {{ if ne .feed.ParsingErrorCount 0 }}
- <div role="alert" class="alert alert-error">
- <h3>{{ t "alert.feed_error" }}</h3>
- <p>{{ t .feed.ParsingErrorMsg }}</p>
- </div>
- {{ end }}
- {{ if not .entries }}
- {{ if .showOnlyUnreadEntries }}
- <p role="alert" class="alert">{{ t "alert.no_unread_entry" }}</p>
- {{ else }}
- <p role="alert" class="alert">{{ t "alert.no_feed_entry" }}</p>
- {{ end }}
- {{ else }}
- <div class="pagination-top">
- {{ template "pagination" .pagination }}
- </div>
- <div class="items">
- {{ range .entries }}
- <article
- class="item entry-item {{ if $.user.EntrySwipe }}entry-swipe{{ end }} item-status-{{ .Status }}"
- data-id="{{ .ID }}"
- aria-labelledby="entry-title-{{ .ID }}"
- tabindex="-1"
- >
- <header class="item-header" dir="auto">
- <h2 id="entry-title-{{ .ID }}" class="item-title">
- <a
- {{ if $.showOnlyUnreadEntries }}
- href="{{ route "unreadFeedEntry" "feedID" .Feed.ID "entryID" .ID }}"
- {{ else }}
- href="{{ route "feedEntry" "feedID" .Feed.ID "entryID" .ID }}"
- {{ end }}
- >
- {{ if ne .Feed.Icon.IconID 0 }}
- <img src="{{ route "feedIcon" "externalIconID" .Feed.Icon.ExternalIconID }}" width="16" height="16" loading="lazy" alt="">
- {{ end }}
- {{ .Title }}
- </a>
- </h2>
- <span class="category">
- <a
- href="{{ route "categoryEntries" "categoryID" .Feed.Category.ID }}"
- aria-label="{{ t "page.category_label" .Feed.Category.Title }}"
- >
- {{ .Feed.Category.Title }}
- </a>
- </span>
- </header>
- {{ template "item_meta" dict "user" $.user "entry" . "hasSaveEntry" $.hasSaveEntry }}
- </article>
- {{ end }}
- </div>
- <section class="page-footer">
- {{ if .entries }}
- <ul>
- <li>
- <button
- class="page-button"
- 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 }}">{{ icon "mark-page-as-read" }}{{ t "menu.mark_page_as_read" }}</button>
- </li>
- </ul>
- {{ end }}
- </section>
- <div class="pagination-bottom">
- {{ template "pagination" .pagination }}
- </div>
- {{ end }}
- {{ end }}
|