*
* @param {String} basedir absolute path to files
* @param {Array} list of files (ontop of basedir)
- *
+ * @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, $no_compile=false)
{
// this outputs <script tags..>
// either for just the original files,
$output = md5(serialize($arfiles)) .'.js';
- if (!file_exists($basedir.'/_cache_/'.$output)) {
+ if ( !$no_compile && !file_exists($basedir.'/_cache_/'.$output)) {
$this->pack($arfiles,$basedir.'/_cache_/'.$output);
}
- if (file_exists($basedir.'/_cache_/'.$output)) {
+ if (!$no_compile && file_exists($basedir.'/_cache_/'.$output)) {
echo '<script type="text/javascript" src="'.$output_url.'/_cache_/'. $output.'"></script>';
return;
}
foreach($ofiles as $f) {
- echo '<script type="text/javascript" src="'.$output_url.'/'.$f.'"></script>';
+ echo '<script type="text/javascript" src="'.$output_url.'/'.$f.'"></script>'."\n";
}
$o = HTML_FlexyFramework::get()->Pman_Core;
if (empty($o['jspacker']) || !file_exists($o['jspacker'].'/pack.js')) {
- echo '<!-- jspacker not set -->';
+ echo '<!-- JS COMPILE ERROR: option: Pman_Core[jspacker] not set -->';
return false;
}
require_once 'System.php';
$seed= System::which('seed');
if (!$seed) {
- echo '<!-- seed not installed -->';
+ echo '<!-- JS COMPILE ERROR: seed not installed -->';
return false;
}
}
sort($ofiles);
$eoutput = escapeshellarg($output);
- $cmd = "$seed {$o['jspacker']}/pack.js -o $eoutput " . implode($ofiles, ' ');
+ $cmd = "$seed {$o['jspacker']}/pack.js -o $eoutput " . implode($ofiles, ' ') . ' 2>&1';
//echo "<PRE>$cmd\n";
//echo `$cmd`;
- `$cmd`;
+ $res = `$cmd`;
//exit;
+ // since this only appears when we change.. it's ok to dump it out..
+ echo "<!-- Compiled javascript
+
+ " . htmlspecialchars($cmd) . "
+
+ " . htmlspecialchars($res) . "
+
+ -->";
+
// we should do more checking.. return val etc..
if (file_exists($output) && ($max < filemtime($output) ) ) {
return true;
}
- echo '<!-- packed file did not exist -->';
+ echo "<!-- JS COMPILE ERROR: packed file did not exist -->";
return false;
}