Implements hook_advagg_get_js_file_contents_alter().
Used to compress a js file.
Related topics
File
-
advagg_js_compress/
advagg_js_compress.advagg.inc, line 123
Code
function advagg_js_compress_advagg_get_js_file_contents_alter(&$contents, $filename, $aggregate_settings) {
// Get per file settings.
if (!empty($aggregate_settings['variables']['advagg_js_compressor_file_settings'])) {
$form_api_filename = str_replace(array(
'/',
'.',
), array(
'__',
'--',
), $filename);
if (isset($aggregate_settings['variables']['advagg_js_compressor_file_settings'][$form_api_filename])) {
$aggregate_settings['variables']['advagg_js_compressor'] = $aggregate_settings['variables']['advagg_js_compressor_file_settings'][$form_api_filename];
}
}
// Do nothing if js file compression is disabled.
if (empty($aggregate_settings['variables']['advagg_js_compressor'])) {
return;
}
// Make sure this file has been tested.
$compressor = $aggregate_settings['variables']['advagg_js_compressor'];
module_load_include('inc', 'advagg', 'advagg');
$info = advagg_get_info_on_file($filename);
if (!isset($info['advagg_js_compress'][$compressor]['code'])) {
// Test file here on the spot.
if (variable_get('advagg_cache_level', ADVAGG_CACHE_LEVEL) == 0 || variable_get('advagg_cache_level', ADVAGG_CACHE_LEVEL) == 1) {
$compressors_to_test = advagg_js_compress_get_enabled_compressors($aggregate_settings);
$info['advagg_js_compress'] = advagg_js_compress_run_test($filename, $info, $compressors_to_test);
}
}
// Compress it if it passes the test.
if (!empty($info['advagg_js_compress'][$compressor]['code']) && $info['advagg_js_compress'][$compressor]['code'] == 1) {
advagg_js_compress_prep($contents, $filename, $aggregate_settings);
}
}