mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-07-17 18:16:08 +00:00
feat(clients): orphan cleanup + export/import via CodeMirror modals
Add three client-management actions to the Clients page More menu:
- Delete unattached clients: removes every client with no inbound
attachment, cascading its traffic rows, IP log, and external links
(POST /clients/delOrphans).
- Export clients: shows the {client, inboundIds} list in a read-only
CodeMirror viewer with copy/download (GET /clients/export returns the
array in the standard envelope).
- Import clients: pastes that JSON into an editable CodeMirror editor,
mirroring Import an Inbound (POST /clients/import takes a { data }
body). Attached clients go through the create-and-attach path; items
with no inboundIds are restored as bare records; existing emails are
never overwritten and are reported as skipped.
Document the new endpoints in api-docs and translate the new strings
into all supported languages.
This commit is contained in:
@@ -828,6 +828,12 @@
|
||||
"delDepleted": "Удалить исчерпанных",
|
||||
"delDepletedConfirmTitle": "Удалить исчерпанных клиентов?",
|
||||
"delDepletedConfirmContent": "Удаляются все клиенты, у которых исчерпана квота трафика или истёк срок. Это действие нельзя отменить.",
|
||||
"exportClients": "Экспортировать клиентов",
|
||||
"importClients": "Импортировать клиентов",
|
||||
"import": "Импорт",
|
||||
"delOrphans": "Удалить клиентов без входящего",
|
||||
"delOrphansConfirmTitle": "Удалить клиентов без входящего?",
|
||||
"delOrphansConfirmContent": "Удаляются все клиенты, не привязанные ни к одному входящему, вместе с их записями трафика. Это действие нельзя отменить.",
|
||||
"auth": "Авторизация",
|
||||
"hysteriaAuth": "Hysteria Auth",
|
||||
"uuid": "UUID",
|
||||
@@ -850,7 +856,10 @@
|
||||
"bulkCreatedMixed": "Создано: {ok}, не удалось: {failed}",
|
||||
"bulkAdjusted": "Изменено клиентов: {count}",
|
||||
"bulkAdjustedMixed": "Изменено: {ok}, пропущено: {skipped}",
|
||||
"delDepleted": "Удалено исчерпанных клиентов: {count}"
|
||||
"delDepleted": "Удалено исчерпанных клиентов: {count}",
|
||||
"delOrphans": "Удалено клиентов без входящего: {count}",
|
||||
"imported": "Импортировано клиентов: {count}",
|
||||
"importedMixed": "Импортировано: {ok}, пропущено: {failed}"
|
||||
}
|
||||
},
|
||||
"groups": {
|
||||
|
||||
Reference in New Issue
Block a user