fgcf.drush.inc 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. // $Id$
  3. /**
  4. * @file
  5. * Fonctions de ligne de commande pour FGCF
  6. *
  7. * - importation de prestataires
  8. * - importation de fiches de formation
  9. *
  10. * Copyright 2010 Ouest Systemes Informatiques (OSInet)
  11. *
  12. * Licensed under the General Public License, version 2 or later
  13. */
  14. /**
  15. * Implements hook_drush_command().
  16. *
  17. * @return array
  18. */
  19. function fgcf_drush_command() {
  20. $items['fgcf-catalog'] = array(
  21. // a short description of your command
  22. 'description' => "Génère un catalogue de formations au format OpenDocument.",
  23. 'options' => array(
  24. 'dest' => "Le nom du fichier à générer. Le chemin est relatif au répertoire d'installation Drupal.\nPar défaut un fichier catalogue.odt est généré dans le répertoire d'installation Drupal.",
  25. ),
  26. 'examples' => array(
  27. 'drush fgcf-catalog' => 'Génère un fichier catalogue.otf dans le répertoire Drupal, à partir du template template.odt présent dans le répertoire courant',
  28. 'drush fgcf-catalog --dest=../custom.otf' => 'Génère un fichier custom.otf dans le dossier parent du répertoire Drupal, à partir du template template.odt présent dans le répertoire courant',
  29. ),
  30. 'aliases' => array('fgcfc'),
  31. );
  32. // $items['fgcf-import-prestataires'] = array(
  33. // // a short description of your command
  34. // 'description' => "Importe des fiches de prestataires depuis un fichier",
  35. // 'aliases' => array('fgcf-p'),
  36. // );
  37. //
  38. // $items['fgcf-import-formations'] = array(
  39. // // a short description of your command
  40. // 'description' => "Importe des fiches de formation depuis un fichier",
  41. // 'aliases' => array('fgcf-f'),
  42. // );
  43. return $items;
  44. }
  45. /**
  46. * Implements hook_drush_help().
  47. *
  48. * @param string $section
  49. */
  50. function fgcf_drush_help($section) {
  51. $help = array(
  52. 'fgcf-catalog' => dt('Génère un catalogue de formations à partir du fichier catalogue_template.odt présent dans le dossier du module fgcf.'),
  53. // 'fgcf-import-prestataires' => dt('Importe toutes les fiches de prestataires trouvées dans le fichier passé en argument'),
  54. // 'fgcf-import-formations' => dt('Importe toutes les fiches de formations trouvées dans le fichier passé en argument'),
  55. );
  56. $key = substr($section, strlen('drush:')); // drupal_substr() not available
  57. return array_key_exists($key, $help) ? $help[$key] : NULL;
  58. }
  59. /**
  60. * Command callback for fgcf-catalog.
  61. *
  62. * @param string $filename
  63. */
  64. function drush_fgcf_catalog() {
  65. // @todo : à paramétrer ?
  66. $template = dirname(__FILE__) ."/catalogue_template.odt";
  67. $dest = drush_get_option('dest');
  68. if (empty($dest)) {
  69. $dest = 'catalogue.odt';
  70. }
  71. module_load_include('inc', 'fgcf', 'fgcf.odt');
  72. $odf = fgcf_odt_export_formations($template);
  73. $odf->saveToDisk($dest);
  74. }