function &createSession($create = TRUE) { if (ServletContext::validClass($this->context)) { $response =& $this->context->getServletResponse(); $session =& $this->context->getServletSession(); if (IHttpResponse::validClass($response) && IHttpSession::validClass($session)) { $sessionid = ''; $cookie = $this->getCookie('_JPHPSESSIONID'); if (!isset($cookie)) { $sessionid = $this->getParameter('_JPHPSESSIONID'); } else { $sessionid = $cookie->getValue(); } if (strlen(trim($sessionid)) < 8) { if ($create == FALSE) { return NULL; } else { $sessionid = md5(StringBuffer::generateKey(16)); } } $session->setSessionID($sessionid); $session->initialize(); $cookie = new Cookie('_JPHPSESSIONID', $sessionid); if ($session->getMaxInactiveInterval() > 0) { $cookie->setMaxAge(time() + $session->getMaxInactiveInterval()); } else { $cookie->setMaxAge(0); } $response->addCookie($cookie); return $session; } } return NULL; }
function process() { $siteAdmin = $this->needASiteAdminSelected(); if ($siteAdmin) { $choice = $this->request->getConfirmedState(); $cookieSet = false; // is the cookie already set or not? if (isset($_COOKIE[COOKIE_NAME_NO_STAT . $siteAdmin])) { $cookieSet = true; } if ($choice == 1) { $ck = new Cookie(COOKIE_NAME_NO_STAT . $siteAdmin); if ($cookieSet) { $ck->delete(); } else { $ck->save(); } $this->setMessage(); } else { if ($cookieSet) { $this->tpl->assign("cookie_no_stat", true); } else { $this->tpl->assign("cookie_no_stat", false); } } } }
function init($request) { parent::init($request); $ck = new Cookie(COOKIE_NAME_SESSION); $ck->delete(); Request::redirectToModule('index'); }
/** * Creates a cookie object, adds it to the cookies stack and returns an reference to this cookie * * @param string $name * Name of cookie to create * * @return \Core\Http\Cookie\CookieInterface */ public function &createCookie(string $name) { $cookie = new Cookie(); $cookie->setName($name); $this->addCookie($cookie); return $cookie; }
/** * @see CookieManager::addCookie() */ public function addCookie(Cookie $cookie) { $cookieDomain = $cookie->getDomain(); if (!isset($this->cookies[$cookieDomain])) { $this->cookies[$cookieDomain] = array(); } $this->cookies[$cookieDomain][] = $cookie; }
public function header() { $_cookie = new Cookie('user'); if ($_cookie->getCookie()) { echo "function getHeader() {document.write('{$_cookie->getCookie()}, Hi! <a href=\"register.php?action=logout\">Logout</a>');}"; } else { echo "function getHeader() {document.write('<a href=\"register.php?action=reg\" class=\"user\">Register</a><a href=\"register.php?action=login\" class=\"user\">Login</a>');}"; } }
public function retrieve($uuid, $hashed_password, $hmac_hash, $expiration) { $cookie = new Cookie(); $cookie->set_uuid($uuid); $cookie->set_password($hashed_password); $cookie->set_hmac_hash($hmac_hash); $cookie->expiration = $expiration; return $cookie; }
public function header() { $_cookie = new Cookie('user'); if ($_cookie->getCookie()) { echo "function getHeader() {\n\t\t\t\t\tdocument.write('{$_cookie->getCookie()},您好! <a href=\"register.php?action=logout\">退出</a> ');\n\t\t\t\t}"; } else { echo "function getHeader() {\n\t\t\t\t\tdocument.write('<a href=\"register.php?action=reg\" class=\"user\">注册</a> <a href=\"register.php?action=login\" class=\"user\">登录</a>');\n\t\t\t\t}"; } }
protected function __trigger() { $accept = isset($_POST['action'][self::ROOTELEMENT]['accept']); $cookie = new Cookie('eu-cookie-law', YEAR, __SYM_COOKIE_PATH__, null, true); $cookie->set('accept', $accept); $result = new XMLElement(self::ROOTELEMENT); $result->setAttribute('result', $accept ? 'accept' : 'reject'); return $result; }
/** * Preparing hidden form with payment data before sending it to Dotpay */ public function initContent() { parent::initContent(); $this->display_column_left = false; $this->display_header = false; $this->display_footer = false; $cartId = 0; if (Tools::getValue('order_id') == false) { $cartId = $this->context->cart->id; $exAmount = $this->api->getExtrachargeAmount(true); if ($exAmount > 0 && !$this->isExVPinCart()) { $productId = $this->config->getDotpayExchVPid(); if ($productId != 0) { $product = new Product($productId, true); $product->price = $exAmount; $product->save(); $product->flushPriceCache(); $this->context->cart->updateQty(1, $product->id); $this->context->cart->update(); $this->context->cart->getPackageList(true); } } $discAmount = $this->api->getDiscountAmount(); if ($discAmount > 0) { $discount = new CartRule($this->config->getDotpayDiscountId()); $discount->reduction_amount = $this->api->getDiscountAmount(); $discount->reduction_currency = $this->context->cart->id_currency; $discount->reduction_tax = 1; $discount->update(); $this->context->cart->addCartRule($discount->id); $this->context->cart->update(); $this->context->cart->getPackageList(true); } $result = $this->module->validateOrder($this->context->cart->id, (int) $this->config->getDotpayNewStatusId(), $this->getDotAmount(), $this->module->displayName, NULL, array(), NULL, false, $this->customer->secure_key); } else { $this->context->cart = Cart::getCartByOrderId(Tools::getValue('order_id')); $this->initPersonalData(); $cartId = $this->context->cart->id; } $this->api->onPrepareAction(Tools::getValue('dotpay_type'), array('order' => Order::getOrderByCartId($cartId), 'customer' => $this->context->customer->id)); $sa = new DotpaySellerApi($this->config->getDotpaySellerApiUrl()); if ($this->config->isDotpayDispInstruction() && $this->config->isApiConfigOk() && $this->api->isChannelInGroup(Tools::getValue('channel'), array(DotpayApi::cashGroup, DotpayApi::transfersGroup)) && $sa->isAccountRight($this->config->getDotpayApiUsername(), $this->config->getDotpayApiPassword(), $this->config->getDotpayApiVersion())) { $this->context->cookie->dotpay_channel = Tools::getValue('channel'); Tools::redirect($this->context->link->getModuleLink($this->module->name, 'confirm', array('order_id' => Order::getOrderByCartId($cartId)))); die; } $this->context->smarty->assign(array('hiddenForm' => $this->api->getHiddenForm())); $cookie = new Cookie('lastOrder'); $cookie->orderId = Order::getOrderByCartId($cartId); $cookie->write(); $this->setTemplate("preparing.tpl"); }
protected function __trigger() { $xml = new XMLElement('cookie-monster'); $cookie = new Cookie(__SYM_COOKIE_PREFIX__ . '-cookiemonster', TWO_WEEKS, __SYM_COOKIE_PATH__); $count = 0; foreach ($_GET as $key => $val) { if (!in_array($key, array('symphony-page', 'debug', 'profile'))) { $cookie->set($key, $val); $xml->appendChild(new XMLElement('item', $val, array('name' => $key, 'action' => strlen($val) > 0 ? 'added' : 'removed'))); $count++; } } return $count == 0 ? NULL : $xml; }
protected function __trigger() { $supported_language_codes = LanguageRedirect::instance()->getSupportedLanguageCodes(); // only do something when there is a set of supported languages defined if (!empty($supported_language_codes)) { $current_language_code = LanguageRedirect::instance()->getLanguageCode(); // no redirect, set current language and region in cookie if (isset($current_language_code) and in_array($current_language_code, $supported_language_codes)) { $Cookie = new Cookie(__SYM_COOKIE_PREFIX_ . 'language-redirect', TWO_WEEKS, __SYM_COOKIE_PATH__); $Cookie->set('language', LanguageRedirect::instance()->getLanguage()); $Cookie->set('region', LanguageRedirect::instance()->getRegion()); } else { $current_path = !isset($current_language_code) ? $this->_env['param']['current-path'] : substr($this->_env['param']['current-path'], strlen($current_language_code) + 1); $browser_languages = $this->getBrowserLanguages(); foreach ($browser_languages as $language) { if (in_array($language, $supported_language_codes)) { $in_browser_languages = true; $browser_language = $language; break; } } $Cookie = new Cookie(__SYM_COOKIE_PREFIX_ . 'language-redirect', TWO_WEEKS, __SYM_COOKIE_PATH__); $cookie_language_code = $Cookie->get('language'); if (strlen($cookie_language_code) > 0) { $language_code = $Cookie->get('region') ? $cookie_language_code . '-' . $Cookie->get('region') : $cookie_language_code; } elseif ($in_browser_languages) { $language_code = $browser_language; } else { $language_code = $supported_language_codes[0]; } // redirect and exit header('Location: ' . $this->_env['param']['root'] . '/' . $language_code . '/' . $current_path); die; } $all_languages = LanguageRedirect::instance()->getAllLanguages(); $result = new XMLElement('language-redirect'); $current_language_xml = new XMLElement('current-language', $all_languages[$current_language_code] ? $all_languages[$current_language_code] : $current_language_code); $current_language_xml->setAttribute('handle', $current_language_code); $result->appendChild($current_language_xml); $supported_languages_xml = new XMLElement('supported-languages'); foreach ($supported_language_codes as $language) { $language_code = new XMLElement('item', $all_languages[$language] ? $all_languages[$language] : $language); $language_code->setAttribute('handle', $language); $supported_languages_xml->appendChild($language_code); } $result->appendChild($supported_languages_xml); return $result; } return false; }
function doRun() { $msg = ''; $username = mysql_real_escape_string($_POST['name']); $pass = mysql_real_escape_string($_POST['pass']); try { $db = new PDO('mysql:host=localhost;dbname=testData', 'root', 'root'); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $db->prepare(' SELECT username, pass FROM testTable WHERE username = :name AND pass = :pass '); $stmt->bindParam(':name', $username, PDO::PARAM_STR); $stmt->bindParam(':pass', $pass, PDO::PARAM_STR); $stmt->execute(); $result = $stmt->fetchAll(PDO::FETCH_ASSOC); if ($result == false) { $msg = 'sorry could not connect'; } else { //$_SESSION['name'] = $username; /** * Create a cookie with the name "myCookieName" and value "testing cookie value" */ $cookie = new Cookie(); // Set cookie name $cookie->setName('Login'); // Set cookie value $cookie->setValue("testing cookie value"); // Set cookie expiration time $cookie->setTime("+1 hour"); // Create the cookie $cookie->create(); // Delete the cookie. //$cookie->delete(); $msg = 'logged in as ' . $username . '<br>'; } } catch (PDOException $e) { echo "Error:" . $e; } echo $msg; $db = NULL; }
/** * [showRefLink description] * Route::get('{link?}', ['as' => 'reflink', 'uses' => 'LinkController@showRefLink']); * * @param [text] $link [referral link] * * @return [json] [all info abou the link] */ public function showRefLink($link = null) { // // If it has a Sponsor Cookie if (\Cookie::has('sponsor')) { return Redirect::to('/'); // Load Referral Link View } if (is_null($link)) { return Redirect::to('/'); // Redirect To HomePage } try { // If has $Link then Look in Database if Exist $link = Link::findByLink($link)->load('user.profile'); $link = $link->toArray(); // Note Cookie Wont Be Created if Exceeded More than 4kb \Cookie::queue('sponsor', $link, 2628000); // Return Referral View with Variable Link return Redirect::to('/')->with('link', $link); // If No Record Found Throw Exception! } catch (ModelNotFoundException $e) { // Return Back to Home return Redirect::to('/'); // return view('nosponsor'); } }
public function ajaxAddProblemAction() { $contestId = (int) Request::getPOST('contest-id'); $remote = (int) Request::getPOST('remote'); $problemCode = Request::getPOST('problem-code'); if (!array_key_exists($remote, StatusVars::$REMOTE_SCHOOL) || empty($problemCode) || empty($contestId)) { $this->renderError('缺少参数!'); } // 默认题库 Cookie::set('default_remote', $remote); $contestInfo = OjContestInterface::getDetail(array('id' => $contestId)); if (empty($contestInfo)) { $this->renderError('竞赛不存在!'); } $problemInfo = OjProblemInterface::getDetail(array('remote' => $remote, 'problem_code' => $problemCode)); if (empty($problemInfo)) { $this->renderError('题目不存在!'); } // 只能添加公开的题目,或者自建私有的题目 if ($problemInfo['hidden'] && $problemInfo['user_id'] != $this->loginUserInfo['id']) { $this->renderError('权限不足,无法添加该题目!'); } $globalIds = $contestInfo['global_ids']; if (in_array($problemInfo['id'], $globalIds)) { $this->renderError('题目已经添加!'); } // 题目上限 if (count($globalIds) >= ContestVars::CONTEST_PROBLEM_LIMIT) { $this->renderError('题目数量达到上限,无法继续添加!'); } // 更新数据 OjContestInterface::addProblem(array('id' => $contestId, 'remote' => $remote, 'problem_code' => $problemCode)); $this->setNotice(FrameworkVars::NOTICE_SUCCESS, '添加成功!'); $this->renderAjax(0); }
/** * Get cookie value(s) * * @param string $name Name of the cookie to get * @param mixed $default [optional] Default value if cookie is not set. Default is false * @return mixed Cookie stored datas */ public static function get($name, $default = false) { // handling array notation if (preg_match('#^(.*?)\\[(.*?)\\]$#', $name, $m)) { if (!isset($_COOKIE[$m[1]][$m[2]])) { return $default; } $value = $_COOKIE[$m[1]][$m[2]]; } else { if (!isset($_COOKIE[$name])) { return $default; } $value = $_COOKIE[$name]; } // retrieve cookie content $cookieValue = explode('|', $value); // hash is not correct if (count($cookieValue) !== 3 || !Security::check($cookieValue[0] . $cookieValue[1], $cookieValue[2])) { Cookie::delete($name); return $default; } $value = $cookieValue[0]; // if content is a serialized array if ($v = @unserialize($value)) { $value = $v; } return $value; }
public function before() { if ($this->request->action === 'media') { // Do not template media files $this->auto_render = FALSE; } else { // Grab the necessary routes $this->media = Route::get('docs/media'); $this->api = Route::get('docs/api'); $this->guide = Route::get('docs/guide'); if (isset($_GET['lang'])) { $lang = $_GET['lang']; // Load the accepted language list $translations = array_keys(Kohana::message('userguide', 'translations')); if (in_array($lang, $translations)) { // Set the language cookie Cookie::set('userguide_language', $lang, Date::YEAR); } // Reload the page $this->request->redirect($this->request->uri); } // Set the translation language I18n::$lang = Cookie::get('userguide_language', Kohana::config('userguide')->lang); // Use customized Markdown parser define('MARKDOWN_PARSER_CLASS', 'Kodoc_Markdown'); // Load Markdown support require Kohana::find_file('vendor', 'markdown/markdown'); // Set the base URL for links and images Kodoc_Markdown::$base_url = URL::site($this->guide->uri()) . '/'; Kodoc_Markdown::$image_url = URL::site($this->media->uri()) . '/'; } parent::before(); }
public function mySchool() { // $academy_id = Session::get('school_id_session'); $academy_id = Cookie::get('school_id_session'); $mySchool = Academy::where('id', $academy_id)->first(); return $mySchool; }
/** * This function determines whether an there is a currently logged in * Author for Symphony by using the `$Cookie`'s username * and password. If an Author is found, they will be logged in, otherwise * the `$Cookie` will be destroyed. * * @see core.Cookie#expire() */ public function isLoggedIn() { // Ensures that we're in the real world.. Also reduces three queries from database // We must return true otherwise exceptions are not shown if (is_null(self::$_instance)) { return true; } if ($this->Author) { return true; } else { $username = self::Database()->cleanValue($this->Cookie->get('username')); $password = self::Database()->cleanValue($this->Cookie->get('pass')); if (strlen(trim($username)) > 0 && strlen(trim($password)) > 0) { $author = AuthorManager::fetch('id', 'ASC', 1, null, sprintf("\n\t\t\t\t\t\t\t`username` = '%s'\n\t\t\t\t\t\t", $username)); if (!empty($author) && Cryptography::compare($password, current($author)->get('password'), true)) { $this->Author = current($author); self::Database()->update(array('last_seen' => DateTimeObj::get('Y-m-d H:i:s')), 'tbl_authors', sprintf(" `id` = %d", $this->Author->get('id'))); // Only set custom author language in the backend if (class_exists('Administration')) { Lang::set($this->Author->get('language')); } return true; } } $this->Cookie->expire(); return false; } }
public function ajaxAddProblemAction() { $setId = Request::getPOST('set-id'); $remote = Request::getPOST('remote'); $problemCode = Request::getPOST('problem-code'); // 默认题库 Cookie::set('default_remote', $remote); $problemInfo = OjProblemInterface::getDetail(array('remote' => $remote, 'problem_code' => $problemCode)); if (empty($problemInfo)) { $this->renderError('题目不存在!'); } if ($problemInfo['hidden']) { $this->renderError('无法添加隐藏的题目!'); } $setInfo = OjProblemSetInterface::getById(array('id' => $setId)); if (empty($setInfo)) { $this->renderError('专题不存在!'); } // 属主验证 if ($this->loginUserInfo['id'] != $setInfo['user_id']) { $this->renderError('你没有权限操作!'); } $globalIds = (array) json_decode($setInfo['problem_set'], true); if (in_array($problemInfo['id'], $globalIds)) { $this->renderError('题目已经在专题中!'); } // 题目上限 if (count($globalIds) >= ContestVars::SET_PROBLEM_LIMIT) { $this->renderError('题目数量达到上限,无法继续添加!'); } // 更新数据 OjProblemSetInterface::addProblem(array('id' => $setId, 'remote' => $remote, 'problem_code' => $problemCode)); $this->setNotice(FrameworkVars::NOTICE_SUCCESS, '操作成功'); $this->renderAjax(0); }
/** * Définir un cookie avec le contenu de paramètres transmis en GET puis rappeler la page * * @param string $query_string éventuellement avec 'url_redirection' en dernier paramètre * @return void */ public static function save_get_and_exit_reload( $query_string ) { Cookie::definir( COOKIE_MEMOGET , $query_string , 300 /* 60*5 = 5 min */ ); $param_redir_pos = mb_strpos($query_string,'&url_redirection'); $param_sans_redir = ($param_redir_pos) ? mb_substr( $query_string , 0 , $param_redir_pos ) : $query_string ; // J'ai déjà eu un msg d'erreur car il n'aime pas les chaines trop longues + Pas la peine d'encombrer avec le paramètre de redirection qui sera retrouvé dans le cookie de toutes façons exit_redirection(URL_BASE.$_SERVER['SCRIPT_NAME'].'?'.$param_sans_redir); }
function doModel() { switch ($this->action) { case 'logout': // unset only the required parameters in Session Session::newInstance()->_drop('adminId'); Session::newInstance()->_drop('adminUserName'); Session::newInstance()->_drop('adminName'); Session::newInstance()->_drop('adminEmail'); Session::newInstance()->_drop('adminLocale'); Cookie::newInstance()->pop('oc_adminId'); Cookie::newInstance()->pop('oc_adminSecret'); Cookie::newInstance()->pop('oc_adminLocale'); Cookie::newInstance()->set(); $this->redirectTo(osc_admin_base_url(true)); break; default: //default dashboard page (main page at oc-admin) $this->_exportVariableToView("numUsers", User::newInstance()->count()); $this->_exportVariableToView("numAdmins", Admin::newInstance()->count()); $this->_exportVariableToView("numItems", Item::newInstance()->count()); $this->_exportVariableToView("numItemsSpam", Item::newInstance()->totalItems(null, 'SPAM')); $this->_exportVariableToView("numItemsBlock", Item::newInstance()->totalItems(null, 'DISABLED')); $this->_exportVariableToView("numItemsInactive", Item::newInstance()->totalItems(null, 'INACTIVE')); $this->_exportVariableToView("numItemsPerCategory", osc_get_non_empty_categories()); $this->_exportVariableToView("newsList", osc_listNews()); $this->_exportVariableToView("comments", ItemComment::newInstance()->getLastComments(5)); //calling the view... $this->doView('main/index.php'); } }
/** * Application initialization * - Loads the plugins * - Sets the cookie configuration */ public static function init() { // Set defaule cache configuration Cache::$default = Kohana::$config->load('site')->get('default_cache'); try { $cache = Cache::instance()->get('dummy' . rand(0, 99)); } catch (Exception $e) { // Use the dummy driver Cache::$default = 'dummy'; } // Load the plugins Swiftriver_Plugins::load(); // Add the current default theme to the list of modules $theme = Swiftriver::get_setting('site_theme'); if (isset($theme) and $theme != "default") { Kohana::modules(array_merge(array('themes/' . $theme->value => THEMEPATH . $theme->value), Kohana::modules())); } // Clean up unset($active_plugins, $theme); // Load the cookie configuration $cookie_config = Kohana::$config->load('cookie'); Cookie::$httponly = TRUE; Cookie::$salt = $cookie_config->get('salt', Swiftriver::DEFAULT_COOKIE_SALT); Cookie::$domain = $cookie_config->get('domain') or ''; Cookie::$secure = $cookie_config->get('secure') or FALSE; Cookie::$expiration = $cookie_config->get('expiration') or 0; // Set the default site locale I18n::$lang = Swiftriver::get_setting('site_locale'); }
/** * This function determines whether an there is a currently logged in * Author for Symphony by using the `$Cookie`'s username * and password. If an Author is found, they will be logged in, otherwise * the `$Cookie` will be destroyed. * * @see core.Cookie#expire() */ public function isLoggedIn() { // Ensures that we're in the real world.. Also reduces three queries from database // We must return true otherwise exceptions are not shown if (is_null(self::$_instance)) { return true; } if ($this->Author) { return true; } else { $username = self::$Database->cleanValue($this->Cookie->get('username')); $password = self::$Database->cleanValue($this->Cookie->get('pass')); if (strlen(trim($username)) > 0 && strlen(trim($password)) > 0) { $id = self::$Database->fetchVar('id', 0, "SELECT `id` FROM `tbl_authors` WHERE `username` = '{$username}' AND `password` = '{$password}' LIMIT 1"); if ($id) { self::$Database->update(array('last_seen' => DateTimeObj::get('Y-m-d H:i:s')), 'tbl_authors', " `id` = '{$id}'"); $this->Author = AuthorManager::fetchByID($id); Lang::set($this->Author->get('language')); return true; } } $this->Cookie->expire(); return false; } }
function update() { $this->_upload(); $name = $this->getActionName(); $model = D($name); if (false === $model->create()) { $this->error($model->getError()); } $map['id'] = $_POST['parent_id']; $level = $model->where($map)->getField('area_type'); if (!isset($level)) { $model->area_type = 0; } else { $model->area_type = $level + 1; } // 更新数据 $list = $model->save(); if (false !== $list) { //成功提示 $this->assign('jumpUrl', Cookie::get('_currentUrl_')); $this->success('编辑成功!'); } else { //错误提示 $this->error('编辑失败!'); } }
/** * Parses a raw response string, including headers and body, and returns a Response object. * * @param string $response * * @return \Brick\Http\Response * * @throws \RuntimeException */ public static function parse($response) { $responseObject = new Response(); if (preg_match('/^HTTP\\/([0-9]\\.[0-9]) ([0-9]{3}) .*\\r\\n/', $response, $matches) == 0) { throw new \RuntimeException('Could not parse response (error 1).'); } list($line, $protocolVersion, $statusCode) = $matches; $responseObject->setProtocolVersion($protocolVersion); $responseObject->setStatusCode($statusCode); $response = substr($response, strlen($line)); for (;;) { $pos = strpos($response, Message::CRLF); if ($pos === false) { throw new \RuntimeException('Could not parse response (error 2).'); } if ($pos == 0) { break; } $header = substr($response, 0, $pos); if (preg_match('/^(\\S+):\\s*(.*)$/', $header, $matches) == 0) { throw new \RuntimeException('Could not parse response (error 3).'); } list($line, $name, $value) = $matches; if (strtolower($name) == 'set-cookie') { $responseObject->setCookie(Cookie::parse($value)); } else { $responseObject->addHeader($name, $value); } $response = substr($response, strlen($line) + 2); } $body = substr($response, 2); $responseObject->setContent($body); return $responseObject; }
public function edit() { $cate_tree = M("Ask")->findAll(); $this->assign("cate_tree", $cate_tree); Cookie::set('_currentUrl_', NULL); parent::edit(); }
/** * Update context after customer login * @param Customer $customer Created customer */ public function updateCustomer(Customer $customer) { $this->customer = $customer; $this->cookie->id_customer = (int) $customer->id; $this->cookie->customer_lastname = $customer->lastname; $this->cookie->customer_firstname = $customer->firstname; $this->cookie->passwd = $customer->passwd; $this->cookie->logged = 1; $customer->logged = 1; $this->cookie->email = $customer->email; $this->cookie->is_guest = $customer->isGuest(); $this->cart->secure_key = $customer->secure_key; if (Configuration::get('PS_CART_FOLLOWING') && (empty($this->cookie->id_cart) || Cart::getNbProducts($this->cookie->id_cart) == 0) && ($id_cart = (int) Cart::lastNoneOrderedCart($this->customer->id))) { $this->cart = new Cart($id_cart); } else { $id_carrier = (int) $this->cart->id_carrier; $this->cart->id_carrier = 0; $this->cart->setDeliveryOption(null); $this->cart->id_address_delivery = (int) Address::getFirstCustomerAddressId((int) $customer->id); $this->cart->id_address_invoice = (int) Address::getFirstCustomerAddressId((int) $customer->id); } $this->cart->id_customer = (int) $customer->id; if (isset($id_carrier) && $id_carrier) { $delivery_option = [$this->cart->id_address_delivery => $id_carrier . ',']; $this->cart->setDeliveryOption($delivery_option); } $this->cart->save(); $this->cookie->id_cart = (int) $this->cart->id; $this->cookie->write(); $this->cart->autosetProductAddress(); }
public function before() { parent::before(); // Borrowed from userguide if (isset($_GET['lang'])) { $lang = $_GET['lang']; // Make sure the translations is valid $translations = Kohana::message('langify', 'translations'); if (in_array($lang, array_keys($translations))) { // Set the language cookie Cookie::set('langify_language', $lang, Date::YEAR); } // Reload the page $this->request->redirect($this->request->uri()); } // Set the translation language I18n::$lang = Cookie::get('langify_language', Kohana::config('langify')->lang); // Borrowed from Vendo // Automaticly load a view class based on action. $view_name = $this->view_prefix . Request::current()->action(); if (Kohana::find_file('classes', strtolower(str_replace('_', '/', $view_name)))) { $this->view = new $view_name(); $this->view->set('version', $this->version); } }
function _initialize() { //先检查cookie if (!Cookie::is_set($_SESSION['cookietime'])) { redirect(PHP_FILE . C('USER_AUTH_GATEWAY')); } else { //保存cookie信息 Cookie::set($_SESSION['cookietime'], '1', 60 * 60 * 3); } // 用户权限检查 if (C('USER_AUTH_ON') && !in_array(MODULE_NAME, explode(',', C('NOT_AUTH_MODULE')))) { import('@.ORG.RBAC'); if (!RBAC::AccessDecision()) { //检查认证识别号 if (!$_SESSION[C('USER_AUTH_KEY')]) { //跳转到认证网关 redirect(PHP_FILE . C('USER_AUTH_GATEWAY')); } // 没有权限 抛出错误 if (C('RBAC_ERROR_PAGE')) { // 定义权限错误页面 redirect(C('RBAC_ERROR_PAGE')); } else { if (C('GUEST_AUTH_ON')) { $this->assign('jumpUrl', PHP_FILE . C('USER_AUTH_GATEWAY')); } // 提示错误信息 $this->error(L('_VALID_ACCESS_')); } } } }