function cw_session_id($sess_id = "") { global $tables, $APP_SESSION_VARS, $APP_SESS_ID, $APP_SESSION_UNPACKED_VARS; $APP_SESSION_VARS = array(); if ($sess_id) { $sess_data = cw_query_first("SELECT * FROM {$tables['sessions_data']} WHERE sess_id='{$sess_id}'"); $APP_SESS_ID = $sess_id; if ($sess_data) { $APP_SESSION_VARS = unserialize($sess_data['data']); if (!empty($APP_SESSION_UNPACKED_VARS)) { foreach ($APP_SESSION_UNPACKED_VARS as $var => $v) { if (isset($GLOBALS[$var])) { unset($GLOBALS[$var]); } unset($APP_SESSION_UNPACKED_VARS[$var]); } } } else { cw_session_start($sess_id); } } else { $sess_id = $APP_SESS_ID; } return $sess_id; }
ini_set("url_rewriter.tags", ''); # Let's garbage collection will occurs more frequently ini_set("session.gc_probability", 90); ini_set("session.gc_divisor", 100); # for PHP >= 4.3.0 ini_set("session.use_cookies", false); if (defined("SET_EXPIRE")) { header("Expires: " . gmdate("D, d M Y H:i:s", SET_EXPIRE) . " GMT"); } else { header("Expires: " . gmdate("D, d M Y H:i:s") . " GMT"); } header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); if (defined("SET_EXPIRE")) { header("Cache-Control: public"); } elseif ($HTTPS) { header("Cache-Control: private, must-revalidate"); } else { header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); } if (isset($_POST[APP_SESSION_NAME])) { $APP_SESS_ID = $_POST[APP_SESSION_NAME]; } elseif (isset($_GET[APP_SESSION_NAME])) { $APP_SESS_ID = $_GET[APP_SESSION_NAME]; } elseif (isset($_COOKIE[APP_SESSION_NAME])) { $APP_SESS_ID = $_COOKIE[APP_SESSION_NAME]; } else { $APP_SESS_ID = false; } cw_session_start($APP_SESS_ID); register_shutdown_function("cw_session_save");
function cw_rc_cookie_process() { global $smarty; if (!cw_rc_get_cookie('start')) { if ($arr_cookie = cw_rc_get_cookie('history')) { cw_session_start($arr_cookie[0]); if (!cw_rc_set_cookie('history_temp', array($arr_cookie[0], $arr_cookie[1]))) { cw_rc_del_cookie('history_temp'); } if ($arr_seccion = cw_rc_get_session()) { list($id, $date, $cost, $count) = $arr_seccion; if (intval($count)) { cw_rc_set_cookie('history', array($arr_seccion[0], $arr_seccion[1])); } else { cw_rc_del_cookie('history'); cw_rc_del_cookie('history_temp'); } $pref = ''; $postf = ''; if ($count_products = cw_rc_get_count_new_product($arr_cookie[1])) { $lng_count = cw_get_langvar_by_name('products_added_last_entry_msg', false, false, true); if (!empty($lng_count)) { $pref = "({$count_products}) {$lng_count}."; $smarty->assign('count_products', $pref); } } if ($arr_seccion[3]) { $lng_cart = cw_get_langvar_by_name('your_cart_count_items_msg', false, false, true); if (!empty($lng_cart)) { $postf = str_replace('{count}', $arr_seccion[3], $lng_cart); } } if (!empty($pref) || !empty($postf)) { cw_rc_echo($smarty, "{$pref} {$postf}"); } } else { cw_rc_del_cookie('history'); cw_rc_del_cookie('history_temp'); } } else { if ($arr_seccion = cw_rc_get_session()) { list($id, $date, $cost, $count) = $arr_seccion; if (intval($count)) { cw_rc_set_cookie('history', array($arr_seccion[0], $arr_seccion[1])); } } else { cw_rc_del_cookie('history'); cw_rc_del_cookie('history_temp'); } } cw_rc_set_cookie('start'); } else { if ($arr_cookie = cw_rc_get_cookie('history_temp')) { cw_session_start($arr_cookie[0]); if ($count_products = cw_rc_get_count_new_product($arr_cookie[1])) { $lng_count = cw_get_langvar_by_name('products_added_last_entry_msg', false, false, true); $smarty->assign('count_products', "({$count_products}) {$lng_count}"); } } if ($arr_seccion = cw_rc_get_session()) { list($id, $date, $total, $count) = $arr_seccion; if (intval($count)) { cw_rc_set_cookie('history', array($id, $date)); } $rcsave =& cw_session_register('rcsave'); if ($rcsave > 0) { if ($total > 0 && $total != $rcsave) { cw_rc_echo($smarty, cw_get_langvar_by_name('your_cart_saved_msg', false, false, true)); $rcsave = $total; } } elseif ($total > 0) { $rcsave = $total; cw_rc_echo($smarty, cw_get_langvar_by_name('your_cart_saved_msg', false, false, true)); } if (!$count) { cw_rc_del_cookie('history'); cw_rc_del_cookie('history_temp'); } } else { cw_rc_del_cookie('history'); cw_rc_del_cookie('history_temp'); } } }
<?php cw_lock("antibot"); $sess_id = cw_session_id(); cw_session_start($sess_id); if ($addons['image_verification']) { require_once $app_main_dir . "/addons/image_verification/antibot_image.php"; } function test() { cw_unlock("antibot"); } register_shutdown_function("test");