PHP 8.2.31
Preview: Inline.php Size: 2.79 KB
/home/nshryvcy/blissfulnepal.com/wp-content/plugins/w3-total-cache/lib/Minify/Minify/Inline.php

<?php
namespace W3TCL\Minify;

abstract class Minify_Inline {
    protected $_tag = '';
    protected $_minifier = null;
    protected $_minifierOptions = array();

    //abstract static function minify($content, $minifier, $options = array());

    public function setTag($tag) {
        $this->_tag = $tag;
    }

    public function setMinifier($minifier) {
        $this->_minifier = $minifier;
    }

    public function setMinifierOptions($minifierOptions = array()) {
        $this->_minifierOptions = $minifierOptions;
    }

    public function doMinify($content) {
        $search = '/(<' . $this->_tag . '\\b[^>]*?>)([\\s\\S]*?)(<\\/' . $this->_tag . '>)/i';

        $content = preg_replace_callback($search, array($this, '_callback'), $content);

        return $content;
    }

    protected function _callback($match) {
        list(, $openTag, $content, $closeTag) = $match;

        $content = $this->_process($openTag, $content, $closeTag);

        return $content;
    }

    protected function _process($openTag, $content, $closeTag) {
        $type = '';
        if (preg_match('#type="([^"]+)"#i', $openTag, $matches)) {
            $type = strtolower($matches[1]);
        }

        // minify
        $minifier = $this->_minifier;

        if (in_array($type, array('text/template', 'text/x-handlebars-template'))) {
            $minifier = '';
        }

        $minifier = apply_filters('w3tc_minify_html_script_minifier', $minifier, $type, $openTag . $content . $closeTag);

        if (empty($minifier)) {
            $needsCdata = false;
        } else {
            // remove CDATA section markers
            $content_old = $content;
            $content = $this->_removeCdata($content);
            $needsCdata = ( $content_old != $content );

            $content = call_user_func($minifier, $content, $this->_minifierOptions);
        }

        if ($needsCdata && $this->_needsCdata($content)) {
            $content = $this->_wrapCdata($content);
        }

        $content = $openTag . $content . $closeTag;

        return $content;
    }

    protected function _needsCdata($content) {
        return preg_match('/(?:[<&]|\\-\\-|\\]\\]>)/', $content);
    }

    protected function _removeCdata($content) {
        if (false !== strpos($content, '<![CDATA[')) {
            $content = str_replace('//<![CDATA[', '', $content);
            $content = str_replace('/*<![CDATA[*/', '', $content);
            $content = str_replace('<![CDATA[', '', $content);

            $content = str_replace('//]]>', '', $content);
            $content = str_replace('/*]]>*/', '', $content);
            $content = str_replace(']]>', '', $content);
        }

        return $content;
    }

    protected function _wrapCdata($content) {
        $content = '/*<![CDATA[*/' . $content . '/*]]>*/';

        return $content;
    }
}

Directory Contents

Dirs: 7 × Files: 18

Name Size Perms Modified Actions
Cache DIR
- drwxr-xr-x 2026-04-03 01:36:05
Edit Download
- drwxr-xr-x 2026-04-03 01:36:05
Edit Download
CSS DIR
- drwxr-xr-x 2026-04-03 01:36:05
Edit Download
HTML DIR
- drwxr-xr-x 2026-04-03 01:36:05
Edit Download
Inline DIR
- drwxr-xr-x 2026-04-03 01:36:05
Edit Download
JS DIR
- drwxr-xr-x 2026-04-03 01:36:05
Edit Download
YUI DIR
- drwxr-xr-x 2026-04-03 01:36:05
Edit Download
2.58 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
3.63 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
347 B lrw-r--r-- 2026-04-03 01:36:05
Edit Download
2.60 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
2.92 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
1.33 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
777 B lrw-r--r-- 2026-04-03 01:36:05
Edit Download
10.95 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
1.23 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
1.63 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
7.57 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
0 B lrw-r--r-- 2026-04-03 01:36:05
Edit Download
2.79 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
5.21 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
1.03 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
1.07 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
5.69 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download
4.91 KB lrw-r--r-- 2026-04-03 01:36:05
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).