Implements hook_advagg_asset_render_alter().

Fichier

advagg_mod/advagg_mod.module, line 125

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']);
                    }
                }
            }
        }
    }
}