Commit Graph

35 Commits

Author SHA1 Message Date
Eshin Kunishima aabee67bdd
Tiny performance tweaks 2016-05-03 17:46:20 +09:00
Frederic Guillot aaaafb263b Run php-cs-fixer on the code base 2016-04-17 19:44:45 -04:00
denfil a2976cf542 Add group filter to the bookmarks section 2016-02-28 17:39:16 +03:00
denfil 55db6f13dd Add group filter to the history section 2016-02-28 16:58:07 +03:00
Mathias Kresin 0cd4438574 show the article author if possible 2015-12-09 20:35:04 +01:00
Mathias Kresin 1ca2444267 take care of groups during navigating between items 2015-11-20 16:30:09 +01:00
Frederic Guillot 4f7ea89925 Update dependencies 2015-08-14 21:33:39 -04:00
Kordian Bruck dd47b3f82e Add feed group feature
- each feed can have multiple groups assigned
- group assignments are done on the add or edit feed page
- groups are only visible on the unread page
- groups are exported via the fever api
- it's not possible do delete a group manually from the database (the group will be removed automatically, as soon as the last association of a group to a feed is removed)
- if you try to create an already existing group, the existing group is used to prevent duplicates
2015-08-05 01:01:21 +02:00
Mathias Kresin f89ed85a83 update libraries
fixes #365, #367
2015-04-28 18:08:42 +02:00
Mathias Kresin 30a2852bad remove unused namespace imports and functions 2015-04-23 23:37:33 +02:00
Mathias Kresin 9f21a2fe91 rename functions to match their purpose
Item\get_all() -> Item\get_all_by_status()
Item\get_everything() -> Item\get_all()
Item\get_everything_since() -> Item\get_all_since()
2015-04-23 23:37:33 +02:00
Mathias Kresin ee98a62519 mark items on page 2+ read as well, update tests
Update integration tests, to ensure that all articles are marked read,
instead of only visible.
2015-04-07 22:46:50 +02:00
Mathias Kresin 7f335a533d update dependencies
- fixes #336
2015-03-01 19:56:11 +01:00
Mathias Kresin cd13efeabf implement frontend autoupdate
Only the unread counter is updated right know.

The AutoUpdate Feature is designed on the premise of don't wasting resources. A
distinction is made between updates when Miniflux is visible or hidden.

To determine the visibility status, the Page Visibility API is used. The API is
available starting with Chrome 33, Firefox 18 and IE10. [https://developer.mozilla.org/en-US/docs/Web/Guide/User_experience/Using_the_Page_Visibility_API]
As IE9 returns an undefined, it doesn't break the compatibility at least.

If Miniflux is visible, the unread counter on the web page is updated as soon as
a mismatch between the counter and the number of unread articles in the database
is found.

If Miniflux is hidden, the timestamp of the most recent article from each feed
is compared with the value from the last run. We have an update If the timestamp
of the latest article is greater than the stored one and the latest article is
unread. The web page title is updated with a ? symbol to notify the user and the
update check pauses till Miniflux gets visible again. If Miniflux gets visible
again, the number of unread articles is queried from the database, the unread
counter on the web page is updated and finally the ? symbol is removed from the
web page title.

This way I can use my fever API client to read new articles (or at least the
latest article) while Miniflux is hidden and as I've seen the new articles
already a new articles notification is prevented.

It's intentionally that the page does not reload automatically as long as
articles are visible. If I'm in hurry, I only scroll through the articles to
spot something interesting. Most of the time I don't reach the last article.
If the page is reloaded while I'm away, I would have to scan from the top again.

If we're on a nothing_to_read page and have unread articles in the database, a
redirect to the unread page will be done.

The default update check interval is 10 minutes and can be changed on the
settings page. A zero value disables the update check entirely.

fixes #213
2015-01-28 05:26:55 +01:00
Frederic Guillot d2cfc7fd15 Update vendor 2015-01-27 20:13:16 -05:00
Frederic Guillot b0c1f57213 Update dependencies, enable temporary PicoFeed debug logs 2015-01-19 20:00:16 -05:00
Frédéric Guillot 7d4d4e0193 Add image proxy to avoid https mixed content warnings 2014-12-24 15:58:24 -05:00
Frédéric Guillot 635e3bb813 Add Pinboard bookmark sync 2014-12-24 10:47:24 -05:00
Frédéric Guillot c6ed11c116 Move to Composer and update to the last version of PicoFeed 2014-12-23 21:28:26 -05:00
Frédéric Guillot 4313909052 Add option to flush all unread items after X days, default 45 days (avoid very large database) 2014-12-15 20:38:35 -05:00
Frédéric Guillot 53b94d8f7b Add option to force RTL mode per feed and improve feed modification 2014-10-19 19:14:33 -04:00
Frédéric Guillot e2280f1b7b Update PicoFeed and PicoDb 2014-10-19 14:42:31 -04:00
Frédéric Guillot 3840a87128 Update to the last version of PicoFeed 2014-05-20 14:20:27 -04:00
Frédéric Guillot 64875e19cc Update enclosure during a feed update (merge pull-request #199) 2014-05-17 09:58:56 -04:00
Frédéric Guillot 400b4272b0 Items can be bookmarked only if they have the status read or unread 2014-03-29 21:03:05 -04:00
Frédéric Guillot e6e6db71f8 Add RTL language support 2014-03-16 21:35:57 -04:00
Frédéric Guillot 74d8d361ee Improve enclosure support 2014-02-17 22:04:49 -05:00
Philip Walden 2874d16a5d Provides enahncement fguillot/miniflux #162 "Provide original link to any audio/video enclosures".
Essentially, if an enclosure tag exists in the item, then the item menu will contain
a link 'multimedia [speaker symbol]' to the media url. Otherwise, if there is no
enclosure tag, there is no menu item shown.

This feature required adding an enclosure column to the items table (models/schema.php)
and bumping the DB version to 21 (models/config.php). I also added enclosure tag logic
to the Rss20 parser, the model/item.php and template/item.php files.
2014-02-17 10:41:22 -08:00
Frédéric Guillot 33ab9d7fb6 Add new methods to the api item.get_all, item.get_all_since and item.get_all_status 2014-02-15 14:09:50 -05:00
Frédéric Guillot 7346686e9a Fix bug: Handle the case when there is a huge number of items to remove (sqlite limitation) 2014-02-11 21:26:55 -05:00
Frédéric Guillot 49583f381f Improve files organization 2014-02-08 14:13:14 -05:00
Frédéric Guillot cc2fbee172 Ignore items without url 2014-02-01 15:23:41 -05:00
Frédéric Guillot eb9f307da8 Fix error after refactoring 2013-12-22 22:30:49 -05:00
Frédéric Guillot 387600ca10 Add autoflush value 'immediately' and improve gitignore 2013-12-22 21:25:54 -05:00
Frédéric Guillot 4fb68b9b80 Split models and controllers in different files 2013-12-22 20:55:53 -05:00