Index: trunk/kernel/units/visits/visits_event_handler.php =================================================================== diff -u -N -r6629 -r7391 --- trunk/kernel/units/visits/visits_event_handler.php (.../visits_event_handler.php) (revision 6629) +++ trunk/kernel/units/visits/visits_event_handler.php (.../visits_event_handler.php) (revision 7391) @@ -43,7 +43,7 @@ if($types == 'myvisitors') { - $user_id = $this->Application->GetVar('u_id'); + $user_id = $this->Application->RecallVar('user_id'); $object->addFilter('myitems_user1','au.PortalUserId = '.$user_id); $object->addFilter('myitems_user2','au.PortalUserId >0'); //$object->AddGroupByField('VisitDate'); @@ -53,7 +53,7 @@ if($types == 'myvisitororders' && $event->Special == 'incommerce') { - $user_id = $this->Application->GetVar('u_id'); + $user_id = $this->Application->RecallVar('user_id'); $object->addFilter('myitems_orders','ord.OrderId IS NOT NULL'); $object->addFilter('myitems_user1','au.PortalUserId = '.$user_id); $object->addFilter('myitems_user2','au.PortalUserId >0'); @@ -87,6 +87,22 @@ } } } + + /** + * [HOOK] Updates user_id in current visit + * + * @param kEvent $event + */ + function OnUserLogin(&$event) + { + if ($event->MasterEvent->status == erSUCCESS) { + $user_id = $this->Application->RecallVar('user_id'); + if ($user_id > 0) { + // for real users only, not root,guest + $this->Application->setVisitField('PortalUserId', $user_id); + } + } + } }