Syndication and cache updates

This commit is contained in:
Nemo 2023-06-26 15:35:00 +05:30
parent 74927b49ea
commit 613fa4ee49
6 changed files with 26 additions and 28 deletions

View File

@ -12,11 +12,11 @@ This text-only version is unaffiliated with Beatroot News or Freemedia Interacti
## Curation Notes
- The [home-page](/) only includes un-syndicated[^1] articles.
- Only articles from today and yesterday are shown.
- Articles marked with 📻 are "syndicated" from an external media source[^1].
- The design is based on [NPR's](http://text.npr.org/) text-only website.
- Trigger Warnings are shown in bold, prefixed to the article text.
- The content is updated every 30 minutes.
- There are no trackers or ads.
[^1]: Currently only PTI articles are filtered out.
[^1]: List of sources considered as syndicated: PTI, Hindustan Times, Indian Express

View File

@ -6,12 +6,10 @@ title: Roadmap
### In Progress
- [ ] Drop empty sections in homepage
- [x] Create a /settings page
- [ ] Show syndicated articles in home page (default OFF)
- [ ] Pick sections for home-page
- [ ] Font adjustments
- [ ] **settings** Pick topics for home-page
### Planned
- [ ] Font adjustments in settings
- [ ] Check color accessibility for viewed-grey-color.
- [ ] **Blocked** Use upstream as canonical page if it ever becomes stable and fast
- [ ] **Stable**: Old links stop working on upstream. We break them intentionally, since this is a "daily news" site, but upstream ought not to break. See [this link](https://app.beatrootnews.com/#article-5773) for eg.
@ -27,5 +25,8 @@ title: Roadmap
- [x] Make "/" in bottom footer using CSS after
- [x] Highlight words
- [x] Clear "read articles"
- [x] Create a /settings page
- [x] Show all articles, and mark syndicated ones better
- [x] Use better list icons
See [/about](/about) as well, or [contact Nemo](https://captnemo.in/contact/) for any suggestions.

View File

@ -1,8 +1,8 @@
<details data-hash="{{include.story.id}}-{{include.story.date | date: '%s'}}">
<details data-hash="{{include.story.id}}-{{include.story.date | date: '%s'}}" data-syndicated={{include.story.syndicated|to_integer}}>
<summary>
<h3>
<h{{include.heading_level}}>
{% include_cached post-title.html trigger_warning=include.story.trigger_warning title=include.story.title %}
</h3>
</h{{include.heading_level}}>
{% if include.story.content.downcase contains "developing story" %}<span title="Developing Story"></span>{%endif%}
</summary>
<div class="details-content">{{include.story.content}}</div>

View File

@ -111,6 +111,14 @@ h6 {
border-radius: 3px;
}
details > summary {
list-style-type: '🗞';;
}
details[data-syndicated="1"] > summary{
list-style-type: '📻';
}
details.viewed>summary {
color: #999;
}
@ -118,6 +126,10 @@ details.viewed>summary {
details .real-title {
display: none;
}
details[open] > summary {
list-style-type: '📰';
}
details[open] .real-title {
display: inline;
}

View File

@ -10,20 +10,9 @@ layout: default
<p class="topic-date"><time datetime="{{site.time | date: '%y-%m-%d'}}">{{site.time | date: "%A, %b, %e, %Y"}}</time></p>
{% for post in site.pages %}
{% if post.topics contains page.topic %}
<details data-hash="{{post.id}}-{{post.date | date: '%s'}}">
<summary>
<h2>
{% include_cached post-title.html trigger_warning=post.trigger_warning title=post.title %}
</h2>
<a class="topic-title" href="{{post.url}}">🔗</a>
{% if post.syndicated %}
<span title="Syndicated News">📡</span>
{%endif%}
</summary>
<div class="details-content">{{post.content}}</div>
</details>
{%endif%}
{% if post.topics and post.topics contains page.topic %}
{% include_cached story.html story=post heading_level="2" %}
{% endif %}
{% endfor %}
</div> <!-- topic-container -->

View File

@ -12,11 +12,7 @@ layout: default
<h2><a href="/{{topic}}/">{{topic | capitalize}}</a></h2>
{% for post in site.pages %}
{% if post.topics and post.topics.first == topic %}
{% unless post.syndicated %}
{% include_cached story.html story=post %}
{% endunless %}
{% include_cached story.html story=post heading_level=3%}
{%endif%}
{% endfor %}
</div>