Example #1
0
        if ($online) {
            $TRACKINGSCRIPT .= "lz_tracking_add_floating_button(" . $_GET["fbpos"] . "," . $shadow . $margin . "," . $_GET["fbw"] . "," . $_GET["fbh"] . ");";
        }
    }
} else {
    $TRACKINGSCRIPT = "lz_tracking_set_sessid(\"" . htmlentities(CALLER_USER_ID) . "\",\"" . htmlentities(CALLER_BROWSER_ID) . "\");";
    if (isset($_GET[GET_TRACK_URL]) && strpos(base64UrlDecode($_GET[GET_TRACK_URL]), GET_INTERN_COBROWSE) !== false) {
        abortTracking(1);
    }
    $BROWSER = new VisitorBrowser(CALLER_BROWSER_ID, CALLER_USER_ID);
    if ($EXTERNALUSER->FirstCall && !$BROWSER->IsFirstCall()) {
        $EXTERNALUSER->FirstCall = false;
    }
    initData(false, false, false, true, true);
    define("IS_FILTERED", $FILTERS->Match(getIP(), formLanguages(!empty($_SERVER["HTTP_ACCEPT_LANGUAGE"]) ? $_SERVER["HTTP_ACCEPT_LANGUAGE"] : ""), CALLER_USER_ID));
    define("IS_FLOOD", $BROWSER->IsFirstCall() && isFlood(getIP(), CALLER_USER_ID));
    if (!getAvailability() || IS_FILTERED || IS_FLOOD) {
        $BROWSER->Destroy();
        exit("lz_tracking_stop_tracking();");
    }
    $BROWSER->Customs = getCustomArray();
    if (isset($_GET[GET_EXTERN_USER_NAME]) && !empty($_GET[GET_EXTERN_USER_NAME])) {
        $BROWSER->Fullname = cutString(base64UrlDecode($_GET[GET_EXTERN_USER_NAME]), 254);
    } else {
        $BROWSER->Fullname = getCookieValue("form_111");
    }
    if (isset($_GET[GET_EXTERN_USER_EMAIL]) && !empty($_GET[GET_EXTERN_USER_EMAIL])) {
        $BROWSER->Email = cutString(base64UrlDecode($_GET[GET_EXTERN_USER_EMAIL]), 254);
    } else {
        $BROWSER->Email = getCookieValue("form_112");
    }
* Improper changes to this file may cause critical errors.
***************************************************************************************/
if (!defined("IN_LIVEZILLA")) {
    die;
}
require LIVEZILLA_PATH . "_lib/objects.external.inc.php";
require LIVEZILLA_PATH . "_lib/functions.external.inc.php";
if (isset($_POST[POST_EXTERN_SERVER_ACTION])) {
    languageSelect();
    initData(array("GROUPS", "FILTERS"));
    $externalUser = new Visitor(base64UrlDecode($_POST[POST_EXTERN_USER_USERID]));
    $externalUser->ExtendSession = true;
    $externalUser->Load();
    array_push($externalUser->Browsers, new VisitorChat($externalUser->UserId, base64UrlDecode($_POST[POST_EXTERN_USER_BROWSERID])));
    define("IS_FILTERED", $FILTERS->Match(getIP(), formLanguages(!empty($_SERVER["HTTP_ACCEPT_LANGUAGE"]) ? $_SERVER["HTTP_ACCEPT_LANGUAGE"] : ""), base64UrlDecode($_POST[POST_EXTERN_USER_USERID]), true));
    define("IS_FLOOD", $externalUser->Browsers[0]->FirstCall && isFlood(getIP(), @$_POST[POST_EXTERN_USER_USERID], true));
    $externalUser->Browsers[0]->Load();
    if ($_POST[POST_EXTERN_SERVER_ACTION] == EXTERN_ACTION_LISTEN) {
        $externalUser = listen($externalUser);
    } else {
        if ($_POST[POST_EXTERN_SERVER_ACTION] == EXTERN_ACTION_MAIL) {
            initData(array("GROUPS"));
            $phone = isset($_POST["p_phone"]) ? base64UrlDecode($_POST["p_phone"]) : "";
            if (($ticket = $externalUser->SaveTicket(base64UrlDecode($_POST[POST_EXTERN_USER_GROUP]), base64UrlDecode($_POST[POST_EXTERN_USER_NAME]), base64UrlDecode($_POST[POST_EXTERN_USER_EMAIL]), base64UrlDecode($_POST[POST_EXTERN_USER_COMPANY]), $externalUser->GeoCountryISO2, $phone, isset($_GET["cmb"]), base64UrlDecode($_POST[POST_EXTERN_USER_MAIL]), true, getOParam("p_url", "", $nu, FILTER_SANITIZE_URL))) !== false && ($CONFIG["gl_scom"] != null || $CONFIG["gl_sgom"] != null)) {
                Visitor::SendTicketAutoresponder($ticket, $externalUser->Language);
            }
            $externalUser->Browsers[0]->SaveLoginData();
        } else {
            if ($_POST[POST_EXTERN_SERVER_ACTION] == EXTERN_ACTION_RATE) {
                initData(array("INTERNAL"));
                $externalUser->SaveRate(base64UrlDecode($_POST[POST_EXTERN_REQUESTED_INTERNID]), $CONFIG, $externalUser->Browsers[0]->ChatId);
Example #3
0
 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();");
 }
 if (dataSetExists($BROWSER->SessionFile)) {
     $BROWSER->Load();
 }
 $count = count($BROWSER->History);
 if (!dataSetExists($externalUser->ExternalStatic->SessionFile)) {
     createStaticFile($externalUser, array(@$_GET[GET_TRACK_RESOLUTION_WIDTH], @$_GET[GET_TRACK_RESOLUTION_HEIGHT]), @$_GET[GET_TRACK_COLOR_DEPTH], @$_GET[GET_TRACK_TIMEZONE_OFFSET], @$_GET[GEO_LATITUDE], @$_GET[GEO_LONGITUDE], @$_GET[GEO_COUNTRY_ISO_2], @$_GET[GEO_CITY], @$_GET[GEO_REGION], @$_GET[GEO_TIMEZONE], @$_GET[GEO_ISP], @$_GET[GEO_SSPAN], @$_GET[GEO_RESULT_ID]);
 }
 if (isset($_GET[GET_TRACK_CLOSE_CHAT_WINDOW])) {
     $chat = new ExternalChat($externalUser->UserId, $_GET[GET_TRACK_CLOSE_CHAT_WINDOW]);
     $chat->Load();
     $chat->Destroy();
        initData(array("INTERNAL", "GROUPS", "FILTERS"));
        $groupbuilder = new GroupBuilder($INTERNAL, $GROUPS, $CONFIG);
        $groupbuilder->Generate();
        if (!$groupbuilder->GroupAvailable) {
            exit("<html><script language=\"JavaScript\">if(typeof(window.opener != null) != 'undefined')window.opener.location = \"" . $CONFIG["gl_om_http"] . "\";window.close();</script></html>");
        }
    } else {
        initData(array("FILTERS"));
    }
    if (isset($_POST["company"]) && !empty($_POST["company"]) || isset($_POST["email"]) && !empty($_POST["email"]) || isset($_POST["name"]) && !empty($_POST["name"]) || isset($_POST["text"]) && !empty($_POST["text"])) {
        exit(createFloodFilter(getIP(), null));
    }
}
header("Content-Type: text/html; charset=utf-8");
if (!isset($_GET[GET_EXTERN_TEMPLATE])) {
    define("IS_FLOOD", isFlood(getIP(), null, true));
    define("IS_FILTERED", $FILTERS->Match(getIP(), formLanguages(!empty($_SERVER["HTTP_ACCEPT_LANGUAGE"]) ? $_SERVER["HTTP_ACCEPT_LANGUAGE"] : ""), SESSION, true));
    require LIVEZILLA_PATH . "_lib/trdp/mobde.php";
    $MobileDetect = new Mobile_Detect();
    $small = $MobileDetect->isMobile() && !$MobileDetect->isTablet();
    initData(array("INTERNAL"));
    $html = getFile(TEMPLATE_HTML_CHAT);
    $html = str_replace("<!--extern_script-->", getFile(TEMPLATE_SCRIPT_EXTERN) . getFile(TEMPLATE_SCRIPT_DATA) . getFile(TEMPLATE_SCRIPT_CHAT) . getFile(TEMPLATE_SCRIPT_FRAME), $html);
    $html = str_replace("<!--server_id-->", substr(md5($CONFIG["gl_lzid"]), 5, 5), $html);
    $html = str_replace("<!--connector_script-->", getFile(TEMPLATE_SCRIPT_CONNECTOR), $html);
    $html = str_replace("<!--group_script-->", getFile(TEMPLATE_SCRIPT_GROUPS), $html);
    $html = str_replace("<!--global_script-->", getFile(TEMPLATE_SCRIPT_GLOBAL), $html);
    $html = str_replace("<!--browser_id-->", $browserId, $html);
    $html = str_replace("<!--extern_timeout-->", min($CONFIG["timeout_chats"], $CONFIG["timeout_track"]), $html);
    $html = str_replace("<!--show_oib-->", parseBool(!empty($CONFIG["gl_soib"])), $html);
    $html = str_replace("<!--window_width-->", $CONFIG["wcl_window_width"], $html);
Example #5
0
* recommended to desist from editing this file.
* 
***************************************************************************************/
if (!defined("IN_LIVEZILLA")) {
    die;
}
require LIVEZILLA_PATH . "_lib/objects.external.inc.php";
require LIVEZILLA_PATH . "_lib/functions.external.inc.php";
if (isset($_POST[POST_EXTERN_SERVER_ACTION])) {
    languageSelect();
    getData(false, true, false, true);
    $externalUser = new UserExternal($_POST[POST_EXTERN_USER_USERID]);
    $externalUser->ExternalStatic = new ExternalStatic($externalUser->UserId);
    array_push($externalUser->Browsers, new ExternalChat($externalUser->UserId, $_POST[POST_EXTERN_USER_BROWSERID]));
    define("IS_FILTERED", $FILTERS->Match(getIP(), formLanguages(getServerParam("HTTP_ACCEPT_LANGUAGE") != null ? getServerParam("HTTP_ACCEPT_LANGUAGE") : ""), $_POST[POST_EXTERN_USER_USERID]));
    define("IS_FLOOD", !dataSetExists($externalUser->Browsers[0]->SessionFile) && isFlood());
    if (dataSetExists($externalUser->Browsers[0]->SessionFile)) {
        $externalUser->Browsers[0]->Load();
    }
    $externalUser->ExternalStatic->Language = getServerParam("HTTP_ACCEPT_LANGUAGE") != null ? getServerParam("HTTP_ACCEPT_LANGUAGE") : "";
    $externalUser->Browsers[0]->LoadChat($CONFIG, null);
    if ($_POST[POST_EXTERN_SERVER_ACTION] == EXTERN_ACTION_LISTEN) {
        $externalUser = listen($externalUser);
    } else {
        if ($_POST[POST_EXTERN_SERVER_ACTION] == EXTERN_ACTION_MAIL) {
            getData(false, true, false, false);
            if ($externalUser->SaveTicket(AJAXDecode($_POST[POST_EXTERN_USER_GROUP])) && ($CONFIG["gl_scom"] != null || $CONFIG["gl_sgom"] != null)) {
                $externalUser->SendCopyOfMail(AJAXDecode($_POST[POST_EXTERN_USER_GROUP]), $CONFIG, $GROUPS);
            }
        } else {
            if ($_POST[POST_EXTERN_SERVER_ACTION] == EXTERN_ACTION_RATE) {