Alexandre Alapetite
1c5cf71859
Fix Fever 32 bit ID issue + more PHP type hints ( #4201 )
...
* Fix Fever 32 bit ID issue + more PHP type hints
#fix https://github.com/FreshRSS/FreshRSS/issues/4200
Follow up and fix regression from https://github.com/FreshRSS/FreshRSS/pull/4110
* More PHP type hints with PHPStan
* Fix pull problem
* Avoid more nulls
2022-02-06 14:31:36 +01:00
Luc SANCHEZ
87b181af21
Draft:Add interface and add typehinting ( #4130 )
...
* Add interface and add typehinting
* Simplify and complete
* inheritdoc
Co-authored-by: Luc SANCHEZ <l.sanchez-ext@ubitransport.com >
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr >
2022-02-05 11:47:28 +01:00
Alexandre Alapetite
47e242aa77
Fix ctype_alnum ( #4182 )
...
* Fix ctype_alnum
#fix https://github.com/FreshRSS/FreshRSS/issues/4180
Ensure `ctype_alnum()` gets a string
* Changelog
2022-01-30 15:53:17 +01:00
Alexandre Alapetite
8808fb4545
Fix keep state after favourites tags ( #4178 )
...
* Fix keep state after favourites tags
#fix https://github.com/FreshRSS/FreshRSS/issues/4124 regression
* Optimisation
2022-01-29 14:19:16 +01:00
maTh
d2b6fe099a
Improvement: menu icons ( #4004 )
...
* default icons
* icons Flat theme
* icons Swage theme
* icon gets bright when hover: Ansum theme
* icon gets bright when hover: Blue lagoon theme
* icon gets bright when hover: Origine/Origine Compact theme
* compressed SVG
* Better formated SVG/XML files
* Update bookmark-tag.svg
2022-01-12 23:04:59 +01:00
Alexandre Alapetite
4e2dff4591
Add spell checking with typos ( #4138 )
...
* Add spell checking with typos
Implement https://github.com/FreshRSS/FreshRSS/pull/4134#issuecomment-1008027558
* GitHub Actions attempt
* Quiet wget
* Makefile
2022-01-09 18:21:40 +01:00
Alexandre Alapetite
1acd3ab09b
Use typographic quotes ( #4133 )
...
* Use typographic quotes
* A few fixes
* Fix
* Fix not saved
* Implement feedback
* Detail
* Revert spoken English fixes
Left for a future dedicated discussion
* More reverts
* Final reverts
* Final minor
2022-01-08 21:58:55 +01:00
Thomas Renes
916df412f5
Fix various typos and spelling errors in documentation, comments and code. ( #4134 )
2022-01-08 16:25:17 +01:00
Alexandre Alapetite
8e398d24f1
Fix several PHP8.1 warnings ( #4123 )
...
* Fix several PHP8.1 warnings
Taking advantage of https://github.com/FreshRSS/FreshRSS/pull/4121
* Couple oh type hints missing
* Compatibility PHP 7
* Fix variadic PHPDocs syntax
2022-01-06 22:39:35 +01:00
Frans de Jonge
d339b6dd45
[CI] PHPCS: check for opening brace on same line ( #4122 )
...
* [CI] PHPCS: check for opening brace on same line
* make fix-all
* Minor comments
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr >
2022-01-05 00:52:24 +01:00
Alexandre Alapetite
1335a0e3cf
PHPStan level 5 ( #4110 )
...
* Fix most PHPDocs errors
Contributes to https://github.com/FreshRSS/FreshRSS/issues/4103
https://phpstan.org/writing-php-code/phpdoc-types
* Avoid func_get_args
Use variadic syntax instead https://php.net/manual/functions.arguments#functions.variable-arg-list
And avoid dynamic functions names when possible to more easily identify calls and unused functions.
Contributes to https://github.com/FreshRSS/FreshRSS/issues/4103
* PHPStan level 3
* PHPStand level 4
* Update default to PHPStan level 4
* Towards level 5
* Fix level 4 regression
* Towards level 5
* Pass PHPStan level 5
* Towards level 6
* Remove erronenous regression from changelog
https://github.com/FreshRSS/FreshRSS/pull/4116
2022-01-04 13:59:09 +01:00
Alexandre Alapetite
a19b4534f9
Fix regression user init ( #4116 )
...
#fix https://github.com/FreshRSS/FreshRSS/issues/4115
2022-01-02 18:19:40 +01:00
Alexandre Alapetite
3f6aa42b81
Fix most PHPDocs errors ( #4107 )
...
Contributes to https://github.com/FreshRSS/FreshRSS/issues/4103
https://phpstan.org/writing-php-code/phpdoc-types
2022-01-01 11:26:56 +01:00
Alexandre Alapetite
77e9877316
Add PHPStan ( #4021 )
...
* Add PHPStan
#fix https://github.com/FreshRSS/FreshRSS/issues/4016
https://phpstan.org/
```sh
composer run-script phpstan
```
* More fixes
* Fix global variables
* Add .phtml
* Fix merge
https://github.com/FreshRSS/FreshRSS/pull/4090
* Fix more warnings
* Fix view errors and enable in CI
* ReturnTypeWillChange
* Dynamic view type
* Fix Minz static/self bug
2021-12-31 17:00:51 +01:00
Alexandre Alapetite
f13ef3b102
Fix article filter ( #4092 )
...
#fix https://github.com/FreshRSS/FreshRSS/issues/4057
Several search filters where missing for the automatic article actions
2021-12-31 13:13:03 +01:00
Alexandre Alapetite
fb15a2d804
Search on article IDs ( #4058 )
...
* Search on article IDs
Partial implementation of https://github.com/FreshRSS/FreshRSS/issues/4053
2021-12-31 13:10:41 +01:00
Alexandre Alapetite
00dbde68fb
Fix some PHPstan errors ( #4019 )
...
Fix some wrong variables found by https://github.com/FreshRSS/FreshRSS/issues/4016
2021-12-02 23:30:13 +01:00
Alexandre Alapetite
a2ab9cf83a
Minz request avoid custom methods ( #4020 )
...
Take advantage of PHP7+ null-coalescing operator `??` to make code more standard, shorter, and faster instead of custom function with no extra functionality.
Allows code to be better tested and fix two PHPstan errors:
```
------ -----------------------------------------
Line app/Controllers/configureController.php
------ -----------------------------------------
410 Cannot unset offset 'rid' on string.
------ -----------------------------------------
------ ------------------------------------
Line lib/Minz/FrontController.php
------ ------------------------------------
70 Cannot unset offset 'c' on string.
71 Cannot unset offset 'a' on string.
------ ------------------------------------
```
https://github.com/FreshRSS/FreshRSS/issues/4016
2021-12-02 23:25:07 +01:00
Alexandre Alapetite
4e00c2d337
Fix more PHP 8.1 null warnings ( #4018 )
...
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/4012
2021-12-02 21:05:28 +01:00
maTh
02641de32e
Stats: replace flotr2 with chart.js ( #3858 )
...
* include Chart.js
* page: main statistics. Flotr.js replaced with Chart.js
* main stats + repartition
* Delete: repartition.js + stats.js
* delete flotr2
* add libs in README
* polish
* code polish
* fixed amount of week days and months
* added manget link for LibreJS
* added: @license-end
* phpcbf + jshint formatting
* delete old code
* fix stats
* fix Comments
* finally I found the issue and fixed its best
* fix the month stats
* Whitespace fixes
* Remove flotr2
* Rename to chart.min.js
* Remove console.log
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr >
2021-10-16 12:00:07 +02:00
Alexandre Alapetite
a473b90ff9
Detect enclosure as images using file extension ( #3861 )
...
* Detect enclosure as images using file extension
Support e.g. https://www.sciencesetavenir.fr/atom.xml , which does not include any type hint.
```html
<link rel="enclosure" href="https://example.net/assets/img/ZZZ.jpg " title="YYY"/>
```
Useful for https://github.com/FreshRSS/FreshRSS/pull/3805
* Add AVIF and WebP
2021-09-27 22:24:26 +02:00
Alexandre Alapetite
a7aca6c0ab
Improved feed action filters ( #3303 )
...
* Re-order some feed options
* Option to auto mark as read existing titles
* Option to keep at max n unread articles per feed
2021-09-19 10:56:38 +02:00
maTh
9712e4d888
Headline structure improvement ( #3830 )
...
* header: h1 deleted - full logo included
* template: config - display
* WIP
* shortcut configs. added fieldset. do not display the border by default
* system.phtml
* subscription: add feed or category
* wip
* wip
* Update bookmarklet.phtml
* Update archiving.phtml
* Update queries.phtml
* Update profile.phtml
* Update manage.phtml
* auth+update
* Update template.rtl.css
* fixed FreshRSS logo (Theme: Mapco)
* Update mapco.rtl.css
* Update _layout.scss
* fixed FreshRSS logo (theme: Dark)
* fix: FreshRSS logo (Theme: BlueLagoon)
* fix: FreshRSS logo (Theme: Ansum)
* fixed: FreshRSS logo (Theme: Alternative Dark)
* fix: FreshRSS logo (Theme: Pafat)
* fix: FreshRSS logo (Theme: Screwdriver)
* fix: FreshRSS logo (theme: Swage)
* Minor lint
* little fix: FreshRSS logo (Theme: Origine)
* Fix: FreshRSS logo (Theme: Origine Compact)
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr >
2021-09-11 18:22:26 +02:00
ORelio
50ba6bbe07
UI: Add optional thumbnail and summary on feed items ( #3805 )
...
* UI: Add optional thumbnail and summary on feed items
Implements #561
* UI: Thumbnail: Own column, Custom size, Lazy load
* UI: Thumbnail: Remove unnecessary CSS rule
Remove rule already defined in base theme, no override needed
* CSS lint + RTL
* Improve thumbail and summary generation
* Support img alt
* Missing htmlspecialchars
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr >
2021-08-30 10:58:06 +02:00
Alexandre Alapetite
812eda1fa0
Fix wrong method name ( #3808 )
...
Fix error from https://github.com/FreshRSS/FreshRSS/pull/2275 but that line was not used just yet anyway
2021-08-30 08:02:39 +02:00
Alexandre Alapetite
ee2d2db780
Fallback for feeds with empty title ( #3787 )
...
* Fallback for feeds with empty title
Address a part of https://github.com/FreshRSS/FreshRSS/issues/3776 for existing feeds
* Also strip www prefix
* Reuse fallback logic
2021-08-22 13:33:58 +02:00
Alexandre Alapetite
7d83321286
Better catch when a user does not exists ( #3751 )
...
#fix https://github.com/FreshRSS/FreshRSS/issues/3735
Before, we were relying on an exception during the first stages of user initalisation. Now the check is explicit and cleaner, producing a more appropriate HTTP response for the API.
2021-08-14 12:22:42 +02:00
Alexandre Alapetite
705be9a6a1
Search labels ( #3709 )
...
* Search labels
#fix https://github.com/FreshRSS/FreshRSS/issues/3704
* Documentation
* Allow list without quotes
* Allow boolean AND searches
* Allow searching any label
* fix labels alias
2021-07-24 19:32:43 +02:00
Alexandre Alapetite
247dfa6c1b
Fix marking as read a label with SQLite ( #3711 )
...
Cf. https://github.com/FreshRSS/FreshRSS/pull/3709#issuecomment-885334063
2021-07-24 19:25:59 +02:00
Alexandre Alapetite
8d8b792007
Fix array_chunk key index bug ( #3631 )
...
* Fix array_chunk key index bug
#fix https://github.com/FreshRSS/FreshRSS/issues/3630
We still want array entries indexed sequentially from zero https://php.net/function.array-chunk
* One missing
2021-05-18 22:50:51 +02:00
Alexandre Alapetite
607f7e7254
Fix several comments syntaxes ( #3615 )
...
Mainly wrong `@return` types in comments
2021-05-08 10:27:18 +02:00
Alexandre Alapetite
f2557bed9a
More cases of max SQL variable number ( #3586 )
...
Follow up of https://github.com/FreshRSS/FreshRSS/pull/3553
2021-05-08 00:56:06 +02:00
Alexandre Alapetite
87d1036647
Fix regression media attachments ( #3565 )
...
#fix https://github.com/FreshRSS/FreshRSS/issues/3564
Bug introduced by https://github.com/FreshRSS/FreshRSS/pull/3361
2021-03-27 22:16:44 +01:00
Alexandre Alapetite
eeff1a17b0
Suport standard HTTP 410 Gone ( #3561 )
...
When a feed returns an HTTP 410 Gone, mute the corresponding feed, i.e. stop refreshing it.
Example of such feed, Les Décodeurs (Libération) https://rss.liberation.fr/rss/100893/
2021-03-26 19:13:23 +01:00
Alexandre Alapetite
de40f3ad56
Fix TT-RSS import ( #3553 )
2021-03-24 19:04:51 +01:00
Alexandre Alapetite
90a0028d49
Fix DB lock bug during refresh (MariaDB) ( #3559 )
...
#fix https://github.com/FreshRSS/FreshRSS/issues/3552
2021-03-23 22:31:48 +01:00
Alexandre Alapetite
b88e44a594
Check pdo_sqlite for export/import SQLite ( #3545 )
2021-03-23 16:29:58 +01:00
Alexandre Alapetite
b7fdfbb894
SimplePie prevent cache pollution ( #3502 )
...
* SimplePie prevent cache polution
#fix https://github.com/FreshRSS/FreshRSS/pull/3367#issuecomment-766250249
#fix https://github.com/FreshRSS/FreshRSS/pull/3494#issuecomment-790113663
* Fix bug
* Minor improvement
* Update cache filename in FreshRSS (1/2)
* cacheFilename temp
* New SimplePie get_cache_filename()
* Fix typos
* Update lib/SimplePie/SimplePie.php
Typo
* Include user-agent and timeout
* fix array_merge
* Declaration
* force_feed was lost in a commit
2021-03-09 08:41:47 +01:00
Alexandre Alapetite
ef4a826e34
Reload full content when changed ( #3506 )
...
* Reload full content when changed
If an article is changed, reload also its full content when applicable.
* Compute hash before getting full content
* Revert mix two PRs
* Update app/Controllers/feedController.php
2021-03-09 08:41:01 +01:00
Alexandre Alapetite
0206fc1e5e
fix updateEntryPrepared ( #3500 )
2021-03-07 19:41:17 +01:00
Alexandre Alapetite
b10cd770ee
SQLite: fix updateEntry ( #3461 )
...
* Draft of fix for updateEntry
#fix https://github.com/FreshRSS/FreshRSS/issues/3130
* Fix for SQLite
* Update app/Models/EntryDAO.php
Fixed in https://github.com/FreshRSS/FreshRSS/pull/3500
* Unbuffered streaming only for MySQL
2021-03-07 17:34:47 +01:00
Alexandre Alapetite
947e918f05
Travis: Enforce phpcs line length + whitespace ( #3488 )
...
* Update Travis line length
* Also check whitespace in CSS files
* Fix line length ext.php
* More syntax, string templates
* Fix exclude-pattern
* Test JS files as well
2021-02-28 12:26:24 +01:00
Alexis Degrugillier
ea5cd595c9
Remove + conversion in search except for tags ( #3489 )
...
Before, every + sign was converted to a space to allow to search for
spaces. But the documentation stated that to search for space one has
to enclose the string in quotes. This has a confusing behavior when
searching for a string containing a + sign.
Now, the + conversion is kept only for the tag search since it's the
only one documented that way.
See #3454
2021-02-27 17:34:48 +01:00
Alexis Degrugillier
449fee7a2c
"Show all" option on labels ( #3472 )
...
It uses the favorite option to keep a similar experience through out the application and also to limit the number of options.
See #3263
2021-02-26 23:31:01 +01:00
Alexis Degrugillier
4313c09e68
Fix feed sort order ( #3466 )
...
Before, the feeds in the list weren't properly ordered. Uppercase
values were before lowercase values.
Now, the feed order is forced to ignore the case.
See #3228
2021-02-20 00:33:33 +01:00
Alexis Degrugillier
9682fcfebb
Add full content delimiter and action ( #3463 )
...
Before, when appending or prepending the content of the CSS selector
content, it was added to the content. It was working fine for the
first call but every subsequent calls were pilling the retrieved
content on top of the already retrieved content. Thus we had an ever
growing content with a lot of duplication.
Now, the CSS selector content is identified by an HTML comment which
is used to remove the content for every subsequent calls.
The bug was introduced in #3453
2021-02-20 00:30:18 +01:00
Alexis Degrugillier
fe1fba9828
Add a content action parameter to work with CSS selector ( #3453 )
...
Before, when retrieving article contents with CSS selector, the content
of the RSS feed was replaced by the content of the CSS selector. It works
well in most of the cases but if there is a different content in the feed
and in the selector, the former is lost.
Now, there is a parameter to decide which action is performed after retrieving
the content. By default, the previous behavior is kept. But now, it is
possible to append or prepend the CSS selector content to the feed content.
See #3451
2021-02-16 18:00:49 +01:00
Alexandre Alapetite
1ee1fcce91
INSERT ... ON CONFLIT DO NOTHING for addEntry ( #3409 )
...
#fix https://github.com/FreshRSS/FreshRSS/issues/3402
Explicit `INSERT OR IGNORE` / `ON CONFLICT DO NOTHING` for the
`addEntry()` method, which does expect some duplicates.
2021-02-02 00:03:59 +01:00
Eris
ee175dd616
CURLOPT parameters per feed ( #3367 )
...
* Working curlopt_params
* Examples
* curl_params for fetching the article
* cleanup
* clarification
* Remove debugging
* Options corrected
* Removed Debugging
* i18n not needed (right now)
* Translations and UI rework
* Checks in update.phtml
* Unset Proxy&Cookies
* remove clutter
* minor fuckup
* i18n added properly
* resolve Errors
* linting errors
* linting errors, again
* Review
* Minor revert
* Minor i18n: de
Co-authored-by: maru <maru@nyx.im >
Co-authored-by: Aeris <a3x@eris.cc >
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr >
2021-01-16 22:32:18 +01:00
Alexandre Alapetite
6d8b1ba834
Fix images in enclosures without MIME type ( #3361 )
...
#fix https://github.com/FreshRSS/FreshRSS/issues/3358
Assume enclosures without a mime type, without a length, but with either
a width or a height are images
2021-01-12 09:34:13 +01:00