Commit Graph
4544 Commits
Author SHA1 Message Date
Frans de Jonge a23a7f2dbb [lang] Tags management → tag management (#3125)
* [lang] Tags management → tag management

Cf. <https://github.com/FreshRSS/FreshRSS/pull/3121#issuecomment-662922474>.

* Move tag management underneath subscription management
2020-07-23 12:15:46 +02:00
Germs2004andAlexandre Alapetite 6c8120f9ba Update CREDITS.md (#3117)
* Update CREDITS.md

credit line added as requested.  Thank you for the honor of being on your list despite my tiny contribution so far.

* Update CREDITS.md

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-07-23 11:36:23 +02:00
Alexis Degrugillier 909fdaca31 Add tag management page (#3121)
The new page allows to create, delete and rename tags.

See #3058
2020-07-23 11:31:38 +02:00
LucasVerneyDGE 12d2baf64d Update doc about default configuration (#3124)
See https://github.com/FreshRSS/FreshRSS/issues/3066
2020-07-23 11:26:11 +02:00
Alexis Degrugillier 399ce39579 Add language in JS context (#3116) 2020-07-14 12:31:47 +02:00
Alexis Degrugillier f5676273fc Add tooltips on entries (#3115)
See #3111
2020-07-14 11:50:36 +02:00
Alexis Degrugillier 35eed83b64 Add a way to disable shortcuts (#3114)
When the user do not want to use a shortcut, he can let the shortcut value
empty. This will save an empty configuration thus disabling the shortcut.
The load default action allows to use default shortcut only for disabled
shortcuts.

See #3110
2020-07-14 11:02:30 +02:00
Alexis Degrugillier 8d8211b2a5 Add machine-readable dates in views (#3106)
This will allow to make some transformations on dates when needed.
See #3103 and #853
2020-07-14 10:51:45 +02:00
Marien Fressinaud 877f5f539b fix: Test setupMigrations doesn't return false (#3113)
`file_put_contents` can return 0 if there’s nothing to write in the
`applied_migrations.txt` file, which is equivalent to `false`. Since
there are no migrations yet, this is what happens. Because this value
(i.e. `0`) is tested next in the `app/install.php` file, the install
script was failing.
2020-07-14 10:25:48 +02:00
Germs2004 cada19eb87 US-English translation improvement (#3112) 2020-07-14 09:56:01 +02:00
Alexandre Alapetite b7fd6d2d94 Show feed name inside the article (#3081)
* Show feed name inside the article

#fix https://github.com/FreshRSS/FreshRSS/issues/3079

* Normal view add date in subtitle

#fix
https://github.com/FreshRSS/FreshRSS/issues/3079#issuecomment-650109551
2020-07-13 15:46:50 +02:00
Alexandre Alapetite f98a092566 Dropdown menu max-height (#3102)
Reduce it on big screens
2020-07-11 13:23:10 +02:00
Marien FressinaudandAlexandre Alapetite 8619cf6fa6 Add a migration system (#2760)
* Add a Minz_Migrator class

Until now, we updated the database structure somewhere in the code but
it wasn't always consistent and somehow complicated to find. Also, this
code was always checked for nothing.

The Migrator aims to improve and ease the creation of migrations. It
should improve the way we apply the updates, making the update server
almost useless.

References:

- example of migration (before Migrator): https://github.com/FreshRSS/FreshRSS/commit/cc0db9af4f980829faa4bf0960617807b32fb4fa#diff-11a53443fa81512b128c66b065df0679R10
- update server: https://github.com/FreshRSS/update.freshrss.org
- PR moving the code of the update server to the core: https://github.com/FreshRSS/FreshRSS/pull/1760

* Automatically apply migrations

For now, administrators are used to have nothing to do during an update
else than getting the new code. I suggest to keep this behaviour and
automatically apply migrations if we detect new ones.

Another solution would be to create a CLI command and ask admins to call
it after getting the new code. It could hide migrations errors to end
users, but admin can forget to apply migrations since there are not used
to it.

* Add documentation for Minz Migrator

* Execute migrations even if next ones are applied

* Change mechanism to prevent multiple update at once

* Use mkdir to create the lock and to test it exists

Reference: https://stackoverflow.com/a/731634

* Append .lock to applied_migrations_path

There are no needs to define another file to serve as a lock.

* Change migrations naming convention

* Apply suggestions from code review

Co-Authored-By: Alexandre Alapetite <alexandre@alapetite.fr>

* Perform a low-cost migration versions comparaison

* Clarify version numbers concerning the migration system

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-07-08 12:11:55 +02:00
Frans de Jonge 4894a9e791 [CI] Switch to fixed hadolint version (#3092) 2020-07-07 19:04:18 +02:00
Alexandre Alapetite 3f9518b377 Hide feed credentials when adding a new feed (#3099)
Avoid showing HTTP Basic Auth credentials in feed error log and in feed
title (when there is no title provided)
2020-07-07 10:54:28 +02:00
Alexandre Alapetite cbcbd64acf Fix HTTP Basic Auth when adding a new feed (#3098)
#fix https://github.com/FreshRSS/FreshRSS/issues/3097
Error from https://github.com/FreshRSS/FreshRSS/pull/3027
2020-07-06 23:14:21 +02:00
Sandro e9fd37e5ca Always rewrite blogger.com to https (#3088)
Closes https://github.com/FreshRSS/FreshRSS/issues/2654#issuecomment-650787325
2020-07-04 11:17:22 +02:00
jakem72360 4593594544 Fixed nginx split paths config issue (#3077)
* Fixed nginx split paths config issue

* Improved config comments.

* s/fixes/see/

* Added link to nginx issue tracker
2020-07-04 11:16:09 +02:00
Alexis Degrugillier d7d39f0736 Change how updating a key works (#3072)
Before, to update a key from the reference language (en), the key was deleted
then created. This way was unproductive for all keys already translated.
Now, the key is updated in all untranslated languages.

See https://github.com/FreshRSS/FreshRSS/pull/3068#issuecomment-646868894
2020-06-22 13:24:55 +02:00
Alexandre Alapetite 051f1649f7 FeedMe table manage feeds + fix warning addFeed (#3075)
FeedMe is able to add/remove subscriptions.

Fix minor bug introduced by
https://github.com/FreshRSS/FreshRSS/pull/1731
If the category ID is provided, we must first search for the existing
category before trying to add a category with the provided name.
Fix:

```
SQL error addCategory: ["23000",19,"UNIQUE constraint failed:
category.name"]
```
2020-06-21 10:30:12 +02:00
Alexandre Alapetite 17d7fd46ee Reeder update table (#3074)
https://github.com/FreshRSS/FreshRSS/issues/3031#issuecomment-647047364
2020-06-20 23:51:28 +02:00
Alexandre Alapetite 5bb47918e3 API Compatbility Reeder (#3073)
#fix
https://github.com/FreshRSS/FreshRSS/issues/3031#issuecomment-646973334
Reeder sends e.g. `feed/feed/247`
2020-06-20 22:46:27 +02:00
Alexandre Alapetite b9d2e6457a Fetch feed name / website / description if empty (#3071)
#fix https://github.com/FreshRSS/FreshRSS/issues/3067
2020-06-20 16:54:03 +02:00
Ed Sandor 0e33ab6544 Update CREDITS.md to include Ed Sandor for PR 3060 (#3069) 2020-06-20 01:34:19 +02:00
Alexandre Alapetite a0256023a1 API discard common Path Info errors (#3061)
Some apps auto-complete `/api/greader.php` while some do not.
Discard common errors instead of failing, to be more user-friendly.
E.g. if the user types the full API URL in Readrops https://github.com/FreshRSS/FreshRSS/issues/3059#issuecomment-644149548
2020-06-19 23:01:51 +02:00
bpatathandAlexandre Alapetite 5c9d6a5396 Add auto-registration when using http_auth (#3003)
* Add auto-registration when using http_auth

* Document HTTP auth auto-registration

* Check email variable for HTTP auth auto-registration

* Auto-create HTTP users by default

* Fix Context init

(I will provide in another PR a better fix requiring a bit of global refactoring)

* Init language

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-06-19 23:01:19 +02:00
baaef3d9f4 3041 en us localization (#3060)
* Initial locaization from international english to United States English

examples:
favourite -> favorite
optimise -> optimize
occured -> occurred
labelled -> labelled
ok -> okay

* More spelling corrections

default English occured->occurred
cancelled -> canceled
labelled -> labeled

* Undo key spelling change

* i18n format and admin.php translating

* Translating admin.php

* more admin.php translating

* Translating conf.php

* Translating feedback.php and format command

* Translating gen.php

* Translating index.php

* Translating sub.php

* Translating user.php

* Translating install.php

* Fix 'there is no idle feed'

* FIx 'there is no feed to refresh"

* Add i18n manipulation option to ignore all unmodified translation keys

* Lint fixes

* Update keys newly add since original branch

* Revert unintenntional ru 'translation'

* Code review revisions

* Fix leading whitespace in ignore_unmodified api

* Update app/i18n/en-us/gen.php

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* Update app/i18n/en-us/admin.php

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* Update app/i18n/en-us/admin.php

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* Update error message for Make ignore-unmodified keys to use Make syntax.
(inline with 3062) Also rename ignore-unmodifed-key ->
ignore-unmodified-keys

* Replace makefile leading spaces with tabs

* Code review revisions

* Retab added php functions

* Missed tab replace

* Remove stray '-> todo'

Co-authored-by: root <root@x-freshrss.lan.ewsandor.com>
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2020-06-19 22:59:27 +02:00
Frans de Jonge 9489cca1e3 [i18n] Update Dutch translation (#3063) 2020-06-16 09:49:21 +02:00
Alexis Degrugillier 7c76e74e33 Update rules to use Make syntax (#3062) 2020-06-15 22:16:22 +02:00
Alexis Degrugillier caeb660f29 Add a way to disable/enable users (#3056)
If you want to block users without deleting their account, you can now
disable them from the interface.
2020-06-14 19:50:09 +02:00
Alexandre Alapetite 6edbeaaf6a Add error log (#3055)
For https://github.com/FreshRSS/FreshRSS/issues/3054
2020-06-13 21:19:19 +02:00
Marien Fressinaud 15505a0377 tec: Refactor the export feature (#3045)
Even if the issue #3035 seemed pretty simple at a first glance, it was
more complicated than I expected. Because we send CSP headers AFTER
running the controller actions, it means we can't "echo" any content
from the controller. It's in fact a good practice, but it was easier at
the time we developed the feature.

To fix that, the only thing I had to do was to move the `print()` and
`readfile()` function into the view. The problem was that we needed to
output the content from the CLI too. Then, things became more
complicated. I decided to extract the export-related methods in a
`FreshRSS_Export_Service` class, in order to use it from both the
controller and the CLI. It was an opportunity to refactor the whole
feature in order to make it a bit more linear and easy to read.

Reference: https://github.com/FreshRSS/FreshRSS/issues/3035
2020-06-13 19:36:24 +02:00
Petra Lamborn 7a748e25ab Fix inline code tag contrast in ansum.css (#3050)
* Remove line from ansum.css, fixing contrast

As with #3047 #3048, current behavior produces very pale-on-white text in inline code tags

* Update CREDITS.md

#3048 and related
2020-06-13 00:22:14 +02:00
Alexandre Alapetite e6105fdf61 Fix API quickadd (#3051)
* Fix API quickadd

#fix https://github.com/FreshRSS/FreshRSS/issues/3049

* Response query, streamName
2020-06-13 00:21:35 +02:00
Alexis Degrugillier 0910cf34c7 Add support for extensions in Docker environment (#3042)
By default, the container starts without extensions. But if for some reasons,
you need to add them without copying or moving some code, you can embed them
while starting the container. The syntax is:
```
make start extensions="/full/path/to/extension/1 /full/path/to/extension/2"
```
2020-06-10 23:16:14 +02:00
Alexis Degrugillier 7f76c8e553 Add a language reference while adding a new one (#3044)
Before, all new languages were generated from the reference language which
was English. It makes sense for new languages but not so much for new language
flavor (ex: French Canadian versus French French)
Now, there is a way to select the reference language while adding a new one.
2020-06-10 23:14:47 +02:00
Petra f34f1ff8f1 Edit mapco.css (#3048)
Otherwise end up with (almost) white-on-white
2020-06-10 23:08:02 +02:00
Pablo Caro c9397e4a0b Add credit related to #3032 (#3040)
https://github.com/FreshRSS/FreshRSS/pull/3032
2020-06-07 12:34:39 +02:00
138d9ca658 Return the correct Content-Type for SVG favicons (#3032)
* Return the correct Content-Type for SVG favicons

* Use mime_content_type to check file type

* Use tab instead of spaces

* Remove extra blank lines

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* Update f.php

* Better obey HTTP/1.1 304 Not Modified rules about headers https://tools.ietf.org/html/rfc2616#section-10.3.5
* Do not fail if the optional `fileinfo` is not available
* Handle more cases such as PNG, GIF, BMP...

* Add Content-Type for default favicon

* Do not repeat HTTP headers in HTTP 304 response

According to https://tools.ietf.org/html/rfc2616#section-10.3.5 it is better not to repeat HTTP headers in a HTTP 304 Not Modified response

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-06-06 23:29:46 +02:00
Alexis Degrugillier b2b249d6d6 Fix user queries when they contain " (#3037)
Before, the user queries were working filter-wise but they failed at being displayed
properly in the configuration page. Thus they were stored without the search param.
Now, the search is URL encoded to avoid that kind of behavior and keep the search
param through out the user query's life.
2020-06-06 20:59:53 +02:00
Alexis Degrugillier 1694264e2c Modify shebang to be more portable (#3038)
The new shebang is a portable way to find the php interpreter. It works
on Mac, GNU/Linux and BSD.
2020-06-06 19:04:21 +02:00
Alexis Degrugillier dc68783fc8 Add controls on media (#3036)
Now, there is a shortcut to play or pause media available from an
entry. If there is more than one media available, only the first
one will be targeted.

See #1952
2020-06-05 23:37:05 +02:00
Alexis Degrugillier 8c4d71da2e Add missing translations (#3034)
* Add missing translations

* Add a simple way to check if an i18n key exists

There is a rule in the makefile to access it directly
2020-06-05 20:16:04 +02:00
Alexis Degrugillier 36bda2e715 Add language detection when the user is not logged in (#3022)
Before, when the user was not logged in, pages where translated with the '_' user language.
Now, they are translated with the user preferred language if there is one supported by FreshRSS or with the system default language.
2020-06-05 10:10:46 +02:00
Alexis DegrugillierandAlexandre Alapetite d4554fa087 Change add feed action (#3027)
* Docker Alpine 3.12 (#3025)

https://alpinelinux.org/posts/Alpine-3.12.0-released.html
With PHP 7.3.18 (from 7.3.17) (and Apache 2.4.43 unchanged).
No other significant change spotted

* Ensure feed attributes are used before load

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-06-05 10:09:31 +02:00
Alexis Degrugillier 27f0b61418 Fix form layout (#3028)
The login form layout was broken for BlueLagoon and Screwdriver themes. The 'about' link was
displayed next to the form since the later didn't have a height. I removed completely the
rule since it seems that it has no effect, except the one aforementioned.
2020-06-03 19:17:17 +02:00
Alexandre Alapetite 0085b5e0c1 Docker Alpine 3.12 (#3025)
https://alpinelinux.org/posts/Alpine-3.12.0-released.html
With PHP 7.3.18 (from 7.3.17) (and Apache 2.4.43 unchanged).
No other significant change spotted
2020-06-01 13:13:12 +02:00
Brooke d4c98e2637 Updates PHPMailer to 6.1.6 (#3024)
* Update PHPMailer to 6.1.6

Fixes a security issue in PHPMailer 6.1.5 and earlier

* Remove .DS_Store
2020-06-01 12:22:57 +02:00
Tibor Repček 2a4fed6c23 Update gen.php (#3020) 2020-05-31 22:32:37 +02:00
Alexandre Alapetite 0ddb4b7383 Start 1.16.3-dev 2020-05-31 22:32:13 +02:00