$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;