source/Core/Session.php
protected function _checkCookies($sCookieSid, $aSessCookieSetOnce)
    {
        $blSwapped = false;
        $myConfig = \OxidEsales\Eshop\Core\Registry::getConfig();
        $sCurrUrl = $myConfig->isSsl() ? $myConfig->getSslShopUrl() : $myConfig->getShopUrl();

        $blSessCookieSetOnce = false;
        if (is_array($aSessCookieSetOnce) && isset($aSessCookieSetOnce[$sCurrUrl])) {
            $blSessCookieSetOnce = $aSessCookieSetOnce[$sCurrUrl];
        }

        //if cookie was there once but now is gone it means we have to reset
        if ($blSessCookieSetOnce && !$sCookieSid) {
            if ($myConfig->getConfigParam('iDebug')) {
                $this->_sErrorMsg = "Cookie not found, creating new SID...<br>";
                $this->_sErrorMsg .= "Cookie: $sCookieSid<br>";
                $this->_sErrorMsg .= "Session: $blSessCookieSetOnce<br>";
                $this->_sErrorMsg .= "URL: " . $sCurrUrl . "<br>";
            }
            $blSwapped = true;
        }

        //if we detect the cookie then set session var for possible later use
        if ($sCookieSid == "oxid" && !$blSessCookieSetOnce) {
            if (!is_array($aSessCookieSetOnce)) {
                $aSessCookieSetOnce = [];
            }

            $aSessCookieSetOnce[$sCurrUrl] = "ox_true";
            $this->setVariable("sessioncookieisset", $aSessCookieSetOnce);
        }

        //if we have no cookie then try to set it
        if (!$sCookieSid) {
            \OxidEsales\Eshop\Core\Registry::getUtilsServer()->setOxCookie('sid_key', 'oxid');
        }

        return $blSwapped;
    }
protected function _checkCookies($sCookieSid, $aSessCookieSetOnce)
    {
        $blSwapped = false;
        $myConfig = \OxidEsales\Eshop\Core\Registry::getConfig();
        $sCurrUrl = $myConfig->isSsl() ? $myConfig->getSslShopUrl() : $myConfig->getShopUrl();

        $blSessCookieSetOnce = false;
        if (is_array($aSessCookieSetOnce) && isset($aSessCookieSetOnce[$sCurrUrl])) {
            $blSessCookieSetOnce = $aSessCookieSetOnce[$sCurrUrl];
        }

        //if cookie was there once but now is gone it means we have to reset
        if ($blSessCookieSetOnce && !$sCookieSid) {
            if ($myConfig->getConfigParam('iDebug')) {
                $this->_sErrorMsg = "Cookie not found, creating new SID...<br>";
                $this->_sErrorMsg .= "Cookie: $sCookieSid<br>";
                $this->_sErrorMsg .= "Session: $blSessCookieSetOnce<br>";
                $this->_sErrorMsg .= "URL: " . $sCurrUrl . "<br>";
            }
            $blSwapped = true;
        }

        //if we detect the cookie then set session var for possible later use
        if ($sCookieSid == "oxid" && !$blSessCookieSetOnce) {
            if (!is_array($aSessCookieSetOnce)) {
                $aSessCookieSetOnce = [];
            }

            $aSessCookieSetOnce[$sCurrUrl] = "ox_true";
            $this->setVariable("sessioncookieisset", $aSessCookieSetOnce);
        }

        //if we have no cookie then try to set it
        if (!$sCookieSid) {
            \OxidEsales\Eshop\Core\Registry::getUtilsServer()->setOxCookie('sid_key', 'oxid');
        }

        return $blSwapped;
    }
protected function _checkCookies ( $ sCookieSid , $ aSessCookieSetOnce ) { $ blSwapped = false ; $ myConfig = \ OxidEsales \ Eshop \ Core \ Registry :: getConfig ( ) ; $ sCurrUrl = $ myConfig -> isSsl ( ) ? $ myConfig -> getSslShopUrl ( ) : $ myConfig -> getShopUrl ( ) ; $ blSessCookieSetOnce = false ; if ( is_array ( $ aSessCookieSetOnce ) && isset ( $ aSessCookieSetOnce [ $ sCurrUrl ] ) ) { $ blSessCookieSetOnce = $ aSessCookieSetOnce [ $ sCurrUrl ] ; } //if cookie was there once but now is gone it means we have to reset if ( $ blSessCookieSetOnce && ! $ sCookieSid ) { if ( $ myConfig -> getConfigParam ( 'iDebug' ) ) { $ this -> _sErrorMsg = "Cookie not found, creating new SID...<br>" ; $ this -> _sErrorMsg .= "Cookie: $sCookieSid<br>" ; $ this -> _sErrorMsg .= "Session: $blSessCookieSetOnce<br>" ; $ this -> _sErrorMsg .= "URL: " . $ sCurrUrl . "<br>" ; } $ blSwapped = true ; } //if we detect the cookie then set session var for possible later use if ( $ sCookieSid == "oxid" && ! $ blSessCookieSetOnce ) { if ( ! is_array ( $ aSessCookieSetOnce ) ) { $ aSessCookieSetOnce = [ ] ; } $ aSessCookieSetOnce [ $ sCurrUrl ] = "ox_true" ; $ this -> setVariable ( "sessioncookieisset" , $ aSessCookieSetOnce ) ; } //if we have no cookie then try to set it if ( ! $ sCookieSid ) { \ OxidEsales \ Eshop \ Core \ Registry :: getUtilsServer ( ) -> setOxCookie ( 'sid_key' , 'oxid' ) ; } return $ blSwapped ; }
Check for existing cookie.
Cookie info is dropped from time to time.

@param string $sCookieSid         coockie sid
@param array  $aSessCookieSetOnce if session cookie is set

@return bool
Check for existing cookie . Cookie info is dropped from time to time .