Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

Eric
2014-02-10 22:50:32

Mouais, effectivement ce n'est pas simple...

Grâce à toi, j'ai avancé d'un pas mais la route me semble encore longue. Finalement, j'ai bien fait d'adopter "ma solution du pauvre" ;-)

mistic100
2014-02-10 22:09:08

le fait est que moi je n'ajoute pas de colonne dans le tableau (unset ligne 35)

pour ajouter une colonne ça va demander plus de travail, du genre ajouter un <th> qui va bien, et peut etre bidouiller le javascript (ça peut se faire avec un préfiltre toujours)

ouais pas simple

mistic100
2014-02-10 22:04:50

boucle sur $output['aaData'] au lieu de juste $output

cf http://piwigo.org/dev/browser/extension … ts.inc.php

et il te faut un return dans les deux fonctions sinon ça marche pas du tout (c'est un trigger_change qui doit toujours retourner une valeur)

note que j'utilise array_search dans la seconde fonction pour etre certain de l'emplacement de ma données, sinon s'il y a plusieurs plugins (du genre oAuth + le tient) ça peut faire des nouilles

Eric
2014-02-10 21:40:56

Bonjour à tous,

Pour rendre le plugin extension:718 compatible avec Piwigo 2.6, j'ai d'abord choisi "la solution du pauvre" en centralisant les infos et actions dans un onglet de l'administration du plugin. Mais cela ne me convient pas vraiment et je cherche toujours à intégrer les fonctionnalités du plugin dans le gestionnaire d'utilisateurs.

Dans un premier temps, je cherche à ajouter une colonne supplémentaire à l'affichage de utilisateurs. Pour cela, il y a les triggers user_list_columns et after_render_user_list mais je bloque un peu sur le fonctionnement. Voici comment je vois la chose :

Code:

// D'abord l'ajout d'une colonne
add_event_handler('user_list_columns', 'PP_admin_columns');
function PP_admin_columns($aColumns)
{
  $aColumns[] = 'nom de ma colonne';
}

A ce stade, l'array $aColumns se compose des valeurs 'id', 'username', 'status', 'mail_address', 'registration_date' et 'nom de ma colonne' et c'est bien. Mais la colonne ajoutée ne s'affiche pas et j'ai le message d'erreur :
"DataTables warning (table id = 'userList'): Requested unknown parameter '0' from the data source for row 0"

Que j'interprète de la manière suivante : Pas d'affichage car pas de données à afficher. J'ai bon ?

Je passe donc au trigger after_render_user_list pour générer un contenu. Là aussi, c'est sur un tableau donné par $output qu'il me faudrait m'appuyer. Juste pour tester, j'ai pondu naïvement ceci :

Code:

// Ensuite le contenu de la nouvelle colonne
add_event_handler('after_render_user_list', 'PP_userlist_render' );
function PP_userlist_render($output)
{
    foreach ($output as $pp_output)
    {
        $pp_output = 'ma data';
        array_push($output,$pp_output);
    }
}

Evidemment, cela ne fonctionne pas mieux et j'obtiens une autre erreur : "DataTables warning (table id = 'userList'): DataTables warning: JSON data from server could not be parsed. This is caused by a JSON formatting error."

Là, je comprends que le format attendu pour JSON n'est pas bon... Et je sèche...
Dans user_list_backend, le tableau $output comporte les informations à afficher selon les critères de tri et de filtrage appliqués. Mais je n'en comprends pas plus.

Je suis ouvert à toutes pistes et suggestions ;-)

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2025 · Contact