private function process($todo, $type, $ext, $todo_info)
 {
     $minit_pro = Minit_Pro::instance();
     $folder_info = $this->get_folder_info();
     foreach ($todo as $handle) {
         $version = $todo_info->registered[$handle]->ver;
         $src = $todo_info->registered[$handle]->src;
         if (!$src) {
             continue;
         }
         $file = $type . '-' . $handle . '-' . $version . '.' . $ext;
         if (file_exists($folder_info['path'] . $file)) {
             $this->done[$type][$handle] = $folder_info['url'] . $file;
             continue;
         }
         $src_path = $this->get_asset_relative_path($src);
         if (!file_exists($src_path)) {
             continue;
         }
         $data = file_get_contents($src_path);
         if (strpos($src, '.min') === false) {
             if ('style' == $type) {
                 $data = $minit_pro->minify_css($data);
             } else {
                 $data = $minit_pro->minify_js($data);
             }
         }
         if ('style' == $type) {
             $relative_path = $src;
             if (substr($relative_path, 0, strlen($_SERVER['DOCUMENT_ROOT'])) == $_SERVER['DOCUMENT_ROOT']) {
                 $relative_path = substr($relative_path, strlen($_SERVER['DOCUMENT_ROOT']));
             }
             $data = $this->resolve_urls($data, $relative_path);
             $data = $this->resolve_imports($data, $relative_path);
         }
         file_put_contents($folder_info['path'] . $file, $data);
         if (apply_filters('minit_pro_create_gz_file', false)) {
             Minit_Pro_GZ::compress($folder_info['path'] . $file, $data);
         }
         $this->done[$type][$handle] = $folder_info['url'] . $file;
     }
     return $todo;
 }
Beispiel #2
0
 public function create_gz($result)
 {
     if (apply_filters('minit_pro_create_gz_file', false)) {
         Minit_Pro_GZ::compress_source($result['file']);
     }
 }