Синхронизация с API: support_api_base из конфига, заголовки при создании тикета, убран неиспользуемый poll
This commit is contained in:
+1
-1
@@ -4,7 +4,7 @@
|
|||||||
<name>f7support</name>
|
<name>f7support</name>
|
||||||
<summary>Support ticket client for F7cloud (F7cloud-compatible)</summary>
|
<summary>Support ticket client for F7cloud (F7cloud-compatible)</summary>
|
||||||
<description>f7support client app for creating and viewing support tickets.</description>
|
<description>f7support client app for creating and viewing support tickets.</description>
|
||||||
<version>0.1.2</version>
|
<version>0.1.3</version>
|
||||||
<licence>AGPL</licence>
|
<licence>AGPL</licence>
|
||||||
<author>f7support team</author>
|
<author>f7support team</author>
|
||||||
<namespace>F7Support</namespace>
|
<namespace>F7Support</namespace>
|
||||||
|
|||||||
+6
-3
@@ -260,7 +260,7 @@
|
|||||||
const node = messageList.querySelector(`[data-f7-msg-id="${id}"]`);
|
const node = messageList.querySelector(`[data-f7-msg-id="${id}"]`);
|
||||||
if (node) hydrateClientAttachments(node);
|
if (node) hydrateClientAttachments(node);
|
||||||
messageList.scrollTop = messageList.scrollHeight;
|
messageList.scrollTop = messageList.scrollHeight;
|
||||||
if (msg.author_role === "support" && state.currentTicket) {
|
if (clientReadReceiptsEnabled && msg.author_role === "support" && state.currentTicket) {
|
||||||
markClientTicketRead(state.currentTicket).catch(() => {});
|
markClientTicketRead(state.currentTicket).catch(() => {});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -775,7 +775,7 @@
|
|||||||
"X-F7cloud-Server": serverAddress,
|
"X-F7cloud-Server": serverAddress,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
if (!response.ok) throw new Error("Не удалось получить токены");
|
if (!response.ok) throw new Error("Не удалось загрузить список обращений");
|
||||||
state.tickets = await response.json();
|
state.tickets = await response.json();
|
||||||
renderTickets();
|
renderTickets();
|
||||||
}
|
}
|
||||||
@@ -956,7 +956,10 @@
|
|||||||
try {
|
try {
|
||||||
const response = await fetch(`${apiBase}/api/client/tickets`, {
|
const response = await fetch(`${apiBase}/api/client/tickets`, {
|
||||||
method: "POST",
|
method: "POST",
|
||||||
headers: { "Content-Type": "application/json" },
|
headers: {
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
...clientIdentityHeaders(),
|
||||||
|
},
|
||||||
body: JSON.stringify({ ...payload, duplicate }),
|
body: JSON.stringify({ ...payload, duplicate }),
|
||||||
signal: controller.signal,
|
signal: controller.signal,
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -32,7 +32,11 @@ class PageController extends Controller {
|
|||||||
$baseUrl = $this->urlGenerator->getBaseUrl();
|
$baseUrl = $this->urlGenerator->getBaseUrl();
|
||||||
$serverHost = parse_url($baseUrl, PHP_URL_HOST) ?: 'localhost';
|
$serverHost = parse_url($baseUrl, PHP_URL_HOST) ?: 'localhost';
|
||||||
|
|
||||||
$supportApiBase = 'https://support.f7cloud.ru';
|
// База REST API поддержки (без завершающего слэша). Переопределение: occ config:app:set f7support support_api_base --value=https://...
|
||||||
|
$supportApiBase = trim($this->config->getAppValue('f7support', 'support_api_base', 'https://support.f7cloud.ru'));
|
||||||
|
if ($supportApiBase === '') {
|
||||||
|
$supportApiBase = 'https://support.f7cloud.ru';
|
||||||
|
}
|
||||||
$supportParts = parse_url($supportApiBase);
|
$supportParts = parse_url($supportApiBase);
|
||||||
$supportApiOrigin = ($supportParts['scheme'] ?? 'https') . '://' . ($supportParts['host'] ?? '');
|
$supportApiOrigin = ($supportParts['scheme'] ?? 'https') . '://' . ($supportParts['host'] ?? '');
|
||||||
|
|
||||||
|
|||||||
+1
-2
@@ -5,6 +5,5 @@
|
|||||||
data-server-address="<?php p($_['serverAddress']); ?>"
|
data-server-address="<?php p($_['serverAddress']); ?>"
|
||||||
data-support-api-base="<?php p($_['supportApiBase']); ?>"
|
data-support-api-base="<?php p($_['supportApiBase']); ?>"
|
||||||
data-support-ws-base="<?php p($_['supportWsBase'] ?? ''); ?>"
|
data-support-ws-base="<?php p($_['supportWsBase'] ?? ''); ?>"
|
||||||
data-client-read-receipts="<?php p($_['clientReadReceipts'] ?? '0'); ?>"
|
data-client-read-receipts="<?php p($_['clientReadReceipts'] ?? '0'); ?>">
|
||||||
data-messages-poll-ms="5000">
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user