Revert https://github.com/FreshRSS/FreshRSS/pull/2913
I have not seen any difference with/without this fix, and it might be
due to the fact that is is blocked by CSP.
At least in Chrome, it generates CSP warnings.
If it should be re-introduced, see warning suggestions:
> Refused to execute inline script because it violates the following
Content Security Policy directive: "default-src 'self'". Either the
'unsafe-inline' keyword, a hash
('sha256-gcoEgwf1rABkUXPaVY2M1RH34tUHWGDn9nAAn/kGYUE='), or a nonce
('nonce-...') is required to enable inline execution. Note also that
'script-src' was not explicitly set, so 'default-src' is used as a
fallback.
* Fix fetch preview
#fix https://github.com/FreshRSS/FreshRSS/issues/2923
In MariaDB / MySQL, we cannot start a new query if we have not consumed
the previous buffered query fully.
* Fix for reload
* Typo in comment
* doc: Write proper doc for internationalization
* Apply suggestions from code review
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/internationalization.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* getContentByParsing follow HTML redirections
Add the ability to follow HTML redirections in getContentByParsing:
```html
<meta http-equiv="Refresh" content="1; url=https://example.net/article123.html" />
```
* Better regex
* Trim http-equiv
* Fix nav_menu mark-as-read
#Fix https://github.com/FreshRSS/FreshRSS/issues/2905
Fix regression from https://github.com/FreshRSS/FreshRSS/pull/2588
We need info about the first item (id_max) before being able to output
nav_menu. Before https://github.com/FreshRSS/FreshRSS/pull/2588 we used
to output everything in memory before starting to produce an output. Now
that we stream the output, we need a temporary buffer until we have
received the first item/article.
* Repair loading page
* Simplify CSS
Make it work in Chrome as well
* Lint
* Partial revert
* Base max_id solely on current time
* Table overview of compatible clients
I found it difficult - especially for newcomers - to find and pick a
client, and I believe a table would help.
Help welcome to fill-in the blancs.
* Use ➖
Instead of ❌
* A bit more info on Unread
* FeedMe 3.15
FeedMe 3.15 beta added support for Podcasts in FreshRSS :-)
* A bit of re-ordering
* FeedMe partial support of labels
* A bit for Reeder
* Reeder, Augier
* French version
* Ignore i18n gen.dir key
* Add a makefile target to update an i18n key
* Mark some i18n keys to ignore
* Reformat i18n files correctly
* Make i18n keys sort case-sensitive
Calling `make i18n-format` was always inverting 4 lines:
- gen.date.dec with gen.date.Dec
- and gen.date.nov with gen.date.Nov
I don't know why these particular lines and not the others, but it
appeared the sort function was case insensitive due to the
`SORT_FLAG_CASE` flag passed to the `ksort` function. Removing this flag
makes the calls to the formatter idempotent and more reliable.
Unfortunately it moves a lot of lines since the `_` character is
considered differently.
* Check i18n files are correctly formatted on Travis
cron job was not passed the environment variable FRESHRSS_ENV as it
should
This resulted in messages during cron to not be logged according to
FRESHRSS_ENV level
* Add new last_login param to default user config
* Add English translation strings for last login feature
* Update last_login when user successfully logs in.
* Add last_login column to manage users screen
* Add last_login to user details screen
* Remove accidental docker-compose.yml
* Fix whitespace
* Use last modified time for config file
* Remove last_login field from default user config
* Touch user configuration file upon succesful login
* Add translations with todos
* Fix whitespace
* Use last_user_activity
* Semi-colomn
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
* Fix bad relogging clients
Some clients (like EasyRSS) are still using the old HTTP Authorization
header after having logged to log in with another user.
We should not attempt to process Authorization headers during a login
request
* Typo
* A bit safer
Avoid null exception
* Update 04_Subscriptions.md
- ajouter un flux
- import/export
* Update 04_Subscriptions.md
* Update 04_Subscriptions.md
* Update 04_Subscriptions.md
Translated in english from https://github.com/Saimyx/FreshRSS/edit/master/docs/fr/users/04_Subscriptions.md
* Update 04_Subscriptions.md
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/fr/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update 04_Subscriptions.md
* Update docs/en/users/04_Subscriptions.md
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Update docs/en/users/04_Subscriptions.md
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
* Language improvements
* Language improvements
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
#Fix https://github.com/FreshRSS/FreshRSS/issues/2956
Bug/feature introduced by https://github.com/FreshRSS/FreshRSS/pull/2947 (which was following the specification better)
The original code `strpos($e_id, '/') !== null` was wrong (it can never be null, only false or integer), but the idea was to check whether the client was sending a short form (decimal) or long form of the ID (hexadecimal with prefixes including slashes). Since it has not given problem until my recent typo fix, this means that the short form is apparently not used by the clients we tested. But now that we are back to following the specification better, it looks like a client such as Reeder 4 is sending an hexadecimal form without a prefix, which breaks the detection.
This patch changes the detection, which should work in all known cases AND comply with the specification
https://feedhq.readthedocs.io/en/latest/api/terminology.html#items
* Show subscription management button on mobile
* Show aside box-shadow on Origine only when opened
* Reduce padding of Origine posts on mobile
* Shrink stick component with long input
* Show Origine configure icons on mobile
* Show the slider full width on mobile
* Improve the look of forms on mobile
* Fix Ansum theme
* Fix BlueLagoon theme
* Fix Dark theme
* Fix Flat theme
* Fix Mapco theme
* Fix Origine-compact theme
* Fix Pafat theme
* Fix Screwdriver theme
* Fix Swage theme
* Fix Alternative-Dark theme
* Apply RTL script on themes
Co-authored-by: triatic <42704418+triatic@users.noreply.github.com>
FeedReader 2.10.0 sends something like
`T=cd3421a73e8a09f955449d02beaf9593b0c0265cZZZZZZZZZZZZZZZZZ&r=user/-/state/com.google/read&i=-/tag%3Agoogle.com&i=-/2005%3Areader/item/0005a4b97779db22`
to `/api/greader.php/reader/api/0/edit-tag`
The first `i=-/tag/google.com` is wrong and cannot be converted to an entry ID.
This resulted in:
> PHP Warning: gmp_init(): Unable to convert variable to GMP - string is not an integer in /var/www/FreshRSS/p/api/greader.php on line 35
* Fever integer type for feed ID
#Fix
https://github.com/FreshRSS/FreshRSS/issues/2940#issuecomment-623022435
* Fix feed_id
* Ensure string for entry ID
To be compatible with 32-bit platforms.
Before, the type was inconsistent depending on architecture + database
* Integer for entry count functions
There were two checkboxes with labels set on the left: it was looking
weird and inconsistent with the rest of the application.
Also, since the Websub checkbox cannot be checked by the user (i.e. it
is entirely managed by the backend), I just hide the line when Websub is
disabled. It would be better to never show the checkbox and adapt the
label to say something like "Websub is enabled for this feed", but I
prefer to avoid changing all the locales.
Last point: an input should always have one and only one label. Websub
checkbox had two labels, which can be hardly supported by assistive
technologies.
Reference: https://developer.mozilla.org/en-US/docs/Learn/Forms/How_to_structure_a_web_form#Multiple_labels
Filenames were created with the username of the current user. However,
when we export the files with the CLI, the current user is "_".
This commit makes the username always required in the `exportFile`
method so we make sure to always manipulate a real value. Consequently,
the filenames can be formatted correctly.
Obviously, this has absolutely no impacts since the CLI doesn't consider
the HTTP headers. It just makes things a bit more clear. It's a first
step to remove the concept of "default user".
Small fixes related to when WebSub changes address:
* When unsubscribing, one must use the current/old address, not the
newly found selfUrl;
* This change
https://github.com/FreshRSS/FreshRSS/pull/2659#discussion_r347263068 was
wrong, so reverted to the first version. We must obey the rules also for
feeds for which the initial WebSub enabling is not finished, otherwise
we never have a chance to redirect the feed to the proper selfUrl.