Taggué : snippet

Filtre AngularJS pour formater des unités

Ce filtre basique permet d’afficher une taille en octet dans un format plus humain et facile à lire :

app.filter('size', function() {
    return function(input) {
      var out = "";
      var size = parseInt(input);
      if (isNaN(size)) return "0";
      var unit = ["o","Ko","Mo","Go","To"];
      var i = 0;
      while (size >= 1024) {
          i++;
          size = size/1024;
      }
      out = size.toFixed(2) + ' ' + unit[i];
      return out;
    }
});

Pour l’utiliser :

<td>{{ object.size | size }}</td>

Update d’une collection MongoDB.

Par exemple, j’ai oublié un champs dans ma collection. Ici, je veux ajouter un champs userid qui sera
une version en minuscule de mon champ username (car sous MongoDB on ne peut pas faire de recherche sans tenir
compte de la casse sur un champ indexé). dans le shell Mongo :

use maDB;
db.user.find().forEach(
  function(e) {
    e.userid = e.username.toLowerCase();
    db.user.save(e);
    # ou mieux avec un update 
    # db.user.update({_id: e._id}, {$set: {userid: e.username.toLowerCase() } })
  }
);

Débugger dans WordPress

Pour débugger dans WordPress, c’est assez simple. Le but étant de ne pas avoir les infos de debug en haut de ses pages (pratique sur une version en ligne), mais plutôt dans un fichier de log. Lors de développement, il est également utile de pouvoir écrire des infos de debug dans un fichier plutôt qu’à l’écran.

Lire la suite

Créer une arborescence de fichiers mp3 en python

Après une récupération d’une grande quantité de mp3 (légale) sur un site, j’ai du faire un script pour renommer automatiquement les fichiers et recréer une arborescence en fonction des tags des fichiers mp3. Suite au téléchargement, tous le fichiers étaient dans le même dossier et portaient un nom du type download_1523645.php.

Lire la suite