Index: branches/5.2.x/core/units/visits/visits_event_handler.php =================================================================== diff -u -N -r14244 -r14628 --- branches/5.2.x/core/units/visits/visits_event_handler.php (.../visits_event_handler.php) (revision 14244) +++ branches/5.2.x/core/units/visits/visits_event_handler.php (.../visits_event_handler.php) (revision 14628) @@ -1,6 +1,6 @@ Application->isAdmin || !$this->Application->ConfigValue('UseVisitorTracking')) { - // admin logins are not registred in visits list - return true; + if ( $this->Application->isAdmin || !$this->Application->ConfigValue('UseVisitorTracking') || $this->Application->RecallVar('visit_id') ) { + // admin logins are not registered in visits list + return ; } - if ($this->Application->RecallVar('visit_id')) { - return true; - } + $object =& $event->getObject(Array ('skip_autoload' => true)); + /* @var $object kDBItem */ - $object =& $event->getObject( Array('skip_autoload' => true) ); - $object->SetDBField('VisitDate_date', adodb_mktime() ); - $object->SetDBField('VisitDate_time', adodb_mktime() ); - $object->SetDBField('Referer', getArrayValue($_SERVER, 'HTTP_REFERER') ); - $object->SetDBField('IPAddress', $_SERVER['REMOTE_ADDR'] ); + $object->SetDBField('VisitDate_date', adodb_mktime()); + $object->SetDBField('VisitDate_time', adodb_mktime()); + $object->SetDBField('Referer', getArrayValue($_SERVER, 'HTTP_REFERER')); + $object->SetDBField('IPAddress', $_SERVER['REMOTE_ADDR']); - if ($object->Create()) { - $this->Application->StoreVar('visit_id', $object->GetID() ); - $this->Application->SetVar('visits_id', $object->GetID() ); + if ( $object->Create() ) { + $this->Application->StoreVar('visit_id', $object->GetID()); + $this->Application->SetVar('visits_id', $object->GetID()); } } /** * Apply any custom changes to list's sql query * * @param kEvent $event + * @return void * @access protected - * @see OnListBuild + * @see kDBEventHandler::OnListBuild() */ - function SetCustomQuery(&$event) + protected function SetCustomQuery(&$event) { $object =& $event->getObject(); + /* @var $object kDBList */ $types = $event->getEventParam('types'); - if($types == 'myvisitors') - { + if ( $types == 'myvisitors' ) { $user_id = $this->Application->RecallVar('user_id'); - $object->addFilter('myitems_user1','au.PortalUserId = '.$user_id); - $object->addFilter('myitems_user2','au.PortalUserId >0'); + $object->addFilter('myitems_user1', 'au.PortalUserId = ' . $user_id); + $object->addFilter('myitems_user2', 'au.PortalUserId >0'); //$object->AddGroupByField('VisitDate'); $object->AddGroupByField('%1$s.VisitId'); - } - if($types == 'myvisitororders' && $event->Special == 'incommerce') - { + if ( $types == 'myvisitororders' && $event->Special == 'incommerce' ) { $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'); - $object->addFilter('myitems_orders_processed','ord.Status = 4'); + $object->addFilter('myitems_orders', 'ord.OrderId IS NOT NULL'); + $object->addFilter('myitems_user1', 'au.PortalUserId = ' . $user_id); + $object->addFilter('myitems_user2', 'au.PortalUserId >0'); + $object->addFilter('myitems_orders_processed', 'ord.Status = 4'); } } /** - * Apply some special processing to - * object beeing recalled before using - * it in other events that call prepareObject + * Apply some special processing to object being + * recalled before using it in other events that + * call prepareObject * - * @param kBase $object + * @param kDBItem|kDBList $object * @param kEvent $event + * @return void * @access protected */ - function prepareObject(&$object, &$event) + protected function prepareObject(&$object, &$event) { $types = $event->getEventParam('types'); if(method_exists($object, 'AddGroupByField'))