You are here

function advagg_mod_advagg_asset_render_alter in Advanced CSS/JS Aggregation 8.2

Implements hook_advagg_asset_render_alter().

File

advagg_mod/advagg_mod.module, line 125
Advanced aggregation modifier module.

Code

function advagg_mod_advagg_asset_render_alter(&$assets, $render_type, $asset_type) {
  if (!advagg_enabled()) {
    return;
  }
  if ($render_type == 'html') {
    if ($asset_type == 'styles') {
      foreach ($assets as &$value) {
        if (!empty($value['#inline'])) {
          $value['#value'] = @file_get_contents($value['#attributes']['href']);
          if ($value['#value']) {
            unset($value['#attributes']['href']);
          }
        }
        elseif (advagg_mod_css_defer_active()) {

          // Skip prefetch links and inline styles.
          if ($value['#tag'] == 'style') {
            continue;
          }
          $value['#attributes']['class'][] = 'advagg-css-defer';
          $value['#noscript'] = TRUE;
        }
      }
      unset($value);
    }
    elseif ($asset_type == 'scripts' || $asset_type == 'scripts_bottom') {
      foreach ($assets as &$value) {
        if (!empty($value['#inline'])) {
          $value['#value'] = @file_get_contents($value['#attributes']['src']);
          if ($value['#value']) {
            unset($value['#attributes']['src']);
          }
        }
      }
    }
  }
}