58 Commits

Author SHA1 Message Date
Alexandre Alapetite
06abbd02c2 Rafraîchit uniquement les flux qui n'ont pas déjà été rafraîchis récemment
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/351
2014-02-11 22:10:55 +01:00
Alexandre Alapetite
0cabd1f50d Mutex par flux pour les actualisations
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/351
Nouvelle constante TMP_PATH comme répertoire pour stocker des fichiers
temporaires (si possible en mémoire et non sur disque, tel tmpfs pour
/tmp sur certaines distributions Linux)
Requiert PHP 5.2.1+ (contre 5.2.0 auparavant) pour le
`sys_get_temp_dir()`
2014-02-11 21:48:10 +01:00
Alexandre Alapetite
18403d9720 SQL : Supprime c.color
Implémente décision
https://github.com/marienfressinaud/FreshRSS/issues/295
Install.php pourrait peut-être être mis à jour pour supprimer
automatiquement la colonne, mais ce n'est pas fait dans ce patch.
2014-02-11 15:30:52 +01:00
Alexandre Alapetite
7fa620cce5 SimplePie Fuite de mémoire PHP 5.2
https://github.com/marienfressinaud/FreshRSS/issues/415
http://simplepie.org/wiki/faq/i_m_getting_memory_leaks
(Pas testé)
2014-02-08 15:57:19 +01:00
Alexis Degrugillier
aa63f9f64f Merge branch 'dev' into shortcuts
Ajoute le défilement automatique de l'article quand le partage est sélectionné.

Conflicts:
	p/scripts/main.js
2014-02-04 22:56:46 -05:00
Alexandre Alapetite
9aab83af11 SimplePie : Meilleur cache des flux avec signature MD5
Contribue à
https://github.com/marienfressinaud/FreshRSS/issues/351#issuecomment-31755012
Pour les flux qui ne supportent pas les requêtes conditionnelles.
Filtre les tags et commentaires gênants avant la signature (style
<lastBuildDate> qui change tout le temps sans que le contenu change,
<slash:comments>, ainsi que les commentaires XML qui détruisent le cache
comme <!-- généré en X secondes -->)

Il reste quelques flux à débogger dont le cache n'est pas encore
optimal. C'est pour cela qu'il reste quelques syslog(LOG_DEBUG, ...).

Au passage, évite que SimplePie fasse une double requête pour vérifier
le cache si le serveur est un peu lent.

Un jour, il faudra nettoyer les changements faits à SimplePie et leur
remonter les patchs les plus intéressants.
2014-02-02 22:09:16 +01:00
Alexis Degrugillier
a201450b58 Modification des raccourcis de navigation
Modification du raccourci pour naviguer au premier article (Home au lieu de Shift+j)
Modification du raccourci pour naviguer au dernier article (End au lieu de Shift+k)
Ajout de modificateurs pour utiliser les touches de navigation dans d'autres contextes (Shift pour les flux, Ctrl pour les catégories)

Voir issue#256
2014-02-02 10:07:30 -05:00
Alexandre Alapetite
02d1dac0bb Rafraîchissement des flux en cache compatible multi-utilisateurs
Compatibilité multi-utilisateurs pour la mise à jour rapide des flux
avec cache
Correction de
cf8ee6bd48 (commitcomment-5247478)
Contribue à
https://github.com/marienfressinaud/FreshRSS/issues/351#issuecomment-31755012
2014-02-01 20:13:42 +01:00
Alexandre Alapetite
cf8ee6bd48 Rafraîchissement des flux en cache super rapide
Contribue à
https://github.com/marienfressinaud/FreshRSS/issues/351#issuecomment-31755012
Les flux non-modifiés et en cache ne coûtent maintenant presque plus
rien (304, ou délai de cache SimplePie non expiré), alors qu'avant
toutes les entrées étaient rechargées
2014-02-01 14:04:37 +01:00
Marien Fressinaud
dbfa922835 Changement du nom poche en wallabag
Le nom de poche a été changé en wallabag suite à "l'affaire Pocket".
Le changement a été impacté partout même au niveau du fichier de conf. À
priori ce n'est pas très impactant puisque poche n'est introduit que
dans cette version et qu'il ne devrait pas y avoir "trop" de testeurs.
Au pire si l'adresse poche/wallabag disparaît lors d'une migration, il
suffit de la ressaisir, ce n'est pas critique :)

Voir #397
2014-01-27 21:03:58 +01:00
Alexis Degrugillier
b0641fd0eb Modification des statistiques.
Ajout de la liste des 10 plus gros contributeurs
Ajout de règles CSS pour les thèmes Flat et Dark
Modification de l'affichage des camemberts (tri par nombre qui remplace le tri alphabétique)
2014-01-26 08:54:52 -05:00
Alexis Degrugillier
e98ac32716 Ajout de statistiques de l'application
Conflicts:
	app/i18n/en.php
	app/i18n/fr.php
2014-01-25 15:15:04 -05:00
Alexandre Alapetite
bc6aba67bb Bug récupération flux tronqués
Corrige https://github.com/marienfressinaud/FreshRSS/issues/381
2014-01-22 21:34:59 +01:00
Alexandre Alapetite
6f117abfb6 Bugs chargement des articles complets
Corrige https://github.com/marienfressinaud/FreshRSS/issues/365
Ajoute le nettoyage correct du HTML par SimplePie, ainsi que le décodage
des caractères HTML dans l'URL, et enfin un message dans le syslog pour
chaque article téléchargé
2014-01-18 22:54:53 +01:00
Alexandre Alapetite
f720d41cbf Mise à jour nom thèmes + chargement robuste des thèmes
Renomme : default -> Origine
En cas de thème introuvable, charge le thème par défaut, sinon le
premier disponible.
https://github.com/marienfressinaud/FreshRSS/issues/120
2014-01-13 22:27:22 +01:00
Alexandre Alapetite
eb50ab3b61 Mot de passe + nonce serveur
Début de https://github.com/marienfressinaud/FreshRSS/issues/104
2014-01-11 16:48:10 +01:00
Alexis Degrugillier
46a5bdea25 Ajout d'un filtre sur les articles lus
Ajout d'un filtre sur les articles favoris
2014-01-08 00:05:00 -05:00
Alexandre Alapetite
6eea96656a Utilise QUERY_STRING plutôt que PATH_INFO pour favicons
Corrige https://github.com/marienfressinaud/FreshRSS/issues/348
Revenir dessus en cas de problème de cache HTTP des favicons.
2014-01-05 18:06:06 +01:00
Alexandre Alapetite
4a19676cf2 Compatibilité MySQL 5.5 Windows
Testé vite fait avec MySQL 5.5 sous Windows, et les chaînes vides ''
utilisées jusqu'à présent dans le cas de booléens faux causaient une
erreur.
Vérifier s'il n'y a pas d'autres exemples ailleurs dans le code
2014-01-05 02:25:56 +01:00
Alexis Degrugillier
7db271e95e Add a shortcut to open the share div. The default shortcut is "s". 2014-01-03 00:01:29 -05:00
Alexandre Alapetite
67531f796f HTTP Auth : améliorations + changelog
* Affichage logo FreshRSS pendant la demande de nom d'utilisateur HTTP
* Meilleure page d'erreur si utilisateur HTTP non-configuré dans
FreshRSS + log

Je recommande donc de placer le .htaccess pour le contrôle d'accès dans
./FreshRSS/p/i/.htaccess et pas plus haut pour une meilleure mise en
cache et messages de connexion.
2014-01-01 17:01:09 +01:00
Alexandre Alapetite
a08201c414 SQL : Insère la catégorie par défaut dès la création des tables 2014-01-01 15:08:15 +01:00
Alexandre Alapetite
8beb15460a Sauvegardes avec extension .bak.php pour plus de sécurité
Évite le téléchargement
2014-01-01 05:06:36 +01:00
Alexandre Alapetite
bc4116ea77 Changement sauvegarde configuration
Changement oublié dans
66229a5d71
pour https://github.com/marienfressinaud/FreshRSS/issues/126
2014-01-01 04:54:44 +01:00
Alexandre Alapetite
66229a5d71 Minz : bug avec OPcache de PHP 5.5+
Minz ne prenait pas en charge OPcache (cache PHP) http://php.net/opcache
activé par défaut depuis PHP5.5.
Ce fut un peu dur d'isoler ce bug :-/
Il faut penser à appeler opcache_invalidate avant de ré-utiliser un
fichier par include().
Aussi, le mécanisme de lock() n'est plus approprié ni nécessaire.
Pour FreshRSS, évite l'utilisation de ModelArray car il ne restait que
quelques lignes d'utiles, et évite un héritage + appel de classe, ce qui
est toujours ça de gagné.
2014-01-01 04:39:39 +01:00
Alexandre Alapetite
1ac09e7fe4 Multi-utilisateur fonctionnel en HTTP Auth
+ Possibilité d'ajout / suppression d'utilisateur (seulement par
l'administrateur)
+ Divers changements pour le mode multi-utilisateur
https://github.com/marienfressinaud/FreshRSS/issues/126
+ Minz : Renomme "sel_application" en "salt'
2013-12-31 02:59:07 +01:00
Alexandre Alapetite
bd5d7a7bcb Cache HTTP compatible multi-utilisateur
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/126
2013-12-30 15:00:41 +01:00
Alexandre Alapetite
4d6ab45b03 Micro-optimisation : évite is_null et quelques if/else
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/303
2013-12-30 12:43:39 +01:00
Alexandre Alapetite
3cc073f2d1 Log compatible multi-utilisateur
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/126.
Il faudra restaurer la gestion du cache HTTP pour les logs
2013-12-30 12:39:21 +01:00
Alexandre Alapetite
92efd68a3a Début de mode multi-utilisateur avec http_auth
+ Légère optimisation de Minz_View.
+ Encore plus de tests de bibliothèques dans install.php
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/126 et
https://github.com/marienfressinaud/FreshRSS/issues/303
2013-12-30 01:03:32 +01:00
Alexandre Alapetite
96bdbafcea Refactorisation FreshRSS_Configuration
Implémente https://github.com/marienfressinaud/FreshRSS/issues/260
(évite les comparaisons de chaînes au profit des vrais booléens et
entiers)
Grosse simplification et réduction du code relatif à la configuration.
Supprime ConfigurationDAO.
Permet de simplifier considérablement configureController.
Évite de multiples copies des mêmes données en mémoire.
Évite de garder plusieurs versions de la configuration en mémoire
(auparavant : dans un tableau au niveau de ModelArray + au niveau de
FreshRSS_Configuration + en Session + des copies temporaires comme
ConfigurationDAO).
Ne stocke plus 'conf' en Session (n'était presque pas utilisé).
Évite de recharger plusieurs fois Translate inutilement.
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/303
2013-12-28 23:09:39 +01:00
Alexandre Alapetite
01a1dd09a8 Minz : refactorisation ModelArray et Log
Utilisation de fonctions natives de PHP comme file_put_contents et
var_export
Évite de garder un descripteur de fichier ouvert tout le temps
Et ModelTxt n'est plus utilisé
2013-12-28 17:29:38 +01:00
Alexandre Alapetite
9ac1496d63 Bouge anon_access dans config.php
L'accès anonyme n'est pas au niveau utilisateur mais au niveau global.
Bouge FreshRSS_Configuration::conf->anonAccess() qui était stocké dans
*_user.php vers Minz_Configuration::allowAnonymous() stocké dans
config.php
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/126
+ autres optimisations
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/260
2013-12-28 13:54:52 +01:00
Alexandre Alapetite
b99979cef7 Bug affichage ID category introduit récemment 2013-12-27 14:11:17 +01:00
Alexandre Alapetite
43fd0a5439 Mise à jour de f.url en base de données lorsque SimplePie découvre que l'adresse a changé
Et correction problème favicon lorsque l'adresse du flux a changé du
point de vue de SimplePie.
Plus petites optimisations.
2013-12-26 22:20:24 +01:00
Alexandre Alapetite
2c57e7254d Favicons : test pour améliorer le cache HTTP
Test d'utilisation de PATH_INFO plutôt que QUERY_STRING pour améliorer
la mise en cache.
À tester sur différents serveurs
2013-12-26 20:11:18 +01:00
Alexandre Alapetite
574d37bddc Favicons compatibles multi-utilisateurs
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/126
2013-12-26 19:58:17 +01:00
Alexandre Alapetite
2788aaeb1a Problème ctype_digit qui ne marche pas sur des variables qui sont déjà des entiers 2013-12-26 02:50:58 +01:00
Alexandre Alapetite
7eda2793bb Nouveau bouton pour lancer manuellement la purge des vieux articles
Attention, si on supprime des articles qui sont encore dans les flux
RSS, ils risquent de réapparaitre en cas de date manquante ou erronée,
ou si l'utilisateur augmente la date d'expiration.

Ce bouton est plus strict que la purge automatique qui conserve toujours
au moins le même nombre d'articles que dans le flux RSS en cours + 10.
2013-12-25 19:53:09 +01:00
Alexandre Alapetite
0b3d79745d Encodage titre flux pour cas Glazman 2013-12-25 18:50:05 +01:00
Alexandre Alapetite
c2375265c0 Fin taille historique
Permet d'éviter les problèmes de flux vides à l'importation
https://github.com/marienfressinaud/FreshRSS/issues/332 , ou de nombre
d'articles non-lus qui ne correspondent pas au nombre d'articles
affichés
2013-12-25 18:18:14 +01:00
Alexandre Alapetite
06d4b8d102 Option globale pour la taille minimale de l'historique par défaut
Plus une réorganisation des options
2013-12-25 17:37:52 +01:00
Alexandre Alapetite
a4b890b67f Suite gestion plus fine de l'historique 2013-12-25 14:29:29 +01:00
Alexandre Alapetite
87bfa195a6 Permet de configurer plus finement le nombre d’articles minimum à conserver par flux 2013-12-24 01:21:11 +01:00
Alexandre Alapetite
7b7acf5c87 Synchronisation quelques lignes blanches 2013-12-23 13:35:54 +01:00
Alexandre Alapetite
4bcfd591f0 Chargement automatique activé par défaut
Clôture https://github.com/marienfressinaud/FreshRSS/issues/308
2013-12-22 15:00:54 +01:00
Alexandre Alapetite
6b7d96d0ea Refactorisation : correction classes oubliées 2013-12-19 21:19:45 +01:00
Alexandre Alapetite
e29be10556 Recherches spéciales intitle: ou inurl: ou author:
Permet de chercher en utilisant intitle: ou inurl: ou author: comme dans
certains moteurs de recherche. Pour l'instant, un seul de ces mots clefs
à la fois peut être spécifié en tout début de chaîne de recherche et
sera appliqué à l'ensemble du reste de la recherche.
NB: À ajouter à la documentation, wiki
2013-12-16 22:22:56 +01:00
Alexandre Alapetite
ba71d7747a SQL : permet recherche du caractère dièse 2013-12-16 22:03:16 +01:00
Alexandre Alapetite
a1f8bade61 SQL : petits changement recherche
Traite mieux les caractères spéciaux.
Permet par exemple une recherche sur des mots contenant des apostrophes,
ou le signe pourcentage, etc.
Il faudra toujours essayer d'améliorer la recherche en particulier
lorsque plusieurs mots sont fournis
2013-12-16 21:58:47 +01:00