fix: clean stable client input pattern

This commit is contained in:
andrey271192
2026-06-11 19:33:06 +03:00
parent eac33b3cf6
commit e215cedbb3
2 changed files with 2 additions and 1 deletions

View File

@@ -22,6 +22,7 @@ phobos-update beta # или: phobos-update dev
## stable ## stable
### v1.2.8 ### v1.2.8
- **fix:** поле имени клиента больше не даёт ошибку в консоли Chrome из-за HTML `pattern`.
- **fix:** fresh stable install теперь кладёт обязательный `lib-core.sh` рядом с `phobos-client.sh`, поэтому `/clients` не сыпется на `check_root/load_env/die/log_*: command not found`. - **fix:** fresh stable install теперь кладёт обязательный `lib-core.sh` рядом с `phobos-client.sh`, поэтому `/clients` не сыпется на `check_root/load_env/die/log_*: command not found`.
- **fix:** шаг `[6/9] PCA patches` больше не падает с `curl: (23) Failure writing output to destination`, если папки `repo/server/scripts` или `repo/client/templates` не были созданы upstream sparse clone. - **fix:** шаг `[6/9] PCA patches` больше не падает с `curl: (23) Failure writing output to destination`, если папки `repo/server/scripts` или `repo/client/templates` не были созданы upstream sparse clone.
- **fix:** установка `wg-obfuscator` на x86_64 больше не падает с `ERROR: obfuscator binary for x86_64 missing`. Если бинарника нет в Ground-Zerro, installer и secondary installer берут `linux-x64` из ClusterM releases. - **fix:** установка `wg-obfuscator` на x86_64 больше не падает с `ERROR: obfuscator binary for x86_64 missing`. Если бинарника нет в Ground-Zerro, installer и secondary installer берут `linux-x64` из ClusterM releases.

2
app.py
View File

@@ -1367,7 +1367,7 @@ def clients_page():
<h2>{tr("VPN-клиенты", "VPN Clients")}</h2> <h2>{tr("VPN-клиенты", "VPN Clients")}</h2>
<form method="post" class="form-row" style="margin-bottom:16px"> <form method="post" class="form-row" style="margin-bottom:16px">
<input type="hidden" name="action" value="add"> <input type="hidden" name="action" value="add">
<input type="text" name="name" placeholder="{tr('Имя нового клиента', 'New client name')}" pattern="[a-zA-Z0-9_-]+" required> <input type="text" name="name" placeholder="{tr('Имя нового клиента', 'New client name')}" pattern="[A-Za-z0-9_\\-]+" required>
<button class="btn btn-primary" type="submit">{tr("Добавить", "Add")}</button> <button class="btn btn-primary" type="submit">{tr("Добавить", "Add")}</button>
{hlp("Создать нового VPN-клиента (роутер/устройство). Имя — латиница, цифры, _ и -. После создания выдай команду установки на роутер.", "Create a new VPN client (router/device). Name: letters, digits, _ and -. After creation, run the install command on the router.")} {hlp("Создать нового VPN-клиента (роутер/устройство). Имя — латиница, цифры, _ и -. После создания выдай команду установки на роутер.", "Create a new VPN client (router/device). Name: letters, digits, _ and -. After creation, run the install command on the router.")}
</form> </form>