| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 | 
							- <?php
 
- /**
 
-  * Implements hook_drush_command().
 
-  */
 
- function simplenews_drush_command() {
 
-   $items = array();
 
-   $items['simplenews-spool-count'] = array(
 
-     'description' => 'Print the current simplenews mail spool count',
 
-     'aliases' => array('sn-sc'),
 
-     'drupal dependencies' => array('simplenews'),
 
-     'options' => array(
 
-       'pipe' => dt('Just print the count value to allow parsing'),
 
-     )
 
-   );
 
-   $items['simplenews-spool-send'] = array(
 
-     'description' => 'Send the defined amount of mail spool entries.',
 
-     'examples' => array(
 
-       'drush sn-ss' => dt('Send the default amount of mails, as defined by the simplenews_throttle variable.'),
 
-       'drush sn-ss 0' => dt('Send all mails.'),
 
-       'drush sn-ss 100' => dt('Send 100 mails'),
 
-     ),
 
-     'options' => array(
 
-       'pipe' => dt('Just print the sent and remaining count on separate lines to allow parsing'),
 
-     ),
 
-     'aliases' => array('sn-ss'),
 
-     'drupal dependencies' => array('simplenews'),
 
-   );
 
-   return $items;
 
- }
 
- /**
 
-  * Drush command to count the mail spool queue.
 
-  */
 
- function drush_simplenews_spool_count() {
 
-   module_load_include('inc', 'simplenews', 'includes/simplenews.mail');
 
-   $count = simplenews_count_spool();
 
-   $no_description = drush_get_option('pipe');
 
-   if ($no_description) {
 
-     drush_print_pipe($count);
 
-   }
 
-   else {
 
-     drush_log(dt('Current simplenews mail spool count: @count', array('@count' => $count)), 'status');
 
-   }
 
- }
 
- /**
 
-  * Drush command to send the mail spool queue.
 
-  */
 
- function drush_simplenews_spool_send($limit = FALSE) {
 
-   module_load_include('inc', 'simplenews', 'includes/simplenews.mail');
 
-   if ($limit === FALSE) {
 
-     $limit = variable_get('simplenews_throttle');
 
-   }
 
-   elseif ($limit == 0) {
 
-     $limit = SIMPLENEWS_UNLIMITED;
 
-   }
 
-   $start_time = microtime(TRUE);
 
-   $sent = simplenews_mail_spool($limit);
 
-   simplenews_clear_spool();
 
-   simplenews_send_status_update();
 
-   $durance = round(microtime(TRUE) - $start_time, 2);
 
-   // Report the number of sent mails.
 
-   if ($sent > 0) {
 
-     $remaining = simplenews_count_spool();
 
-     if (drush_get_option('pipe')) {
 
-       // For pipe, print the sent first and then the remaining count, separated by a space.
 
-       drush_print_pipe($sent . " " . $remaining);
 
-     }
 
-     else {
 
-       drush_log(dt('Sent @count mails from the queue in @sec seconds.', array('@count' => $sent, '@sec' => $durance)), 'status');
 
-       drush_log(dt('Remaining simplenews mail spool count: @count', array('@count' => $remaining)), 'status');
 
-     }
 
-   }
 
- }
 
 
  |