Example #1
0
function getOpenCartSetting($key, $store_id = 0)
{
    $db = NitroDb::getInstance();
    nitroEnableSession();
    $store_id = $store_id == 0 && !empty($GLOBALS['nitro.store_id']) ? (int) $GLOBALS['nitro.store_id'] : $store_id;
    $query = $db->query("SELECT value FROM " . DB_PREFIX . "setting WHERE `key`='" . $key . "' AND store_id='" . $store_id . "' LIMIT 1");
    if ($query->num_rows) {
        $result = $query->row;
        if (!empty($result['value'])) {
            return $result['value'];
        }
    }
    return null;
}
Example #2
0
function serveBrowserCacheHeadersIfNecessary($filemtime)
{
    if (headers_sent()) {
        return;
    }
    nitroEnableSession();
    if (!empty($_SESSION['NitroSwitchLanguage'])) {
        unset($_SESSION['NitroSwitchLanguage']);
        return;
    }
    header('Nitro-Cache: Enabled');
    $userAgent = !empty($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'FOOBAR';
    $isIE = stripos($userAgent, 'MSIE ') !== false;
    $code304 = false;
    if (getNitroPersistence('BrowserCache.Headers.Pages.CacheControl') && !$isIE) {
        header('Cache-Control:public, max-age=31536000');
    }
    if (getNitroPersistence('BrowserCache.Headers.Pages.Expires')) {
        header('Expires: ' . gmdate('D, d M Y H:i:s \\G\\M\\T', time() + getPageCacheTime()));
        $code304 = true;
    }
    if (getNitroPersistence('BrowserCache.Headers.Pages.LastModified')) {
        header('Last-Modified: ' . gmdate('D, d M Y H:i:s \\G\\M\\T', $filemtime));
        $code304 = true;
    }
    if ($code304 && !empty($_SERVER['HTTP_IF_MODIFIED_SINCE']) && strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) >= $filemtime) {
        header('HTTP/1.1 304 Not Modified');
        exit;
    }
}