Exectuer du code quand un auteur est ajouté à #SPIP

17 January 2017

Lorsqu’on ajoute un auteur, on a parfois envie d’automatiser certaine action : ajout automatique dans une zone d’accès restreint, ajout de mots-clés, ou tout simplement envoyer un mail.

Du coup, voici un pipeline qui fera le travail ! Il pourrait y avoir un effet indésirable cependant : lorsqu’un auteur est ressuscité de la corbeille, le pipeline se déclenche à nouveau.
Si c’est un problème, le pipeline post_insertion peut aussi être utilisé. Il contient cependant beaucoup moins d’information que post_edition.

<?php
function prefix_post_edition($flux) {
    if ($flux['args']['table'] == table_objet_sql('auteur')
        and $flux['args']['action'] == 'instituer'
        and $flux['args']['statut_ancien'] == '5poubelle'
    ) {
        $id_auteur = $flux['args']['id_objet'];
        $statut = $flux['data']['statut'];
        // Coder ici !
    }

    return $flux;
}