sterntours/server/ovl.php
2018-08-20 16:19:42 +02:00

338 lines
20 KiB
PHP

<?php
/****************************************************************************************
* LiveZilla ovl.php
*
* Copyright 2015 LiveZilla GmbH
* All rights reserved.
* LiveZilla is a registered trademark.
*
* Improper changes to this file may cause critical errors.
***************************************************************************************/
if(!defined("LIVEZILLA_PATH"))
define("LIVEZILLA_PATH","./");
@ini_set('session.use_cookies', '0');
@error_reporting(E_ALL);
require_once(LIVEZILLA_PATH . "_lib/functions.external.inc.php");
require_once(LIVEZILLA_PATH . "_lib/objects.external.inc.php");
@set_time_limit(Server::$Configuration->File["timeout_chats"]);
if(!isset($_GET["file"]))
@set_error_handler("handleError");
if(!isset($_GET[GET_TRACK_BROWSERID]))
exit();
LocalizationManager::AutoLoad();
Server::InitDataBlock(array("INTERNAL","GROUPS","FILTERS","INPUTS"));
$OVERLAY = new OverlayChat();
$USER = VisitorMonitoring::$Visitor;
$USER->Browsers[0] = new VisitorChat($USER->UserId,$USER->UserId . "_OVL");
$USER->Browsers[1] = VisitorMonitoring::$Browser;
$OVERLAY->GroupBuilder = new GroupBuilder($USER->Browsers[0]->DesiredChatGroup,$USER->Browsers[0]->DesiredChatPartner,false);
$OVERLAY->GroupBuilder->Generate(null,true);
$USER->Browsers[0]->Overlay = true;
$USER->Browsers[0]->Load();
$USER->Browsers[0]->LoadUserData();
if($USER->Browsers[0]->FirstCall)
$USER->AddFunctionCall("lz_chat_init_data_change(null);",false);
$OVERLAY->KnowledgebaseSearch();
if(IS_FILTERED && !FILTER_ALLOW_CHATS)
{
$USER->Browsers[0]->CloseChat();
$USER->Browsers[0]->Destroy();
if(!FILTER_ALLOW_TICKETS)
$USER->AddFunctionCall("lz_tracking_remove_overlay_chat();",true);
}
if(!$USER->FirstCall)
$USER->Browsers[0]->LoadForward(false);
if(!empty($USER->Browsers[0]->Forward) && (!Server::$Groups[$USER->Browsers[0]->Forward->TargetGroupId]->IsHumanAvailable(true,true) || (!empty($USER->Browsers[0]->Forward->TargetSessId) && @Server::$Operators[$USER->Browsers[0]->Forward->TargetSessId]->UserStatus >= USER_STATUS_OFFLINE)))
{
$USER->Browsers[0]->Forward->Destroy();
$USER->Browsers[0]->Forward = null;
$USER->Browsers[0]->ExternalClose();
$USER->Browsers[0]->Save();
$USER->Browsers[0]->Load();
}
$OVERLAY->DefineTargets();
$OVERLAY->DefineModes();
if(defined("IGNORE_WM") && (empty($USER->Browsers[0]->DesiredChatGroup) || !$OVERLAY->Human))
$USER->AddFunctionCall("lz_chat_set_talk_to_human(false,false);",false);
$OVERLAY->IsHumanChatAvailable = $OVERLAY->OperatorCount > 0;
$OVERLAY->CreateChatTemplate();
$USER->Browsers[0]->ReplaceLoginDetails($USER);
if(($USER->Browsers[0]->Status > CHAT_STATUS_OPEN || !empty($USER->Browsers[0]->InitChatWith) || $USER->Browsers[0]->Waiting) && !$USER->Browsers[0]->Closed)
Visitor::$IsActiveOverlayChat = $OVERLAY->IsHumanChatAvailable = !$USER->Browsers[0]->Declined;
else if($USER->Browsers[0]->Closed && $USER->Browsers[0]->LastActive > (time()-Server::$Configuration->File["timeout_chats"]) || !empty($_GET["mi0"]))
Visitor::$IsActiveOverlayChat = !$USER->Browsers[0]->Declined;
if(!empty($USER->Browsers[0]->DesiredChatGroup) && !(IS_FILTERED && !FILTER_ALLOW_CHATS && !FILTER_ALLOW_TICKETS))
{
$changed = (Visitor::$PollCount!=1) ? $USER->Browsers[0]->ApplyOverlayInputValues() : false;
if(empty($USER->Browsers[0]->UserData->Text) && !empty($_GET["mp0"]))
{
$USER->Browsers[0]->UserData->Text = cutString(Encoding::Base64UrlDecode($_GET["mp0"]),255);
$changed = true;
}
if(Communication::ReadParameter("tc",-1) != -1)
$changed = true;
if($changed)
{
$USER->Browsers[0]->ApplyUserData();
$USER->Browsers[1]->UserData = $USER->Browsers[0]->UserData;
$USER->Browsers[1]->ApplyUserData(true);
if(!$USER->Browsers[0]->Closed)
$USER->Browsers[0]->UpdateArchive((Communication::ReadParameter("tc",-1) == 1) ? $USER->Browsers[0]->UserData->Email : "");
}
if(!$OVERLAY->IsHumanChatAvailable && !empty($_GET["ovloo"]))
$USER->AddFunctionCall("if(lz_session.OVLCState == '0')lz_tracking_remove_overlay_chat();",false);
else if(Visitor::$PollCount == 1)
{
$ovlw = Communication::ReadParameter("ovlw",300);
$ovlh = Communication::ReadParameter("ovlh",DataInput::GetMaxHeight());
$text = ($OVERLAY->IsHumanChatAvailable) ? Communication::GetParameter("ovlt",LocalizationManager::$TranslationStrings["client_overlay_title_online"],$c,FILTER_HTML_ENTITIES) : Communication::GetParameter("ovlto",LocalizationManager::$TranslationStrings["client_overlay_title_offline"],$c,FILTER_HTML_ENTITIES);
VisitorMonitoring::$Response .= "lz_tracking_add_overlay_chat('".base64_encode($OVERLAY->ChatHTML)."','".base64_encode(Encoding::Base64UrlDecode($text))."',".$ovlw.",".$ovlh.",".Communication::GetParameter("ovlml",0,$nu,FILTER_SANITIZE_NUMBER_INT).",".Communication::GetParameter("ovlmt",0,$nu,FILTER_SANITIZE_NUMBER_INT).",".Communication::GetParameter("ovlmr",0,$nu,FILTER_SANITIZE_NUMBER_INT).",".Communication::GetParameter("ovlmb",0,$nu,FILTER_SANITIZE_NUMBER_INT).",'".Communication::ReadParameter("ovlp",22)."',true,".To::BoolString($OVERLAY->IsHumanChatAvailable).");";
$eca = Communication::GetParameter("eca",0,$nu,FILTER_VALIDATE_INT);
if(!empty($_GET["eca"]) && !(!empty($_GET["echm"]) && VisitorMonitoring::$IsMobile && !VisitorMonitoring::$IsTablet))
{
$ecw = Communication::ReadParameter("ecw",$ovlw);
$ech = Communication::ReadParameter("ech",100);
if($eca==1)
{
$catcher = IOStruct::GetFile(TEMPLATE_HTML_EYE_CATCHER_BUBBLE);
$catcher = str_replace("<!--width-->",$ecw,$catcher);
$catcher = str_replace("<!--height-->",$ech,$catcher);
$catcher = str_replace("<!--header_padding-->",Communication::ReadParameter("echp",16),$catcher);
$catcher = str_replace("<!--header_sub_padding-->",Communication::ReadParameter("echsp",43),$catcher);
$catcher = str_replace("<!--header_color-->",Communication::ReadParameter("echc","#6ea30c"),$catcher);
}
else
$catcher = IOStruct::GetFile(TEMPLATE_HTML_EYE_CATCHER_IMAGE);
VisitorMonitoring::$Response .= "lz_tracking_add_eye_catcher('".base64_encode($catcher)."',".$ecw.",".$ech.",".$ovlw.",".$ovlh.",".Communication::ReadParameter("ovlml",0).",".Communication::GetParameter("ovlmr",0,$nu,FILTER_SANITIZE_NUMBER_INT).",".Communication::ReadParameter("ecmb",29).",'".Communication::ReadParameter("ovlp",22)."','".Communication::GetParameter("ecsa",0,$nu,FILTER_VALIDATE_INT)."','".Communication::GetParameter("ecsb",5,$nu,FILTER_VALIDATE_INT)."','".Communication::GetParameter("ecsx",3,$nu,FILTER_VALIDATE_INT)."','".Communication::GetParameter("ecsy",3,$nu,FILTER_VALIDATE_INT)."','".Communication::ReadParameter("ecsc","#464646")."','".Communication::ReadParameter("ecsgs","#659f2a")."','".Communication::ReadParameter("ecsge","#659f2a")."','".Communication::ReadParameter("ecslw",2)."','".Communication::ReadParameter("ecfs","#f0ffd5")."','".Communication::ReadParameter("ecfe","#d3f299")."',".Communication::GetParameter("ecfi",0,$nu,FILTER_VALIDATE_INT).",".Communication::ReadParameter("ecfo",0).");";
}
}
if(Communication::ReadParameter("clch","")=="1")
{
$USER->Browsers[0]->ExternalClose();
$USER->Browsers[0]->Destroy();
$USER->AddFunctionCall("lz_leave_chat=false;lz_closed=false;lz_tracking_poll_server();",false);
}
$OVERLAY->LastPostReceived = "null";
$OVERLAY->LastMessageReceived = "null";
$OVERLAY->IsChatAvailable = $OVERLAY->Botmode;
$OVERLAY->FullLoad = (!empty($_GET["full"]));
$OVERLAY->Flags["LPR"] = Communication::ReadParameter("lpr","");
$OVERLAY->Flags["LMR"] = Communication::ReadParameter("lmr","");
$OVERLAY->LastPoster = Communication::ReadParameter("lp","");
if($USER->Browsers[0]->Declined)
$OVERLAY->IsChatAvailable = false;
else if($USER->Browsers[0]->Status > CHAT_STATUS_OPEN && !$USER->Browsers[0]->Closed)
{
$OVERLAY->IsChatAvailable = true;
if(!empty($USER->Browsers[0]->OperatorId) && Server::$Operators[$USER->Browsers[0]->OperatorId]->IsBot)
if(($OVERLAY->OperatorCount > 0 && !$OVERLAY->Botmode) && !$USER->Browsers[0]->ExternalClosed)
{
foreach($USER->Browsers[0]->Members as $sid => $member)
if(!Server::$Operators[$sid]->IsBot)
$USER->Browsers[0]->LeaveChat($sid);
$USER->Browsers[0]->ExternalClose();
$USER->Browsers[0]->Closed = true;
}
if($USER->Browsers[0]->Activated == CHAT_STATUS_ACTIVE && $USER->Browsers[0]->Status != CHAT_STATUS_ACTIVE)
$USER->Browsers[0]->SetStatus(CHAT_STATUS_ACTIVE);
$action = $USER->Browsers[0]->GetMaxWaitingTimeAction(false);
if($action == "MESSAGE" || ($action == "FORWARD" && !$USER->Browsers[0]->CreateAutoForward($USER)))
{
$USER->AddFunctionCall("lz_chat_set_talk_to_human(false,false);lz_mode_create_ticket=true;",false);
$USER->Browsers[0]->InternalDecline(Server::$Operators[$USER->Browsers[0]->OperatorId]->SystemId);
}
}
else
$OVERLAY->IsChatAvailable = $OVERLAY->OperatorCount > 0;
if(!$OVERLAY->IsChatAvailable)
{
$USER->AddFunctionCall("lz_chat_set_connecting(false,'".$USER->Browsers[0]->SystemId."',false,null,0);",false);
$OVERLAY->SetHost(null);
}
$OVERLAY->ProcessPosts();
$OVERLAY->Listen();
if(!empty($USER->Browsers[0]->Forward) && !$USER->Browsers[0]->Forward->Invite && !empty($USER->Browsers[0]->Forward->TargetGroupId) && !$USER->Browsers[0]->Forward->Processed)
{
if(!$USER->Browsers[0]->Forward->Processed)
{
$USER->Browsers[0]->LeaveChat($USER->Browsers[0]->Forward->InitiatorSystemId);
$USER->Browsers[0]->Forward->Save(true);
$USER->Browsers[0]->ExternalClose();
$USER->Browsers[0]->DesiredChatGroup = $USER->Browsers[0]->Forward->TargetGroupId;
$USER->Browsers[0]->DesiredChatPartner = $USER->Browsers[0]->Forward->TargetSessId;
$USER->Browsers[0]->FirstActive=time();
$USER->Browsers[0]->Save(true);
$USER->Browsers[0]->SetCookieGroup();
$OVERLAY->SetHost(null);
}
if(!empty(Server::$Operators[$USER->Browsers[0]->Forward->SenderSystemId]) && $USER->Browsers[0]->InternalActivation)
{
if(!empty($USER->Browsers[0]->OperatorId) && Server::$Operators[$USER->Browsers[0]->OperatorId]->IsBot)
$USER->AddFunctionCall("lz_chat_set_talk_to_human(true,true);",false);
else
{
$OVERLAY->AddHTML($OVERLAY->GetLeaveChatHTML(true,Server::$Operators[$USER->Browsers[0]->Forward->SenderSystemId]->Fullname,"&nbsp;" . LocalizationManager::$TranslationStrings["client_forwarding"]),"sys","");
}
}
Visitor::$IsActiveOverlayChat = !$USER->Browsers[0]->Declined;
}
else if($OVERLAY->IsChatAvailable && ((empty($USER->Browsers[0]->Forward) && !(!empty($USER->Browsers[1]->ChatRequest) && !$USER->Browsers[1]->ChatRequest->Closed) && empty($USER->Browsers[0]->OperatorId) && !$USER->Browsers[0]->Waiting) || (!empty($USER->Browsers[0]->OperatorId) && Server::$Operators[$USER->Browsers[0]->OperatorId]->IsBot && $OVERLAY->Flags["LMR"]=="ONM01") || $OVERLAY->FullLoad))
{
if(($OVERLAY->Flags["LMR"]!="ONM01" || $OVERLAY->FullLoad) && (!$OVERLAY->Botmode || (!empty($USER->Browsers[0]->OperatorId) && !Server::$Operators[$USER->Browsers[0]->OperatorId]->IsBot) || (!empty($USER->Browsers[1]->ChatRequest) && !$USER->Browsers[1]->ChatRequest->Closed)))
{
if(!$OVERLAY->Botmode && (!empty($USER->Browsers[0]->ChatId) && !$USER->Browsers[0]->InternalActivation && !$USER->Browsers[0]->Closed && !$USER->Browsers[0]->Declined && !$USER->Browsers[0]->Waiting))
$OVERLAY->AddHTML(str_replace("<!--message-->",LocalizationManager::$TranslationStrings["client_int_is_connected"],IOStruct::GetFile(TEMPLATE_HTML_MESSAGE_OVERLAY_CHAT_STATUS)),"sys","ONM01");
else if($USER->Browsers[0]->Status == CHAT_STATUS_OPEN && !$USER->Browsers[0]->Waiting)
$OVERLAY->AddHTML(str_replace("<!--message-->",LocalizationManager::$TranslationStrings["client_chat_available"],IOStruct::GetFile(TEMPLATE_HTML_MESSAGE_OVERLAY_CHAT_STATUS)),"sys","ONM01");
if(!empty($USER->Browsers[0]->ChatId) && !$USER->Browsers[0]->InternalActivation && !empty($USER->Browsers[0]->Forward) && !$USER->Browsers[0]->Forward->Invite && !empty($USER->Browsers[0]->Forward->TargetGroupId) && $USER->Browsers[0]->Forward->Processed)
$OVERLAY->AddHTML(str_replace("<!--message-->",(LocalizationManager::$TranslationStrings["client_forwarding"]),IOStruct::GetFile(TEMPLATE_HTML_MESSAGE_OVERLAY_CHAT_STATUS)),"sys","ONM01");
}
else if($OVERLAY->Botmode && (($OVERLAY->Flags["LMR"]!="OBM01" || $OVERLAY->FullLoad) && ( (empty($USER->Browsers[0]->OperatorId) && empty($OVERLAY->CurrentOperatorId)) || (!empty($USER->Browsers[0]->OperatorId) && Server::$Operators[$USER->Browsers[0]->OperatorId]->IsBot))))
{
$USER->Browsers[0]->FindOperator(VisitorChat::$Router,$USER,true,true);
if(!empty(Server::$Operators[$USER->Browsers[0]->DesiredChatPartner]) && Server::$Operators[$USER->Browsers[0]->DesiredChatPartner]->IsBot)
{
$text = ($OVERLAY->Human) ? @LocalizationManager::$TranslationStrings["client_now_speaking_to_va"] : @LocalizationManager::$TranslationStrings["client_now_speaking_to_va_offline"];
$USER->AddFunctionCall("lz_chat_input_bot_state(true,false);",false);
$OVERLAY->AddHTML($OVERLAY->GetPostHTML(str_replace("<!--operator_name-->",Server::$Operators[$USER->Browsers[0]->DesiredChatPartner]->Fullname,$text),"",true,true,Server::$Operators[$USER->Browsers[0]->DesiredChatPartner]->Fullname,time(),$USER->Browsers[0]->DesiredChatPartner,Server::$Operators[$USER->Browsers[0]->DesiredChatPartner]->IsBot),"sys","OBM01");
$OVERLAY->SetHost($USER->Browsers[0]->DesiredChatPartner);
}
}
}
if(!$OVERLAY->Botmode && empty($_GET["tth"]) && ($USER->Browsers[0]->Status > CHAT_STATUS_OPEN || isset($_GET["mi0"])))
$USER->AddFunctionCall("lz_chat_set_talk_to_human(true,true);",false);
$OVERLAY->BotTitle = ($OVERLAY->Botmode && !empty(Server::$Operators[$USER->Browsers[0]->DesiredChatPartner]) && Server::$Operators[$USER->Browsers[0]->DesiredChatPartner]->IsBot) ? base64_encode(str_replace(array("%name%","%operator_name%"),Server::$Operators[$USER->Browsers[0]->DesiredChatPartner]->Fullname,LocalizationManager::$TranslationStrings["client_bot_overlay_title"])) : "";
if($OVERLAY->IsChatAvailable && !Visitor::$OpenChatExternal && !empty($USER->Browsers[1]->ChatRequest) && Server::$Operators[$USER->Browsers[1]->ChatRequest->SenderSystemId]->IsExternal(Server::$Groups,null,null))
{
if(!$USER->Browsers[1]->ChatRequest->Closed && !$USER->Browsers[1]->ChatRequest->Accepted)
{
$sound = (!empty(Server::$Configuration->File["gl_cips"]) && !$USER->Browsers[1]->ChatRequest->Displayed) ? "lz_chat_play_sound(\'wind\');" : "";
if($OVERLAY->FullLoad)
$USER->Browsers[1]->ChatRequest->Displayed = false;
if(!$USER->Browsers[1]->ChatRequest->Displayed)
{
$USER->Browsers[1]->ChatRequest->Load();
$OVERLAY->AddHTML($OVERLAY->GetInviteHTML($USER->Browsers[1]->ChatRequest->SenderSystemId,$USER->Browsers[1]->ChatRequest->Text,$USER->Browsers[1]->ChatRequest->Id),"sys","");
$USER->AddFunctionCall("lz_desired_operator='".Server::$Operators[$USER->Browsers[1]->ChatRequest->SenderSystemId]->UserId."';",false);
$USER->AddFunctionCall("lz_chat_invite_timer=setTimeout('lz_chat_change_state(false,false);".$sound."',2500);",false);
$USER->AddFunctionCall("lz_chat_set_group('".base64_encode($USER->Browsers[1]->ChatRequest->SenderGroupId)."');",false);
$USER->AddFunctionCall("lz_chat_set_talk_to_human(true,false);",false);
$USER->AddFunctionCall("lz_chat_prepare_data_form();",false);
$USER->Browsers[1]->ChatRequest->SetStatus(true,false,false);
$USER->Browsers[1]->ChatRequest->Displayed=true;
}
if(!empty($_GET["mi0"]))
{
$USER->Browsers[1]->ChatRequest->SetStatus(true,true,false,true);
$USER->Browsers[1]->ForceUpdate();
}
}
}
$tymes = (!empty($USER->Browsers[0]->OperatorId) && Server::$Operators[$USER->Browsers[0]->OperatorId]->Typing==$USER->Browsers[0]->SystemId) ? "'".base64_encode(str_replace("<!--operator_name-->",Server::$Operators[$USER->Browsers[0]->OperatorId]->Fullname,LocalizationManager::$TranslationStrings["client_representative_is_typing"]))."'" : "null";
$USER->AddFunctionCall("lz_chat_set_typing(".$tymes.",false);",false);
$OVERLAY->BuildElements();
if($OVERLAY->FullLoad)
$OVERLAY->OperatorPostCount=0;
if($OVERLAY->Flags["LPP"] == $USER->Browsers[0]->SystemId)
$OVERLAY->OperatorPostCount=-1;
if(!empty($OVERLAY->SpeakingToHTML) && !$OVERLAY->SpeakingToAdded)
$OVERLAY->AddHTML($OVERLAY->SpeakingToHTML,"sys","SPKT" . Server::$Operators[$USER->Browsers[0]->OperatorId]->SystemId);
if(!empty($OVERLAY->PostHTML))
$OVERLAY->AddHTML($OVERLAY->PostHTML,$OVERLAY->Flags["LPP"]);
if(!empty($OVERLAY->LastPost))
$USER->AddFunctionCall("lz_chat_set_last_post('".base64_encode(trim(html_entity_decode($OVERLAY->LastPost,ENT_COMPAT,"UTF-8")))."');",false);
if($OVERLAY->PlaySound)
$USER->AddFunctionCall("lz_chat_play_sound('message');",false);
if(!empty($_GET["tid"]))
{
if($ticket = $USER->SaveTicket(Communication::GetParameter("eg","",$c),$USER->GeoCountryISO2,false,true,BaseURL::GetInputURL()))
{
$USER->Browsers[1]->ForceUpdate();
$ticket->SendAutoresponder($USER,$USER->Browsers[0]);
}
}
$OVERLAY->OverlayHTML = str_replace("<!--server-->",LIVEZILLA_URL,$OVERLAY->OverlayHTML);
if($OVERLAY->LanguageRequired)
$OVERLAY->OverlayHTML = Server::Replace($OVERLAY->OverlayHTML,$OVERLAY->LanguageRequired,false);
if(!empty($OVERLAY->OverlayHTML))
$USER->AddFunctionCall("lz_chat_add_html_element('".base64_encode($OVERLAY->OverlayHTML)."',true,".$OVERLAY->LastPostReceived.",".$OVERLAY->LastMessageReceived.",'".base64_encode($OVERLAY->LastPoster)."','".base64_encode(Communication::ReadParameter("lp",""))."',".$OVERLAY->OperatorPostCount.");",false);
$USER->AddFunctionCall("lz_chat_set_connecting(".To::BoolString(!$OVERLAY->Botmode && (!empty($USER->Browsers[0]->ChatId) && !$USER->Browsers[0]->InternalActivation && !$USER->Browsers[0]->Closed && !$USER->Browsers[0]->Declined)).",'".$USER->Browsers[0]->SystemId."',".To::BoolString(!empty($USER->Browsers[0]->OperatorId) && Server::$Operators[$USER->Browsers[0]->OperatorId]->Status==USER_STATUS_AWAY).",".$OVERLAY->GetWaitingMessage().",".intval(Server::$Configuration->File["gl_wmes"]).");",false);
if($OVERLAY->RepollRequired)
$USER->AddFunctionCall("lz_tracking_poll_server(1211);",false);
if($USER->Browsers[0]->TranslationSettings != null)
$USER->AddFunctionCall("lz_chat_set_translation(". $USER->Browsers[0]->TranslationSettings[0] . ",'". base64_encode($USER->Browsers[0]->TranslationSettings[1]) . "','" . base64_encode($USER->Browsers[0]->TranslationSettings[2]) . "');",false);
else
$USER->AddFunctionCall("lz_chat_set_translation(null,null,null);",false);
if($OVERLAY->FullLoad)
$USER->AddFunctionCall("lz_chat_load_input_values();",false);
$USER->ReloadGroups(true,Visitor::$PollCount == 1);
if(!empty($USER->Browsers[0]->DesiredChatGroup))
$USER->AddFunctionCall("lz_chat_set_input_fields();",false);
else
$USER->AddFunctionCall(false,false,false,false);
$USER->AddFunctionCall("lz_chat_set_application(".To::BoolString($OVERLAY->IsChatAvailable).",".To::BoolString($OVERLAY->Botmode).",".To::BoolString($OVERLAY->HumanGeneral).",'".$OVERLAY->BotTitle."',".$OVERLAY->GetChatStatus().",".To::BoolString($USER->Browsers[0]->Declined).");",false);
if(Visitor::$PollCount == 1)
$USER->AddFunctionCall("lz_chat_set_focus();",false);
}
OverlayChat::$Response = $USER->Response;
?>