herve

Trucs et astuce : Emuler pour mieux intégrer

Une petite astuce rapide qui m’a servi récemment.

Lors de l’intégration d’un site internet, le rendu est souvent différent en fonction des ordinateurs et navigateurs.

Pour débugguer sous Internet Explorer, il existe certes les modes de compatibilités, cependant le rendu n’est pas toujours conforme à ce qui est réellement visualisé par l’utilisateur. La meilleure solution consiste donc à émuler des ordinateurs virtuels reprenant différentes configurations.

Pour faire cela, rien de plus facile, pour une fois microsoft à pensé à tout, et de manière gratuite de plus !

Dans mon cas, je souhaitais visualiser un site sous Windows XP et Internet Explorer 7.

Pour commencer il faut télécharger le logiciel « Virtual Pc » depuis l’adresse suivante : http://www.microsoft.com/windows/virtual-pc/

Télécharger ensuite le fichier « Windows XP Mode » depuis le même site.

Installer ensuite ces 2 logiciels, et le tour est joué ! Vous avez un joli pc virtuel entièrement fonctionnel sous Windows XP.

Libre à vous ensuite d’installer les navigateurs que vous souhaitez ( Cette image intègre encore Internet Explorer 6…)

Vous trouverez également des images des systèmes d’exploitation Vista et Seven depuis l’adresse suivante :

http://www.microsoft.com/download/en/details.aspx?id=11575

Magento : créer une sauvegarde des versions de pages cms

Un petit tip utile pour ce vendredi sur la plateforme Magento.
Par défaut, la version community ne comporte pas de sauvegarde des modifications des pages CMS.
Cette fonction peut cependant être très utile en cas d’une erreur ou d’une suppression intempestive d’un contenu.

Voici donc un petit tips pour remédier à tout cela rapidement ( sans interface d’administration pour l’instant…, juste une sauvegarde de la base de données).

Nous allons commencer par créer un module magento que nous allons nommer « CmsVersionning ».
Pour cet article celui-ci sera situé dans l’arborescence « app/local/Hhennes/CmsVersionning/ » (à adapter selon vos préférences)

Nous commençons par le fichier xml de configuration du module à placer dans app/etc/modules

 <?xml version="1.0"?>
<config>
    <modules>
        <Hhennes_CmsVersionning>
            <active>true</active>
            <codePool>local</codePool>
        </Hhennes_CmsVersionning>
    </modules>
</config>

Passons à présent au processus de création de ce module :

Pour commencer nous allons créer le fichier de configuration.…

Magento U : Correctif installation locale de Magento Enterprise Edition

Je me suis récemment inscrit au programme de formation Magento U, qui permet de suivre des cours à la demande en vidéo et de manière gratuite sur cette plateforme.
( Je reviendrais en détails sur cette formation dans un futur article).

Une fois l’inscription à cette formation validée, il est possible de télécharger la version Entreprise de Magento ( version 1.11.0.2 )

Cependant l’installation de cette version en local ( à l’aide de wamp) sur mon ordinateur a été quelque peu problématique et je suis resté bloqué de longues heures à l’étape de la configuration.
Le navigateur me détectant une boucle sans fin, il était impossible de finaliser mon installation.

Malgré de nombreuses recherches je n’ai trouvé aucune solution sur internet, je partage donc mon astuce
( certes ce n’est pas le mode de fonctionnement le plus propre… mais il marche )

J’ai donc installé tout cela sur un hébergement ovh, et la miracle un message d’erreur s’est enfin affiché qui m’a permis de trouver la source du problème :

a:5:{i:0;s:219: »Error in file: « /app/code/core/Enterprise/WebsiteRestriction/data/enterprise_websiterestriction_setup/data-install-1.11.0.0.php 

Utiliser plusieurs utilisateurs avec un dépot svn chez ovh

En complément de mon précédent article sur l’utilisation du service svn chez l’hébergeur ovh ( consultable ici ) qui convient très bien dans le cas d’un seul utilisateur, voici la manipulation à effectuer pour configurer plusieurs utilisateurs.

( Je détaille uniquement les informations qui changent par rapport à mon précédent article )

Il est important de noter que l’accès fonctionnera uniquement une fois la clé SSH mise en place.

Remplacer l’url du dépot par  : svn+ssh://identifiantftp@clusterxxx.ovh.net/dossier_depot

Au moment de l’ajout de la clé SSH dans le fichier authorized_key précédez celle-ci du texte suivant :

command= »/usr/bin/svnserve –root=/homez.XXX/identifiantftp/svn –tunnel –tunnel-user=nomUser« ,no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty

N’oubliez pas de remplacer les champs avec vos identifiants ftp, votre numéro de cluster et votre home.

Et voila le tour est joué, maintenant plusieurs utilisateurs sont gérés depuis votre serveur subversion, il sera donc plus facile d’identifier les auteurs de modifications 😉

Edit du 18/02/2013 : Si vous souhaitez rajouter une gestion plus fine des utilisateurs en limitant leurs accès par dossier, vous pouvez consulter l’article suivant : Subversion : Gestion des droits des utilisateurs par dossier

Ajouter une étape dans le workflow Mantis

Dans le suivi d’un projet, il peut souvent être utile de rajouter une ou plusieurs étapes dans le cheminement des bugs ( ou workflow) de Mantis.

Par défaut le workflow de Mantis est le suivant

  • Nouveau
  • Commentaire
  • Accepté
  • Confirmé
  • Résolu
  • Fermé

Dans mon cas,  j’ai souhaité rajouté un statut « En attente de mise en production » pour bien identifier les bugs corrigés sur la version de préproduction du site, mais nécessitant encore d’être mis en place sur la version publique du site.

Voici la procédure à réaliser pour ajouter cette étape dans le workflow ( celle-ci peut être dupliquée pour ajouter plusieurs nouvelles étapes.)

Pour commencer il est nécessaire de créer  les fichiers custom_strings_inc.php et custom_constant_inc.php dans la racine de mantis ( ou de rajouter le contenu à la suite, si ces fichiers existent déjà)

Dans le fichier custom_constant_inc.php nous allons insérer le contenu suivant :

<?php define ( 'PROD', 70 ); ?>

Magento : Module de détection des commandes annulées puis payées

J’ai récemment été confronté à un problème de commandes annulées, mais payées quand même sur un site Magento en production avec les modes de paiements Atos et Paypal.
Ces changements de statuts empêchent le bon fonctionnement du processus de traitement de la commande.

Pour éviter de devoir consulter l’ensemble des commandes, j’ai donc développé un module Magento pour détecter ces commandes qui posent problème.

Voici l’arborescence des fichiers du module :

— app
–code
— local
— Test
— Module
— controllers
— CronController.php
— etc
— config.xml
–etc
— modules
–Test_Module.xml

C’est également l’occasion de voir ensemble comment créer un module simple sur la plateforme ecommerce Magento. (Version 1.4.1.1)

Pour commencer nous allons créer le fichier de déclaration du module à Magento.
Celui-ci doit être placé dans le dossier « app/etc/modules » sous la forme « MonNamespace_MonModule.xml »
Voici son contenu :

<xml version="1.0"?>
<config>
 <modules>
 <Test_Module>
<active>true</active>
 <codePool>local</codePool>
 </Test_Module>
 </modules>
</config>

Tracking des vidéos youtube avec Google Analytics

Petit astuce pratique pour aujourd’hui !
J’ai récemment fait face à des demandes de statistiques précises sur la lecture de vidéos youtube sur une page bien précise.

Dans un premier temps, j’ai fourni les statistiques délivrées par Youtube Insight (Les statistiques intégrées à la plateforme youtube), cependant celles-ci n’étaient pas assez précises.

J’ai donc trouvé sur un site brésilien un plugin javascript pour google analytics qui permet de suivre les événements suivants sur une vidéo :

  • Lecture
  • Pause
  • Fin de lecture
  • Avance rapide
  • Retour
  • Temps de lecture (par tranches)

Et ceci de manière très simple, sans nécessiter de connaissances particulières en javascript 🙂
Pour consulter ceci, vous pouvez vous rendre à l’adresse suivante : http://www.directperformance.com.br/en/como-medir-videos-youtube-com-google-analytics (en)…

Création d’un dépot Subversion chez ovh

Mise en place d’un dépôt svn chez ovh

Préalable :

  • Nécessite d’avoir un hébergement au minimum de type « Pro » chez ovh
  • Quelques connaissances en lignes de commandes

Ce tutoriel explique comment gérer un dépôt svn chez l’hébergeur ovh, et comment configurer son ordinateur tournant sous Windows pour utiliser ce dépôt.

Création du dépôt :

Avant toute chose, il est nécessaire de télécharger et d’installer l’utilitaire « Putty » depuis la page http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

  • Télécharger le fichier A Windows installer for everything except PuTTYtel
  • Procédez à l’installation du fichier téléchargé.
  • Lancez « Putty »

Connection ssh avec putty
Dans le host name, saississez ftp.yourdomain.com, laissez les autres options par défaut et cliquez sur le bouton « Open ».
Il vous est ensuite demandé votre nom d’utilisateur et votre mot de passe, qui correspondent à vos identifiants ftp principaux. (Les comptes ftp supplémentaires ne fonctionnent pas, il y’ a uniquement un utilisateur SSH par compte ovh)

Vous arrivez ensuite à la racine de  votre hébergement et vous pouvez listez le contenu de celui-ci via la commande linux « ls »


Créer un dossier « svn » si il n’existe pas, et attribuez lui un chmod de 755.…

Création d’un plugin de suivi de temps pour Mantis Bugtracker

Mantis BugTracker : Création d’un plugin « Suivi du temps »

Edit 29/04/2013 :  Dernière informations sur le plugin : https://www.h-hennes.fr/blog/plugin-suivi-de-temps-pour-mantis-bugtracker/

J’utilise au quotidien la plateforme Mantis Bugtracker pour gérer mes tâches en cours, et suivre le temps que je passe sur les différents projets.

A ce titre j’ai customisé l’installation de base avec l’ajout de nouvelles fonctionnalités  tels que la mise en place d’un éditeur wysywig(TinyMce) ou la possibilité de créer un bug directement via l’envoi d’un email.

Aujourd’hui je vais vous présenter un plugin que je viens de développer pour afficher le temps que je passe sur chaque intervention.
Nous allons voir ensemble toutes les étapes de son développement.
( Ma version de mantis est la 1.2.4)

Voici un apperçu du rendu final du plugin :

Calendrier Mantis
Avant toute chose pour que ce plugin fonctionne il est nécessaire d’activer la gestion du temps dans Mantis.

Pour ce faire il est nécessaire de rajouter la ligne suivante dans le fichier « config.inc.php …

Mozilla Prism : Créer une application à partir d’une page web

Petite astuce pratique aujourd’hui avec l’utilisation de Mozilla Prism , ce logiciel vous permets de créer une application à partir d’une page web.
Cela vous permet donc d’accéder directement à la page internet de votre choix depuis un raccourci sur votre bureau !

L’arrivée de cette fonctionnalité n’est pas nouvelle mais j’ai redécouvert dernièrement son intérêt dans le cas suivant :

J’écoute de la musique toute la journée sur des sites de streaming de type GrooveShark ou Deezer qui tournent dans un onglet spécifique de mon navigateur.
Hors de temps de temps, une erreur de clic me faisait fermer cet onglet sans le vouloir….
Ces sites sont également de grands consommateurs de mémoire pour le navigateur, ce qui faisait ralentir et planter souvent firefox.

En utilisant Prism, il devient donc possible de s’affranchir de ces contraintes de manière simple et intuitive !

Mozilla Prism

Si vous aussi vous souhaitez profiter de ces fonctionnalités n’hésitez pas à télécharger ce logiciel : http://prism.mozillalabs.com/