You are here

function tacjs_page_attachments in TacJS 8

Same name and namespace in other branches
  1. 8.6 tacjs.module \tacjs_page_attachments()
  2. 8.2 tacjs.module \tacjs_page_attachments()
  3. 8.3 tacjs.module \tacjs_page_attachments()
  4. 8.4 tacjs.module \tacjs_page_attachments()
  5. 8.5 tacjs.module \tacjs_page_attachments()

Implements hook_page_attachments().

File

./tacjs.module, line 12
The module file.

Code

function tacjs_page_attachments(&$page) {

  /*  Initial JS.  */
  $config = \Drupal::getContainer()
    ->get('config.factory')
    ->getEditable('tacjs.admin_settings_form');
  $page['#attached']['library'][] = 'tacjs/tarteaucitron';
  $services_tacjs = \Drupal::service('tacjs.settings')
    ->getFieldsSelects('module');

  // @var  $social_networks.
  if (!empty($services_tacjs['social_networks'])) {
    $social_networks = $services_tacjs['social_networks'];
    foreach ($social_networks as $k => $item) {
      $page['#attached']['library'][] = 'tacjs/tac' . $item['name'];
      $page['#attached']['drupalSettings'][$item['value']]['value'] = !empty($config
        ->get($item['value'])) ? $config
        ->get($item['value']) : '';
    }
  }

  // @var  $apis.
  if (!empty($services_tacjs['apis'])) {
    $apis = $services_tacjs['apis'];
    foreach ($apis as $k => $item) {
      $page['#attached']['library'][] = 'tacjs/tac' . $item['name'];
      $page['#attached']['drupalSettings'][$item['value']]['value'] = !empty($config
        ->get($item['value'])) ? $config
        ->get($item['value']) : '';
    }
  }

  // @var  $comment.
  if (!empty($services_tacjs['comment'])) {
    $comment = $services_tacjs['comment'];
    foreach ($comment as $k => $item) {
      $page['#attached']['library'][] = 'tacjs/tac' . $item['name'];
      $page['#attached']['drupalSettings'][$item['value']]['value'] = !empty($config
        ->get($item['value'])) ? $config
        ->get($item['value']) : '';
    }
  }

  // @var $mesure_audience .
  if (!empty($services_tacjs['mesure_audience'])) {
    $mesure_audience = $services_tacjs['mesure_audience'];
    foreach ($mesure_audience as $k => $item) {
      $page['#attached']['library'][] = 'tacjs/tac' . $item['name'];
      $page['#attached']['drupalSettings'][$item['value']]['value'] = !empty($config
        ->get($item['value'])) ? $config
        ->get($item['value']) : '';
      if (isset($item['value_'])) {
        $page['#attached']['drupalSettings'][$item['value_']]['value'] = !empty($config
          ->get($item['value_'])) ? $config
          ->get($item['value_']) : '';
      }
    }
  }

  // @var $support .
  if (!empty($services_tacjs['support'])) {
    $support = $services_tacjs['support'];
    foreach ($support as $k => $item) {
      $page['#attached']['library'][] = 'tacjs/tac' . $item['name'];
      $page['#attached']['drupalSettings'][$item['value']]['value'] = !empty($config
        ->get($item['value'])) ? $config
        ->get($item['value']) : '';
    }
  }

  // @var  $video .
  $videos = $config
    ->get('type_video');
  if (!empty($videos)) {
    foreach ($videos as $k => $vid) {
      $page['#attached']['library'][] = 'tacjs/tac' . $vid;
    }
  }

  // @var  $regie_pub .
  $regie_pub = $services_tacjs['regie_pub'];
  if (!empty($regie_pub)) {
    foreach ($regie_pub['options'] as $k => $value) {
      $page['#attached']['library'][] = 'tacjs/tac' . $value;
    }
    unset($regie_pub['options']);
    if (!empty($regie_pub)) {
      foreach ($regie_pub as $k => $item) {
        $page['#attached']['library'][] = 'tacjs/tac' . $item['name'];
        $page['#attached']['drupalSettings'][$item['value']]['value'] = !empty($config
          ->get($item['value'])) ? $config
          ->get($item['value']) : '';
      }
    }
  }

  /*$test = \Drupal::service('library.discovery')->getLibraryByName('tacjs', 'tacjs/tacgoogleanalytics');
    $name = 'tacjs/tacgoogleanalytics';    // your library name here.
    if (function_exists('libraries_get_path') && file_exists(libraries_get_path($name))) {
    }*/
}