Piwik\Plugins\CoreHome\Tracker\VisitRequestProcessor::isVisitNew PHP Method

isVisitNew() public method

Note: public only for tests.
public isVisitNew ( Piwik\Tracker\Visit\VisitProperties $visitProperties, Request $request ) : boolean
$visitProperties Piwik\Tracker\Visit\VisitProperties The current visit/visitor information.
$request Piwik\Tracker\Request
return boolean
    public function isVisitNew(VisitProperties $visitProperties, Request $request)
    {
        $isKnown = $request->getMetadata('CoreHome', 'isVisitorKnown');
        if (!$isKnown) {
            return true;
        }
        $isLastActionInTheSameVisit = $this->isLastActionInTheSameVisit($visitProperties, $request);
        if (!$isLastActionInTheSameVisit) {
            Common::printDebug("Visitor detected, but last action was more than 30 minutes ago...");
            return true;
        }
        $wasLastActionYesterday = $this->wasLastActionNotToday($visitProperties, $request);
        $forceNewVisitAtMidnight = (bool) Config::getInstance()->Tracker['create_new_visit_after_midnight'];
        if ($wasLastActionYesterday && $forceNewVisitAtMidnight) {
            Common::printDebug("Visitor detected, but last action was yesterday...");
            return true;
        }
        return false;
    }