Example #1
0
    if (isset($_GET[GET_EXTERN_USER_EMAIL])) {
        setCookieValue("login_email", secPrev(base64UrlDecode($_GET[GET_EXTERN_USER_EMAIL])));
    }
    if (isset($_GET[GET_EXTERN_USER_COMPANY])) {
        setCookieValue("login_company", secPrev(base64UrlDecode($_GET[GET_EXTERN_USER_COMPANY])));
    }
    if (isset($_GET[GET_EXTERN_USER_NAME])) {
        setCookieValue("login_name", secPrev(base64UrlDecode($_GET[GET_EXTERN_USER_NAME])));
    }
} else {
    $TRACKINGSCRIPT = "lz_tracking_set_sessid(\"" . CALLER_USER_ID . "\",\"" . CALLER_BROWSER_ID . "\");";
    if (isset($_GET[GET_TRACK_BROWSERID]) && isset($_GET[GET_TRACK_START]) && isset($_GET[GET_TRACK_URL])) {
        if (!isnull($_GET[GET_TRACK_URL]) && strpos(base64UrlDecode($_GET[GET_TRACK_URL]), GET_INTERN_COBROWSE) !== false) {
            exit("lz_tracking_stop_tracking();");
        }
        $BROWSER = new ExternalBrowser(CALLER_BROWSER_ID, CALLER_USER_ID);
        if (isset($_GET[GET_EXTERN_USER_NAME]) && !isnull($_GET[GET_EXTERN_USER_NAME])) {
            $BROWSER->Fullname = substr(secPrev(base64UrlDecode($_GET[GET_EXTERN_USER_NAME])), 0, 32);
        }
        if (isset($_GET[GET_EXTERN_USER_EMAIL]) && !isnull($_GET[GET_EXTERN_USER_EMAIL])) {
            $BROWSER->Email = substr(secPrev(base64UrlDecode($_GET[GET_EXTERN_USER_EMAIL])), 0, 50);
        }
        if (isset($_GET[GET_EXTERN_USER_COMPANY]) && !isnull($_GET[GET_EXTERN_USER_COMPANY])) {
            $BROWSER->Company = substr(secPrev(base64UrlDecode($_GET[GET_EXTERN_USER_COMPANY])), 0, 50);
        }
        getData(false, false, false, true);
        define("IS_FILTERED", $FILTERS->Match(getIP(), formLanguages(!isnull(getServerParam("HTTP_ACCEPT_LANGUAGE")) ? getServerParam("HTTP_ACCEPT_LANGUAGE") : ""), CALLER_USER_ID));
        define("IS_FLOOD", !dataSetExists($BROWSER->SessionFile) && isFlood());
        if (!getAvailability() || IS_FILTERED || IS_FLOOD) {
            $BROWSER->Destroy();
            exit("lz_tracking_stop_tracking();");
Example #2
0
function buildTracking()
{
    global $VISITOR, $CONFIG, $DATASETS;
    $VISITOR = array();
    $outdatedVisitors = array();
    $itarray = array_keys($DATASETS);
    foreach ($itarray as $file) {
        $dataset = $DATASETS[$file];
        if (strpos($file, PATH_DATA_EXTERNAL) !== false && substr($file, 0, strlen(PATH_DATA_EXTERNAL)) == PATH_DATA_EXTERNAL) {
            $userid = substr(str_replace(PATH_DATA_EXTERNAL, "", $file), 0, USER_ID_LENGTH);
            $browsers = getDirectory(PATH_DATA_EXTERNAL . $userid . "/b/", ".");
            if (count($browsers) > 0) {
                foreach ($browsers as $browserid) {
                    $browser = new ExternalBrowser($browserid, $userid);
                    $chat = new ExternalChat($userid, $browserid);
                    if (!isset($VISITOR[$userid])) {
                        $VISITOR[$userid] = new UserExternal($userid);
                    }
                    if (($bStime = getDataSetTime($browser->SessionFile)) != -1) {
                        if ($bStime < time() - $CONFIG["timeout_track"]) {
                            $browser->Destroy();
                            continue;
                        }
                        $VISITOR[$userid]->Browsers[$browserid] = $browser;
                    } else {
                        if (($cStime = getDataSetTime($chat->SessionFile)) != -1) {
                            $chat->Load();
                            if ($cStime < time() - $CONFIG["timeout_clients"]) {
                                $chat->Destroy();
                                continue;
                            }
                            if (isnull($chat->FirstActive)) {
                                $chat->FirstActive = time();
                            }
                            $chat->History[0] = array($chat->FirstActive, LIVEZILLA_URL . FILE_CHAT, $chat->Code, true);
                            $VISITOR[$userid]->Browsers[$browserid] = $chat;
                        } else {
                            $browser->Destroy();
                            $chat->Destroy();
                        }
                    }
                }
            } else {
                $outdatedVisitors[] = $userid;
            }
        }
    }
    foreach ($outdatedVisitors as $folder) {
        deleteDirectory(PATH_DATA_EXTERNAL . $folder);
    }
}