Archive pour le ‘Web’ catégorie

Ez Publish – créer une extension pour surcharger le design

19 septembre 2012

Pour modifier le design d’eZ publish, vous pouvez créer une extension pour surcharger le design (pratique pour le réutiliser facilement par la suite).

Créer une extension eZ publish

Commencez par créer un nouveau dossier nommé mondesign dans le répertoire extension (à la racine de votre installation eZ publish).

Hiérarchie de l’extension

Reproduisez cette hiérarchie de dossiers

  • mondesign
    • design
      • mondesign
        • stylesheets
        • images
        • templates
    • settings

monstyle.css

Créez le fichier monstyle.css dans le répertoire stylesheets
[cc lang=’css’ width=’100%’]

body{
background : red;
}

[/cc]

Oui, le but n’est pas de faire joli ! juste de vérifier que ça fonctionne 😉

design.ini.append.php

Dans le répertoire settings, créez le fichier design.ini.append.php contenant :

[cc lang=’php’ width=’100%’]
< ?php /* [ExtensionSettings] DesignExtensions[]=mondesign [StylesheetSettings] SiteCSS=extension/mondesign/design/mondesign/stylesheets/monstyle.css */ ?>
[/cc]

Déclarez votre extension à eZ publish

Ouvrez le fichier [répertoire_installation-eZ-publish]/settings/override/site.ini.append.php

NB : Attention, il s’agit bien du dossiers settings qui est à la racine du site, pas celui que vous avez créé dans votre extension.

Recherchez la partie [ExtensionSettings] dans ce dossier et ajoutez  ActiveExtensions[]=mondesign avant ezwebin. Vous obtiendrez donc quelque chose du genre :

[cc lang=’php’ width=’100%’]
[ExtensionSettings]
ActiveExtensions[]
ActiveExtensions[]=mondesign // notre design est ici
ActiveExtensions[]=ezwebin
[/cc]
La ligne ActiveExtensions[]=ezwebin est optionnelle, si vous voulez garder la trame ezwebin, laisez là.

site.ini.append.php

Ouvrez le fichier [répertoire_installation-eZ-publish]/settings/siteaccess/fre/site.ini.append.php et modifiez le bloc [DesignSettings]
pour obtenir
[cc lang=’php’ width=’100%’]
[DesignSettings]
SiteDesign=mondesign
AdditionalSiteDesignList[]=ezwebin
AdditionalSiteDesignList[]=base
[/cc]

Videz le cache

Vous devez maintenant vider le cache, pour voir le résultat.
Connectez vous à l’interface admin et cliquez sur vider tous les caches dans l’onglet administration.
Voilà, si tout est ok, vous devriez avoir un fond rouge (moche, j’en conviens) qui signifie que vous avez bien surchargé la CSS.

Désactiver le cache eZ publish

Si vous voulez désactiver le cache pendant la phase de développement (pas en prod. bien entendu ;))

Modifiez le fichier [répertoire_installation-eZ-publish]settings/override/site.ini.append.php
[cc lang=’php’ width=’100%’]
[OverrideSettings]
Cache=disabled

[ContentSettings]
ViewCaching=disabled
PreviewCacheUsers=disabled
PreViewCache=disabled

[TemplateSettings]
TemplateCache=disabled
TemplateCompile=disabled
NodeTreeCaching=disabled
Debug=disabled
ShowXHTMLCode=disabled
ShowUsedTemplates=enabled
[/cc]

apt-get install hadopi

14 septembre 2010

Source : http://blog.rom1v.com

albanel@majors$ sudo apt-get install hadopi
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances
Lecture des informations d’état… Fait
Les paquets supplémentaires suivants seront installés :
lib-bypass-constitution-francaise lib-propagande
lib-autorite-administrative-avec-tous-les-droits
E Les paquets suivants ont des dépendances non satisfaites : hadopi dépend de lo
bby-vivendi, mais lobby-vivendi est en conflit avec lib-information-impartiale.
Les actions suivantes permettront de résoudre ces dépendances :
s-asseoir-sur-les-libertés-fondamentales
Accepter cette solution [O/n] ? O

Les paquets suivants seront enlevés :
lib-presomption-d-innocence lib-droits-de-la-defense
lib-separation-des-pouvoirs lib-information-impartiale
Les NOUVEAUX paquets suivants seront installés :
hadopi lib-bypass-constitution-francaise lib-propagande
lib-autorite-administrative-avec-tous-les-droits lobby-vivendi
0 mis à jour, 5 nouvellement installés, 4 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 70 heures de débats à l’Assemblée Nationale et un n
ombre indéterminé d’heures de propagande dans les médias.
Après cette opération, 500000€ d’argent public supplémentaires seront utilisés.
Souhaitez-vous continuer [O/n] ? O

Suppression de lib-presomption-d-innocence…
Suppression de lib-droits-de-la-defense…
Suppression de lib-separation-des-pouvoirs…
Suppression de lib-information-impartiale…

Réception de : 1 http://www.vivendi.fr lobby/control lib-bypass-constitution-fra
ncaise réceptionnés en 1s
Réception de : 2 http://www.vivendi.fr lobby/control lobby-vivendi réceptionnés
en 1s
Réception de : 3 http://www.vivendi.fr lobby/control lib-propagande réceptionnés
en 1s
Réception de : 4 http://www.sarkozy.fr util/rights lib-autorite-administrative-a
vec-tous-les-droits réceptionnés en 1s

Dépaquetage de lib-bypass-constitution-francaise…
Dépaquetage de lobby-vivendi…
I lobby-vivendi était déjà présent et très bien intégré au système.
Dépaquetage de lib-propagande…
Dépaquetage de lib-autorite-administrative-avec-tous-les-droits…

Génération de hadopi…
Refus de discussions…
Rejet des amendements proposés (utilisation du module anéfé-rejeté)…
Compilation de oofirewall…
Compilation de arguments-fallacieux…
Compilation de les-accords-de-l-elysee…
Compilation de les-ventes-de-cd-chutent-de-50%-et-celles-des-cassettes-audio-d
e-90%-c-est-inadmissible…
Compilation de la-creation-est-en-train-de-mourir-a-cause-de-gens-qui-attaquen
t-les-bateaux…

W Le module 5-gus-dans-un-garage semble poser des problèmes de compilation de ar
guments-fallacieux.

E Problème lors de la génération de hadopi : des composants cachés derrière des
rideaux sont apparus de manière inattendue. Réessayer [O/n] ? O

Pour éviter que le problème ne se reproduise, il est nécessaire de mettre à jour
le module deputes-godillots. Souhaitez-vous mettre à jour [O/n] ? O

Compilation de cope-rabat-les-troupes…
Compilation de laver-l-affront…
Mise à jour de deputes-godillots…

W De nombreux paquets de type amendement ralentissent l’installation d’hadopi.

L’installation de hadopi semble avoir réussi.

Vérification de la compatibilité avec la constitution française…
E Le module lib-bypass-constitution-francaise a été détecté par le conseil const
itutionnel.
E Le module répression a dû être désactivé pour protéger la constitution.

Installation obligatoire de internet-liberte-fondamentale.
Réception de : 1 http://www.constitution.fr rights internet-liberte-fondamentale
réceptionnés en 1s
Dépaquetage de internet-liberte-fondamentale…

albanel@majors$ for m in media; do echo ‘Je prends acte de la décision du consei
l constitutionnel. 95% du texte a été validé.’; done

E lobby-vivendi panic détecté.
Prise en charge de l’erreur par sarkozy et lobby-vivendi.

exit

sarkozy@majors# deluser albanel
sarkozy@majors# ls gauche/corrompus/*
Trop de résultats ont été trouvés : affichage des premiers résultats.
jack_lang frederic_mitterrand
sarkozy@majors# adduser lang
> opération échouée
sarkozy@majors# adduser mitterrand
sarkozy@majors# su mitterrand

mitterrand@majors$ sudo /etc/init.d/pantind start
* Starting PantinServer [ OK ]
mitterrand@majors$ pantin -verbose
Attente des ordres…
Exécution à distance de « apt-get install hadopi2″…
L’installation du paquet hadopi2 peut corriger le problème. Tenter [O/n] ? O
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances
Lecture des informations d’état… Fait
Les paquets supplémentaires suivants seront installés :
ordonnance-penale negligence-caracterisee
on-vous-prend-vraiment-pour-des-cons
Les NOUVEAUX paquets suivants seront installés :
hadopi2 ordonnance-penale negligence-caracterisee
on-vous-prend-vraiment-pour-des-cons
Les paquets suivants seront mis à jour :
lib-bypass-constitution-francaise
0 mis à jour, 4 nouvellement installés, 0 à enlever et 1 non mis à jour.
Il est nécessaire de prendre 40 heures de débats à l’Assemblée Nationale.
Après cette opération, 300000€ d’argent public supplémentaires seront utilisés.
Souhaitez-vous continuer [O/n] ? O

Réception de : 1 http://justice-expeditive.fr tools ordonnance-penale réceptionn
és en 1s
Réception de : 2 http://justice-expeditive.fr tools negligence-caracterisee réce
ptionnés en 1s
Réception de : 3 http://habitudes.gouv.fr kernel on-vous-prend-vraiment-pour-des
-cons réceptionnés en 1s
Réception de : 4 http://henrard.fr control lib-bypass-constitution-francaise réc
eptionnés en 5 minutes

Dépaquetage de ordonnance-penale…
Dépaquetage de negligence-caracterisee…
Dépaquetage de on-vous-prend-vraiment-pour-des-cons…
I En fait ce module était déjà présent sur le système depuis un moment.
Dépaquetage de lib-bypass-constitution-francaise…

Paramétrage de on-vous-prend-vraiment-pour-des-cons…
Paramétrage de lib-bypass-constitution-francaise…

Génération de hadopi2…
Refus de TOUTES discussions (ignorer-analyses-pertinentes activé)…
Rejet de TOUS les amendements proposés (utilisation du module anéfé-rejeté-en-ra
fale)…
Le paquet arguments-fallacieux existait déjà, mais il nécessite maintenant les d
épendances arguments-fallacieux-negligence-caracterisee et arguments-fallacieux-
ordonnance-pénale. Installer [O/n] ? O

Réception de : 1 http://henrard.fr control arguments-fallacieux-negligence-carac
terisee réceptionnés en 2 jours
Réception de : 2 http://henrard.fr control arguments-fallacieux-ordonnance-pénal
e réceptionnés en 1 jour

Dépaquetage de arguments-fallacieux-negligence-caracterisee…
Dépaquetage de arguments-fallacieux-ordonnance-pénale…

W hadopi2-senat-1 est moins performant que hadopi-senat-*.
I deputes-godillots utilisé pour compiler le module vote-solennel.
W Problème éventuel de sécurité. Des éléments de compilation de vote-solennel on
t peut-être été contrôlés à distance : des incohérences entre leurs données et l
eurs actions ont été détectées.
La compilation de vote-solennel a réussi.

W L’installation de hadopi2-senat-2 a fonctionné, mais il semble que 90% du code
source du paquet n’ait pas été utilisé.

Compilation de vote-solennel-2…
I deputes-godillots fonctionne à merveille.
La compilation de vote-solennel-2 a réussi.

Vérification de la compatibilité avec la constitution française…
E Le module on-vous-prend-vraiment-pour-des-cons a fortement déplu au conseil co
nstitutionnel.
E Le paquet hadopi2 a été tagué « censuré » par le conseil constitutionnel.

Attente des ordres…
Ordre reçu de lobby-vivendi : créer une taxe sur les fournisseurs d’accès sans c
ontrepartie.
Résolution du problème trouver-des-arguments-bidons-pour-faire-passer-ça-et-refu
ser-la-contribution-créative en cours…
Réception de : 1 http://www.majors.fr help toubon réceptionnés en 1s
Réception de : 2 http://www.majors.fr help zelnik réceptionnés en 1s

Attente des ordres…

Jouer à Quake 2 dans votre navigateur web. HTML5

6 avril 2010

Regardez cette vidéo, c’est quand même bluffant !
A noter, qu’il faut un ‘vrai’ navigateur pour interpréter du HTML5 !

Si vous voulez essayer de jouer lisez l’article qui se trouve sur le blog de Korben

Défoulez vous sur une poupée vaudou Internet Explorer

18 mars 2010

Pour faire suite au post précédent : http://blog.yann.info/2010/03/18/il-ne-faut-plus-utiliser-internet-explorer-6/

Développeurs, plutôt que de bricoler des hacks IE, passez vos nerfs sur la poupée vaudou IE que vous pouvez fabriquer vous-même : tutorial-making-the-ie-voodoo-doll/

ie vaudou

Il ne faut plus utiliser internet explorer 6

18 mars 2010

Pourquoi ? tout simplement parce que ce navigateur ne respecte pas les standards de développement du W3C, sans parler des failles de sécurité ! Nous les développeurs en avons marre d’utiliser des hacks pour avoir un affichage identique dans chaque navigateur. Déjà IE toutes versions confondues (jusque là) est encore assez loin des recommandations, mais IE6, c’est pire que tout. Pour rappel IE a été ‘imposé‘ (pré-installé sur chaque PC) par Microsoft pour évincer Netscape, A l’époque il n’y avait pas vraiment de standards donc IE à eu son heure de gloire et on développais pour ainsi dire, que pour IE.
Maintenant il y a des standards et des bons navigateurs comme Firefox, Opéra, Chrome… alors il n’y a pas de raisons que le code fonctionne sur un navigateur et pas l’autre, ça pénalise forcément l’utilisateur ou le développeur, l’un ne pouvant pas utiliser le browser qu’il veut car certains sites ne fonctionnent pas et l’autre devant sans cesse adapter le code pour chacun.
Au pire mettez à jour Internet Explorer !
De toute façon, peu à peu le support d’IE6 va s’arrêter comme annoncé par: Youtube, google etc…

Alors gagnons/gagnez du temps et virer moi Internet Explorer 6 ! Merci 😉

Installer Firefox : http://www.mozilla-europe.org/fr/firefox/
Installer Chrome : http://www.google.fr/chrome
Installer Opera : http://www.opera.com/
Installer Safari : http://www.apple.com/fr/safari/
Installer IE

Pour wordpress il existe une extension d’avertissement pour les utilisateurs d’IE6
Shockingly Big IE6 Warning

kill ie6

Sortie d’Opera mini 5 et Opéra mobile 10

17 mars 2010

Sorties des versions finales.
Je viens de tester la version mini et je suis convaincu ! L’interface est très sympa et bénéficie maintenant de la gestion des onglets, d’un gestionnaire de mot de passe et du Speed Dial.
Vous pouvez les télécharger directement avec votre téléphone à l’adresse m.opera.com.
Plus d’infos sur le site d’opéra.
opera

jQuery ou comment simplifier les requêtes Ajax

2 mars 2010

Avant il fallait jongler avec XMLHttpRequest, bien sûr ça fonctionne très bien, mais une fois qu’on a essayé jQuery difficile de faire machine arrière !
En effet ce simple code ci dessous permet d’envoyer la variable js info à page.php avec la méthode POST, pendant l’envoi et en attendant le retour de page.php, l’image load.gif est affichée dans le div chargement et enfin si tout s’est bien passé, retourPHP affiche ce que renvoi page.php.

Démo du script

[cc lang= »js » width=’100%’ line=’20’]
$.ajax({
type : « POST »,
url : « page.php »,
data : « info = »+info,
send : $(‘#chargement’).html(« chargement« ),
error :function(msg){
alert( « Erreur :  » + msg );
},
success : function(data){
$(‘#retourPHP’).html(data);
}});
[/cc]

Tout d’abord pour faire patienter l’internaute vous pouvez créer votre gif de chargement avec AjaxLoad

Mise en place du script :

D’abord insérez l’appel à jQuery
[cc lang= »js » width=’100%’]

[/cc]
Ensuite on va créer un champ monChamp qui contiendra les données à envoyer, un bouton envoiAjax et une balise div retourPHP qui renverra la valeur saisie dans le champ
[cc lang= »html » width=’100%’]

[/cc]
Avec jQuery on surveille le click sur envoiAjax et on récupère le value de monChamp que l’on stocke dans la variable info (le reste est expliqué au début de l’article)
[cc lang= »js » width=’100%’]

[/cc]

et page.php y’a quoi dedans ? pas pas grand chose on se contente d’afficher ce que l’on a reçu (sans vérification de contenu : ni isset, ni empty ni rien…)

[cc lang= »php » width= »100% »]
< ?php echo "reception de : " . $_POST['info']; ?>
[/cc]
et voilà !

Ajaxload créez votre gif de chargement Ajax

2 mars 2010

Vous utilisez ajax et vous avez besoin d’un petit gif animé pour occuper l’internaute pendant le chargement de votre script ? ne cherchez plus ! créez-le en quelques secondes avec http://www.ajaxload.info/

ajax-loader

Ajax-loader

SlideToggle : simplifiez vous la vie pour afficher et masquer un élément

2 mars 2010

Dans la série jQuery simplifie moi la vie, voici la méthode .slideToggle.

Voir la démo

Imaginez que vous avez un div monBloc que vous voulez masquer ou afficher en fonction du clic sur le lien displayBloc
[cc lang=’html’ width=’100%’]
Contenu masqué

Lorem Ipsum

[/cc]

Plutôt que de s’amuser à appeler une fonction afficheMasque sur l’évènement onclick du lien pour un résultat sans animation comme ci-dessous :
[cc lang=’javascript’ width=’100%’]
function afficheMasque(){
if(document.getElementById(‘monBloc’).style.display==’none’){
document.getElementById(‘monBloc’).style.display=’block’;
}else{
document.getElementById(‘monBloc’).style.display=’none’;
}
}
[/cc]

Utilisez slideToggle pour obtenir la même chose avec une animation.
[cc lang=’javascript’ width=’100%’]
$(document).ready(function(){
$(« #displayBloc »).click(function () {
$(« #monBloc »).slideToggle(« slow »);
});
});
[/cc]

La vitesse d’apparition/disparition du bloc est déterminée par ‘fast’ ou ‘slow’ ou être spécifié en millisecondes.

N’oubliez pas d’inclure l’appel à jQuery dans la balise HEAD.
[cc lang=’html’ width=’100%’]

[/cc]

Pour aller plus loin, vous pouvez également utiliser toggleClass qui vous permet de permuter une classe (ajouter/retirer la classe à l’élément). Ainsi on peut afficher une flèche haut/bas (ou +/-) en fonction de l’affichage du contenu.
Pour cela il faut ajouter une classe au lien
[cc lang=’html’ width=’100%’]
Contenu masqué

Lorem Ipsum

[/cc]

[cc lang=’css’ width=’100%’]
.deroule{
display : block;
width : 120px;
background: url(fleches.gif) no-repeat right -50px;
}

.enroule {
background: url(fleches.gif) no-repeat right 8px;
}
[/cc]

Ensuite on ajoute la méthode toggleClass qui va ajouter ou supprimer la classe enroule et donc dans l’exemple décaler l’image contenant les flèches
[cc lang=’javascript’ width=’100%’]
$(document).ready(function(){
$(« #displayBloc »).click(function () {
$(« #monBloc »).slideToggle(« slow »);
$(this).toggleClass(« enroule »); return false;
});
});
[/cc]

Plus d’infos sur la documentation de jQuery

Tester son site sur differents navigateurs (IE, Firefox, Safari, Chrome, Opera…)

1 mars 2010

Lorsque l’on créé son site, ce qui est pénible c’est la différence d’interprétation du code selon les navigateurs.
Afin de tester votre site sur les différentes versions d’internet Explorer (IE6, IE7, IE8), de Firefox, de Safari, de Chrome et d’Opéra. Il existe un utilitaire très pratique qui s’appelle : Spoon Browser Sandbox.
Une fois le petit programme installé (cliquez sur ‘install plugin Spoon’ en haut à droite d’une des capture de navigateur), il vous suffira de vous rendre à l’adresse de Spoon Browser Sandbox et de cliquer sur le navigateur de votre choix pour le lancer et tester votre site.

NB : le temps de bufferisation peut être assez long

browser_sandbox

browser_sandbox

Version bureau | Passer à la version mobile