} $eHistory = $history = ""; $lastid = -1; $output = Thread::getInstance()->GetMessages($threadid, "text", true, $lastid); foreach ($output as $msg) { $history .= $msg; $eHistory .= $msg; } $visitSession = VisitSession::GetInstance()->GetVisitSessionById($thread['visitsessionid']); $systemInfo = "Системная информация\nимя: " . $visitSession['visitorname'] . "\nсоздан: " . date('Y-m-d', $visitSession['created']) . "\nip: {$visitSession['ip']}\nбраузер: " . get_user_agent($visitSession['useragent']) . "\n\n"; $history = $systemInfo . $history; $subject = Resources::Get("mail.visitor.history.subject"); // отправке диалогов из мессенджера ------------ if ($dept && isset($aDko[$dept]['subject'])) { $subject = $aDko[$dept]['subject']; } $visitor_name = $visitSession['visitorname']; $body = Resources::Get("mail.visitor.history.body", array($visitor_name, $history)); // отправке диалогов из мессенджера if ($dept && ($feedback = feedbackAdd($dept, $visitor_name, $email_from, $body, 0))) { $body .= "\n" . '[[UCODE::{' . $feedback['uc'] . '},FID::{' . $feedback['id'] . '}]]'; } $webim_from_email = $email_from ? $email_from : Settings::Get("from_email"); $body = Resources::Get("mail.visitor.history.body", array($visitor_name, $history)); webim_mail($email, $webim_from_email, $subject, $body, 0); // отправке диалогов из мессенджера ------------ if ($dept && isset($aDko[$dept]['option'])) { $sMsg = 'Диалог был отправлен в раздел: ' . $aDko[$dept]['option']; Thread::getInstance()->PostMessage($threadid, KIND_EVENTS, $sMsg); } $TML->display('send-history-sent.tpl');
$TML->assign('phone', getSecureText($phone)); $TML->assign('message', getSecureText($message)); $TML->assign('canChangeName', getSecureText($canChangeName)); $TML->assign('captcha_num', ''); $TML->display('leave-message.tpl'); exit; } $visitSessionId = VisitSession::GetInstance()->updateCurrentOrCreateSession(); $params = array(); $params['visitsessionid'] = $visitSessionId; $params['lastpingvisitor'] = null; $params['offline'] = 1; $threads_count = MapperFactory::getMapper('Thread')->getNonEmptyThreadsCountByVisitorId($visitorid); $thread = Thread::getInstance()->CreateThread(WEBIM_CURRENT_LOCALE, STATE_CLOSED, $params); VisitSession::GetInstance()->UpdateVisitSession($visitSessionId, array('hasthread' => 1)); Thread::getInstance()->sendFirstMessageWithVisitorInfo($thread); Thread::getInstance()->PostMessage($thread['threadid'], KIND_USER, Resources::Get('chat.window.offline_message', array($message))); MapperFactory::getMapper('Thread')->incrementVisitorMessageCount($thread['threadid']); $first_message = MapperFactory::getMapper('Message')->getFirstMessage($thread['threadid']); Visitor::getInstance()->setVisitorNameCookie($visitor_name); // отправке диалогов из мессенджера $subject = $dept && isset($aDko[$dept]['subject']) ? $subject = $aDko[$dept]['subject'] : Resources::Get('leavemail.subject', array($visitor_name), WEBIM_CURRENT_LOCALE); $body = Resources::Get('leavemail.body', array($visitor_name, $email, $message, $phone, Thread::getInstance()->formatOpenerWithTitle(), HTTP_PREFIX . $_SERVER['HTTP_HOST'] . WEBIM_ROOT . '/operator/threadprocessor.php?threadid=' . $thread['threadid'], str_replace("\n", "\n\n", $first_message['message'])), WEBIM_CURRENT_LOCALE); // отправке диалогов из мессенджера if ($dept && ($feedback = feedbackAdd($dept, $visitor_name, $email, $body, get_uid(false)))) { $body .= "\n" . '[[UCODE::{' . $feedback['uc'] . '},FID::{' . $feedback['id'] . '}]]'; } // отправке диалогов из мессенджера $inbox_mail = $dept && isset($aDko[$dept]['email']) ? $aDko[$dept]['email'] : Settings::Get('offline_email'); webim_mail($inbox_mail, $visitor_name . '<' . $email . '>', $subject, $body); $TML->display('leave-message-sent.tpl');