You are here

function workflow_requirements in Workflow 7.2

Same name and namespace in other branches
  1. 8 workflow.install \workflow_requirements()
  2. 7 workflow.module \workflow_requirements()

Implements hook_requirements().

Let admins know that Workflow is in use.

@todo: extend workflow_requirements() for use with Workflow Field API.

File

./workflow.install, line 41
Install, update and uninstall functions for the workflow module.

Code

function workflow_requirements($phase) {
  $requirements = array();
  switch ($phase) {
    case 'install':
      break;
    case 'update':
      break;
    case 'runtime':

      // Show info on admin/reports/status.
      $types = db_query('SELECT wid, type FROM {workflow_type_map} WHERE wid <> 0 ORDER BY type')
        ->fetchAllKeyed();

      // If there are no types, then just bail.
      if (count($types) == 0) {
        return;
      }

      // Let's make it look nice.
      if (count($types) == 1) {
        $type_list = current($types);
      }
      else {
        $last = array_pop($types);
        if (count($types) > 2) {
          $type_list = implode(', ', $types) . ', and ' . $last;
        }
        else {
          $type_list = current($types) . ' and ' . $last;
        }
      }
      $t = get_t();
      $requirements['workflow'] = array(
        'title' => $t('Workflow'),
        'value' => $t('Workflow is active on the @types content types.', array(
          '@types' => $type_list,
        )),
        'severity' => REQUIREMENT_OK,
      );
      break;
  }
  return $requirements;
}