aboutsummaryrefslogtreecommitdiff
path: root/app/Models
AgeCommit message (Collapse)Author
2022-01-30Fix ctype_alnum (#4182)Gravatar Alexandre Alapetite
* Fix ctype_alnum #fix https://github.com/FreshRSS/FreshRSS/issues/4180 Ensure `ctype_alnum()` gets a string * Changelog
2022-01-29Fix keep state after favourites tags (#4178)Gravatar Alexandre Alapetite
* Fix keep state after favourites tags #fix https://github.com/FreshRSS/FreshRSS/issues/4124 regression * Optimisation
2022-01-12Improvement: menu icons (#4004)Gravatar maTh
* 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-09Add spell checking with typos (#4138)Gravatar Alexandre Alapetite
* Add spell checking with typos Implement https://github.com/FreshRSS/FreshRSS/pull/4134#issuecomment-1008027558 * GitHub Actions attempt * Quiet wget * Makefile
2022-01-08Use typographic quotes (#4133)Gravatar Alexandre Alapetite
* 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-08Fix various typos and spelling errors in documentation, comments and code. ↵Gravatar Thomas Renes
(#4134)
2022-01-06Fix several PHP8.1 warnings (#4123)Gravatar Alexandre Alapetite
* 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-05[CI] PHPCS: check for opening brace on same line (#4122)Gravatar Frans de Jonge
* [CI] PHPCS: check for opening brace on same line * make fix-all * Minor comments Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2022-01-04PHPStan level 5 (#4110)Gravatar Alexandre Alapetite
* 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-02Fix regression user init (#4116)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/4115
2022-01-01Fix most PHPDocs errors (#4107)Gravatar Alexandre Alapetite
Contributes to https://github.com/FreshRSS/FreshRSS/issues/4103 https://phpstan.org/writing-php-code/phpdoc-types
2021-12-31Add PHPStan (#4021)Gravatar Alexandre Alapetite
* 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-31Fix article filter (#4092)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/4057 Several search filters where missing for the automatic article actions
2021-12-31Search on article IDs (#4058)Gravatar Alexandre Alapetite
* Search on article IDs Partial implementation of https://github.com/FreshRSS/FreshRSS/issues/4053
2021-12-02Fix some PHPstan errors (#4019)Gravatar Alexandre Alapetite
Fix some wrong variables found by https://github.com/FreshRSS/FreshRSS/issues/4016
2021-12-02Minz request avoid custom methods (#4020)Gravatar Alexandre Alapetite
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-02Fix more PHP 8.1 null warnings (#4018)Gravatar Alexandre Alapetite
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/4012
2021-10-16Stats: replace flotr2 with chart.js (#3858)Gravatar maTh
* 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-09-27Detect enclosure as images using file extension (#3861)Gravatar Alexandre Alapetite
* 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-19Improved feed action filters (#3303)Gravatar Alexandre Alapetite
* 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-11Headline structure improvement (#3830)Gravatar maTh
* 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-08-30UI: Add optional thumbnail and summary on feed items (#3805)Gravatar ORelio
* 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-30Fix wrong method name (#3808)Gravatar Alexandre Alapetite
Fix error from https://github.com/FreshRSS/FreshRSS/pull/2275 but that line was not used just yet anyway
2021-08-22Fallback for feeds with empty title (#3787)Gravatar Alexandre Alapetite
* 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-14Better catch when a user does not exists (#3751)Gravatar Alexandre Alapetite
#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-07-24Search labels (#3709)Gravatar Alexandre Alapetite
* 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-24Fix marking as read a label with SQLite (#3711)Gravatar Alexandre Alapetite
Cf. https://github.com/FreshRSS/FreshRSS/pull/3709#issuecomment-885334063
2021-05-18Fix array_chunk key index bug (#3631)Gravatar Alexandre Alapetite
* 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-08Fix several comments syntaxes (#3615)Gravatar Alexandre Alapetite
Mainly wrong `@return` types in comments
2021-05-08More cases of max SQL variable number (#3586)Gravatar Alexandre Alapetite
Follow up of https://github.com/FreshRSS/FreshRSS/pull/3553
2021-03-27Fix regression media attachments (#3565)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3564 Bug introduced by https://github.com/FreshRSS/FreshRSS/pull/3361
2021-03-26Suport standard HTTP 410 Gone (#3561)Gravatar Alexandre Alapetite
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-24Fix TT-RSS import (#3553)Gravatar Alexandre Alapetite
2021-03-23Fix DB lock bug during refresh (MariaDB) (#3559)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3552
2021-03-23Check pdo_sqlite for export/import SQLite (#3545)Gravatar Alexandre Alapetite
2021-03-09SimplePie prevent cache pollution (#3502)Gravatar Alexandre Alapetite
* 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-09Reload full content when changed (#3506)Gravatar Alexandre Alapetite
* 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-07fix updateEntryPrepared (#3500)Gravatar Alexandre Alapetite
2021-03-07SQLite: fix updateEntry (#3461)Gravatar Alexandre Alapetite
* 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-02-28Travis: Enforce phpcs line length + whitespace (#3488)Gravatar Alexandre Alapetite
* 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-27Remove + conversion in search except for tags (#3489)Gravatar Alexis Degrugillier
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-26"Show all" option on labels (#3472)Gravatar Alexis Degrugillier
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-20Fix feed sort order (#3466)Gravatar Alexis Degrugillier
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-20Add full content delimiter and action (#3463)Gravatar Alexis Degrugillier
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-16Add a content action parameter to work with CSS selector (#3453)Gravatar Alexis Degrugillier
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-02INSERT ... ON CONFLIT DO NOTHING for addEntry (#3409)Gravatar Alexandre Alapetite
#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-01-16CURLOPT parameters per feed (#3367)Gravatar Eris
* 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-12Fix images in enclosures without MIME type (#3361)Gravatar Alexandre Alapetite
#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-11Fix commitNewEntries query (#3357)Gravatar Craig Andrews
There was an erroneous '; at the end of the commitNewEntries DELETE query, resulting in an exception during actualization with this output: ``` FreshRSS starting feeds actualization at 2021-01-11T14:06:09+00:00 FreshRSS actualize candrews... PHP Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''' at line 1 in /var/www/localhost/htdocs/FreshRSS/lib/Minz/Pdo.php:45 Stack trace: #0 /var/www/localhost/htdocs/FreshRSS/lib/Minz/Pdo.php(45): PDO->exec() #1 /var/www/localhost/htdocs/FreshRSS/app/Models/EntryDAO.php(167): Minz_Pdo->exec() #2 /var/www/localhost/htdocs/FreshRSS/app/Controllers/feedController.php(505): FreshRSS_EntryDAO->commitNewEntries() #3 /var/www/localhost/htdocs/FreshRSS/app/Controllers/feedController.php(548): FreshRSS_feed_Controller::actualizeFeed() #4 /var/www/localhost/htdocs/FreshRSS/lib/Minz/Dispatcher.php(119): FreshRSS_feed_Controller->actualizeAction() #5 /var/www/localhost/htdocs/FreshRSS/lib/Minz/Dispatcher.php(47): Minz_Dispatcher->launchAction() #6 /var/www/localhost/htdocs/FreshRSS/lib/Minz/FrontController.php(81): Minz_Dispatcher->run() #7 /var/www/localhost/htdocs/FreshRSS/app/actualize_script.php(75): Minz_FrontController->run() #8 {main} thrown in /var/www/localhost/htdocs/FreshRSS/lib/Minz/Pdo.php on line 45 Results: ```
2021-01-09Do not import feed causing DB error (#3347)Gravatar Alexandre Alapetite
* Do not import feed causing DB error The DB error might be that the new feed tries to redirect to an already existing feed, in which case #fix https://github.com/FreshRSS/FreshRSS/issues/3339 * Add feed bug