vertebres_pipelines.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. if (!defined('_ECRIRE_INC_VERSION')) return;
  3. /*
  4. * Determiner l'utilisation du vertebreur
  5. * lorsque l'on passe un appel spip.php?page=table:articles
  6. */
  7. function vertebres_styliser($flux) {
  8. // si pas de squelette trouve,
  9. // on verifie si on demande une vue de table
  10. if (!$squelette = $flux['data']
  11. AND $fond = $flux['args']['fond']
  12. AND strncmp($fond,'prive/vertebres:',16)==0
  13. AND $table = substr($fond,16)
  14. AND include_spip('inc/autoriser')
  15. AND autoriser('webmestre')) {
  16. $ext = $flux['args']['ext'];
  17. $connect = $flux['args']['connect'];
  18. // Si pas de squelette regarder si c'est une table
  19. // et si l'on a la permission de l'afficher
  20. $trouver_table = charger_fonction('trouver_table', 'base');
  21. if ($desc= $trouver_table($table, $connect)) {
  22. $fond = $table;
  23. $base = _DIR_TMP . 'table_' . $fond . ".$ext";
  24. if (!file_exists($base)
  25. OR (defined('_VAR_MODE') AND _VAR_MODE)) {
  26. $vertebrer = charger_fonction('vertebrer', 'public');
  27. ecrire_fichier($base, $vertebrer($desc));
  28. }
  29. // sauver les changements
  30. $flux['data'] = _DIR_TMP . 'table_' . $fond;
  31. }
  32. }
  33. return $flux;
  34. }
  35. ?>