function _less_attach_settings in Less CSS Preprocessor 7.4
Same name and namespace in other branches
- 8 includes/less.process.inc \_less_attach_settings()
Attach LESS settings to each file as appropriate.
Parameters
array[] $item:
string $key:
1 string reference to '_less_attach_settings'
- _less_pre_render in ./
less.module - Pre-render function for 'style' elements.
File
- includes/
less.process.inc, line 15 - Contains functions related to compiling .less files.
Code
function _less_attach_settings(&$item, $key) {
$defaults = array(
'less' => less_get_settings(),
);
// These items must be reset for consistent operation.
$nullify = array(
'less' => array(
'output_file' => NULL,
'build_required' => NULL,
),
);
// Merge in any info from $item.
$item = array_replace_recursive($defaults, $item, $nullify);
$item['less']['input_file'] = $item['data'];
$less_settings = less_get_settings(_less_file_owner($item['less']['input_file']));
// array_replace_recursive() works on keys, flip to not use numeric keys.
$less_settings['paths'] = array_flip($less_settings['paths']);
$item['less']['paths'] = array_flip($item['less']['paths']);
// Merge defaults with any per file settings.
$item['less'] = array_replace_recursive($less_settings, $item['less']);
// First array_flips before merge removed duplicates, so just flip back.
$item['less']['paths'] = array_flip($item['less']['paths']);
}