function getActionText($_sender, $_action, $break = false, $sel_message = null) { if (!empty($_action->Value)) { return $_action->Value; } $available = array(Server::$Operators[$_sender->UserSystemId]->PredefinedMessages, Server::$Groups[$_sender->GroupId]->PredefinedMessages); foreach ($available as $list) { foreach ($list as $message) { if ($message->IsDefault && empty(VisitorMonitoring::$Visitor->Language) || VisitorMonitoring::$Visitor->Language == $message->LangISO) { $sel_message = $message; $break = true; break; } else { if ($message->IsDefault && empty($_action->Value)) { $sel_message = $message; } } } if ($break) { break; } } if ($_action->Type == 2 && $sel_message != null) { $_action->Value = $sel_message->InvitationAuto; } else { if ($_action->Type == 4) { $_action->Value = $sel_message->WebsitePushAuto; $_action->Value = str_replace("%target_url%", $_action->WebsitePush->TargetURL, $_action->Value); } } $_action->Value = Server::$Groups[$_sender->GroupId]->TextReplace($_action->Value, $message->LangISO); $_action->Value = VisitorMonitoring::$Visitor->TextReplace($_action->Value); $_action->Value = VisitorMonitoring::$Browser->TextReplace($_action->Value); $_action->Value = Server::$Operators[$_sender->UserSystemId]->TextReplace($_action->Value); $_action->Value = Configuration::Replace($_action->Value); return $_action->Value; }
static function GetSubject($_subject, $_email, $_username, $_group, $_chatid, $_company, $_phone, $_ip, $_question, $_language, $_customs = null) { $_subject = Configuration::Replace($_subject); $_subject = str_replace(array("%external_name%", "%USERNAME%"), $_username, $_subject); $_subject = str_replace(array("%external_email%", "%USEREMAIL%"), $_email, $_subject); $_subject = str_replace(array("%external_company%", "%USERCOMPANY%"), $_company, $_subject); $_subject = str_replace("%external_phone%", $_phone, $_subject); $_subject = str_replace("%external_ip%", $_ip, $_subject); $_subject = str_replace(array("%question%", "%USERQUESTION%", "%mailtext%"), $_question, $_subject); $_subject = str_replace(array("%group_name%", "%group_id%", "%TARGETGROUP%"), $_group, $_subject); $_subject = str_replace("%group_description%", isset(Server::$Groups[$_group]) ? Server::$Groups[$_group]->GetDescription($_language) : $_group, $_subject); $_subject = str_replace(array("%chat_id%", "%CHATID%"), $_chatid, $_subject); foreach (Server::$Inputs as $index => $input) { if ($input->Active && $input->Custom) { if ($input->Type == "CheckBox") { $_subject = str_replace("%custom" . $index . "%", !empty($_customs[$index]) ? LocalizationManager::$TranslationStrings["client_yes"] : LocalizationManager::$TranslationStrings["client_no"], $_subject); } else { if (!empty($_customs[$index])) { $_subject = str_replace("%custom" . $index . "%", $input->GetClientValue($_customs[$index]), $_subject); } else { $_subject = str_replace("%custom" . $index . "%", "", $_subject); } } } else { $_subject = str_replace("%custom" . $index . "%", "", $_subject); } } return Server::Replace(str_replace("\n", "", $_subject), true, false); }
function ShowGroupQueueInformation($_visitor, $_shown) { $pdm = PredefinedMessage::GetByLanguage(Server::$Groups[$this->DesiredChatGroup]->PredefinedMessages, $_visitor != null ? $_visitor->Language : ""); if ($pdm != null && !empty($pdm->QueueMessage) && time() - $this->FirstActive > $pdm->QueueMessageTime && !$_shown) { $message = Server::$Groups[$this->DesiredChatGroup]->TextReplace($pdm->QueueMessage, $_visitor->Language); $message = $_visitor->TextReplace($message); $message = $this->TextReplace($message); $message = Configuration::Replace($message); $this->QueueMessageShown = true; return $message; } return ""; }