Commit Graph

69 Commits

Author SHA1 Message Date
Alexandre Alapetite
4038bc885c Corrige lien bigMarkAsRead
Corrige bug https://github.com/marienfressinaud/FreshRSS/issues/314
introduit par https://github.com/marienfressinaud/FreshRSS/issues/249
2013-12-05 12:15:09 +01:00
Alexandre Alapetite
b646bd2f08 JSON : utiliser application/json
Les réponses JSON utilisaient indument text/html
Repéré à cause de
https://github.com/marienfressinaud/FreshRSS/issues/306
2013-12-01 17:50:35 +01:00
Alexis Degrugillier
1e4e0f5f1e Force l'affichage d'un article lors du click 2013-11-28 23:07:00 -05:00
Alexis Degrugillier
7cc2fd6948 Force l'affichage d'un article lors du click 2013-11-28 23:03:09 -05:00
Marien Fressinaud
69662117a3 Ajoute raccourci load more
Permet de charger les articles suivants en appuyant sur "m" (par défaut)
2013-11-28 23:46:56 +01:00
Marien Fressinaud
ddb9650b5d Ajoute un peu de CSS à la page d'impression
Voir #122 et #166
2013-11-28 20:27:48 +01:00
Marien Fressinaud
3f63195c5f Première version pour imprimer les articles
Voir #122
2013-11-28 18:57:22 +01:00
Alexandre Alapetite
3be56f08b6 JS : Léger JSLint
Quelques corrections mineures suite à
https://github.com/marienfressinaud/FreshRSS/pull/291 plus autres
détails JS
2013-11-26 18:44:03 +01:00
Alexis Degrugillier
5550720a14 Merge remote-tracking branch 'upstream/dev' into issue283 2013-11-25 19:31:36 -05:00
Alexis Degrugillier
7e06d0df30 Changement de syntaxe pour être conforme à la norme utilisée ailleurs. 2013-11-25 19:30:02 -05:00
Alexandre Alapetite
03081fe9a2 Ajout du mode global pour icon()
Oublié dans
eae19e1363
2013-11-25 17:59:07 +01:00
Alexis Degrugillier
faf5225d4c Merge remote-tracking branch 'upstream/dev' into issue283 2013-11-24 19:35:33 -05:00
Alexis Degrugillier
9fee917c61 Ajout d'un flag pour se souvenir de l'état ouvert
ou fermé d'un article.
2013-11-24 19:33:34 -05:00
Alexandre Alapetite
ab26cb6ed8 Accessibilité sans images (expérimentation)
Expérimentation : utilisation de vraies images à la place des icônes
générées en CSS.
Permet de fournir un texte alternatif affiché en cas de non-chargement
de l'image (par choix ou problème réseau par exemple).
Meilleure sémantique (plutôt que le tag i détourné).
Implémente https://github.com/marienfressinaud/FreshRSS/issues/284
Il est toujours possible de changer d'icônes selon les thèmes grâce à
RSSThemes.php
2013-11-25 00:40:35 +01:00
Alexandre Alapetite
632423d97c Améliorations suite à icon()
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/284
2013-11-23 23:47:20 +01:00
Alexandre Alapetite
29137c0b04 Nouvelle fonction icon() pour générer le code HTML des icônes
Centralisation de la génération du code des icônes pour pouvoir plus
facilement le changer, en particulier en préparation d'améliorations
futures :
* ajouter des alternatives lorsque l'image n'est pas affichée ;
* améliorer l'accessibilité ;
* permettre de changer les icônes selon le thème graphique choisi ;
* simplifier les CSS.

Contribue à https://github.com/marienfressinaud/FreshRSS/issues/284
2013-11-23 23:18:18 +01:00
Alexandre Alapetite
6236f2a803 Encore des alternatives Unicode aux icônes
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/284
2013-11-23 17:29:23 +01:00
Alexandre Alapetite
de4e9d5a85 Corrige bug recherche dû au raccourci pour fermer un article
Corrige https://github.com/marienfressinaud/FreshRSS/issues/286
2013-11-23 15:13:01 +01:00
Alexandre Alapetite
305f1436e3 Accessibilité : Quelques alternative Unicode aux icônes
FreshRSS est maintenant utilisable en bonne partie sans CSS.
Ce patch inclut un caractère Unicode approprié en plus de certaines
icônes définies en tant qu'image en CSS.
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/284
Il manque encore certaines icônes, et les alternatives Unicode ne sont
pour l'instant pas montrées si la CSS est chargée mais que les images ne
le sont pas.
2013-11-21 22:23:23 +01:00
Alexis Degrugillier
ff1803e61a Ajout d'un raccourci pour refermer un article.
https://github.com/marienfressinaud/FreshRSS/issues/256
2013-11-17 15:26:20 -05:00
Marien Fressinaud
fb5bcbe044 Corrige bug mode endless dans la vue globale
Problème d'initialisation après le remaniement du code
Corrige #275
2013-11-17 12:42:10 +01:00
Alexandre Alapetite
c805b03148 Corrige style bigMarkAsRead
Corrige problème héritage de style pour bigMarkAsRead.
Plus détails
2013-11-15 17:26:22 +01:00
Alexandre Alapetite
9efb9388df bigMarkAsRead : utilisation sans JavaScript
et différent si l'utilisateur n'est pas connecté
Implémente https://github.com/marienfressinaud/FreshRSS/issues/249
2013-11-14 21:55:53 +01:00
Alexandre Alapetite
5bd52cdcb6 Mise à jour de la vue globale
* Nombre de non lus mis à jour automatiquement
* Mise à jour structure HTML
* Mise à jour design
Fusion manuelle depuis la 0.6-beta
0c96d3489b
2013-11-12 23:21:13 +01:00
Marien Fressinaud
a5240e0855 Fade out pour les notifications
Fluidifie un peu leur fermeture (le slideUp faisait disparaître la
notification avant qu'elle ne soit totalement refermée)
2013-11-12 22:51:39 +01:00
Marien Fressinaud
5fc72aa7fe Lance une actualisation des flux après import OPML
Le script d'actualisation est lancé après avoir importé les flux
automatiquement
Voir issue #196
2013-11-09 23:16:13 +01:00
Marien Fressinaud
1de8218182 Déplacement de confirm_action_script
Ce script a été intégré à main.js pour être certain que JQuery est
chargé au moment de l'initialisation

Voir commentaires commit c06aede546
2013-11-09 01:22:51 +01:00
Alexandre Alapetite
bdb69080f8 Affichage dynamique des favoris non lus
Corrige https://github.com/marienfressinaud/FreshRSS/issues/222
Il reste toujours une situation curieuse lorsqu'on a fini de lire tous
les favoris non-lus, mais à voir une autre fois
2013-11-09 00:46:43 +01:00
Marien Fressinaud
d4f636f26a Ne charge les raccourcis que sur la page principale 2013-11-08 23:15:29 +01:00
Marien Fressinaud
1b9f16771c Fix issue #208: chargement dynamique des jours
Les indications de jours (aujourd'hui, hier, à partir d'avant-hier) sont
maintenant chargés dynamiquement
2013-11-08 20:32:35 +01:00
Alexandre Alapetite
17f0c56d68 Corrige erreur async shortcuts 2013-11-08 10:49:14 +01:00
Marien Fressinaud
0382f4b152 Issue #235: ajout d'une condition pour Persona
Si la connexion n'est pas paramétrée, on ne charge pas Persona
2013-11-08 10:34:27 +01:00
Marien Fressinaud
fe0e980b0c Fix issue #235: annule le cache après connexion réussie 2013-11-08 10:27:10 +01:00
Alexandre Alapetite
5e2023392e Meilleur async pour Persona
Contribue à https://github.com/marienfressinaud/FreshRSS/issues/235
2013-11-08 10:13:21 +01:00
Marien Fressinaud
38819b61f5 Fix issue #235: Persona fonctionne de nouveau 2013-11-08 09:12:47 +01:00
Marien Fressinaud
5a2a5ee374 Issue #235: refactorisation code Persona
Le code pour la connexion via Persona a été bougée dans le fichier
main.js avec le reste du code JS
Ça ne marche toujours pas sous Firefox car il essaye d'initialiser
navigator.id.watch avant que le fichier login.persona.org/include.js
ne soit chargé
L'url est correctement écrite côté serveur pour permettre à Persona
d'indiquer au site que la connexion s'est bien passée
2013-11-07 23:50:21 +01:00
Alexandre Alapetite
4a999fb628 Améliorations chargement JS async
En particulier pour global_view.js.
Suppression d'une requête avortée dans Chrome.
2013-11-04 23:33:52 +01:00
Alexandre Alapetite
6fbb62a2fc Chargement asynchrone plus robuste
Fonctionne aussi si DOMContentLoaded est déjà consommé avant le
chargement de main.js, et permet d'attendre les autres scripts tels
jQuery si ceux-ci ne sont pas encore chargés.
2013-11-04 23:33:35 +01:00
Alexandre Alapetite
adc9a958af Préchargement et requêtes conditionnelles HTTP/1.1
Grosse amélioration des performances en utilisant le cache HTTP :
- Implémentation de HTTP/1.1, c.a.d. If-Modified-Since, If-None-Match,
If-Unmodified-Since, If-Match... avec la librairie
http://alexandre.alapetite.fr/doc-alex/php-http-304/
- Support de HEAD (HTTP /1.0).
- Préchargement de la page suivante (avec link next prefetch) dans le
cas de pagination.
- Et nouvelle possibilité de navigation pour les navigateurs qui
supportent "next".
- La date de dernier changement est pour l'instant primitive et
correspond au dernier changement de la session PHP ou
Configuration.array.php ou application.log ou touch.txt.
- touch.txt est modifié a chaque requête UPDATE ou INSERT ou DELETE.
2013-11-04 23:32:22 +01:00
Alexandre Alapetite
231516f523 Grosse optimisation JavaScript
* Fusion de endless_mode.js dans main.js car endless_mode.js est
toujours chargé et assez petit.
* Suppression des changements de style en JavaScript lors du chargement
(genre boucle de .hide(), ou d'ajout de classe ".stick") et
implémentation en PHP + CSS à la place.
* Chargement JavaScript asynchrone (defer + async) pour de meilleurs
performances.
* Utilisation préférable des événements globaux plutôt que des
événements pour chaque élément avec jQuery.on(events, selector) pour un
chargement plus rapide et moins de mémoire utilisée.
* Optimisation manuelle du JavaScript (sélecteurs CSS plus performants,
méthodes jQuery plus appropriées, etc.).
* Désactivation de init_img() qui était coûteux, lancé à un moment où
les images ne sont de toute manière pas encore chargées, et qui
n'apporte rien car il y a déjà un img {max-width:100%} en CSS.
* JavaScript en mode strict.
* Enfin, passage du code JavaScript dans JSLint et du coup nombreuses
corrections (syntaxe, variables, méthodes dépréciées...).
* Devrait permettre de fermer
https://github.com/marienfressinaud/FreshRSS/issues/121
* Au passage, quelques simplifications CSS pour de meilleures
performances.
2013-11-04 23:31:36 +01:00
Alexandre Alapetite
fb07117b78 Merge pull request #224 from Alkarex/manualLazyload
LazyLoad manuel pour les articles repliés
2013-11-04 14:17:11 -08:00
Alexandre Alapetite
7cf5e8ef33 Merge pull request #215 from Alkarex/notificationsMain
Fusionne notification.js dans main.js
2013-11-04 14:16:14 -08:00
Alexandre Alapetite
aff58561e9 Merge pull request #214 from Alkarex/updateUnreads
Mise à jour automatique des nombres d'articles non lus et favoris
2013-11-04 14:15:59 -08:00
Alexandre Alapetite
ed50db463d jQuery 2.x
Il semble qu'il y aurait pas mal de changements à faire pour supporter
IE8 (qui ne supporte pas les sélecteurs CSS3 par exemple).
Vue l'audience probable de FreshRSS, il me semble raisonnable de
commencer à IE9, et dans ce cas jQuery 2.x est mieux (entre autres plus
léger) que la branche 1.x qui supporte IE6+
http://jquery.com/browser-support/
2013-10-29 22:32:06 +01:00
Alexandre Alapetite
84c03dda5f LazyLoad manuel pour les articles repliés
LazyLoad.js utilise énormément de CPU et ralentit considérablement le
défilement de page, en particulier lorsque le nombre d'articles
augmente.
Dans le cas des articles repliés, il n'y a en fait pas besoin du
mécanisme complexe de LazyLoad.js basé sur les événements scroll, car il
suffit de charger les images lors du dépliage es articles, et cela
allège énormément l'expérience.
2013-10-29 21:53:02 +01:00
Alexandre Alapetite
5c68233985 Fusionne notification.js dans main.js
notification.js était tout petit et occasionnait une requête
supplémentaire et un événement JavaScript en plus.
Proposition de fusion dans le nouveau main.js statique.
2013-10-26 17:29:53 +02:00
Alexandre Alapetite
e7dd482979 Mise à jour automatique des nombres d'articles non lus et favoris
En JavaScript, sans requête au serveur, décrémente ou incrémente le
nombre d'articles non lus ou en favoris suite à une action de
l'utilisateur.
Utilise un nouvel attribut data-unread pour stocker le nombre d'articles
non-lus et du pur CSS pour afficher cette valeur.
Nouvel attribut data-priority (pour savoir s'il faut inclure le flux ou
pas dans les nombres d'articles non lus).
Légère simplification CSS au passage (d'autres optimisations des
performances CSS seraient souhaitables en évitant les règles contenant
trop de sélecteurs universels imbriqués genre ".categories .favorites
.btn" et en évitant les changements de style en JavaScript lors du
chargement - j'essayerai de faire une proposition dans un patch séparé).
Bug connu : une catégorie finissant par une espace suivi d'un nombre
entre parenthèses comme "Exemple (2)" cause actuellement un léger bug
d'affichage dans le <title> s'il y a 0 article non lu et que
l'utilisateur en marque un comme "non lu". Il faudra une modification
pour utiliser data-unread aussi pour le <title>
2013-10-26 17:21:11 +02:00
Alexandre Alapetite
410f763198 Ajout de main.js 2013-10-13 17:55:03 +02:00
Marien Fressinaud
d9a6588580 Correction scroll vue globale
En scrollant en lisant une catégorie, en en ouvrant une autre, le scroll
se trouvait au même endroit qu'à la fin de la première catégorie
2013-10-07 23:44:14 +02:00
Marien Fressinaud
8f7a630183 Correction global view
init_stream_delegates était appelé à chaque ouverture de panel.
Un seul appel suffit (surtout si l'on veut éviter les bugs)
2013-10-07 22:30:44 +02:00