1 <?php
 2 /**
 3  * @package redaxo\be-style
 4  *
 5  * @author bloep
 6  */
 7 class rex_be_style
 8 {
 9     /**
10      * Converts Backend SCSS files to CSS.
11      */
12     public static function compile()
13     {
14         $scssFiles = rex_extension::registerPoint(new rex_extension_point('BE_STYLE_SCSS_COMPILE', []));
15         foreach ($scssFiles as $file) {
16             $compiler = new rex_scss_compiler();
17 
18             if (isset($file['root_dir'])) {
19                 $compiler->setRootDir($file['root_dir']);
20             }
21             $compiler->setScssFile($file['scss_files']);
22 
23             // Compile in backend assets dir
24             $compiler->setCssFile($file['css_file']);
25             $compiler->compile();
26 
27             // Compiled file to copy in frontend assets dir
28             // When a release is created, the files are copied to the frontend assets dir
29             // remember, the frontend assets dir is excluded by .gitignore
30             if (isset($file['copy_dest'])) {
31                 rex_file::copy($file['css_file'], $file['copy_dest']);
32             }
33         }
34     }
35 }
36