You are here

webform_scheduled_tasks.drush.inc in Webform Scheduled Tasks 8

Contains cqc_webform_question_metadata.module.

File

webform_scheduled_tasks.drush.inc
View source
<?php

/**
 * @file
 * Contains cqc_webform_question_metadata.module.
 */

/**
 * Implements hook_drush_command().
 */
function webform_scheduled_tasks_drush_command() {
  $items = [];
  $items['webform-scheduled-tasks'] = [
    'aliases' => [
      'wfst',
    ],
    'description' => 'Performs the Webform Scheduled Tasks',
    'arguments' => [
      'arg' => 'Gets the date of the last run',
    ],
    'drupal dependencies' => [
      'webform_scheduled_tasks',
    ],
    'examples' => [
      'drush wfst' => 'Runs the Webform Scheduled Tasks and updates the last "
      . "run date.',
      'drush wfst last-run' => 'Returns the date and time of the last run.',
    ],
  ];
  return $items;
}

/**
 * Method to run the various drush commands depending on the arguments supplied.
 *
 * @param string $arg
 *   The parameters to use to work out the value.
 */
function drush_webform_scheduled_tasks($arg = NULL) {
  switch ($arg) {
    case 'last-run':
      drush_print('Last Run: ' . webform_scheduled_tasks_get_config('last_run'));
      break;
    case 'mins-since-last-run':
      $last_run = new DateTime(webform_scheduled_tasks_get_config('last_run'));
      $since_start = $last_run
        ->diff(new DateTime(date('Y-m-d H:i:s')));
      drush_print('Mins Since Last Run: ' . $since_start->i);
      break;
    default:
      drush_print('Starting Webform Scheduled Tasks.');
      drush_print('Last Run: ' . webform_scheduled_tasks_do_actions(TRUE));
      drush_print('Webform Scheduled Tasks complete.');
  }
}

Functions

Namesort descending Description
drush_webform_scheduled_tasks Method to run the various drush commands depending on the arguments supplied.
webform_scheduled_tasks_drush_command Implements hook_drush_command().