Coin Dotclear

Fil des billets - Fil des commentaires

Plugin "Grumph" pour dotclear

Grumph est un plugin filtrant les resources d'un billet, et les gardant au chaud à coté de ce billet.

Grumph est l'acronyme de "Grab Resources and Urls to Manage Posts Handily"

Les resources récupérées sont :

  • Les images
  • Les vidéos (html5)
  • Les sons (html5)
  • Les objets
  • Les liens

Il est alors possible d'en faire des traitements spécifiques via les balises templates définies pour l'occasion :

Nouvelles balises de template

<tpl:EntryResources> ... </tpl:EntryResources>

liste les ressources du billet

Attributs possibles

  • internal = (0|1) : ne sélectionne que les ressources internes au blog
  • scope = (all|excerpt|content) : ne sélectionne que les ressources de l'entête, du contenu ou des deux
  • type=link,image,video,audio,object : ne sélectionne que les types de ressources spécifiés (plusieurs valeurs possibles séparées par une virgule)

Les autres balises sont utilisables uniquement dans une boucle tpl:EntryResources :

<tpl:ResHeader>...</tpl:ResHeader>

Affiche le contenu de la balise avant la première ressource trouvée (pas d'affichage si pas de ressources)

<tpl:ResFooter>...</tpl:ResFooter>

Affiche le contenu de la balise après la dernière ressource trouvée (pas d'affichage si pas de ressources)

{{tpl:ResURL}}

Affiche l'URL de la ressource en cours

{{tpl:ResTitle}}

Affiche le titre de la ressource en cours

{{tpl:ResType}}

Affiche le type de la ressource en cours.

Administration

Le plugin nécessite de mettre à jour la table dc_post pour stocker en cache, la page d'administration du plugin permet de mettre à jour les billets.

Il est disponible ici, et prochainement sur dotaddict.

Débugger de l'Ajax avec firebug

Cet article est d'abord un article intéressé. En effet, dans le cadre du plugin gallery, une bonne partie de l'interface d'administration repose sur des requêtes asynchrones répétées, notamment pour gérer la création/mise à jour des miniatures des images, opérations coûteuses, et pas gérables en une seule page PHP dès lors qu'il commence à y avoir un nombre conséquent de miniatures à générer.

Le plugin Gallery pour dotclear2 repose sur une couche de traitement ajax qui va gérer une queue d'événements. Pour ce qui est des aspects techniques, il repose sur jquery.ajaxmanager.

Seulement voilà, qui dit Ajax dit moins de visibilité sur les erreurs potentielles. Ce petit article est là pour tracer les éventuelles erreurs invisibles.

Il faut d'abord 2 outils : firefox, et l'incontournable firebug (les versions utilisées ici sont firefox 3.6.6 et firebug 1.5.4). L'exemple d'application est ici la page de génération des nouvelles images du plugin gallery en action.

1. Commencez par activer firebug, via la touche F12, et activez la console si ce n'est pas déjà fait : fbug_enable_console.png

2. Allez ensuite sur la page générant des appels ajax, et déclenchez-les (pour le plugin gallery, un clic sur soumettre après avoir sélectionné le répertoire dans l'onglet "gestion des nouvelles images" en déclenche un certain nombre). L'onglet "Console" affiche alors les requêtes Ajax effectuées. Dans notre exemple, 5 requêtes "GET" sont faites : fbug_ajax_requests.png

3. En dépliant chaque requête il est possible de voir ce qui a été envoyé, et ce qui a été reçu :

  • L'onglet "Paramètres" résume les paramètres transmis à l'URL

fbug_params.png

  • L'onglet "En-têtes" indique les headers renvoyés en réponse à la requête

fbug_headers.png

  • L'onglet "contenu" indique le contenu de la réponse

fbug_answer.png

Plugin Gallery 0.4 pour dotclear 2.2

Enfin ... après une longue période de gestation depuis la 0.3.8, la version 0.4 du plugin Gallery vient de voir le jour. Merci à tous les contributeurs du forum qui ont pu m'aider à chasser les quelques bugs trouvés.

Changements notables depuis la 0.3.8 :

  • Compatibilité avec dotclear 2.2 (et uniquement celle-là, comprenez par là qu'avec dotclear 2.1.X il faudra se contenter de gallery 0.3.8)
  • Onglet "gestion des nouvelles images" mis à jour, avec de nouveaux traitements asynchrones
  • Correction des url de flux
  • Ajout du nombre d'images sur l'accueil du tableau de bord
  • Quelques corrections au niveau des thèmes
  • Support de jquery 1.4.2
  • Quelques blindages coté code.
  • Passage à jquery.ajaxmanager v3 pour la gestion des nouvelles images

En gros, rien de bien visible (si ce n'est l'onglet "Gestion des nouvelles images"), mais une version consolidée et compatible dotclear 2.2

Le plugin est disponible sur dotaddict

Coté support, ça se passe ici

Version mobile, première

Depuis ce matin, les gens les quelques gens les rares gens qui viennent sur ce site si vous vous connectez sur ce site depuis un smartphone, vous serez redirigés vers la version mobile du site, à savoir http://m.morefnu.org.

Cette redirection automatique est l'objet de quelques aménagements de ce blog :

  • J'ai repris l'astuce de tips.dotaddict.org, "Un blog 2 thèmes, 2 URLs", avec une légère modification. Contrairement au tip, ma seconde URL est dans un répertoire distinct (qui n'est pas un sous-répertoire du répertoire du blog). Pour que les thèmes et le répertoire public soient toujours visibles, j'ai effectué un lien symbolique dans ce nouveau répertoire vers les répertoires originaux du blog principal
  • Pour la redirection automatique, rien de plus simple, quelques petites lignes dans le .htaccess à la racine du site principal:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_COOKIE} !(no_mobile)
RewriteCond %{HTTP_USER_AGENT} ^.*(iPhone|BlackBerry|Palm|Android).*$
RewriteRule ^(.*)$ http://m.morefnu.org/$1 [R=301,L]

Et voilà ... enfin pour le moment : les plus perspicaces auront noté la ligne

RewriteCond %{HTTP_COOKIE} !(no_mobile)

Qui permet de refuser le mode mobile si le cookie "no_mobile" est positionné sur le site. Ce qu'il reste encore à faire :

  • Ajouter un lien sur le site mobile pour repasser en mode normal, et positionner le cookie
  • Ajouter un lien sur le site normal quand le cookie est positionné, pour passer sur la partie mobile.

Au passage, un grand merci à Guillaume pour son thème dc2iphone.

Dernier point : le tip mentionné, pour être compatible avec dotclear 2.2, nécessite de modifier la fonction modifConfig de la manière suivante :

function modifConfig($blog) {
        $blog->url = 'http://monsitemobile/';
        $blog->settings->system->theme = 'dc2iphone';
}

MyMeta 0.4.1

La phase de beta-test est finie, l'heure est venue de sortir mymeta 0.4

Pour les changements majeurs, ce billet les résume déjà.

Depuis la beta3, quelques petits autres changements sont apparus :

  • La possibilité de restreindre les mymeta affichés dans le widget à une section donnée (widget liste de mymeta)
  • La suppression de la classe pour la taille des tags quand des mymeta sont affichées en liste (widget valeurs de mymeta)

Le plugin est disponible ici, et bientôt sur le lab.

Note : la version 0.4.1 corrige un problème signalé par Mirovinben, en cas d'installation sur un multiblog. La mise à jour vers la 0.4.1 du plugin se fera pour le blog courant. Pour les autres blogs, il faudra passer par la page d'administration du plugin au moins une fois pour que les settings soient migrés correctement.