Commit ca55170b authored by Roberto Peruzzo's avatar Roberto Peruzzo
Browse files

Issue #3262960 by robertoperuzzo, nessunluogo: Multiple js Cannot read...

parent 7b420342
Loading
Loading
Loading
Loading
+24 −31
Original line number Diff line number Diff line
@@ -155,7 +155,6 @@ function iubenda_integration_tokens($type, $tokens, array $data = [], array $opt
 * Implements hook_page_attachments().
 */
function iubenda_integration_page_attachments(array &$attachments) {
  $iubenda_integration = [];
  $config = \Drupal::config('iubenda_integration.settings');

  // Attach JS when privacy policy ID is filled.
@@ -172,8 +171,7 @@ function iubenda_integration_page_attachments(array &$attachments) {
      $consent_on_browsing = $config->get('consentOnContinuedBrowsing');

      // Attach setting values that we need to enable cookie banner.
      $iubenda_integration += [
        'iubendaIntegration' => [
      $iubenda_integration = [
        'iubendaCookiePolicy' => [
          'enableCMP' => TRUE,
          'isTCFConsentGlobal' => FALSE,
@@ -191,7 +189,6 @@ function iubenda_integration_page_attachments(array &$attachments) {
            'closeButtonRejects' => $config->get('closeButtonRejects'),
          ],
        ],
        ],
      ];

      // consentOnContinuedBrowsing (boolean, default true).
@@ -200,15 +197,15 @@ function iubenda_integration_page_attachments(array &$attachments) {
      // to no element. This way you only accept explicit consent, while
      // consent on scroll and page interaction is not given.
      if (!$consent_on_browsing) {
        $iubenda_integration['iubendaIntegration']['iubendaCookiePolicy']['consentOnScroll'] = FALSE;
        $iubenda_integration['iubendaIntegration']['iubendaCookiePolicy']['consentOnDocument'] = FALSE;
        $iubenda_integration['iubendaIntegration']['iubendaCookiePolicy']['consentOnLinkAndButton'] = FALSE;
        $iubenda_integration['iubendaIntegration']['iubendaCookiePolicy']['consentOnElement'] = NULL;
        $iubenda_integration['iubendaIntegration']['iubendaCookiePolicy']['consentOnScroll'] = FALSE;
        $iubenda_integration['iubendaCookiePolicy']['consentOnScroll'] = FALSE;
        $iubenda_integration['iubendaCookiePolicy']['consentOnDocument'] = FALSE;
        $iubenda_integration['iubendaCookiePolicy']['consentOnLinkAndButton'] = FALSE;
        $iubenda_integration['iubendaCookiePolicy']['consentOnElement'] = NULL;
        $iubenda_integration['iubendaCookiePolicy']['consentOnScroll'] = FALSE;
      }

      \Drupal::moduleHandler()->alter('iubenda_integration', $iubenda_integration);
      $attachments['#attached']['drupalSettings'] = $iubenda_integration;
      $attachments['#attached']['drupalSettings']['iubendaIntegration'] = $iubenda_integration;
      $attachments['#attached']['library'][] = 'iubenda_integration/cookie-solution-settings';
      $attachments['#attached']['library'][] = 'iubenda_integration/cookie-solution-stub';
      $attachments['#attached']['library'][] = 'iubenda_integration/cookie-solution';
@@ -216,15 +213,11 @@ function iubenda_integration_page_attachments(array &$attachments) {
  }

  if (!empty($config->get('api_key'))) {
    $iubenda_integration += [
      'consentSolution' => [
    $attachments['#attached']['drupalSettings']['consentSolution'] = [
      'api_key' => $config->get('api_key'),
      ],
    ];
    $attachments['#attached']['library'][] = 'iubenda_integration/consent-solution';
  }

  $attachments['#attached']['drupalSettings'] = $iubenda_integration;
}

/**