Ça n'avance pas vite mais ça avance

Encore quelques lignes commitées aujourd’hui, pour faire avancer le schmilblick de la 2.9. Parce que c’est pas tout ça et j’ai beau avoir réduit copieusement la voilure, il reste encore des choses à terminer avant de livrer cette version, surtout que j’ai un plugin d’application (et de test) à développer avant de finir une des fonctions en cours d’implémentation.

En détail, ce que j’ai fini (quasi) de mettre en place aujourd’hui est un nouveau type (array) de réglages et de préférences, type proposé par Bruno (Dsls ou morefnu pour les intimes[1]), et qui évite d’utiliser des serialize à foison pour stocker des tableaux (associatifs ou pas d’ailleurs).

Exemple, là ou avant il fallait, pour récupérer un tableau stocké (avec un type string) ;

$last_dirs = @unserialize($core->auth->user_prefs->interface->media_last_dirs);    // Récupération du tableau stocké en préférence
$core->auth->user_prefs->interface->put('media_last_dirs',serialize($last_dirs));    // Enregistrement du tableau

Il faut maintenant faire :

$last_dirs = $core->auth->user_prefs->interface->media_last_dirs;    // Récupération du tableau stocké en préférence
$core->auth->user_prefs->interface->put('media_last_dirs',$last_dirs);    // Enregistrement du tableau

Ça simplifie le code donc c’est bon, mangez-en !

D’ailleurs je vais rapidement l’implémenter partout dans mes plugins (et ailleurs si besoin). À ce sujet, il y aura dans la 2.9, deux fonctions qui vous permettront de convertir vos préférences et réglages si nécessaire :

  • dcUpgrade::settings2array($namespace,$setting_id) pour les réglages du blog
  • dcUpgrade::prefs2array($workspace,$pref_id) pour les préférences utilisateur

Voyez le fichier inc/dbschema/upgrade.php pour quelques exemples d’utilisation.

PS : Merci à Bruno pour l’essentiel du code implémenté.

Note

[1] Je mets pas son URL de blog vu qu’il l’a tout massacré et qu’il est plus en ligne.

Ajouter un commentaire

Comments can be formatted using the Markdown syntax.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/12716

Haut de page