view core/modules/aggregator/aggregator.install @ 5:c69a71b4f40f

Add slideshow module
author Chris Cannam
date Thu, 07 Dec 2017 14:46:23 +0000
parents 4c8ae668cc8c
children 7a779792577d
line wrap: on
line source
<?php

/**
 * @file
 * Install, update and uninstall functions for the aggregator module.
 */

/**
 * Implements hook_requirements().
 */
function aggregator_requirements($phase) {
  $has_curl = function_exists('curl_init');
  $requirements = [];
  $requirements['curl'] = [
    'title' => t('cURL'),
    'value' => $has_curl ? t('Enabled') : t('Not found'),
  ];
  if (!$has_curl) {
    $requirements['curl']['severity'] = REQUIREMENT_ERROR;
    $requirements['curl']['description'] = t('The Aggregator module requires the <a href="https://secure.php.net/manual/en/curl.setup.php">PHP cURL library</a>. For more information, see the <a href="https://www.drupal.org/requirements/php/curl">online information on installing the PHP cURL extension</a>.');
  }
  return $requirements;
}

/**
 * The simple presence of this update function clears cached field definitions.
 */
function aggregator_update_8001() {
  // Feed ID base field is now required.
}

/**
 * Make the 'Source feed' field for aggregator items required.
 */
function aggregator_update_8200() {
  // aggregator_update_8001() did not update the last installed field storage
  // definition for the aggregator item's 'Source feed' field.
  $definition_update_manager = \Drupal::entityDefinitionUpdateManager();
  $field_definition = $definition_update_manager->getFieldStorageDefinition('fid', 'aggregator_item');
  $field_definition->setRequired(TRUE);
  $definition_update_manager->updateFieldStorageDefinition($field_definition);
}