static function CloseChats()
 {
     $result = DBManager::Execute(false, "SELECT * FROM `" . DB_PREFIX . DATABASE_CHAT_ARCHIVE . "` WHERE `chat_type`=1 AND `closed`=0 AND `transcript_sent`=0;");
     while ($row = DBManager::FetchArray($result)) {
         $results = DBManager::Execute(false, "SELECT * FROM `" . DB_PREFIX . DATABASE_VISITOR_CHATS . "` WHERE `chat_id`='" . DBManager::RealEscape($row["chat_id"]) . "' AND (`exit`>0 OR `last_active`<" . (time() - Server::$Configuration->File["timeout_track"]) . ");");
         if ($results && ($rows = DBManager::FetchArray($results))) {
             $botchat = !empty($row["internal_id"]) && Server::$Operators[$row["internal_id"]]->IsBot;
             $chat = new VisitorChat($rows);
             $chat->LoadMembers();
             $startResult = 0;
             $endResult = 0;
             if ($botchat) {
                 $chat->CloseChat();
                 $lastOp = $row["internal_id"];
                 $waitingtime = 1;
                 $startResult = 1;
             } else {
                 $lastOp = $chat->GetLastOperator();
                 $waitingtime = $chat->GetTotalWaitingTime($startResult, $endResult);
             }
             $chatBrowser = new VisitorBrowser($chat->BrowserId, $chat->UserId, false);
             $chatBrowser->LoadUserData();
             Chat::SaveToArchive($row["chat_id"], $chatBrowser->UserData->Fullname, $rows["visitor_id"], $lastOp, $rows["request_group"], $chatBrowser->UserData->Email, $chatBrowser->UserData->Company, $chatBrowser->UserData->Phone, $row["host"], $row["ip"], $chatBrowser->UserData->Text, empty(Server::$Configuration->File["gl_sctb"]) && $botchat, $waitingtime, $startResult, $endResult);
         }
     }
 }
     $ticket->LoadStatus();
 }
 if (Feedback::IsFlood()) {
     $fb_html = str_replace("<!--title-->", "<br><br><br>" . str_replace("<!--count-->", MAX_FEEDBACKS_PER_DAY, LocalizationManager::$TranslationStrings["client_feedback_max"]) . "<script>parent.parent.lz_chat_feedback_result();</script>", $fb_html);
     $fb_html = str_replace("<!--visible-->", "none", $fb_html);
 } else {
     if (!empty($_POST)) {
         $userid = "";
         $feedback = new Feedback(getId(32));
         if ($chat != null) {
             $feedback->ChatId = $chat->ChatId;
             $feedback->UserId = $userid = $chat->UserId;
             $feedback->GroupId = $chat->DesiredChatGroup;
             $feedback->OperatorId = $chat->DesiredChatPartner;
             $browser = new VisitorBrowser($chat->BrowserId, $chat->UserId, false);
             $browser->LoadUserData();
             $feedback->UserData = $browser->UserData;
             Visitor::CloseAllOverlays($chat->UserId);
         } else {
             if ($ticket != null) {
                 $feedback->UserId = $ticket->SenderUserId;
                 $feedback->TicketId = $ticket->Id;
                 if (!empty($ticket->Editor)) {
                     $feedback->OperatorId = $ticket->Editor->Editor;
                     $feedback->GroupId = $ticket->Editor->GroupId;
                 }
                 $feedback->UserData = UserData::FromTicketMessage($ticket->Messages[0]);
             }
         }
         $isSpam = !empty(Server::$Configuration->File["gl_sfc"]) && Visitor::CreateSPAMFilter($userid, false);
         if (!$isSpam) {