class Pman_Core_JsCompile extends Pman
{
+
+ static $cli_desc = "Wrapper around Javascript compression tools";
+
var $cli = false;
function getAuth()
{
*
* @param {String} basedir absolute path to files
* @param {Array} list of files (ontop of basedir)
- * @param {String|false} output url (path to basedir basically), or false
+ * @param {String} output url (path to basedir basically), or false
* to not compile
- *
+ *
*
*/
- function packScript($basedir, $files, $output_url)
+ function packScript($basedir, $files, $output_url, $compile=true)
{
// this outputs <script tags..>
// either for just the original files,
$output = md5(serialize($arfiles)) .'.js';
- if ( $output_url && !file_exists($basedir.'/_cache_/'.$output)) {
+ if ( $compile && !file_exists($basedir.'/_cache_/'.$output)) {
$this->pack($arfiles,$basedir.'/_cache_/'.$output);
}
- if ($output_url && file_exists($basedir.'/_cache_/'.$output)) {
+ if ($compile && file_exists($basedir.'/_cache_/'.$output)) {
echo '<script type="text/javascript" src="'.$output_url.'/_cache_/'. $output.'"></script>';
return;
$o = HTML_FlexyFramework::get()->Pman_Core;
if (empty($o['cssminify']) || !file_exists($o['cssminify'])) {
- echo '<!-- jspacker not set -->';
+ echo '<!-- cssminify not set -->';
return false;
}
require_once 'System.php';
if (!file_exists(dirname($output))) {
mkdir(dirname($output), 0755, true);
}
- sort($ofiles);
+ $lsort = create_function('$a,$b','return strlen($a) > strlen($b) ? 1 : -1;');
+ usort($ofiles, $lsort);
+
$eoutput = escapeshellarg($output);
$cmd = "$seed {$o['jspacker']}/pack.js -o $eoutput " . implode($ofiles, ' ') . ' 2>&1';
//echo "<PRE>$cmd\n";