Index: trunk/core/units/visits/visits_event_handler.php =================================================================== diff -u -N -r2417 -r2434 --- trunk/core/units/visits/visits_event_handler.php (.../visits_event_handler.php) (revision 2417) +++ trunk/core/units/visits/visits_event_handler.php (.../visits_event_handler.php) (revision 2434) @@ -50,6 +50,8 @@ $user_id = $this->Application->GetVar('u_id'); $object->addFilter('myitems_user1','au.PortalUserId = '.$user_id); $object->addFilter('myitems_user2','au.PortalUserId >0'); + //$object->AddGroupByField('VisitDate'); + $object->AddGroupByField('%1$s.VisitId'); } @@ -64,7 +66,29 @@ } - + /** + * Apply some special processing to + * object beeing recalled before using + * it in other events that call prepareObject + * + * @param kBase $object + * @param kEvent $event + * @access protected + */ + function prepareObject(&$object, &$event) + { + $types = $event->getEventParam('types'); + if ($types=='myvisitors' || !$types){ + $object->addCalculatedField('OrderTotalAmountSum', 'SUM(ord.SubTotal+ord.ShippingCost+ord.VAT-ord.CouponDiscount)'); + $object->addCalculatedField('OrderAffiliateCommissionSum', 'SUM(ord.AffiliateCommission)'); + $object->addCalculatedField('OrderCountByVisit', 'COUNT(OrderId)'); + } + if (!$types){ + $object->AddGroupByField('%1$s.VisitId'); + } + + } + } ?> \ No newline at end of file