| <?php |
|
|
| |
| |
| |
| |
| |
| |
|
|
| namespace Piwik\Plugins\Actions\Tracker; |
|
|
| use Piwik\Tracker\Action; |
| use Piwik\Tracker\Request; |
| use Piwik\Tracker\RequestProcessor; |
| use Piwik\Tracker\Visit\VisitProperties; |
| use Piwik\Tracker\Visitor; |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| class ActionsRequestProcessor extends RequestProcessor |
| { |
| public function processRequestParams(VisitProperties $visitProperties, Request $request) |
| { |
| |
| $action = Action::factory($request); |
| $action->writeDebugInfo(); |
|
|
| $request->setMetadata('Actions', 'action', $action); |
|
|
| |
| |
| $request->setMetadata( |
| 'Actions', |
| 'idReferrerActionUrl', |
| $visitProperties->getProperty('visit_exit_idaction_url') |
| ); |
| $request->setMetadata( |
| 'Actions', |
| 'idReferrerActionName', |
| $visitProperties->getProperty('visit_exit_idaction_name') |
| ); |
|
|
| return false; |
| } |
|
|
| public function afterRequestProcessed(VisitProperties $visitProperties, Request $request) |
| { |
| |
| $action = $request->getMetadata('Actions', 'action'); |
|
|
| if (!empty($action)) { |
| $action->loadIdsFromLogActionTable(); |
| } |
|
|
| return false; |
| } |
|
|
| public function recordLogs(VisitProperties $visitProperties, Request $request) |
| { |
| |
| $action = $request->getMetadata('Actions', 'action'); |
|
|
| if ( |
| $action !== null |
| && !$request->getMetadata('CoreHome', 'visitorNotFoundInDb') |
| ) { |
| $idReferrerActionUrl = 0; |
| $idReferrerActionName = 0; |
|
|
| if (!$request->getMetadata('CoreHome', 'isNewVisit')) { |
| $idReferrerActionUrl = $request->getMetadata('Actions', 'idReferrerActionUrl'); |
| $idReferrerActionName = $request->getMetadata('Actions', 'idReferrerActionName'); |
| } |
|
|
| $visitor = Visitor::makeFromVisitProperties($visitProperties, $request); |
| $action->record($visitor, $idReferrerActionUrl, $idReferrerActionName); |
| } |
| } |
| } |
|
|