function live_css_page_build in Live CSS 8.2
Same name and namespace in other branches
- 8 live_css.module \live_css_page_build()
Implements hook_page_build().
- This replaced hook_init()
File
- ./
live_css.module, line 84
Code
function live_css_page_build() {
$perf = config('system.performance');
/**
* Verify permissions to use editor and make sure aggregation
* is disabled.
*/
if (user_access('edit css') && !$perf
->get('css.preprocess')) {
$config = config('live_css.settings');
$less = (bool) $config
->get('live_css_less');
$theme = $config
->get('live_css_theme');
// Add necessary javascript files to handle LESS files editing.
if ($less) {
drupal_add_js(drupal_get_path('module', 'live_css') . '/less-display.js');
drupal_add_js(drupal_get_path('module', 'live_css') . '/less-1.3.0.min.js');
}
$settings = array();
// Prepare php variables for transfer to javascript
$settings['theme'] = $theme;
$settings['autoload'] = FALSE;
$settings['hideadmin'] = (bool) $config
->get('live_css_hideadmin');
$settings['hidemodules'] = (bool) $config
->get('live_css_hidemodules');
$settings['fontsize'] = $config
->get('live_css_fontsize');
$settings['tabsize'] = (int) $config
->get('live_css_tabsize');
$settings['softtabs'] = (bool) $config
->get('live_css_softtabs');
$settings['storage'] = (bool) $config
->get('live_css_storage');
$settings['less'] = $less;
$settings['savepath'] = url('css/save');
// Leaving this one out until the Admin Menu team has a working D8 release
// $settings['menumargin'] = (boolean) config('admin_menu.settings')->get('admin_menu_top_margin');
// Load settings from PHP to JS
drupal_add_js(array(
'live_css' => $settings,
), 'setting');
// Load the editor itself
drupal_add_js(drupal_get_path('module', 'live_css') . '/ace/src/ace.js');
drupal_add_js(drupal_get_path('module', 'live_css') . '/ace/src/mode-css.js');
drupal_add_js(drupal_get_path('module', 'live_css') . '/ace/src/theme-' . $theme . '.js');
// Load any plugins there may be (there are none right now)
// drupal_add_js(drupal_get_path('module', 'live_css') . '/plugins.js');
// Load the list of stylesheets
drupal_add_css(drupal_get_path('module', 'live_css') . '/css.css', array(
'group' => 'CSS_THEME',
'every_page' => TRUE,
'weight' => 100,
'preprocess' => FALSE,
));
drupal_add_js(drupal_get_path('module', 'live_css') . '/css.js');
}
}