OwlCyberSecurity - MANAGER
Edit File: CICookie.php
<?php /** * Part of the Sentinel package. * * NOTICE OF LICENSE * * Licensed under the 3-clause BSD License. * * This source file is subject to the 3-clause BSD License that is * bundled with this package in the LICENSE file. * * @package Sentinel * @version 2.0.18 * @author Cartalyst LLC * @license BSD License (3-clause) * @copyright (c) 2011-2019, Cartalyst LLC * @link http://cartalyst.com */ namespace Cartalyst\Sentinel\Cookies; use CI_Input as Input; class CICookie implements CookieInterface { /** * The CodeIgniter input object. * * @var \CI_Input */ protected $input; /** * The cookie options. * * @var array */ protected $options = [ 'name' => 'cartalyst_sentinel', 'domain' => '', 'path' => '/', 'prefix' => '', 'secure' => false, ]; /** * Create a new CodeIgniter cookie driver. * * @param \CI_Input $input * @param string|array $options * @return void */ public function __construct(Input $input, $options = []) { $this->input = $input; if (is_array($options)) { $this->options = array_merge($this->options, $options); } else { $this->options['name'] = $options; } } /** * {@inheritDoc} */ public function put($value) { $options = array_merge($this->options, [ 'value' => json_encode($value), 'expire' => 2628000, ]); $this->input->set_cookie($options); } /** * {@inheritDoc} */ public function get() { $value = $this->input->cookie($this->options['name']); if ($value) { return json_decode($value); } } /** * {@inheritDoc} */ public function forget() { $this->input->set_cookie([ 'name' => $this->options['name'], 'value' => '', 'expiry' => '', ]); } }