/** * @see EventListener::execute() */ public function execute($eventObj, $className, $eventName) { if (MODULE_USERS_ONLINE == 1) { if ($eventObj->frame->getUser()->isOnline()) { $data = array('userID' => $eventObj->frame->getUser()->userID, 'requestURI' => $eventObj->frame->getUser()->requestURI, 'requestMethod' => $eventObj->frame->getUser()->requestMethod); $location = new UsersOnlineLocation(); $location->cacheLocation($data); $userLocation = $location->getLocation($data); if (!empty($userLocation)) { $eventObj->generalInformation[] = array('icon' => StyleManager::getStyle()->getIconPath('onlineM.png'), 'title' => WCF::getLanguage()->get('wcf.user.profile.currentLocation'), 'value' => $userLocation); } // show ip address and user agent if (WCF::getUser()->getPermission('admin.general.canViewIpAddress')) { if ($eventObj->frame->getUser()->ipAddress) { $eventObj->generalInformation[] = array('icon' => StyleManager::getStyle()->getIconPath('ipAddressM.png'), 'title' => WCF::getLanguage()->get('wcf.usersOnline.ipAddress'), 'value' => StringUtil::encodeHTML($eventObj->frame->getUser()->ipAddress)); } if ($eventObj->frame->getUser()->userAgent) { $icon = UsersOnlineUtil::getUserAgentIcon($eventObj->frame->getUser()->userAgent); $eventObj->generalInformation[] = array('icon' => $icon ? StyleManager::getStyle()->getIconPath('browsers/' . $icon . 'M.png') : '', 'title' => WCF::getLanguage()->get('wcf.usersOnline.userAgent'), 'value' => StringUtil::encodeHTML($eventObj->frame->getUser()->userAgent)); } } } } }