Script d’Installation v2.0

Cette après-midi j’ai terminé la nouvelle version de mon script d’installation.

Vous ne connaissez peut-être pas directement ce script mais si vous avez déjà installé une de mes mods, vous l’avez déjà utilisé. Ce script permet d’installer (ou désinstaller d’ailleurs) facilement des paramètres, des templates, des composants, … dans IPB. C’est bien pratique et ça m’évite de créer un nouvel installer pour chacune de mes mods.

Avec cette nouvelle version, j’ai voulu, notamment, améliorer l’internationalisation du script. Ainsi, on peut maintenant spécifier les fichiers à importer pour chaque langue. C’est intéressant pour les mods qui seront disponibles en anglais et en français comme l’E2T. Ça évitera de devoir faire deux archives zip distinctes pour les deux langues. Il y a également la même chose pour la content:encoded de la mod.

J’en ai aussi profité pour ajouter l’importation de tâches et de macros. Même si c’est encore buggé actuellement (la faute à IPB), ça devrait être bon avec IPB 2.2 Finale. J’ai également pris en compte les suggestions de Franfrou et de Youp3. :)

J’ai déjà testé cette nouvelle version pour l’installation de l’E2T 2.3. Hors mis les tasks et les macros, ça passe bien. Maintenant il va falloir que m’occupe du système de mise à jour de l’E2T qui est basé sur mon script d’installation. Là, je sens que ça va pas du gâteau…

AJAX et les caractères spéciaux

C’est l’un des plus gros problèmes d’AJAX, les caractères spéciaux. Si votre requête n’utilise pas le même encodage que votre page, tous les caractères spéciaux deviennent des points d’interrogation.

J’avais déjà passé pas mal de temps sur ce problème mais hier soir alors que je mettais ma bdd à jour (pour être compatible avec la nouvelle version de FabCMS), je me suis aperçu que certains caractères avaient été remplacés par le fameux point d’interrogation…

Ce matin, après plusieurs heures de recherches, je suis arrivé à la source du problème. Pour convertir les caractères en UTF-8 (le jeu par défaut de l’objet XMLHttpRequest) j’utilise la fonction php utf8_decode. Or cette fonction ne décode pas tous les caractères mais uniquement ceux qui sont dans le jeu de caractères ISO-8859-1…

Au finale, j’ai trouvé 21 caractères ASCII qui n’étaient pas convertis. Pour corriger ça, j’ai simplement faire un str_replace en attendant de pouvoir vraiment regarder de plus près les modules php mbstring et iconv.

MacBook, l’ultime départ…

Aujourd’hui, soit un peu plus d’une semaine après l’avoir récupéré au centre de réparation, mon MacBook est de nouveau parti !

Je n’ai pas parlé des problèmes que je rencontre avec mon Mac sur le blog.
Pour résumé, j’avais simplement la coque intérieure qui avait jaunie (problème reconnu par Apple) et je me suis retrouvé avec pleins de problèmes (clavier qwerty, touche du trackpad bloquée, graveur qui griffe les CD/ DVD, coque externe abîmée…).

Après trois mois de réparation, mon MacBook est parti pour la quatrième et dernière fois, Apple ayant décidé de me l’échanger.

Il n’y a plus qu’à attendre le nouveau maintenant…