Commit 2ce72356 authored by Joshua Sedler's avatar Joshua Sedler 🤸🏼 Committed by Julian Pustkuchen
Browse files

Issue #3301124 by gilmord, Grevil, Anybody: cookies_filter requires...

Issue #3301124 by gilmord, Grevil, Anybody: cookies_filter requires symfony/dom-crawler but is a submodule
parent f6c14111
Loading
Loading
Loading
Loading
+19 −1
Original line number Diff line number Diff line
@@ -33,6 +33,24 @@ will get blocked in the defined text format.

## Requirements

The following modules are required.
### The following modules are required.

- [COOKiES](https://www.drupal.org/project/cookies)

### The following libraries are required:

- symfony/dom-crawler
- symfony/css-selector

#### There are several ways to download the needed third-party libraries.

#### Recommended:

Use the [Composer Merge plugin](https://github.com/wikimedia/composer-merge-plugin)
to include the Cookies Filter module\'s [composer.libraries.json](https://cgit.drupalcode.org/cookies/tree/modules/cookies_filter/composer.libraries.json)

#### Optional:

Execute composer commands:
- composer require symfony/dom-crawler
- composer require symfony/css-selector
+7 −0
Original line number Diff line number Diff line
{
    "name": "drupal/cookies",
    "require": {
        "symfony/dom-crawler": "*",
        "symfony/css-selector": "*"
    }
}
+18 −0
Original line number Diff line number Diff line
@@ -12,3 +12,21 @@ function cookies_filter_install() {
  // Load module after other third-party module.
  module_set_weight('cookies_filter', 11);
}

/**
 * Implements hook_requirements().
 */
function cookies_filter_requirements($phase) {
  $requirements = [];
  if ($phase === 'install') {
    if (!class_exists('Symfony\Component\DomCrawler\Crawler')) {
      $requirements['cookies_filter']['description'] = t('The cookies_filter module requires "symfony/dom-crawler" please require this composer package, via "composer require symfony/dom-crawler" or follow instructions in hook_help().');
      $requirements['cookies_filter']['severity'] = REQUIREMENT_ERROR;
    }
    if (!class_exists('Symfony\Component\CssSelector\CssSelectorConverter')) {
      $requirements['cookies_filter']['description'] = t('The cookies_filter module requires "symfony/css-selector" please require this composer package, via "composer require symfony/css-selector" or follow instructions in hook_help().');
      $requirements['cookies_filter']['severity'] = REQUIREMENT_ERROR;
    }
  }
  return $requirements;
}