Après 10 jours de developpement, voici la version 2.3 ! Au programme : Adaptation de Kajax pour supporter le modèle MVC, optimisation du framework JS Kajax_Core, optimisation du framework php Kajax et de son aspect CMS, amélioration de la compatibilité inter-navigateur, optimisation de la sécurité de certains modules, refonte complète de la mise en tampon ainsi que de l'interprétation du PHP dans les js et css ...
Ce fameux modèle MVC ... je suis forcé de reconnaître, que pour l'utilisateur final, l'édition des pages s'est considérablement simplifié, et même si il est clair que cela n'a pas de prix quand on s'adresse à un public de néophytes, les performances de Kajax se sont légèrement dégradés (on reste toujours en dessous de la barre des 2ms tout de même, ce qui est tout à fait acceptable).
Suite à cette mise à jour, j'en ai profité pour revoir certaines choses :
- Les utilisateurs d'Internet Explorer 6 et 7 seront ravis de voir que les boutons Précédent et Suivant fonctionnent dorénavant (via la librairie RSH).
- Intégration d'un paramétre dynamique dans toutes les URLs des médias/css/js qui va permettre de forcer la mise à jour du cache des utilisateurs qui utilise ... devinez quoi ... Internet Explorer 6 et 7, qui même si on leurs envoit les bons headers censés leurs imposer de rafraichir leurs caches, n'en font rien.
- Contournement d'un bug de positionnement des autocompleters sur Chrome et Safari (ils étaient décallés de 500px à droite)
- Optimisation de Kajax_Core
- Suppression de la fenêtre de Loading, maintenant, le title se change pour 'En cours de chargement', les gens ont ainsi l'impression que ça va plus vite.
- Mise à jour du traitement du rafraichissement des pubs
- Optimisation de la gestion des events onclick sur les ancres
- Ajout d'un paramètre dans le flux XML permettant une meilleur gestion des erreurs côté serveur
- Migration de la gestion des Cookies vers les fonctions de MooTools
- Optimisation de la taille de Kajax_Core
- Implémentation de la fonction toggle, elle permet de déplier/plier doucement un élément. Quand j'ai migré Kajax vers MooTools, j'étais vraiment déçu de perdre la fonction toogle propre à scriptaculous qui permet, contrairement à Mootools, d'appliquer un effet en live, sans préparamétrage. J'ai essayé de copier les sources de Scriptaculous, le code étant sous GPL, cela ne posait aucun soucis, mais je me suis heurté à l'usine à gaz monstre de Scriptaculous ... j'ai donc tout réimplementé à mon idée, le seul petit défi de cette fonction étant la détermination de la hauteur d'un élément caché avec une height auto. Ma fonction ne gère pas les éléments flottants, mais vu que je n'applique jamais de toggle dessus, cela n'est pas très grave ! Elle est sans doute moins optimisée, mais fonctionne à merveille pour ce que j'en fais :)
- L'event onclick des ancres utilisent dorénavant une fonction qui extrait la page du href au lieu de demander une page spécifique paramétrable à la main. L'ancienne méthode est toujours supportée mais dépréciée car elle n'impose pas aux webmasters de penser à la naviguation sans javascript nécessaire aux moteurs de recherche (et donc au bon référencement)
- Optimisation de l'interprétation à la volée du php dans les js et css via une meilleur gestion du buffer (j'ai supprimé les regex au profit d'une exploitation mieux maitrisée du tampon)
- Optimisation des URLs des js et css, elles sont plus courtes et plus facilement interprétées par leurs génératrices respectives.
- Optimisation de la gestion des sites multi langues
A bientôt !