Commit Graph

93 Commits

Author SHA1 Message Date
Frederic Guillot aaaafb263b Run php-cs-fixer on the code base 2016-04-17 19:44:45 -04:00
Frederic Guillot 427b41f892 Upgrade to PicoFeed v0.1.23
- OPML import/export with categories
- New Feed export (bookmarks)
2016-04-17 19:34:54 -04:00
Frederic Guillot 250d5c21e0 Record last login timestamp in the database 2016-03-14 21:34:50 -04:00
Frederic Guillot 07bd5191e5 Fix PHP notice on feed_items page 2016-02-28 14:47:05 -05:00
Frederic Guillot 2f06e6a346 Merge pull-request #493 and fix conflicts 2016-02-28 14:41:14 -05: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
denfil ee805bebfc Add to preferences Item title links to 2016-02-28 15:04:01 +03:00
Frederic Guillot 3f972dafc2 Fix some issues in PR 2016-01-11 19:53:18 -05:00
Alexis Mousset a2d2e95555 Use hashes to identify favicons 2016-01-10 01:21:56 +01:00
Alexis Mousset 498573712b Add a database parameter to the bookmark feed url (closes #419) 2015-12-07 23:57:57 +01:00
Mathias Kresin 1ca2444267 take care of groups during navigating between items 2015-11-20 16:30:09 +01:00
Frederic Guillot 9b08fc9160 Fix cosmetic errors 2015-10-19 21:21:18 -04:00
Frederic Guillot 1c0d14bc94 Include PicoFarad into Miniflux 2015-08-28 21:34:34 -04:00
Frederic Guillot 9320a32780 Change CSP directives to allow data url 2015-08-21 18:18:08 -04:00
Frederic Guillot 33a4bf2202 Remove some code duplication and fix some minor issues 2015-08-14 22:08:04 -04: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
Kordian Bruck 6e10b01d4a Changed setting from a database value to be stored as a constant in the config.php 2015-08-02 18:20:38 +02:00
Kordian Bruck 2c3fd54774 Added a config option to select how many concurrent refreshes are done on the subscription page 2015-08-02 02:23:21 +02:00
Mathias Kresin 94cf154691 remove referrer by default
The referrer CSP is supported by chrome and firefox 38+.

Suppressing the referrer increases the users privacy and the image proxy isn't
any longer required to cloak the referrer on websites which are using hotlinking
protection based on referrers.
2015-05-19 15:33:17 +02:00
Frederic Guillot d189bda524 Enable Strict-Transport-Security header for HTTPS 2015-05-17 13:40:56 -04:00
Frederic Guillot 72a7d43b0f Rename proxy functions 2015-05-17 13:33:13 -04:00
Mathias Kresin 30a2852bad remove unused namespace imports and functions 2015-04-23 23:37:33 +02:00
Mathias Kresin 7ea37a1790 remove unnecessary javascript actions
They do exactly the same as the non javascript version.
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 f002723654 move write_debug to the right position
write_debug isn't executed if an exception is catched.
2015-04-23 23:37:33 +02:00
Mathias Kresin 46d69b15f6 minor feed edit dialog improvments
- redirect to feed edit dialog if the changed feed settings couldn't be saved
- add default values and drop isset (similar to the feed add dialog)
2015-04-11 23:26:28 +02:00
Mathias Kresin 1afb73b82d Expose all picoFeed errors to the Frontend when adding a subscription 2015-04-11 16:01:15 +02:00
Frederic Guillot 892fb517ae Display an error message if the feed already exists + sync locales 2015-04-10 20:48:09 -04:00
Mathias Kresin f346af2f38 keep selected options on feed adding error 2015-04-10 23:09:19 +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 3a65e5ee64 do mark-feed-as-read in javascript without reload
follow-up to 4809f736dc. Update
integration tests, to ensure that all articles are marked read, instead
of only visible.
2015-03-08 13:19:29 +01:00
Mathias Kresin 4809f736dc implement mark-feed-as-read in javascript 2015-03-01 19:56:28 +01:00
Frederic Guillot 3a80fccbab Merge pull-request #330 2015-02-07 10:28:38 -05:00
Mathias Kresin f3e9b4d9b5 improve image-proxy
- use passthrough mode for image proxy (fixes #295)
- add image proxy when rendering an article (fixes #314)
- add referrer cloaking option to feed options (fixes #319)
2015-02-06 07:11:21 +01:00
Mathias Kresin ddcae31d48 add multiple plural support for translations
fixes #242
2015-01-30 19:45:23 +01:00
Mathias Kresin a2686ae21d add option to disable mark as read for original link
fixes #196
2015-01-30 00:14:01 +01:00
Frederic Guillot 33a6e50c96 Add debug_mode config option and update vendor 2015-01-28 21:57:34 -05:00
Mathias Kresin 59500bfeb7 update counter/rework redirect to unread on feeds page
The redirect to the unread page after a manual refresh only, if new
items could be fetched and we where redirected to the subscriptions
page because of a former nothing_to_read.

Update the unread counter after refreshing either one feed or all feeds.

Redirect to unread if nothing_to_read is set, but unread items exists.
This could be the situation with the remember me function, when new items
are fetched while the browser was closed.
2015-01-28 05:26:55 +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
Mathias Kresin 525048bbb2 code cleanup
Add feeds only once to the feed_ids array (feed model), drop now unused select-db action.

Use $_SESSION['loggedin'] in favour of $_SESSION['user'] to reflect which information we do
expect from this session variable. Add nothing else than a flag, which indicates a logged in
user, to $_SESSION['loggedin'].

It's not necessary to know the current user name, since we do only have one user
per database. Same for the language setting. The database defines the front-end language.

Resolves bug where the password gets stored in the $_SESSION['user'] after a remember_me
login.
2015-01-28 05:24:17 +01:00
Mathias Kresin 21ac0a5fd9 fix compatibility for php < 5.5 2015-01-18 18:40:00 +01:00
Mathias Kresin 76825cb673 use radio buttons to select the login database
allows one click logins to not default databases using passwordmanagers
like keefox.
2015-01-18 13:25:38 +01:00
Frederic Guillot e08ba7771d Change session lifetime and do not use the image proxy for https urls 2015-01-17 19:17:44 -05:00
Frederic Guillot cd1a0115c2 Minor cleanups 2015-01-17 18:53:40 -05:00
Mathias Kresin cfd03efc01 Fix database hijacking
Check if a requested database can be selected. Error out if not.
This prevents automatic fallbacks to the default database.

Remove the authorized information from the session if a new database
gets selected.

Factor out logout function to reuse existing code.
2015-01-17 21:14:44 +01:00
Mathias Kresin db94d94de3 Improve user notice about failed feeds
Show feeds with errors always at the top and highlight them

Changes the feed order to:

1. failed
2. enabled
3. disabled

Order alphabetical within each group.

Show a warning message with a hin to the console if feeds have issues

Fixes #300, #303
2015-01-15 02:04:35 +01:00
Mathias Kresin 360fc9076e improve sub navigation on config page
Don't hide the active element, it annoying to use the navigation if the
menu items changing there position with every click. Indicate the active
menu item instead, similar to the header navigation.

May I've worked to long with windows systems, but help and about have to
be the last menu items :-). I've reorderd the menu items to what I think
user need more often.

A sub-navigation should not change its parent heading. Changed that as
well.
2015-01-13 22:50:59 +01:00
Frederic Guillot 6a1515c0cc Fix english typo 2015-01-12 18:07:09 -05:00