20 Commits

Author SHA1 Message Date
Alexandre Alapetite
5b28a35003 Pass PHPStan level 9 (#6544)
* More PHPStan

* More, passing

* 4 more files

* Update to PHPStan 1.11.4
Needed for fixed bug: Consider numeric-string types after string concat
https://github.com/phpstan/phpstan/releases/tag/1.11.4

* Pass PHPStan level 9
Start tracking booleansInConditions

* Fix mark as read

* Fix doctype

* ctype_digit
2024-06-09 20:32:12 +02:00
Luc SANCHEZ
30c7a61a9b Use strict_types (#5830)
* Little's optimisations and booleans in conditions

* Apply strict type

* Apply strict type

* Apply strict type

* Fix multiple bugs with PHP 8.2 and 8.3

* Many declares missing, more errors fixed

* Apply strict type

* Another approach

* Stronger typing for Minz_Session

* Fix case of SQLite

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-11-16 22:43:00 +01:00
Alexandre Alapetite
fe7d9bbcd6 Typed view model classes (#5380)
* Typed view model classes
* Add ability to provide a typed view model class to a controller
* Use `::class` instead of string for referring to classes
* Examplified with `stats` and `javascript` controllers / views (more to do)
* Also useful for extensions (my usecase today), which did not have the ability to define own view model attributes before.

* Typo
2023-05-11 12:53:32 +02:00
Alexandre Alapetite
509c8cae63 Dynamic OPML (#4407)
* Dynamic OPML draft
#fix https://github.com/FreshRSS/FreshRSS/issues/4191

* Export dynamic OPML
http://opml.org/spec2.opml#1629043127000

* Restart with simpler approach

* Minor revert

* Export dynamic OPML also for single feeds

* Special category type for importing dynamic OPML

* Parameter for excludeMutedFeeds

* Details

* More draft

* i18n

* Fix update

* Draft manual import working

* Working manual refresh

* Draft automatic update

* Working Web refresh + fixes

* Import/export dynamic OPML settings

* Annoying numerous lines in SQL logs

* Fix minor JavaScript error

* Fix auto adding new columns

* Add require

* Add missing 🗲

* Missing space

* Disable adding new feeds to dynamic categories

* Link from import

* i18n typo

* Improve theme icon function

* Fix pink-dark
2022-07-04 09:53:26 +02: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
c9d3d78340 CSP manually refreshing feeds
https://github.com/FreshRSS/FreshRSS/issues/1075
2016-02-27 17:51:13 +01:00
Marien Fressinaud
a1faa826bf Fix french i18n for last views 2014-12-11 21:44:25 +01:00
Marien Fressinaud
6655c1b429 Improve design of actualize notification
- Remove progress bar
- Show title of updated feed
2014-08-10 15:28:54 +02:00
Marien Fressinaud
ab9d656135 Block user to click many times on the refresh button
See https://github.com/marienfressinaud/FreshRSS/issues/513
2014-07-09 20:20:17 +02:00
Marien Fressinaud
4bdabbd39f Fix theme Origine2
It should be equivalent to Origine (modulo some improvements)

See https://github.com/marienfressinaud/FreshRSS/issues/320
2014-06-03 23:41:19 +02:00
Marien Fressinaud
b77d9c60ac Use complete instead of done during feed refresh
A request can fail: in this case, the progress bar is not updated by using
"done".
See #421
2014-02-13 21:15:50 +01:00
Marien Fressinaud
178af19fb0 Add possibility to open notification in JavaScript + new message
Notifications can be opened directly in JavaScript
Class .notification is now id #notification
New message when there is no feed to refresh
See 06abbd02c2 (comments)
2014-02-13 21:01:12 +01:00
Alexandre Alapetite
7d9a813ed3 Petite simplification mise à jour JavaScript
https://github.com/marienfressinaud/FreshRSS/pull/414
2014-02-06 18:48:49 +01:00
Alexis Degrugillier
ed61f9346f Changement du rafraichissement manuel des flux
Au lieu de lancer un rafraichissement sur l'ensemble des flux, le rafraichissement se fait sur 10 flux simultanément. Quand un flux est rafraichit, il lance le rafraichissement d'un autre flux jusqu'à épuisement des flux disponibles.
2014-02-05 20:12:23 -05:00
Alexandre Alapetite
b48b7939d7 JavaScript : Bug actualize quand il n'y a aucun flux
+ un peu de JSLint.
2014-01-02 19:08:21 +01:00
Alexandre Alapetite
878e96202e Grosse refactorisation pour permettre le chargement automatique des classes
C'est parti de changements pour
https://github.com/marienfressinaud/FreshRSS/issues/255 et finalement
j'ai continué la refactorisation...

Ajout de préfixes FreshRSS_ et Minz_ sur le modèle de SimplePie_.
Toutes les classes sont maintenant en chargement automatique (devrait
améliorer les performances en évitant de charger plein de classes
inutilisées, et faciliter la maintenance).
Suppression de set_include_path().
Si souhaité, certaines classes de Minz pourraient être déplacées dans un
sous-répertoire, par exemple les exceptions.

Tests et relecture nécessaires.
2013-12-15 03:30:24 +01:00
Alexandre Alapetite
c447e65c5a Chargement à la volée de actualize.phtml
Au lieu de faire une requête systématiquement à chaque action de
l'utilisateur vers actualize.phtml (qui est lourd à générer et à lire),
cette requête se fait maintenant uniquement lors de son utilisation.
2013-10-13 17:53:00 +02:00
Marien Fressinaud
19407e1ab6 Structure pour l'internationalisation terminée (voir bug #38) : il reste à faire la traduction en anglais notamment, rajouter une option pour changer la langue, détecter la langue préférée de l'utilisateur et voir si on peut migrer facilement l'installateur aussi 2013-04-27 13:40:48 +02:00
Marien Fressinaud
5768d0fc7f Amélioration esthétique pour l'actualisation des flux 2013-04-14 19:40:29 +02:00
Marien Fressinaud
9b9543109e Fix issue #39 : actualisation de tous les flux grâce à Ajax 2013-04-13 15:27:36 +02:00