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.
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>
La dernière catégorie n'était pas générée correctement si elle ne possédait
qu'un seul flux. Le bug venait de HelperCategorie::daoToCategoryPrepopulated
Je l'ai réécrite pour qu'elle soit un peu plus claire
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.
Une bonne amélioration des performances est possible en utilisant le
cache HTTP.
Ce patch propose un .htaccess par défaut (pour Apache).
L'accès "Satisfy Any" pour favicon.ico est pour le cas où le répertoire
FreshRSS serait protégé par un mot de passe, ce qui pose problèmes pour
certaines utilisations de favicon (y compris dans Firefox).
Le "Cache-Control public" est surtout utile pour la mise en cache dans
le cas de HTTPS.
Sur ma page d'accueil, l'adresse absolue de FreshRSS est écrite 1300 fois, ce qui représente 15% de la taille de cette page (542Ko -> 460Ko).
Ce patch utilise une adresse relative par défaut, beaucoup plus courte.
De plus, dans le cas d'une adresse absolue, le protocole relatif "//" est utilisé pour utiliser automatiquement "http://" ou "https://".
Pas testé avec url_rewriting.
* Suppression des boutons de fermeture pour les dropdowns : la fermeture
se fait maintenant en cliquant n'importe où sur l'écran
* Suppression fichier fallback.css pour le thème par défaut. Déplacement
dans freshrss.css en fin de fichier pour bien le séparer du reste (#166)
* Les popups de synchro et notification sont mieux réparties à l'écran
notamment en vue mobile
* Le nom du flux actuellement affiché (à droite de Aujourd'hui par exemple)
est mieux tronqué avec des ... (trois petits points)
* Refactorisation de quelques bouts de CSS