Load(true,true); if(Feedback::IsFlood()) { $fb_html = str_replace("","


" . str_replace("",MAX_FEEDBACKS_PER_DAY,LocalizationManager::$TranslationStrings["client_feedback_max"]),$fb_html); $fb_html = str_replace("","none",$fb_html); } else if(!empty($_POST)) { $userid = ""; $feedback = new Feedback(getId(32)); $saveFeedback = (isset($_POST["p_save_fb"]) && $_POST["p_save_fb"] == "1"); if($chat != null) { $feedback->ChatId = $chat->ChatId; $feedback->UserId = $userid = $chat->UserId; $feedback->GroupId = $chat->DesiredChatGroup; $feedback->OperatorId = $chat->GetHostOperator(); $visitor = new Visitor($chat->UserId); $visitor->LoadVisitorData(); $feedback->VisitorData = $visitor->VisitorData; Visitor::CloseAllOverlays($chat->UserId); $visitor->ForceUpdate(); } else if($ticket != null) { $feedback->UserId = $ticket->SenderUserId; $feedback->TicketId = $ticket->Id; if(!empty($ticket->Editor)) { $feedback->OperatorId = $ticket->Editor->Editor; $feedback->GroupId = $ticket->Group; } $feedback->VisitorData = UserData::FromTicketMessage($ticket->Messages[0]); $visitor = new Visitor($ticket->SenderUserId); $visitor->ForceUpdate(); // close $ticket->Load(true,false); if(isset($_POST["p_close_ticket"]) && !empty($_POST["p_close_ticket"])) { if($ticket->Salt == Encoding::Base64UrlDecode($_POST["p_close_ticket"])) { if($ticket->Editor != null && $ticket->Editor->Status != 2) { $ticket->Log(0,"",2,$ticket->Editor->Status); $ticket->Editor->Status = 2; $ticket->Editor->Save(); $time = SystemTime::GetUniqueMessageTime(DATABASE_TICKETS,"last_update"); $ticket->SetLastUpdate($time); CacheManager::SetDataUpdateTime(DATA_UPDATE_KEY_TICKETS); } } } } $isSpam = (!empty(Server::$Configuration->File["gl_sfc"]) && Visitor::CreateSPAMFilter($userid,false)); if(!$isSpam) { $feedback->AddCriteriaDataFromServerInput(); if($saveFeedback) $feedback->Save(); } else Logging::GeneralLog("Feedback matches SPAM filter rule."); $fb_html = str_replace("",LocalizationManager::$TranslationStrings["client_feedback_success"],$fb_html); $fb_html = str_replace("","


" . LocalizationManager::$TranslationStrings["client_thank_you"],$fb_html); $fb_html = str_replace("","none",$fb_html); $fb_html = str_replace("","",$fb_html); } else { $inputs_html = $js_id_list = ""; foreach(Server::$Configuration->Database["gl_fb"] as $id => $criteria) { if(!empty($js_id_list)) $js_id_list .= ","; $js_id_list .= "'" . $id . "'"; $inputs_html .= $criteria->GetHTML(); } $fb_html = str_replace("",$inputs_html,$fb_html); $fb_html = str_replace("",$js_id_list,$fb_html); $fb_html = str_replace("","",$fb_html); $fb_html = str_replace("","",$fb_html); // close ticket if(isset($_GET["tid"]) && isset($_GET["close"]) && is_numeric(Encoding::Base64UrlDecode($_GET["tid"])) && isset($_GET["salt"])) { $fb_html = str_replace("","",$fb_html); $fb_html = str_replace("",Encoding::Base64UrlEncode($_GET["salt"]),$fb_html); } else { $fb_html = str_replace("","",$fb_html); $fb_html = str_replace("","",$fb_html); } if(!empty($etc)) $fb_html = str_replace("","background:#" . Colors::CorrectHEX($etc),$fb_html); if(!empty($chat) && !empty(Server::$Operators[$chat->DesiredChatPartner]) && empty($chat->GroupChat)) $fb_html = str_replace("",str_replace("",Server::$Operators[$chat->DesiredChatPartner]->Fullname,LocalizationManager::$TranslationStrings["client_feedback_title_personal"]),$fb_html); else $fb_html = str_replace("",LocalizationManager::$TranslationStrings["client_feedback_title"],$fb_html); } $fb_html = str_replace(array("",""),"",$fb_html); exit(Server::Replace($fb_html)); } ?>