61 lines
2.1 KiB
PHP
61 lines
2.1 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @file
|
|
* Admin page callbacks for the advagg JS compression module.
|
|
*/
|
|
|
|
/**
|
|
* Page generation function for admin/settings/js-compress
|
|
*/
|
|
function advagg_js_compress_admin_page() {
|
|
$output = '';
|
|
return $output . drupal_get_form('advagg_js_compress_admin_settings_form');
|
|
}
|
|
|
|
/**
|
|
* Form builder; Configure advagg settings.
|
|
*
|
|
* @ingroup forms
|
|
* @see system_settings_form()
|
|
*/
|
|
function advagg_js_compress_admin_settings_form() {
|
|
$form = array();
|
|
|
|
$form['advagg_js_compress_agg_files'] = array(
|
|
'#type' => 'checkbox',
|
|
'#title' => t('Compress JS Files'),
|
|
'#default_value' => variable_get('advagg_js_compress_agg_files', ADVAGG_JS_COMPRESS_AGG_FILES),
|
|
);
|
|
$form['advagg_js_compress_inline'] = array(
|
|
'#type' => 'checkbox',
|
|
'#title' => t('Compress Inline JS'),
|
|
'#default_value' => variable_get('advagg_js_compress_inline', ADVAGG_JS_COMPRESS_INLINE),
|
|
);
|
|
|
|
$description = '';
|
|
$options = array(0 => t('JSMin+'));
|
|
if (function_exists('jsmin')) {
|
|
$options[1] = t('JSMin');
|
|
$description .= t('JSMin is the C complied version and is about 25 times faster. Recommend using it.');
|
|
}
|
|
else {
|
|
$description .= t('You can use the much faster C version of JSMin by installing the <a href="@php_jsmin">JSMin PHP Extension</a> on this server.', array('@php_jsmin' => 'http://www.ypass.net/software/php_jsmin/'));
|
|
}
|
|
$form['advagg_js_compressor'] = array(
|
|
'#type' => 'radios',
|
|
'#title' => t('Select the compression program to use'),
|
|
'#default_value' => variable_get('advagg_js_compressor', ADVAGG_JS_COMPRESSOR),
|
|
'#options' => $options,
|
|
'#description' => filter_xss($description),
|
|
);
|
|
|
|
$form['advagg_js_compress_packer_enable'] = array(
|
|
'#type' => 'checkbox',
|
|
'#title' => t('Enable Packer'),
|
|
'#default_value' => variable_get('advagg_js_compress_packer_enable', ADVAGG_JS_COMPRESS_PACKER_ENABLE),
|
|
'#description' => t('If enabled the non gzip version of JS files will be compressed using the JS Packer. WARNING: This has a high chance of breaking your JS. Only Enable on production after testing the non gzipped version locally.'),
|
|
);
|
|
|
|
return system_settings_form($form);
|
|
}
|