cybermonde.org

Aller au contenu | Aller au menu | Aller à la recherche

programmer

Fil des billets

samedi 26 mars 2016

Ajouter une favicon à Jekyll

  • Copier le fichier favicon.ico à la racine du projet.
  • Modifier le fichier _includes/head.html comme suit (avant le </head>) :

<link rel="icon" type="image/x-icon" href="{{ "/favicon.ico" | prepend: site.baseurl }}">


vendredi 18 mars 2016

Jekyll et JSON

Comment exploiter le contenu d'un fichier JSON pour générer une page ?
  1. créer le répertoire _data
  2. y stocker le fichier de données colors.json :

    {
        "colorsArray":[{
                "colorName":"red",
                "hexValue":"#f00"
            },
            {
                "colorName":"green",
                "hexValue":"#0f0"
            },
            {
                "colorName":"blue",
                "hexValue":"#00f"
            },
            {
                "colorName":"cyan",
                "hexValue":"#0ff"
            },
            {
                "colorName":"magenta",
                "hexValue":"#f0f"
            },
            {
                "colorName":"yellow",
                "hexValue":"#ff0"
            },
            {
                "colorName":"black",
                "hexValue":"#000"
            }
        ]
    }

  3. créer le fichier colors.md à la racine :

    ---
    layout: page
    title: Colors
    permalink: /colors/
    ---
    <ul>
    {% for color in site.data.colors.colorsArray %}
      <li style="color:{{ color.hexValue }};">
          {{ color.colorName }}
      </li>
    {% endfor %}
    </ul>

    site.data.colors.colorsArray se décompose comme suit :

    • site.data : pour appeler des données
    • colors : nom du fichier de données
    • colorsArray : élément racine

    Documentation : https://jekyllrb.com/docs/datafiles/

mardi 15 mars 2016

Premiers pas avec Jekyll

Avant d'entamer la lecture de ce carnet de notes sur mes expériences avec Jekyll, je vous recommande la lecture de La mouvance statique et 7 Reasons to Use a Static Site Generator.

Article mis à jour le 17/03/2016

Lire la suite...

jeudi 19 février 2015

RSS vers twitter avec Bash

Une solution simple pour poster les nouvelles entrées d'un flux RSS vers twitter.

Lire la suite...

jeudi 5 février 2015

masquer les mots de passe dans DokuWiki

Vous désirez améliorer la sécurité de votre wiki (même si l'accès est déjà très sûr) ? Voici comment conserver les mots de passe ou informations confidentielles que vous souhaiteriez stocker dans DokuWiki.

Lire la suite...

mardi 25 mars 2014

créer de jolis graphiques

Une librairie JS très complète pour créer des graphiques : Highcharts JS

Intégration facile à vos projets PHP ou autres.

Ici une simple page html (la librairie et jquery sont téléchargés en local) : https://gist.github.com/cybermonde/9764248

Et un fichier data.csv pour stocker les données :

Categories,24/03,25/03,26/03,27/03,28/03,29/03
Prévisions,13,11,7,6,1,0
Réel,13,13,11,7,3,0
Taille,13,13,13,13,13,13

... donnent le résultat suivant :

La documentation est complète, parsemée d'exemples interactifs : http://api.highcharts.com/highcharts

mardi 18 février 2014

afficher le nombre de pages dans le pied de page dokuwiki

Voici une façon simple d'insérer le nombre de pages dans votre wiki basé sur dokuwiki : on va faire appel à la fonction exec() de PHP et compter les fichiers qui portent l'extension txt via bash :

Si vous utilisez le template dokuwiki, dans le fichier /chemin/de/votre/wiki/lib/tpl/dokuwiki/tpl_footer.php, ajoutez après le <div> des boutons :

<p>
<?php
// Compte les pages du wiki
// Commande bash : ls -R /var/www/wiki/data/pages/ | grep -c .txt

echo exec('ls -R /var/www/wiki/data/pages/ | grep -c .txt')." pages dans ce wiki";

?>
</p>

Ce qui donne :

vendredi 24 janvier 2014

du JavaScript dans DokuWiki

Un truc pour insérer facilement du code JavaScript dans une page DokuWiki.

On va détourner l'usage du fichier entities.conf.

Copier le fichier vers une version locale (dans /var/www/wiki/conf par exemple) :

cp entities.conf entities.local.conf

Editer le fichier entities.local.conf :

nano entities.local.conf

Effacer le contenu et créer une commande JavaScript en insérant une ligne sous la forme raccourci - commande :

JSALERT <script type="text/javascript">alert("Bonjour DokuWiki !");</script>

Dans la page du wiki, insérer JSALERT et le code JavaScript s'exécute...

Source : https://forum.dokuwiki.org/post/7250

mardi 3 décembre 2013

un changelog PHP sur votre dépôt GIT

Article mis à jour le 04/12/2013.

Un bout de code pour générer une page changelog, le lien devra être adapté (pour moi un gitlab local) :

<html>
<head><title>Changelog</title>
</head>
<body>
<h1>Changelog</h1>
<table>
<?php
echo shell_exec("git log --pretty=format:'<tr><td><a href=\"http://mon_gitlab/mon_user/mon_repo/commit/%H\">%ci</a></td><td>%s</td></tr>'");
?>
</table>
</body>
</html>

Ce qui donne (on peut ajouter du style !) :

Les options de la commande git log : http://git-scm.com/book/fr/Les-bases-de-Git-Visualiser-l-historique-des-validations

mardi 19 novembre 2013

authentification POP3/IMAP sur DokuWiki

J'avais décrit précédemment l'authentification via LDAP, voici une autre méthode d'authentification via POP3/IMAP.

Pour commencer, il faut installer php5-imap

Modifier conf/local.php

$conf['authtype'] = 'authmkpop3';
$conf['plugin']['authmkpop3']['authserver'] = '{your.host:110/pop3}';

Remplacer your.host par le serveur POP3.

Créer le dossier lib/plugins/authmkpop3

Copier y les fichiers du plugin : plugin.info.txt and auth.php que vous trouverez dans mon dépôt : https://github.com/cybermonde/dokuwiki-authmkpop3

Créer vos utilisateurs :
  •     à la main : le nom d'utilisateur est l'adresse mail, pas de mot de passe (c'est celui du serveur mail qui sera validé)
  •     en créant un script pour générer le conf/users.auth.php

Source : https://forum.dokuwiki.org/post/38742

Testé avec la version : Release 2013-05-10a "Weatherwax"

mercredi 22 mai 2013

migration vers PHP 5.4

Une application utilise sur la machine de développement la notation suivante :

foo()[0]

Cette notation est apparue avec PHP 5.4 (voir toutes les nouveautés).

Lire la suite...

vendredi 26 octobre 2012

octal de là

Dans un script bash qui calcule un offset sur base de l'heure courante, il m'arrivait d'avoir l'erreur suivante :

( 09: value too great for base (error token is "09")

Le problème vient de l'interprétation de bash qui considère les chiffres commençant par zéro comme de l'octal. Hors dans le système octal, 8 et 9 n'existent pas.

J'impose donc un système décimal en ajoutant 10# devant ma variable, le script (extrait) devient :

# déterminer l'heure courante
heurecourante=$(date +%H)
minutecourante=$(date +%M)
# le "10#" sert à éviter que les heures qui commencent par zéro soient considérées comme de l'octal
offset=$(( ( (10#$heurecourante) * 60 ) + $minutecourante ))

mardi 10 juillet 2012

MantisBT : gestionnaire de bugs

Mantis Bug Tracker est un gestionnaire de bugs (bogues) basé sur le classique duo PHP/MySQL. Il vous permet de maintenir un historique des bugs dans vos projets, leur résolution, la progression des versions (release)... L'installation est sans surprise, je n'y reviens pas.

Lire la suite...

mardi 29 mai 2012

générateur de document ODT à partir de PHP

Il y a quelques années je décrivais la structure d'un fichier ODT (OpenOffice.org/LibreOffice) puis comment créer de l'ODT avec PHP/MySQL. Aujourd'hui je vous propose de découvrir un générateur de document ODT à partir de PHP : odtPHP.

Lire la suite...

vendredi 3 juin 2011

développement Android : préparer le terrain

Mettre en place son (mon) environnement de développement pour Android. Le contexte : PC équipé d'Ubuntu et smartphone San Francisco avec Android 2.1.

Ce texte est un brouillon...

Lire la suite...

jeudi 9 avril 2009

créer un flux RSS à l'aide de Bash

L'idée : rassembler quelques commandes Bash pour vérifier certains paramètres du serveur et en créer un flux RSS.

Lire la suite...

mercredi 25 février 2009

calcul de date sous Bash

La documentation n'est pas très complète, dans cet article, de nombreux exemples de calcul de date sous Bash : Simple date and time calculation in BASH.

Liens utiles : Advanced Bash-Scripting Guide et BashGuide Greg's Wiki.

vendredi 12 décembre 2008

conversion de plusieurs flv en 1 avi

Supposons plusieurs fichiers flv à convertir en 1 fichier avi.

Lire la suite...

mercredi 12 novembre 2008

Remplir une feuille de calcul à partir d'un formulaire

Vous désirez réaliser un sondage, récolter des inscriptions... et stocker les réponses dans une feuille de calcul. Google Documents contient la fonction qui répondra à de nombreuses demandes.

Lire la suite...

vendredi 18 juillet 2008

ajouter un moteur de recherche à Firefox

Vous souhaitez mettre à disposition des visiteurs de votre site un moteur de recherche qu'ils peuvent intégrer à Firefox ? Suivez le guide...

Lire la suite...

- page 1 de 2