$cache_time = strtotime($batcache->cache['headers']['Last-Modified'][0]); } else { $cache_time = $batcache->cache['time']; } if ($client_time >= $cache_time) { $three04 = true; } } // Use the batcache save time for Last-Modified so we can issue "304 Not Modified" but don't clobber a cached Last-Modified header. if ($batcache->cache_control && !isset($batcache->cache['headers']['Last-Modified'][0])) { header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $batcache->cache['time']) . ' GMT', true); header('Cache-Control: max-age=' . ($batcache->cache['max_age'] - time() + $batcache->cache['time']) . ', must-revalidate', true); } // Add some debug info just before </head> if ($batcache->debug) { $batcache->add_debug_from_cache(); } $batcache->do_headers($batcache->headers, $batcache->cache['headers']); if ($three04) { header("HTTP/1.1 304 Not Modified", true, 304); die; } if (!empty($batcache->cache['status_header'])) { header($batcache->cache['status_header'], true); } // Have you ever heard a death rattle before? die($batcache->cache['output']); } // Didn't meet the minimum condition? if (!$batcache->do && !$batcache->genlock) { return;