aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-12-28Add a file for each PDO class (#3297)Gravatar Alexis Degrugillier
Before, we had 5 classes in the ModelPdo file. It was bad for 2 reasons. The first reason is that it is considered bad practice to have multiple class in one file. This is especially true when using autoloading. On top of that it is less readable considering the size of the file. The second reason is that so far we were lucky. Everytime we needed to access the database, it was through the ModelPdo class which loads all the other classes. If we want to access directly the connection, it wont be loaded. On top of that, the system is configured to work on a single database, but as we have every connection definition in a single file, all classes were loaded at the same time. Thus using memory and processing time for nothing. Now, we have a file for each class. To work with autoloading, classes were slightly renamed to match autoloading rules.
2020-12-28Auto-renew cookie (#3287)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3169#issuecomment-685983797 Supplement https://github.com/FreshRSS/FreshRSS/pull/3170 When we get the long-term login cookie (i.e. when starting a new session), renew it at the same time for the same duration
2020-12-28SimplePie Strip comments (#3288)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3282 (workaround an nginx configuration bug) We do not need to keep HTML comments in RSS content.
2020-12-28Fix tag management translation (#3292)Gravatar Alexis Degrugillier
Before, feedback messages were not translated. Now, they are.
2020-12-26bump default logout from 30 days to 3 months (#3170)Gravatar Martin
* bump default logout from 30 to 365 days * * Change cookie duration to constant * Change cookie duration to three months * use class * use 90 days (otherwise login form says 91.3 days) * change class * also this works now Co-authored-by: Martin Rys <martin@rys.pw> Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2020-12-26Layout add subscription (#3289)Gravatar Alexandre Alapetite
* Category first I kept hitting the 'add' button for a category when adding a new feed * Blanks Mix of spaces
2020-12-26Better OPML import of feeds in multiple categories (#3286)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3284 Helps https://github.com/FreshRSS/FreshRSS/issues/1989 In OPMLs files in which feeds are listed several times, favour the version in a category instead of in no category.
2020-12-26Fix user queries with labels (#3285)Gravatar Alexis Degrugillier
Before user queries with labels were not translated. Actually, it was not even processed. Now those user queries are translated properly. See #3215
2020-12-26Extract autoloading process (#3283)Gravatar Alexis Degrugillier
* Extract autoloading process The process sits in its own file now to ease future improvements. * Change the autoload process Before, the autoload process was too restricted. It was really dependant on our code tree. It was hard to add more classes to be loaded automatically. On top of that, it did not support autoloading classes following the PSR-4 recommendation. Now, the autoload process is more open. It supports partially the PSR-4 recommendation, there is no specific code to load Minz classes or PHPMailer classes. This is the starting point to reorganize the codebase to introduce long waiting changes as seen in #789. It would be a nice to later rework the tree, rename classes, and add namespace in a fashion that follows the PSR-4. Then specific FRSS workarounds in the autoload could be dropped.
2020-12-22Cleaner use of session in install script (#3276)Gravatar Alexandre Alapetite
Fix warning about session already started during install. Refactor more code to use the same approach than in main FreshRSS. Did not address all read accesses (not important) but did cover all write accesses (important)
2020-12-22Prevent login before extra.js is loaded (#3275)Gravatar Alexandre Alapetite
Disable submit button until extra.js with its crypto functions is loaded.
2020-12-12Session compatibility PHP 7.1 and older (#3273)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3239 Reason: https://php.net/session-write-close used to return void and not boolean before PHP 7.2
2020-12-12Docker image for oldest supported PHP version (#3274)Gravatar Alexandre Alapetite
Add a Docker file, which can be used to test FreshRSS with our oldest supported PHP version. See https://pkgs.alpinelinux.org/packages?name=php5&branch=v3.4&arch=x86_64 PHP 5.6.36-r0
2020-11-26Fixes a minor jaggy motion of the sidebar. (#3266)Gravatar thamerx
* Fixes a minor jaggy motion of the sidebar. Fixes jaggy motion of the sidebar while scrolling on mobile clients. I didn't try many values aside from %200 cause it worked very well from the first time. I was using a Galaxy S8+ * Update p/themes/base-theme/template.css this one also works just as fine Co-authored-by: Frans de Jonge <fransdejonge@gmail.com> Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2020-11-23Ensure maximum date int (#3259)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3258
2020-11-12Update link to News+ Google Reader extension (#3252)Gravatar Alwaysin
* Remove News+ (Google Reader extension does not exist anymore) * Remove News+ (Google Reader extension does not exist anymore) * Update link to News+ Google Reader extension * Update link to News+ Google Reader extension * A few more links Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-11-12API fix continuation type (#3250)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3247
2020-11-12Chang wording "Actualize" to "Update" (#3248)Gravatar Marc Ole Bulling
* Fixed translation error (changed "Actualize" to "Update") * Fix Travis Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-11-11Fix initI18n (#3249)Gravatar Alexandre Alapetite
* Fix initI18n #fix https://github.com/FreshRSS/FreshRSS/issues/3246#issuecomment-725463337 #fix https://github.com/FreshRSS/FreshRSS/issues/3136 It was due to calling `initI18n()` before `FreshRSS_Context` is intialised in some situations Introduced by https://github.com/FreshRSS/FreshRSS/pull/3022 Will be better fixed when https://github.com/FreshRSS/FreshRSS/pull/3070 lands * Fallback condition
2020-11-09Update remember open categories (#3245)Gravatar Mejans
2020-11-04i18n ignore name of languages (#3240)Gravatar Alexandre Alapetite
2020-11-04Update CREDITS with a line for prashanttholia (#3244)Gravatar Prashant Tholia
2020-11-02Fixes #3052 (#3183)Gravatar Maurice Schleußinger
Add note about Reeder and publication dates as footnote to README.
2020-11-02db username regex relaxed to allow @ (#3241)Gravatar GuillaumePugnet
Co-authored-by: Guillaume Pugnet <guillaume.pugnet@avanade.com>
2020-11-02Remember open categories (#3185)Gravatar Prashant Tholia
* feature(normal) - Remember opened categories in the left menu Session storage based implementation to remember opened categories in left menu Issue Ref: #2248 * lib_phpQuery updates * Updates covering feedback points and functionality fixes * Feedback updates * Revert "lib_phpQuery updates" This reverts commit dcd23b9418405a2d14ee03c1fcadf90c04b267e1. * First review Change variable name to "remember" instead of "open". Start using localStorage instead of sessionStorage. Simplify code. * Simplify remember categories init function Replace 'session' with 'local' in function names and comment Set open categories CSS as same as when category is opened in 'active' unfold mode * Remove URLSearchParams check in remember categories init function * Delete open categories on login and logout * JSHint check fix * Second review * Make new mode the default for new users * Always open active category * Reduce / simplify code * i18n French * Revert default value Wait a bit more for this decision / change Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-11-01 i18n update for German - added missing de translations (#3237)Gravatar Fake4d
* Add DE Translation * i18n update for German * i18n update for German * i18n update for German * Fix ignore Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-10-22Docker LogFormat Alpine (#3235)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3233 In Alpine, we need to enable mod_logio.c to use %O. Revert to more standard %b https://httpd.apache.org/docs/2.4/mod/mod_log_config.html#logformat
2020-10-19Remember sidebar position (#3231)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3209 Extracted from https://github.com/FreshRSS/FreshRSS/pull/3185
2020-10-16Docker: Use Apache remoteip (#3226)Gravatar Alexandre Alapetite
#fix https://github.com/FreshRSS/FreshRSS/issues/3224 Log the client remote IP instead of the local proxy IP https://httpd.apache.org/docs/2.4/mod/mod_remoteip.html
2020-10-16Credits (#3229)Gravatar tonitonae
* Update FAQ with firewall issues. * Update docs/en/users/07_Frequently_Asked_Questions.md Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr> * Update credits with tonitonae's contributions. Co-authored-by: tonitonae <tonitonae@zetmail.com> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-10-15Update FAQ with firewall issues. (#3225)Gravatar tonitonae
* Update FAQ with firewall issues. * Update docs/en/users/07_Frequently_Asked_Questions.md Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr> Co-authored-by: tonitonae <tonitonae@zetmail.com> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-10-11Fix sanitize feed description (#3222)Gravatar Alexandre Alapetite
* Fix sanitize feed description #fix https://github.com/FreshRSS/FreshRSS/issues/3221 * Simplification
2020-10-11Misc. minorGravatar Alexandre Alapetite
Whitespace...
2020-10-06Minz allow parallel sessions (#3096)Gravatar Alexandre Alapetite
* Minz allow parallel sessions #fix https://github.com/FreshRSS/FreshRSS/issues/3093 * Array optimisation * Array optimisation missing * Reduce direct access to $_SESSION except in install process * Fix session start headers warning * Use cookie only the first time the session is started: `PHP Warning: session_start(): Cannot start session when headers already sent in /var/www/FreshRSS/lib/Minz/Session.php on line 39` * New concept of volatile session for API calls Optimisation: do not use cookies or local storage at all for API calls without a Web session Fix warning: ``` PHP Warning: session_destroy(): Trying to destroy uninitialized session in Unknown on line 0 ``` * Only call Minz_Session::init once in our index It was called twice (once indirectly via FreshRSS->init()) * Whitespace * Mutex for notifications Implement mutex for notifications https://github.com/FreshRSS/FreshRSS/pull/3208#discussion_r499509809 * Typo * Install script is not ready for using Minz_Session
2020-10-06tell git .png and .waff files are not text (#3211)Gravatar Carl Cravens
2020-10-06Use of existing tag name via input field (#3213)Gravatar knasdk
* Use of existing tag name via input field Use existing tag name, when tag name is typed into tag list's text field * Indentation mistake Just an indentation correction * Final correction Missed line 35.
2020-10-05Minz: Attach a notification to a request (#3208)Gravatar Alexandre Alapetite
* Minz: Attach a notification to a request Notifications should be attached to a request, not to a global session. Fix https://github.com/FreshRSS/FreshRSS/pull/3096#issuecomment-654891906 Prepare https://github.com/FreshRSS/FreshRSS/pull/3096 * Rename array * Avoid string constants Implement https://github.com/FreshRSS/FreshRSS/pull/3208#issuecomment-703243863 * Improved logic * Simplify storage https://github.com/FreshRSS/FreshRSS/pull/3208#discussion_r499511213 * Fix notification bug in configuration/system
2020-10-03Minz: support PHP8 lint (#3207)Gravatar Alexandre Alapetite
* Minz: support PHP8 lint Fix PHP8 Fatal error: Declaration of MinzPDO::query($statement) must be compatible with PDO::query(string $query, ?int $fetch_mode = null, mixed ...$fetch_mode_args) in /FreshRSS/lib/Minz/ModelPdo.php on line 159 Errors parsing /FreshRSS/lib/Minz/ModelPdo.php * Fix argument name * Please phpcs in Travis
2020-10-03Update SimplePie (PHP8) (#3206)Gravatar Alexandre Alapetite
Contributes to https://github.com/FreshRSS/FreshRSS/issues/3082 Includes https://github.com/FreshRSS/FreshRSS/pull/3180 Differences: https://github.com/simplepie/simplepie/compare/aaad78e6da098e14bec4fec552b3a2dbca7a2d45...692e8bc19bc4aca20b57474cca2a1d234ce89d63
2020-10-03lib_phpQuery support PHP 8 (#3186)Gravatar Prashant Tholia
* Update to support PHP 8 Replaced create_function calls with anonymous functions in lib/lib_phpQuery.php Ref Issue: #3082 * Remove commented code blocks * White space * More PHP8 fixes Fix: Fatal error: Array and string offset access syntax with curly braces is no longer supported in /FreshRSS/lib/lib_phpQuery.php on line 2174, etc. Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2020-10-03Optimize images (#3184)Gravatar Andrew Rabert
Used `oxipng --zopfli --opt max --strip all`
2020-10-03Add toggle password visibility button on login form (#3205)Gravatar flo0627
* Add password observer for login view and update Origine theme * Update Alternative-Dark style * Update BlueLagoon theme * Update Dark theme * Update Flat theme * Update Screwdriver theme * Update Origine-compact theme * Update Pafat theme * Coding style
2020-09-29Add Polish localization (#3190)Gravatar Bartosz Taudul
2020-09-29Silence new stylelint complaint (#3197)Gravatar Frans de Jonge
Cf. https://github.com/FreshRSS/FreshRSS/pull/3196#issuecomment-699928812 ``` p/themes/Ansum/_layout.scss 42:4 ✖ Unexpected empty line before rule rule-empty-line-before p/themes/Mapco/_layout.scss 42:4 ✖ Unexpected empty line before rule rule-empty-line-before ```
2020-09-28[fix] Add text color to base theme (#3196)Gravatar Frans de Jonge
2020-09-24Start 1.17.1-devGravatar Alexandre Alapetite
2020-09-22Release FreshRSS 1.17.01.17.0Gravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/3181
2020-09-17Changelog, creditsGravatar Alexandre Alapetite
2020-09-17SimplePie: Fix HTTP 301 permanent redirection (#3180)Gravatar Alexandre Alapetite
* SimplePie: Fix HTTP 301 permanent redirection When adding feeds it worked fine, but detecting permanent redirects for existing feeds was sometimes broken (only when PHP open_basedir was not set). Indeed, using the built-in CURLOPT_FOLLOWLOCATION instead of the manual method in SimplePie hides the list of HTTP redirects along the way, and prevents the distinction of e.g. 301 vs. 302 redirects. This patch disables CURLOPT_FOLLOWLOCATION in SimplePie, and fixes the manual method at the same time. The use of CURLOPT_FOLLOWLOCATION was nevertheless not systematic (only when open_basedir was not set), so now there is only one logic independent of open_basedir. I will send a PR upstream to SimplePie. How to test: pick a feed with 301 redirection such as HTTP to HTTPS, e.g. http://ing.dk/rss/term/341 Manually change back to previous address (to simulate a feed that is changing address) Refresh feed and observe whether the 301 redirect is obeyed. * Wrong blank
2020-09-17Fix CLI api_password (#3179)Gravatar Alexandre Alapetite
* Fix CLI api_password #fix https://github.com/FreshRSS/FreshRSS/issues/3177 Fix regression from https://github.com/FreshRSS/FreshRSS/pull/2675 * Update cli/_update-or-create-user.php Co-authored-by: oupala <oupala@users.noreply.github.com> Co-authored-by: oupala <oupala@users.noreply.github.com>