function GroupBuilder($_reqGroup = "", $_reqOperator = "", $allowCom = true) { $reqGroup = UserGroup::ReadParams(); $this->ReqGroup = !empty($reqGroup) ? $reqGroup : $_reqGroup; $this->ReqOperator = !empty($_GET[GET_EXTERN_INTERN_USER_ID]) ? Encoding::Base64UrlDecode($_GET[GET_EXTERN_INTERN_USER_ID]) : $_reqOperator; $this->GroupValues["groups_online"] = array(); $this->GroupValues["groups_offline"] = array(); $this->GroupValues["groups_online_amounts"] = array(); $this->GroupValues["groups_output"] = array(); $this->GroupValues["groups_hidden"] = array(); $this->GroupValues["set_by_get_user"] = null; $this->GroupValues["set_by_get_group"] = null; $this->GroupValues["set_by_cookie"] = null; $this->GroupValues["set_by_standard"] = null; $this->GroupValues["set_by_online"] = null; $this->GroupValues["req_for_user"] = !empty($this->ReqOperator); $this->GroupValues["req_for_group"] = !empty($this->ReqGroup); $this->Parameters = Communication::GetTargetParameters($allowCom); if ($this->Parameters["include_group"] != null || $this->Parameters["include_user"] != null) { foreach (Server::$Groups as $gid => $group) { if (!($this->Parameters["include_group"] != null && in_array($gid, $this->Parameters["include_group"]))) { if (!($this->Parameters["include_user"] != null && in_array($gid, Server::$Operators[Operator::GetSystemId($this->Parameters["include_user"])]->GetGroupList(false)))) { $this->GroupValues["groups_hidden"][] = $gid; } } } } if ($this->Parameters["exclude"] != null) { $this->GroupValues["groups_hidden"] = $this->Parameters["exclude"]; } }
function isChat() { define("SESSION", getSessionId()); Server::InitDataBlock(array("FILTERS")); define("IS_FLOOD", Filter::IsFlood(Communication::GetIP(), null, true)); define("IS_FILTERED", DataManager::$Filters->Match(Communication::GetIP(), LocalizationManager::ImplodeLanguages(!empty($_SERVER["HTTP_ACCEPT_LANGUAGE"]) ? $_SERVER["HTTP_ACCEPT_LANGUAGE"] : ""), SESSION)); $parameters = Communication::GetTargetParameters(); if (operatorsAvailable(0, $parameters["exclude"], $parameters["include_group"], $parameters["include_user"]) > 0) { return true; } return false; }
} } else { VisitorMonitoring::Abort(-1); } } if (VisitorMonitoring::$Visitor->IsCrawler) { VisitorMonitoring::Abort(8); } else { if (isset($_GET["clch"])) { $chat = VisitorChat::FromCache(VisitorMonitoring::$Visitor->UserId, Communication::ReadParameter("clch", "")); $chat->ExternalClose(); $chat->Destroy(); } VisitorMonitoring::$Browser->LastActive = time(); VisitorMonitoring::$Browser->VisitId = VisitorMonitoring::$Visitor->VisitId; $parameters = Communication::GetTargetParameters(false); $conline = operatorsAvailable(0, $parameters["exclude"], $parameters["include_group"], $parameters["include_user"], false) > 0; VisitorMonitoring::$Browser->OverlayContainer = !empty($_GET["ovlc"]); if (VisitorMonitoring::$IsActive) { VisitorMonitoring::$Browser->Save(); if (!empty($currentURL) && (count(VisitorMonitoring::$Browser->History) == 0 || count(VisitorMonitoring::$Browser->History) > 0 && VisitorMonitoring::$Browser->History[count(VisitorMonitoring::$Browser->History) - 1]->Url->GetAbsoluteUrl() != $currentURL->Url->GetAbsoluteUrl())) { VisitorMonitoring::$Browser->History[] = $currentURL; if (!Is::Null(VisitorMonitoring::$Browser->History[count(VisitorMonitoring::$Browser->History) - 1]->Referrer->GetAbsoluteUrl())) { if (VisitorMonitoring::$Browser->SetQuery(VisitorMonitoring::$Browser->History[count(VisitorMonitoring::$Browser->History) - 1]->Referrer->GetAbsoluteUrl())) { VisitorMonitoring::$Browser->History[count(VisitorMonitoring::$Browser->History) - 1]->Referrer->MarkSearchEngine(); } } VisitorMonitoring::$Browser->History[count(VisitorMonitoring::$Browser->History) - 1]->Save(CALLER_BROWSER_ID, count(VisitorMonitoring::$Browser->History) == 1); VisitorMonitoring::$Browser->ForceUpdate(); } else { if (count(VisitorMonitoring::$Browser->History) == 0) {