Index: libraries.drush.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/libraries/libraries.drush.inc,v retrieving revision 1.1 diff -u -p -r1.1 libraries.drush.inc --- libraries.drush.inc 19 Aug 2010 00:06:41 -0000 1.1 +++ libraries.drush.inc 10 Oct 2010 02:43:50 -0000 @@ -10,18 +10,18 @@ * Implements hook_drush_command(). */ function libraries_drush_command() { - return; $items['libraries-list'] = array( 'callback' => 'libraries_drush_list', 'description' => dt('Lists registered library information.'), + 'bootstrap' => DRUSH_BOOTSTRAP_DRUPAL_FULL, ); - $items['libraries-download'] = array( + /**$items['libraries-download'] = array( 'callback' => 'libraries_drush_download', 'description' => dt('Downloads a registered library into the libraries directory for the active site.'), 'arguments' => array( 'name' => dt('The internal name of the registered library.'), ), - ); + );*/ return $items; } @@ -41,6 +41,65 @@ See libraries-list for a list of registe } /** + * Lists registered library information. + */ +function libraries_drush_list() { + $libraries = libraries_detect(libraries_info()); + ksort($libraries); + + if (empty($libraries)) { + drush_print('There are no registered libraries.'); + } + + else { + $header = array('Name', 'Status', 'Version', 'Variants'); + $rows = array(); + foreach ($libraries as $library_name => $library) { + $version = $library['version']; + if ($library['installed']) { + $status = 'OK'; + } + else { + switch ($library['error']) { + case t('%library could not be found.', array('%library' => $library['title'])): + $version = '-'; + $status = 'Not found'; + break; + case t('The version of %library could not be detected.', array('%library' => $library['title'])): + $version = '-'; + $status = 'Not detected'; + break; + case t('The installed version %version of %library is not supported.', array('%version' => $library['version'], '%library' => $library['title'])): + $status = 'Not supported'; + break; + } + } + if (empty($library['variants'])) { + $variants = '-'; + } + else { + $variants = array(); + foreach ($library['variants'] as $variant_name => $variant) { + if ($variant['installed']) { + $variants[] = $variant_name; + } + } + if (empty($variants)) { + $variants = '-'; + } + else { + $variants = implode(', ', $variants); + } + } + + $rows[] = array($library_name, $status, $version, $variants); + } + $table = new Console_Table(); + drush_print($table->fromArray($header, $rows)); + } +} + +/** * Downloads a library. * * @param $name Index: tests/libraries_test.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/libraries/tests/libraries_test.module,v retrieving revision 1.4 diff -u -p -r1.4 libraries_test.module --- tests/libraries_test.module 9 Oct 2010 22:26:03 -0000 1.4 +++ tests/libraries_test.module 10 Oct 2010 02:43:50 -0000 @@ -188,21 +188,6 @@ function libraries_test_libraries_info() 'variant callback' => '_libraries_test_return_installed', 'variant arguments' => array(TRUE), ), - 'example_variant_2' => array( - 'files' => array( - 'js' => array( - 'example_4.js', - ), - 'css' => array( - 'example_4.css', - ), - 'php' => array( - 'example_4.php', - ), - ), - 'variant callback' => '_libraries_test_return_installed', - 'variant arguments' => array(TRUE), - ), ), );