wordpress logoWordPress is really powerful. It is powerful from the start, but its power also stems from the large offering of plugins it provides. However, I did not found one plugin that did what I wanted: receive notifications when one of your articles is modified by someone else. So I wrote my own, taking another one as a start.

It is very basic and may not be suited for everyone’s need, but anyway, you can download it.

This work is based on the draft notification plugin.

<?php
/*
Plugin Name: Post notifier
Plugin URI: https://www.x2b4.com/
Description: Sends an email to the post author when a post is modified.
Author: x2b4
Version: 1.0a
Author URI: https://www.x2b4.com/
*/

https://www.x2b4.com/based on http:https://www.x2b4.com/www.dagondesign.com/articles/draft-notification-plugin-for-wordpress/

function notification_process($id) {

 global $wpdb;

 $result = $wpdb->get_row("
 SELECT post_status, post_title, user_login, user_nicename, display_name, {$wpdb->users}.ID
 FROM {$wpdb->posts}, {$wpdb->users}
 WHERE {$wpdb->posts}.post_author = {$wpdb->users}.ID
 AND {$wpdb->posts}.ID = '$id'
 ");

 global $current_user;
 get_currentuserinfo();

 if (($result->ID != $current_user->ID))
 {
 $message = "";
 $message .= "A post has been edited on '" . get_bloginfo('name') . "'\n\n";
 $message .= "Title: " . $result->post_title . "\n\n";
 $message .= "Original author: " . $result->display_name . "\n\n";
 $message .= "Editor: " . $current_user->display_name . "\n\n";
 $message .= "Link: " . get_permalink($id) . "\n\n";

 $result2 = $wpdb->get_row("SELECT {$wpdb->posts}.ID FROM {$wpdb->posts} WHERE `post_type` = 'revision' AND `post_parent` ='".$id."' ORDER BY `ID` DESC");
 $message .= "Diff: ".get_bloginfo("wpurl")."/wp-admin/revision.php?action=diff&right=".$id."&left=".$result2->ID;

 $subject = "Post '" . $result->post_title . "' updated on '" . get_bloginfo('name') . "' by " . $current_user->display_name;

 $user_info = get_userdata($result->ID);
 $recipient = $user_info->user_email;
 $headers = 'From: WordPress<wordpress@x2b4.com>' . "\r\n";
 mail($recipient, $subject, $message, $headers);
 }

}

add_action('publish_post', 'notification_process');

?>

Voilà ce que l’on peut lire sur le site de Relakks:

[2009-04-07]

We’ve seen a big wave of new customers recently. While this is of course a positive thing, it also puts a strain on our servers. Our service might be slow at peak hours right now and difficult to connect to. We are planning a big hardware update in the next 1-2 weeks which will correct these problems. We apologize for any inconvenience in the mean time.

Oh ! Mais comme c’est étonnant ! Je me demande bien, si, par exemple, et vraiment, mais tout à fait par hasards, cela ne serait pas des clients français. Comme quoi Hadopi aide les entreprises (de VPN et de sécurité), merci Hadopi !

In this world of an endless quest for information (I’m speaking of the great Internet), it is common to stumble upon old websites or websites that have been generated by an old software. A perfect example of this would be howtos, which, while they are very useful, really look like someone shitted on my monitor. Since I’m using one the Best Browser(tm), that is Firefox, I’ve been trying to tackle this problem. The angle of attack will be userContent.css. Many Firefox hacks are based on this file. To have more information on this file and on how to create it (and where), please read the Customizing Mozilla page.

In this file, we will be adding a new set of rules which will give a default behavior to old web pages. Some things to note about these changes. First, I did not include !important so that newer websites can still define their styles. Secondly, I’ve spent some times in adding/removing tags so that the very vast majority of websites are unaffected by theses changes, while the old websites are much better (in my opinion). Here are the content of the file:

body { font-family: Calibri, Verdana, Arial, Helvetica, sans-serif; }
h1 { font-size: 175% }
h2 { font-size: 145% }
h3 { font-size: 120% }
h4 { font-size: 105% }
h5 { font-size: 80% }
h6 { font-size: 65% }
a[href] {color: #1133ff;}
a[href]:hover{text-decoration:underline;}
a[href]:visited{color: #1133ff;}
code,kbd,pre,samp,tt { font-family: Consolas, "Courier New", Courier, monospace; }
hr {
color: #999999;
background: transparent;
height: 1px; /* Required for IE/Win */
padding: 0;
border-color: #999999;
border-width: 1px;
border-style: none none solid none;
}
ol { list-style: decimal outside; }
ul { list-style: round outside; }
ol ul,
ol ol ul,
ol ul ul,
ul ul,
ul ol ul,
ul ul ul {
list-style: square outside;
}
table{
border-collapse: collapse;
border-spacing: 0;
empty-cells: show;
}
fieldset { border: none; }

You can download the file directly, if you prefer so. After that, restart Firefox, and browse to an old website.

Here is a comparison of the two rendering (before/after).

Before:

After:

pidgiJe commente rarement les sorties de logiciels, pour la bonne et simple raison qu’elles sont inintéressantes. Mais là ! Pidgin 2.5.0, c’est du tout bon. D’abord, moi aussi je peux enfin envoyer des emoticons personnalisées sur MSN, et ça, c’est trop de la balle. Dès demain je vais moucher le caquet d’un certain nombre de personnes médisantes sur le logiciel libre. Ensuite, plein de corrections de bugs (sur MSN, sur Jabber…), de l’amélioration de GUI (notamment sur les emoticons), le nouveau protocole MSN pris en charge… Bref, que du bon à télécharger très vite. A noter que cette version, comme les versions précédentes, n’arrive pas à détecter que le raccourci de lancement au démarrage a été changé. Il faut donc le sauver à la main pour le restaurer ensuite.

Voulant transférer un beau fond d’écran sur mon nouveau téléphone portable Samsung E700, je décrète que les cables usb sont désuet et que je vais utiliser une belle connexion Bluetooth avec du bon cancer dedans que c’est chouette. Tout marche bien jusqu’à au début, ou il faut que j’associe à la main mon périphérique. Je précise que j’utilise le logiciel de Samsung, qui, si il est loin d’être pourri, n’est tout de même pas le top. Outre les boutons skinnés à la moche (c’est dingue le nombre d’applications qui se disent qu’elles vont imposer une skin à l’utilisateur), c’est que du windows pourri et en plus ça bug à moitié. Donc voilà mon téléphone apparié, mais cela ne marche toujours pas. Grâce à mes nombreux neurones encore fonctionnels, je découvre qu’il faut que je crée à la main une connexion COM dans windows. Sitôt dit sitôt fait, sauf que Windows me crache une belle erreur :

« Erreur de service bluetooth » : « Accès refusé »

Ce qui n’est pas très sympa. Fort heureusement, Google est mon ami (enfin plus trop mon ami maintenant qu’ils me fliquent partout, mais bon, on va faire avec) et je trouve ce merveilleux article qui explique que le service Bluetooth ne possède pas les bons droits pour s’exécuter que c’est fort. La correction (copié collé du site susnommé, n’allez pas croire que je me suis fait chier à taper tout cela):

  1. Cliquez sur « Démarrer » -> « Panneau de configuration »
  2. « Outils d’administration » -> « Services »
  3. Clic droit sur « Bluetooth support service »
  4. « Propriétés »
  5. Onglet « Connexion »
  6. Sélectionnez « Compte système local » au lieu de « Ce compte »
  7. Ok
  8. Clic droit sur « Bluetooth support service »
  9. « Redémarrer »

Et là, magie de l’informatique, tout marche. J’installe mon beau fond d’écran que je peux crâner maintenant avec. D’ailleurs comme je suis vachement sympa et qu’il est trop beau, je le mets en dessous. Et ouais chuis comme ça moi.

Il n’y que sur 4chan que l’on peut trouver de vraies perles de vie telle celle-ci, qui résume si bien certaines personnes:

OP wins.

This chick’s ears are like huge vaginas. I bet when she’s naked, her whole body looks like it’s made of random boobs and vaginas.

OP WINS.

wine.pngUne bonne nouvelle n’arrivant jamais seule (sauf si il n’y en a pas d’autres), aujourd’hui 17 juin, en plus d’être le jour de sortie de Firefox 3, est aussi le jour de sortie d’un autre programme open source d’exception : Wine. En développement depuis 15 ans, wine est parti d’une solution qui marchait parfois à une véritable plate-forme win32 à lui tout seul. Je suis réellement bluffé par le travail impressionnant qu’ont réalisés les développeurs de ce logiciel. Réussir à récréer un environnement windows sous linux, c’est maîtriser les deux systèmes à la fois. Avec une main d’oeuvre beaucoup plus réduite que celle dont dispose microsoft. A noter que Photoshop CS 2, un des logiciels souvent critiqué comme manquant sous linux (et je peux le comprendre, même si Gimp fait parfaitement l’affaire, il est parfois difficile de tout réapprendre, notamment dans le milieu professionnel), et maintenant totalement fonctionnel. Comme d’habitude, toutes les bonnes distributions ne devraient pas tarder à le voir apparaître dans leur dépôts (de satan).

wine.pngHop! Deux semaines ont passés depuis la dernière annonce, et c’est le moment tant attendu d’une nouvelle version de Wine. Au menu, des corrections de bugs en paquet, des ajouts de fonctionnalités. On notera quelques bugfixes intéressants pour ceux qui utilisent Photoshop CS2 (notamment le 11680). Bref, comme à l’habitude, que du bon ! Il faut attendre quelques moments avant que les miroirs soient à jour. L’annonce originale en anglais sur le site de Wine.

wine.pngDernièrement, le développement de Wine (un layer de comptabilité entre les applications Windows et GNU/Linux) s’est considérablement vivifié. Les dernières versions permettent d’installer et d’utiliser Photoshop CS2 sans problème (j’attends avec impatience l’arrivée d’Illustrator dans la liste, tant pour moi c’est plus lui que Photoshop qui n’a pas de réel remplaçant). Cette version apporte les principales nouveautés suivantes:

  • La gestion des fenêtres OpenGL/Direct3D avec des barres de menu;
  • Des « stubs » (fonction ne faisant rien mais ayant la même signature que l’originale) pour toutes les dlls d3dx9*, ce qui devrait permettre le « remplissage » de ces stubs. D’autre part, cela permet que l’appel à la fonction n’échoue pas (même si probablement le programme plante derrière);
  • Plusieurs optimisations graphiques (visiblement dans le GDI);
  • De nombreuses corrections au système d’installation, ce qui devrait permettre aux msi de mieux être gérés;
  • Support des messages MIME amélioré (je ne vois pas trop à quoi ça sert, mais bon);
  • Et comme d’habitude, une liste de bug corrigés impressionnante.

Il est vraiment agréable de voir l’évolution du projet Wine, celui-ci devient de plus en plus complet de mois en mois, si ce n’est pas de semaines en semaines. A tel point que certains observateurs se demandent si Wine ne pourrait pas, avec le flop de Vista et les difficultés qu’il engendre, devenir une sorte d’implémentation ‘officieuse’ de l’API windows, les programmeurs s’appuyant sur celle-ci pour avoir des programmes multi-plateforme.

L’annonce originale en anglais est disponible sur le site de Wine.

Si vous êtes sur une distribution connue, la mise à jour devrait arriver très rapidement (par exemple pour Ubuntu avec les bonnes sources, c’est déjà le cas). Personnellement l’application que j’utilise le plus dans Wine est Mp3Tag. Cela m’a pris un peu de temps pour faire marcher l’unicode, mais une fois que ça marche, ça marche du tonnerre, je peux même rentrer du texte unicode depuis l’interface Linux.

ooo-main-logo-col-rgb.pngUne liste des nouvelles fonctionalités de OOo v.3 vient d’être mis à disposition par VentureCake. Il y a encore le temps de voir, la bête ne devant sortir qu’en septembre (mais les bêtas devraient arriver beaucoup plus tôt). Mais il y en aura sous le capot de la bête : support de nombreux nouveaux formats, interface native pour MacOSX (oui il y en a…), support du Flash… On distingue deux tendances, la première étant à l’intégration de technologie Web venant de Mozilla pour concurrencer très fortement Microsoft et son combo Outlook + Office. Il y aura du calendrier, de l’email etc… C’est pour moi un point très intéressant même si d’autres fonctionnalités, plus axées sur l’utilisateur, me font déjà saliver:

  • Support d’un format hybride PDF+ODF, qui permet d’avoir des documents PDF « éditables ». Il utilisent probablement un champ de méta données dans le PDF pour inclure la source en ODF. Ce qui est fabuleux c’est cela devient vraiment un format idéal pour l’archivage, avec toutes les forces du PDF, mais sans perdre la source si une modification s’avérait nécessaire. Etant moi-même un grand fan de l’archivage électronique (beaucoup plus facile à gérer que les versions papiers, avec une duplication au cout quasi-nul), je sens que ce nouveau format va être intensivement utilisé.
  • Support des wikis et des blogs directement depuis OOo. Voilà une grande nouvelle ! Cela permet, lorsque l’on utilise les wikis de manières pros à mon instar, d’avoir une vraie interface d’édition et pas un wikimarkup à deux euros… Reste à voir ce que cela génère/dégénère.
  • Support de Subversion pour le collaboratif. Si c’est bien fait, cela peut carrément devenir ultime. Le format ODF étant à peu près bien fait, il est assez facile de créer des documents « spécifiques » en collaboratif pour ensuite avoir des outils qui passent par dessus pour en extraire l’information. Le support de subversion permettrait d’éditer plusieurs sections simultanément sans destructions, ce qui rejoindrait ce qui est possible avec Google Docs (dont l’intégration existe déjà).

Bref, une nouvelle version majeure avec des vraies fonctionnalités qui simplifient le travail, pas comme les « rubans » pour ne pas les nommer. J’attends la béta avec impatience. On notera cette note d’humour dans les notes:

Support for MS Office 2007 XML. Microsoft confusingly calls this ‘Office Open XML’. We call it Stop Naming Your Unstable Undocumented Shitty Format To Sound Like Ours Thanks.

Source : VentureCake

ubuntu_petit.miniature.pngCa y est ! La version 7.10 de Ubuntu est sortie officiellement aujourd’hui ! Cette nouvelle version apporte son lot de nouveautés : les effets 3D activés par défaut, un nouveau Gnome, un centre de contrôle repensé (de nombreuses amélioration notamment sur le support des imprimantes, le changement d’apparence etc..). On trouve aussi sous le capot un nouveau serveur X, ainsi que pour la première fois un mode « failsafe » lorsque celui-ci ne veut pas démarrer. Si jamais il est cassé, alors un serveur X en mode compatibilité s’ouvre et permet de régler les détails graphiques. Pour l’avoir essayé, cela marche plutôt bien. D’autre part, un support étendu du bi-écran avec une interface idoine est vraiment le bienvenu. Seule ombre au tableau : Mon application Tilda, qui permet d’avoir une console « à la quake », se mets à buguer lorsque je désactive les animations. Ce n’est pas fatal, mais c’est dommage. J’attends avec impatience que son remplacent guake soit plus avancé. Bon, gusty c’est que du bon, à installer d’urgence !

A noter que j’ai reçu mes stickers Ubuntu, et que je ne vais pas tarder à en lancer la distribution… A suivre !

wordpress.jpgCa y est, la version 2.3 de wordpress est sortie.

Pas de nouveautés avec cette version, dont notamment un système de tag qui se rajoute et complémente celui de catégorie. Sinon, il est plus rapide, propose plus d’options à l’édition, et normalement se mets à jour quasiment tout seul. Bref, que du bonheur. Comme d’habitude, la procédure de mise à jour prend deux secondes.

En tout cas,
C’est arrivé aux Etats Unis. Reste à ce que ça fasse le voyage vers la France, puis un autre petit voyage en France. Bientôt je lâcherais les badges aluminium Ubuntu sur la terre (enfin dans la limite de mes stocks). L’image est celle de Martin Owens qui est visiblement en train de les trier.

case-badges-sorted.jpeg

NewTux.pngUn nouveau site vient de faire son apparition : LinuxPreloaded

Ce site s’adresse à tout ceux qui veulent d’un ordinateur avec Linux pré installé. Et oui, tout le monde n’est pas un pro de l’informatique. Ce n’est pas pour cela que l’on a envie d’acheter les infâmes Windows et OS X et par là même d’être un bon mouton. Donc, il ne reste plus qu’à trouver des vendeurs qui proposent du Linux pré chargé. Ce qu’il y a de bien dans cette liste, c’est que l’on voit que plein de vendeurs sont disponibles pour la France ! Donc il n’y a plus aucune excuse (enfin les modèles ne sont pas tous transcendants, loin de là).

Vous noterez le nouveau pingouin Tux à gauche, qui est une version remise au goût du jour de notre bon vieux manchot (qui est quand même plus mignon et sympa qu’une fenêtre quatre couleurs ou une pomme croquée).

Sur le blog de Rob Weir (très bon blog en général), on peut trouver cette image qui reproduit les différents formats Microsoft au cours du temps. Ce qu’il est intéressant de noter, c’est que systématiquement  Microsoft a abandonné son propre format d’une version à une autre. La question qui se pose : pourquoi serait-ce différent cette fois ? Surtout qu’ils peuvent très bien l’abandonner au bout de 5 ans par exemple. A lire aussi (on le trouve dans les commentaires du premier article), cet article sur les interrogations (légitimes) sur le format VML et OOXML. Il faut savoir que le VML est un format qui n’est supporté que par Internet Explorer, avec des spécifications très floues (quand il y en a). Je vous engage à lire le premier commentaire de cet article, écrit par Stephane Rodriguez, qui sait de quoi il parle.

Comme on peut le voir sur le site noooxml, de nombreux pays ont finalement décidé que ce format n’était pas digne en l’état de devenir un standard ISO. Reste à voir ce qui va se passer d’ici Février, date du prochain round. Pour information, Microsoft est suspecté (lire : on en est certain mais c’est difficilement prouvable) d’avoir entaché le processus d’irrégularités à la limite de la loi : inscriptions massives de partenaires juste avant le vote, vote « oui » sans commentaires au Danemark (alors que tous les autres votes étaient non) pour que le Danemark s’abstienne, pressions sur les gouvernements… Bref, rien n’est joué. Mais ce vote aura au moins le mérite de faire comprendre à Microsoft qu’on ne peut pas tout acheter.

ubuntu_petit.pngAhh… Linux… Il n’y a pas à dire, c’est fabuleux. En fait, ça permet de faire à peu près les mêmes choses que les autres systèmes d’exploitations. Mais là où il y a un vrai plus, c’est que ça permet de tout bidouiller jusqu’au fond. Nous allons voir que cela peut être mis à profit.

Tout d’abord, il faut savoir que j’ai un portable VAIO SX2 dont les brillants concepteurs se sont dit qu’ils allaient l’affubler de deux problèmes :

  1. Un ventilateur affreusement bruyant, qui se mets en route pour un oui ou pour un non (indice: il y a beaucoup plus de oui que de non, en fait, il y en a 99% du temps) . Bref c’est insupportable.
  2. Ce dit ventilateur ne propose pas d’interface de programmation standard, ce qui permettrait de le régler avec SpeedFan (sous windows) ou lm-sensors (sous linux) ou rien (sous mac os).

Donc, coincé avec mon ventilateur qui fait du bruit.
Mais je ne désespère pas, et, armé de vaillance, google un peu. Je tombe alors sur une page qui décrit un utilitaire ainsi qu’un module noyau, sony-laptop, qui devrait permettre le contrôle de différentes choses comme l’éclairage, le bluetooth, etc.. L’éclairage marche nickel chez moi, hum… Je m’aperçois alors que sony-laptop est le successeur de spic*, et de l’utilitaire associé, spicctrl.

Un petit
sudo apt-get spicctrl
à tout hasard… ça passe ! Merveilleux. Voyons voir ça…
Alors, -l pour le bluetooth, -T pour la température, et -f pour le fan ! Oui ! Enfin presque… Comme les ingénieurs de chez Sony se sont dit qu’on était vraiment rien que des gros cons, un processus tourne en tâche de fond (indépendant de l’OS) pour ranimer le ventilateur en fonction de la température…

Bah, c’est pas grave, je suis un sale:
while true; do spicctrl -f 15; sleep 0.05; done
Ah… Bonheur ! Au début je sens bien que le ventilo lutte pour rester à grande vitesse mais il finit bien vite par plier sous les assauts de mon while true. Mais c’est pas encore optimum comme solution… Je sens que je peux faire un mieux. Mais bon sang c’est bien sûr ! C’est un programme open source ! Un petit tour sur le site, on décompresse, un joli .c en sort.

Hop ! Je modifie l’instruction de ventilateur avec une boucle, un make, ça compile nickel, le tour est joué ! Un nouveau spiccontrol tout beau tout neuf.

Il ne me reste plus qu’à créer des entrées dans les menus pour avoir une interface éfficace pour gérer et mon bluetooth et mon ventilateur.

Linux, Ubuntu, Spiccontrol, GNU et tout les autres, mes oreilles vous disent merci !

wordpress.pngComme d’habitude, on se met à jour avec une nouvelle version de WordPress. Une faille de corrigée, deux trois bugs de virés, bref pas de quoi fouetter un chat… Pourquoi en parler alors me direz-vous ? Parce que 1) écrire un blog c’est une sacrée forêt dans le c*l, 2) si jamais par hasard ça cassait quelque chose sur le site, il faudrait couiner à qui mieux mieux comme des souris sodomites. Non mais.