@@ -129,8 +129,12 @@ image.button.search=/locales/en/images/search.gif
chat.came.from=Vistor came from page {0}
content.history=Search the dialogs history
content.logoff=Log out of the system.
+errors.wrong_field=Please fill "{0}" correctly.
form.field.agent_commonname=International name (Latin)
form.field.agent_commonname.description=This name will be seen by your visitors
+form.field.email=Your email
+form.field.message=Message
+form.field.name=Your name
install.1.connected=You are connected to MySQL server version {0}
install.2.create=Create database "{0}"
install.2.db_exists=Database "{0}" is created.
@@ -153,6 +157,15 @@ install.title=Installation
installed.login_link=Proceed to login page
installed.message=Application installed successfully.
installed.notice=You can logon as admin with empty password. For security reasons, please change your password immediately and remove /webim/install folder from your server.
+leavemail.body=Your have a message from {0}:\n\n{2}\n\nHis email: {1}\n\n--- \nYours site messenger
+leavemail.subject=Question from {0}
+leavemessage.close=Close
+leavemessage.descr=Sorry, no operator is available at the moment. Please, try again later or ask your question in this form.
+leavemessage.perform=Submit
+leavemessage.sent.message=Thank you for using our service. We'll answer you by mail as soon as possible.
+leavemessage.sent.title=Your message is sent
+leavemessage.title=Leave your message
+localeid=English (en)
menu.agents=Agents list
menu.main=Main
menu.operator=You are {0}
diff --git a/src/webim/locales/ru/properties b/src/webim/locales/ru/properties
index 4d333ddc..deb24456 100644
--- a/src/webim/locales/ru/properties
+++ b/src/webim/locales/ru/properties
@@ -102,7 +102,7 @@ page.gen_button.code=HTML-
page.gen_button.sample=Пример
page.gen_button.code.description=Внимание! При внесении каких-либо изменений в этот код работоспособность кнопки не гарантируется!
mail.user.history.subject=Вэб Мессенджер: история диалога
-mail.user.history.body=Здраствуйте, {0}!\n\nПо Вашему запросу, высылаем историю: \n\n{1}\n--- \nС уважением,\nСлужба поддержки i-services.ru
+mail.user.history.body=Здраствуйте, {0}!\n\nПо Вашему запросу, высылаем историю: \n\n{1}\n--- \nС уважением,\nВэб Мессенджер
errors.header=Исправьте ошибки:
errors.prefix=
errors.suffix=
@@ -129,8 +129,12 @@ image.button.search=/locales/ru/images/search.gif
chat.came.from=Посетитель пришел со страницы {0}
content.history=Поиск по истории диалогов
content.logoff=Покинуть систему.
+errors.wrong_field=Неправильно заполнено поле "{0}"
form.field.agent_commonname=Интернациональное имя (латиницей)
form.field.agent_commonname.description=Под этим именем Вас увидят ваши посетители из других стран
+form.field.email=Ваш email
+form.field.message=Сообщение
+form.field.name=Ваше имя
install.1.connected=Вы подсоединены к серверу MySQL версии {0}.
install.2.create=Создать базу данных "{0}"
install.2.db_exists=Создана база данных "{0}".
@@ -153,6 +157,15 @@ install.title=
installed.login_link=Войти в систему
installed.message=Установка успешно завершена.
installed.notice=Вы можете войти в систему как admin с пустым паролем. В целях безопасности, удалите, пожалуйста, каталог /webim/install с вашего сервера и поменяйте пароль.
+leavemail.body=Ваш посетитель {0} оставил сообщение:\n\n{2}\n\nЕго email: {1}\n\n--- \nС уважением,\nВаш вэб-мессенджер
+leavemail.subject=Вопрос от {0}
+leavemessage.close=Закрыть
+leavemessage.descr=К сожалению, сейчас нет ни одного доступного оператора. Попробуйте обратиться позже или оставьте нам свой вопрос и мы свяжемся с Вами по оставленному адресу.
+leavemessage.perform=Передать
+leavemessage.sent.message=Спасибо за ваш вопрос, мы постараемся ответить на него как можно быстрее.
+leavemessage.sent.title=Ваше сообщение сохранено
+leavemessage.title=Оставьте ваше сообщение
+localeid=Russian (ru)
menu.agents=Список агентов
menu.main=Главная
menu.operator=Вы {0}
diff --git a/src/webim/mail.php b/src/webim/mail.php
index 5944a5a0..1ec1696c 100644
--- a/src/webim/mail.php
+++ b/src/webim/mail.php
@@ -15,6 +15,9 @@
require('libs/common.php');
require('libs/chat.php');
+$errors = array();
+$page = array();
+
$token = verifyparam( "token", "/^\d{1,8}$/");
$threadid = verifyparam( "thread", "/^\d{1,8}$/");
@@ -26,7 +29,21 @@ if( !$thread || !isset($thread['ltoken']) || $token != $thread['ltoken'] ) {
$mail = getparam('email');
$page['email'] = $mail;
-// TODO check email
+if( !$mail ) {
+ $errors[] = no_field("form.field.email");
+} else if( !is_valid_email($mail)) {
+ $errors[] = wrong_field("form.field.email");
+}
+
+if( count($errors) > 0 ) {
+ $page['formemail'] = $mail;
+ $page['ct.chatThreadId'] = $thread['threadid'];
+ $page['ct.token'] = $thread['ltoken'];
+ $page['level'] = "";
+ start_html_output();
+ require('view/chat_mailthread.php');
+ exit;
+}
$history = "";
$lastid = -1;
diff --git a/src/webim/operator/agent.php b/src/webim/operator/agent.php
index 8da7a2b0..093535c0 100644
--- a/src/webim/operator/agent.php
+++ b/src/webim/operator/agent.php
@@ -31,8 +31,7 @@ if( !isset($_GET['token']) ) {
die("wrong thread");
}
-
- take_thread($thread,$operator);
+ take_thread($thread,$operator);
$token = $thread['ltoken'];
header("Location: ".$_SERVER['PHP_SELF']."?thread=$threadid&token=$token");
diff --git a/src/webim/operator/update.php b/src/webim/operator/update.php
index b4fdfe1a..aa7a282f 100644
--- a/src/webim/operator/update.php
+++ b/src/webim/operator/update.php
@@ -48,12 +48,14 @@ function thread_to_xml($thread) {
$threadoperator = ($thread['agentName'] ? $thread['agentName'] : "-");
$result .= " canopen=\"true\"";
+
$result .= " state=\"$state\">";
$result .= "".htmlspecialchars(htmlspecialchars(get_user_name($thread['userName'])))."";
$result .= "".htmlspecialchars(htmlspecialchars($thread['remote']))."";
$result .= "".htmlspecialchars(htmlspecialchars($threadoperator))."";
$result .= "";
$result .= "".$thread['unix_timestamp(dtmmodified)']."000";
+
$result .= "";
return $result;
}
diff --git a/src/webim/thread.php b/src/webim/thread.php
index 53a679da..ca20e37a 100644
--- a/src/webim/thread.php
+++ b/src/webim/thread.php
@@ -76,8 +76,11 @@ if( $act == "refresh" ) {
exit;
} else if( $act == "close" ) {
+
+ if( $isuser || $thread['agentId'] == $operator['operatorid']) {
+ close_thread($thread, $isuser);
+ }
- close_thread($thread, $isuser);
start_xml_output();
echo "";
exit;
diff --git a/src/webim/view/chat_ajaxed.php b/src/webim/view/chat_ajaxed.php
index 0a2a6d17..f90073d3 100644
--- a/src/webim/view/chat_ajaxed.php
+++ b/src/webim/view/chat_ajaxed.php
@@ -120,7 +120,7 @@ var threadParams = { servl:"/thread.php",wroot:"
-