diff --git a/min/builder/index.php b/min/builder/index.php index 1b20982..bace9db 100644 --- a/min/builder/index.php +++ b/min/builder/index.php @@ -170,8 +170,12 @@ $serveOpts = array( ob_end_clean(); set_include_path(dirname(__FILE__) . '/../lib' . PATH_SEPARATOR . get_include_path()); +function min_autoload($name) { + require str_replace('_', DIRECTORY_SEPARATOR, $name) . '.php'; +} +spl_autoload_register('min_autoload'); -require 'Minify.php'; +//require 'Minify.php'; if (0 === stripos(PHP_OS, 'win')) { Minify::setDocRoot(); // we may be on IIS diff --git a/min/groupsConfig.php b/min/groupsConfig.php index 9e2514d..d6e7de1 100644 --- a/min/groupsConfig.php +++ b/min/groupsConfig.php @@ -31,4 +31,7 @@ return array( 'minifier' => array('Minify_Packer', 'minify') )) ),//*/ + + // testing + //'js' => array(dirname(__FILE__) . '/builder/_index.js'), ); \ No newline at end of file diff --git a/min/index.php b/min/index.php index df8db87..331f037 100644 --- a/min/index.php +++ b/min/index.php @@ -15,7 +15,11 @@ require MINIFY_MIN_DIR . '/config.php'; // setup include path set_include_path($min_libPath . PATH_SEPARATOR . get_include_path()); -require $min_libPath . '/Minify.php'; +function min_autoload($name) { + require str_replace('_', DIRECTORY_SEPARATOR, $name) . '.php'; +} +spl_autoload_register('min_autoload'); + Minify::$uploaderHoursBehind = $min_uploaderHoursBehind; Minify::setCache( @@ -37,9 +41,9 @@ if ($min_allowDebugFlag && isset($_GET['debug'])) { } if ($min_errorLogger) { - require_once $min_libPath . '/Minify/Logger.php'; + //require_once $min_libPath . '/Minify/Logger.php'; if (true === $min_errorLogger) { - require_once $min_libPath . '/FirePHP.php'; + //require_once $min_libPath . '/FirePHP.php'; Minify_Logger::setLogger(FirePHP::getInstance(true)); } else { Minify_Logger::setLogger($min_errorLogger); diff --git a/min/lib/Minify.php b/min/lib/Minify.php index 2c0ca34..20f6d5a 100644 --- a/min/lib/Minify.php +++ b/min/lib/Minify.php @@ -4,11 +4,6 @@ * @package Minify */ -/** - * Minify_Source - */ -require_once 'Minify/Source.php'; - /** * Minify - Combines, minifies, and caches JavaScript and CSS files on demand. * @@ -77,7 +72,6 @@ class Minify { public static function setCache($cache = '', $fileLocking = true) { if (is_string($cache)) { - require_once 'Minify/Cache/File.php'; self::$_cache = new Minify_Cache_File($cache, $fileLocking); } else { self::$_cache = $cache; @@ -162,10 +156,6 @@ class Minify { if (is_string($controller)) { // make $controller into object $class = 'Minify_Controller_' . $controller; - if (! class_exists($class, false)) { - require_once "Minify/Controller/" - . str_replace('_', '/', $controller) . ".php"; - } $controller = new $class(); } @@ -207,7 +197,6 @@ class Minify { $contentEncoding = self::$_options['encodeMethod']; } else { // sniff request header - require_once 'HTTP/Encoder.php'; // depending on what the client accepts, $contentEncoding may be // 'x-gzip' while our internal encodeMethod is 'gzip'. Calling // getAcceptedEncoding(false, false) leaves out compress and deflate as options. @@ -218,7 +207,6 @@ class Minify { } // check client cache - require_once 'HTTP/ConditionalGet.php'; $cgOptions = array( 'lastModifiedTime' => self::$_options['lastModifiedTime'] ,'isPublic' => self::$_options['isPublic'] @@ -376,7 +364,6 @@ class Minify { if ($unsetPathInfo) { unset($_SERVER['PATH_INFO']); } - require_once 'Minify/Logger.php'; Minify_Logger::log("setDocRoot() set DOCUMENT_ROOT to \"{$_SERVER['DOCUMENT_ROOT']}\""); } } diff --git a/min/lib/Minify/CSS.php b/min/lib/Minify/CSS.php index 2220cf2..6aaff59 100644 --- a/min/lib/Minify/CSS.php +++ b/min/lib/Minify/CSS.php @@ -50,12 +50,10 @@ class Minify_CSS { */ public static function minify($css, $options = array()) { - require_once 'Minify/CSS/Compressor.php'; if (isset($options['preserveComments']) && !$options['preserveComments']) { $css = Minify_CSS_Compressor::process($css, $options); } else { - require_once 'Minify/CommentPreserver.php'; $css = Minify_CommentPreserver::process( $css ,array('Minify_CSS_Compressor', 'process') @@ -65,7 +63,6 @@ class Minify_CSS { if (! isset($options['currentDir']) && ! isset($options['prependRelativePath'])) { return $css; } - require_once 'Minify/CSS/UriRewriter.php'; if (isset($options['currentDir'])) { return Minify_CSS_UriRewriter::rewrite( $css diff --git a/min/lib/Minify/Cache/APC.php b/min/lib/Minify/Cache/APC.php index ca84d29..dd51bcb 100644 --- a/min/lib/Minify/Cache/APC.php +++ b/min/lib/Minify/Cache/APC.php @@ -14,7 +14,7 @@ * @package Minify * @author Chris Edwards **/ -class Minify_Cache_APC { +class Minify_Cache_APC implements Minify_Cache_Interface { /** * Create a Minify_Cache_APC object, to be passed to diff --git a/min/lib/Minify/Cache/File.php b/min/lib/Minify/Cache/File.php index 8744a7e..6f4d74a 100644 --- a/min/lib/Minify/Cache/File.php +++ b/min/lib/Minify/Cache/File.php @@ -4,7 +4,7 @@ * @package Minify */ -class Minify_Cache_File { +class Minify_Cache_File implements Minify_Cache_Interface { public function __construct($path = '', $fileLocking = false) { diff --git a/min/lib/Minify/Cache/Interface.php b/min/lib/Minify/Cache/Interface.php new file mode 100644 index 0000000..89a1816 --- /dev/null +++ b/min/lib/Minify/Cache/Interface.php @@ -0,0 +1,59 @@ + **/ -class Minify_Cache_Memcache { +class Minify_Cache_Memcache implements Minify_Cache_Interface { /** * Create a Minify_Cache_Memcache object, to be passed to diff --git a/min/lib/Minify/Controller/Base.php b/min/lib/Minify/Controller/Base.php index 84889b3..7e467ea 100644 --- a/min/lib/Minify/Controller/Base.php +++ b/min/lib/Minify/Controller/Base.php @@ -96,12 +96,15 @@ abstract class Minify_Controller_Base { */ public function loadMinifier($minifierCallback) { - if (is_array($minifierCallback) + // autoloading... may no longer be needed + + /*if (is_array($minifierCallback) && is_string($minifierCallback[0]) && !class_exists($minifierCallback[0], false)) { require str_replace('_', '/', $minifierCallback[0]) . '.php'; } + */ } /** @@ -196,7 +199,6 @@ abstract class Minify_Controller_Base { * @return null */ protected function log($msg) { - require_once 'Minify/Logger.php'; Minify_Logger::log($msg); } } diff --git a/min/lib/Minify/Controller/MinApp.php b/min/lib/Minify/Controller/MinApp.php index 44b32ce..5b1e499 100644 --- a/min/lib/Minify/Controller/MinApp.php +++ b/min/lib/Minify/Controller/MinApp.php @@ -4,8 +4,6 @@ * @package Minify */ -require_once 'Minify/Controller/Base.php'; - /** * Controller class for requests to /min/index.php * diff --git a/min/lib/Minify/Controller/Page.php b/min/lib/Minify/Controller/Page.php index 45aa172..494f260 100644 --- a/min/lib/Minify/Controller/Page.php +++ b/min/lib/Minify/Controller/Page.php @@ -4,8 +4,6 @@ * @package Minify */ -require_once 'Minify/Controller/Base.php'; - /** * Controller class for serving a single HTML page * @@ -73,8 +71,10 @@ class Minify_Controller_Page extends Minify_Controller_Base { if ($this->_loadCssJsMinifiers) { // Minify will not call for these so we must manually load // them when Minify/HTML.php is called for. - require_once 'Minify/CSS.php'; - require_once 'JSMin.php'; + + // autoload + //require_once 'Minify/CSS.php'; + //require_once 'JSMin.php'; } parent::loadMinifier($minifierCallback); // load Minify/HTML.php } diff --git a/min/lib/Minify/Controller/Version1.php b/min/lib/Minify/Controller/Version1.php index 1861aab..a8de341 100644 --- a/min/lib/Minify/Controller/Version1.php +++ b/min/lib/Minify/Controller/Version1.php @@ -4,8 +4,6 @@ * @package Minify */ -require_once 'Minify/Controller/Base.php'; - /** * Controller class for emulating version 1 of minify.php * diff --git a/min/lib/Minify/Lines.php b/min/lib/Minify/Lines.php index 6f94fb6..50fe413 100644 --- a/min/lib/Minify/Lines.php +++ b/min/lib/Minify/Lines.php @@ -59,7 +59,6 @@ class Minify_Lines { // check for desired URI rewriting if (isset($options['currentDir'])) { - require_once 'Minify/CSS/UriRewriter.php'; Minify_CSS_UriRewriter::$debugText = ''; $content = Minify_CSS_UriRewriter::rewrite( $content diff --git a/min/pageBuffer.php b/min/pageBuffer.php index f364adc..fb09705 100644 --- a/min/pageBuffer.php +++ b/min/pageBuffer.php @@ -9,6 +9,11 @@ $_min_preIncludedFiles = get_included_files(); +function min_autoload($name) { + require str_replace('_', DIRECTORY_SEPARATOR, $name) . '.php'; +} +spl_autoload_register('min_autoload'); + function ob_minify_page($content) { global $min_serveOptions, $min_cacheMaxAge; @@ -29,8 +34,6 @@ function ob_minify_page($content) { // setup include path set_include_path($min_libPath . PATH_SEPARATOR . get_include_path()); - require $min_libPath . '/Minify.php'; - Minify::$uploaderHoursBehind = $min_uploaderHoursBehind; Minify::setCache( isset($min_cachePath) ? $min_cachePath : '' @@ -38,9 +41,7 @@ function ob_minify_page($content) { ); if ($min_errorLogger) { - require_once $min_libPath . '/Minify/Logger.php'; if (true === $min_errorLogger) { - require_once $min_libPath . '/FirePHP.php'; Minify_Logger::setLogger(FirePHP::getInstance(true)); } else { Minify_Logger::setLogger($min_errorLogger); diff --git a/min/utils.php b/min/utils.php index c735941..5428560 100644 --- a/min/utils.php +++ b/min/utils.php @@ -7,8 +7,6 @@ * @package Minify */ -require_once 'Minify/Build.php'; - /** * Get a timestamped URI to a minified resource using the default Minify install diff --git a/min_extras/ab_tests/minify/test_Files.php b/min_extras/ab_tests/minify/test_Files.php index 3fe0737..2371c2e 100644 --- a/min_extras/ab_tests/minify/test_Files.php +++ b/min_extras/ab_tests/minify/test_Files.php @@ -2,8 +2,6 @@ require '../../config.php'; -require 'Minify.php'; - // set in /min/config.php Minify::setCache($minifyCachePath); diff --git a/min_extras/ab_tests/minify/test_Files_Memcache.php b/min_extras/ab_tests/minify/test_Files_Memcache.php index d96d30f..a38ad39 100644 --- a/min_extras/ab_tests/minify/test_Files_Memcache.php +++ b/min_extras/ab_tests/minify/test_Files_Memcache.php @@ -2,8 +2,6 @@ require '../../config.php'; -require 'Minify.php'; -require 'Minify/Cache/Memcache.php'; $mc = new Memcache; if (! @$mc->connect('localhost', 11211)) { diff --git a/min_extras/ab_tests/minify/test_Groups.php b/min_extras/ab_tests/minify/test_Groups.php index 3158d46..863ef82 100644 --- a/min_extras/ab_tests/minify/test_Groups.php +++ b/min_extras/ab_tests/minify/test_Groups.php @@ -2,8 +2,6 @@ require '../../config.php'; -require 'Minify.php'; - // set in /min/config.php Minify::setCache($minifyCachePath); diff --git a/min_extras/ab_tests/minify/test_Version1.php b/min_extras/ab_tests/minify/test_Version1.php index c572bb2..4d3baf1 100644 --- a/min_extras/ab_tests/minify/test_Version1.php +++ b/min_extras/ab_tests/minify/test_Version1.php @@ -8,6 +8,4 @@ define('MINIFY_BASE_DIR', realpath( // set in /min/config.php define('MINIFY_CACHE_DIR', $minifyCachePath); -require 'Minify.php'; - Minify::serve('Version1'); diff --git a/min_extras/config.php b/min_extras/config.php index 6b4959a..459fc32 100644 --- a/min_extras/config.php +++ b/min_extras/config.php @@ -9,3 +9,8 @@ set_include_path($min_libPath . PATH_SEPARATOR . get_include_path()); $minifyCachePath = isset($min_cachePath) ? $min_cachePath : ''; + +function min_autoload($name) { + require str_replace('_', DIRECTORY_SEPARATOR, $name) . '.php'; +} +spl_autoload_register('min_autoload'); diff --git a/min_extras/examples/1/index.php b/min_extras/examples/1/index.php index 27ae19c..33f113d 100644 --- a/min_extras/examples/1/index.php +++ b/min_extras/examples/1/index.php @@ -2,7 +2,6 @@ require '../../config.php'; require '_groupsSources.php'; -require 'Minify/Build.php'; $jsBuild = new Minify_Build($groupsSources['js']); $cssBuild = new Minify_Build($groupsSources['css']); ?> diff --git a/min_extras/examples/1/m.php b/min_extras/examples/1/m.php index 84c8277..922aa03 100644 --- a/min_extras/examples/1/m.php +++ b/min_extras/examples/1/m.php @@ -2,7 +2,6 @@ require '../../config.php'; require '_groupsSources.php'; -require 'Minify.php'; if ($minifyCachePath) { Minify::setCache($minifyCachePath); diff --git a/min_extras/examples/2/index.php b/min_extras/examples/2/index.php index 5fdcda5..31a8fc1 100644 --- a/min_extras/examples/2/index.php +++ b/min_extras/examples/2/index.php @@ -2,7 +2,6 @@ require '../../config.php'; require '_groupsSources.php'; -require 'Minify/Build.php'; $jsBuild = new Minify_Build($groupsSources['js']); $cssBuild = new Minify_Build($groupsSources['css']); @@ -73,8 +72,6 @@ window.onload = function () { file_get_contents($_FILES['subject']['tmp_name']) ,'method' => $_POST['method'] diff --git a/min_extras/tools/minifyFile.php b/min_extras/tools/minifyFile.php index 3b4e691..363f741 100644 --- a/min_extras/tools/minifyFile.php +++ b/min_extras/tools/minifyFile.php @@ -5,11 +5,6 @@ if (isset($_FILES['subject']['name']) ) { require '../config.php'; - // easier to just require them all - require 'Minify/HTML.php'; - require 'Minify/CSS.php'; - require 'JSMin.php'; - $arg2 = null; switch ($m[1]) { case 'js': diff --git a/min_extras/tools/minifyTextarea.php b/min_extras/tools/minifyTextarea.php index 110b463..2c830ed 100644 --- a/min_extras/tools/minifyTextarea.php +++ b/min_extras/tools/minifyTextarea.php @@ -12,7 +12,6 @@ if (isset($_POST['textIn'])) { } if (isset($_POST['method']) && $_POST['method'] === 'Minify and serve') { - require 'Minify.php'; $base = trim(getPost('base')); if ($base) { @@ -27,15 +26,11 @@ if (isset($_POST['method']) && $_POST['method'] === 'Minify and serve') { $sourceSpec['id'] = 'foo'; if (isset($_POST['minJs'])) { $sourceSpec['minifyOptions']['jsMinifier'] = array('JSMin', 'minify'); - require 'JSMin.php'; } if (isset($_POST['minCss'])) { $sourceSpec['minifyOptions']['cssMinifier'] = array('Minify_CSS', 'minify'); - require 'Minify/CSS.php'; } $source = new Minify_Source($sourceSpec); - require_once 'Minify/Logger.php'; - require_once 'FirePHP.php'; Minify_Logger::setLogger(FirePHP::getInstance(true)); Minify::serve('Files', array( 'files' => $source @@ -47,11 +42,6 @@ if (isset($_POST['method']) && $_POST['method'] === 'Minify and serve') { $classes = array('Minify_HTML', 'Minify_CSS', 'JSMin', 'JSMinPlus'); if (isset($_POST['method']) && in_array($_POST['method'], $classes)) { - // easier to just require them all - require 'Minify/HTML.php'; - require 'Minify/CSS.php'; - require 'JSMin.php'; - require 'JSMinPlus.php'; $arg2 = null; if ($_POST['method'] === 'Minify_HTML') { diff --git a/min_extras/tools/minifyUrl.php b/min_extras/tools/minifyUrl.php index dd6cd7b..df1cac6 100644 --- a/min_extras/tools/minifyUrl.php +++ b/min_extras/tools/minifyUrl.php @@ -79,11 +79,6 @@ if (isset($_POST['url'])) { die('Unrecognized Content-Type: ' . $type['sent']); } - require 'Minify.php'; - require 'Minify/HTML.php'; - require 'Minify/CSS.php'; - require 'JSMin.php'; - if ($type['minify'] === 'text/html' && isset($_POST['addBase']) && ! preg_match('@