* Copyright (C) 2009 Christian "Schepp" Schaefer * http://twitter.com/derSchepp * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published * by the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. * If not, see <http://www.gnu.org/licenses/lgpl-3.0.txt> * ------------------------------------------------------------------------*/ header("Cache-Control: max-age=2592000"); header("Expires: " . gmdate('D, d M Y H:i:s', mktime(date('h') + 24 * 30)) . " GMT"); header("Content-type: text/javascript"); include 'booster_inc.php'; isset($_GET['dir']) ? $dir = rtrim(preg_replace('/[^a-zA-Z0-9,\\.\\/]/', '', $_GET['dir']), '/') : ($dir = 'js'); isset($_GET['totalparts']) ? $totalparts = intval($_GET['totalparts']) : ($totalparts = 1); isset($_GET['part']) ? $part = intval($_GET['part']) : ($part = 0); $booster = new Booster(); $booster->js_dir = $dir; $booster->js_totalparts = $totalparts; $booster->js_part = $part; echo $booster->js();
} if (isset($_GET['js_minify']) && $_GET['js_minify'] == 0) { $booster->js_minify = FALSE; } if (isset($_GET['js_hosted_minifier']) && $_GET['js_hosted_minifier'] == 1) { $booster->js_hosted_minifier = TRUE; } $booster->booster_cachedir = $booster_cachedir; $booster->js_source = $source; // Check if file gets requested with an eTag, serve 304 if nothing changed $etag = md5($source . intval($booster->debug) . intval($booster->librarydebug) . intval($booster->js_minify) . intval($booster->js_hosted_minifier) . $booster->filestime); if (@$_SERVER['HTTP_IF_NONE_MATCH'] === $etag) { header('HTTP/1.1 304 Not Modified'); exit; } $js = $booster->js(); header("Cache-Control: max-age=2592000, public"); header("Expires: " . gmdate('D, d M Y H:i:s', mktime(date('h') + 24 * 35)) . " GMT"); header("Vary: Accept-Encoding"); header("Content-type: text/javascript"); header("ETag: " . $etag); if (isset($booster_use_ob_gzhandler)) { for ($i = 0; $i < strlen($js); $i = $i + 2048) { echo substr($js, $i, 2048); if (ob_get_length()) { @ob_flush('ob_gzhandler'); @flush('ob_gzhandler'); @ob_end_flush('ob_gzhandler'); } } } else {