$v){
//echo $k.'
';
$data .= file_get_contents($self_path.'/'.$v)."\n\n";
}
// We are zipping if possible
if(function_exists('ob_gzhandler') && !ini_get('zlib.output_compression')){
ob_start('ob_gzhandler');
}
// Type javascript
header("Content-type: text/javascript; charset: UTF-8");
// Set a zero Mtime
$filetime = filemtime($self_path.'/frontend.js');
// Are we to also serve Shortcodes ?
if(!empty($kkart->shortcodes)){
$data .= 'kkart_shortcodes = '.json_encode($kkart->shortcodes).';'."\n\n";
$data .= 'kkart_styles = '.json_encode($kkart->styles).';'."\n\n";
$data .= 'kkart_groups = '.json_encode($kkart->groups).';'."\n\n";
}
// Add the langs as well
preg_match_all('/kkart_l\([\'"](\w*)[\'"]\)/is', $data, $matches);
if(!empty($matches[1])){
foreach($matches[1] as $lk => $lv){
$export_langs[$lv] = __kk($lv);
}
}
// And lang string ?
if(!empty($export_langs)){
$data .= 'kkart_lang = '.json_encode($export_langs).';'."\n\n";
}
// Cache Control
header("Cache-Control: must-revalidate");
// Checking if the client is validating his cache and if it is current.
if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) && (@strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) >= $filetime)) {
// Client's cache IS current, so we just respond '304 Not Modified'.
header('Last-Modified: '.gmdate('D, d M Y H:i:s', $filetime).' GMT', true, 304);
return;
}else{
// Image not cached or cache outdated, we respond '200 OK' and output the image.
header('Last-Modified: '.gmdate('D, d M Y H:i:s', $filetime).' GMT', true, 200);
}
echo $data;