mirror of
https://github.com/openvk/openvk
synced 2025-07-09 09:12:56 +03:00
Compare commits
1 commit
aefb09a83d
...
1aa47448bf
Author | SHA1 | Date | |
---|---|---|---|
|
1aa47448bf |
1 changed files with 2 additions and 77 deletions
|
@ -169,13 +169,6 @@ final class SupportPresenter extends OpenVKPresenter
|
||||||
$_redirect = "/support?act=list";
|
$_redirect = "/support?act=list";
|
||||||
}
|
}
|
||||||
|
|
||||||
$helpdeskChat = OPENVK_ROOT_CONF["openvk"]["credentials"]["telegram"]["helpdeskChat"];
|
|
||||||
if ($helpdeskChat) {
|
|
||||||
$serverUrl = ovk_scheme(true) . $_SERVER["SERVER_NAME"];
|
|
||||||
$telegramText = "❌ <b>Тикет под названием</b> "{$ticket->getName()}" от <a href='$serverUrl{$ticket->getUser()->getURL()}'>{$ticket->getUser()->getCanonicalName()}</a> ({$ticket->getUser()->getRegistrationIP()}) <b>был удалён.</b>\n";
|
|
||||||
Telegram::send($helpdeskChat, $telegramText);
|
|
||||||
}
|
|
||||||
|
|
||||||
$ticket->delete();
|
$ticket->delete();
|
||||||
$this->redirect($_redirect);
|
$this->redirect($_redirect);
|
||||||
}
|
}
|
||||||
|
@ -207,16 +200,6 @@ final class SupportPresenter extends OpenVKPresenter
|
||||||
$comment->setCreated(time());
|
$comment->setCreated(time());
|
||||||
$comment->save();
|
$comment->save();
|
||||||
|
|
||||||
$helpdeskChat = OPENVK_ROOT_CONF["openvk"]["credentials"]["telegram"]["helpdeskChat"];
|
|
||||||
if ($helpdeskChat) {
|
|
||||||
$serverUrl = ovk_scheme(true) . $_SERVER["SERVER_NAME"];
|
|
||||||
$commentText = ovk_proc_strtr($this->postParam("text"), 1500);
|
|
||||||
$telegramText = "💬 <b>Новый комментарий от автора тикета</b> <a href='$serverUrl/support/reply/$id'>"{$ticket->getName()}"</a>\n";
|
|
||||||
$telegramText .= "$commentText\n\n";
|
|
||||||
$telegramText .= "Автор: <a href='$serverUrl{$ticket->getUser()->getURL()}'>{$ticket->getUser()->getCanonicalName()}</a> ({$ticket->getUser()->getRegistrationIP()})\n";
|
|
||||||
Telegram::send($helpdeskChat, $telegramText);
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->redirect("/support/view/" . $id);
|
$this->redirect("/support/view/" . $id);
|
||||||
} else {
|
} else {
|
||||||
$this->flashFail("err", tr("error"), tr("you_have_not_entered_text"));
|
$this->flashFail("err", tr("error"), tr("you_have_not_entered_text"));
|
||||||
|
@ -244,33 +227,15 @@ final class SupportPresenter extends OpenVKPresenter
|
||||||
{
|
{
|
||||||
$this->assertPermission('openvk\Web\Models\Entities\TicketReply', 'write', 0);
|
$this->assertPermission('openvk\Web\Models\Entities\TicketReply', 'write', 0);
|
||||||
|
|
||||||
$support_names = new SupportAgents();
|
|
||||||
$agent = $support_names->get($this->user->id);
|
|
||||||
$ticket = $this->tickets->get($id);
|
$ticket = $this->tickets->get($id);
|
||||||
|
|
||||||
if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
||||||
$this->willExecuteWriteAction();
|
$this->willExecuteWriteAction();
|
||||||
|
|
||||||
$helpdeskChat = OPENVK_ROOT_CONF["openvk"]["credentials"]["telegram"]["helpdeskChat"];
|
|
||||||
|
|
||||||
if (!empty($this->postParam("text")) && !empty($this->postParam("status"))) {
|
if (!empty($this->postParam("text")) && !empty($this->postParam("status"))) {
|
||||||
$status = $this->postParam("status");
|
$ticket->setType($this->postParam("status"));
|
||||||
$ticket->setType($status);
|
|
||||||
$ticket->save();
|
$ticket->save();
|
||||||
|
|
||||||
switch ($status) {
|
|
||||||
default:
|
|
||||||
# NOTICE falling through
|
|
||||||
case 0:
|
|
||||||
$state = "Вопрос на рассмотрении";
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
$state = "Есть ответ";
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
$state = "Закрыто";
|
|
||||||
}
|
|
||||||
|
|
||||||
$comment = new TicketComment();
|
$comment = new TicketComment();
|
||||||
$comment->setUser_id($this->user->id);
|
$comment->setUser_id($this->user->id);
|
||||||
$comment->setUser_type(1);
|
$comment->setUser_type(1);
|
||||||
|
@ -278,42 +243,9 @@ final class SupportPresenter extends OpenVKPresenter
|
||||||
$comment->setTicket_Id($id);
|
$comment->setTicket_Id($id);
|
||||||
$comment->setCreated(time());
|
$comment->setCreated(time());
|
||||||
$comment->save();
|
$comment->save();
|
||||||
|
|
||||||
if ($helpdeskChat) {
|
|
||||||
$serverUrl = ovk_scheme(true) . $_SERVER["SERVER_NAME"] . "/support/agent" . $this->user->id;
|
|
||||||
$ticketUrl = ovk_scheme(true) . $_SERVER["SERVER_NAME"] . "/support/reply/" . $id;
|
|
||||||
$commentText = ovk_proc_strtr($this->postParam("text"), 1500);
|
|
||||||
$telegramText = "💬 <b>Новый комментарий от агента к тикету</b> <a href='$ticketUrl'>"{$ticket->getName()}"</a>\n";
|
|
||||||
$telegramText .= "Статус: {$state}\n\n";
|
|
||||||
$telegramText .= "$commentText\n\n";
|
|
||||||
$telegramText .= "Агент: <a href='$serverUrl'>{$this->user->identity->getFullName()}</a>\n";
|
|
||||||
Telegram::send($helpdeskChat, $telegramText);
|
|
||||||
}
|
|
||||||
} elseif (empty($this->postParam("text"))) {
|
} elseif (empty($this->postParam("text"))) {
|
||||||
$status = $this->postParam("status");
|
$ticket->setType($this->postParam("status"));
|
||||||
$ticket->setType($status);
|
|
||||||
$ticket->save();
|
$ticket->save();
|
||||||
|
|
||||||
switch ($status) {
|
|
||||||
default:
|
|
||||||
# NOTICE falling through
|
|
||||||
case 0:
|
|
||||||
$state = "Вопрос на рассмотрении";
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
$state = "Есть ответ";
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
$state = "Закрыто";
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($helpdeskChat) {
|
|
||||||
$serverUrl = ovk_scheme(true) . $_SERVER["SERVER_NAME"] . "/support/agent" . $this->user->id;
|
|
||||||
$ticketUrl = ovk_scheme(true) . $_SERVER["SERVER_NAME"] . "/support/reply/" . $id;
|
|
||||||
$telegramText = "🔔 <b>Изменён статус тикета</b> <a href='$ticketUrl'>"{$ticket->getName()}"</a>: <b>{$state}</b>\n\n";
|
|
||||||
$telegramText .= "Агент: <a href='$serverUrl'>{$this->user->identity->getFullName()}</a>\n";
|
|
||||||
Telegram::send($helpdeskChat, $telegramText);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->flashFail("succ", tr("ticket_changed"), tr("ticket_changed_comment"));
|
$this->flashFail("succ", tr("ticket_changed"), tr("ticket_changed_comment"));
|
||||||
|
@ -510,13 +442,6 @@ final class SupportPresenter extends OpenVKPresenter
|
||||||
$ticket->setType(2);
|
$ticket->setType(2);
|
||||||
$ticket->save();
|
$ticket->save();
|
||||||
|
|
||||||
$helpdeskChat = OPENVK_ROOT_CONF["openvk"]["credentials"]["telegram"]["helpdeskChat"];
|
|
||||||
if ($helpdeskChat) {
|
|
||||||
$serverUrl = ovk_scheme(true) . $_SERVER["SERVER_NAME"];
|
|
||||||
$telegramText = "🔒 <b>Тикет под названием</b> <a href='$serverUrl/support/reply/{$ticket->getId()}'>"{$ticket->getName()}"</a> от <a href='$serverUrl{$ticket->getUser()->getURL()}'>{$ticket->getUser()->getCanonicalName()}</a> ({$ticket->getUser()->getRegistrationIP()}) <b>был закрыт автором.</b>\n";
|
|
||||||
Telegram::send($helpdeskChat, $telegramText);
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->flashFail("succ", tr("ticket_changed"), tr("ticket_changed_comment"));
|
$this->flashFail("succ", tr("ticket_changed"), tr("ticket_changed_comment"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue