/** * @param Request $request * @param Visitor $visitor * @param Action|null $action * @return mixed */ public function onNewVisit(Request $request, Visitor $visitor, $action) { $idActionUrl = false; if (!empty($action)) { $idActionUrl = $action->getIdActionUrlForEntryAndExitIds(); } return (int) $idActionUrl; }
/** * @param Request $request * @param Visitor $visitor * @param Action|null $action * @return int */ public function onExistingVisit(Request $request, Visitor $visitor, $action) { if (empty($action)) { return false; } $id = $action->getIdActionUrlForEntryAndExitIds(); if (!empty($id)) { $id = (int) $id; } return $id; }
/** * @param Action|null $action * @return bool */ public static function shouldCountInteraction($action) { if (empty($action)) { return false; } $idActionUrl = $action->getIdActionUrlForEntryAndExitIds(); if ($idActionUrl !== false) { return true; } $actionType = $action->getActionType(); $types = array(Action::TYPE_SITE_SEARCH); if (in_array($actionType, $types)) { return true; } return false; }
/** * @param Request $request * @param Visitor $visitor * @param Action|null $action * @return int */ public function onExistingVisit(Request $request, Visitor $visitor, $action) { if (!$action) { return false; } $increment = 'visit_total_actions + 1'; $idActionUrl = $action->getIdActionUrlForEntryAndExitIds(); if ($idActionUrl !== false) { return $increment; } $actionType = $action->getActionType(); if (in_array($actionType, array(Action::TYPE_SITE_SEARCH, Action::TYPE_EVENT))) { return $increment; } return false; }