feat(auth): enforce tamper-proof cloud saves and remove local export/import (fixes #4)
This commit is contained in:
1 parent
198d1dcf98
commit
9f905569a5
4 files changed
+40
-175
No files matched your search
+13
-14
@@ -610,12 +610,12 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Backup & Restore Buttons (Profile View) -->
|
||||
<div class="auth-backup-section" style="margin-top: 14px; padding: 10px; background: rgba(0, 0, 0, 0.25); border-radius: 8px; border: 1px dashed rgba(255, 255, 255, 0.15);">
|
||||
<div style="font-size: 12px; color: #b0bec5; text-align: center; margin-bottom: 8px;">💾 Резервная копия сохранений:</div>
|
||||
<div style="display: flex; gap: 8px; justify-content: center;">
|
||||
<button type="button" id="btn-export-save-profile" class="btn btn-secondary" style="flex: 1; font-size: 12px; padding: 7px 10px;" title="Скачать файл сохранения на устройство">💾 Экспорт в файл (JSON)</button>
|
||||
<button type="button" id="btn-import-save-profile" class="btn btn-secondary" style="flex: 1; font-size: 12px; padding: 7px 10px;" title="Загрузить сохранение из файла">📂 Импорт из файла</button>
|
||||
<div class="auth-cloud-status" style="margin-top: 14px; padding: 10px; background: rgba(76, 175, 80, 0.12); border-radius: 8px; border: 1px solid rgba(76, 175, 80, 0.35); text-align: center;">
|
||||
<div style="font-size: 13px; font-weight: 600; color: #a5d6a7; display: flex; align-items: center; justify-content: center; gap: 6px;">
|
||||
☁️ Защищенное облачное сохранение
|
||||
</div>
|
||||
<div style="font-size: 11px; color: #b0bec5; margin-top: 4px;">
|
||||
Весь игровой прогресс синхронизируется на сервере. Локальная модификация файлов отключена для честной игры.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -666,12 +666,12 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- Backup & Restore Buttons (Guest / Login View) -->
|
||||
<div class="auth-backup-section" style="margin-top: 6px; margin-bottom: 12px; padding: 10px; background: rgba(0, 0, 0, 0.25); border-radius: 8px; border: 1px dashed rgba(255, 255, 255, 0.15);">
|
||||
<div style="font-size: 12px; color: #b0bec5; text-align: center; margin-bottom: 8px;">💾 Локальные сохранения (без аккаунта):</div>
|
||||
<div style="display: flex; gap: 8px; justify-content: center;">
|
||||
<button type="button" id="btn-export-save" class="btn btn-secondary" style="flex: 1; font-size: 12px; padding: 7px 10px;" title="Скачать файл сохранения на устройство">💾 Экспорт в файл (JSON)</button>
|
||||
<button type="button" id="btn-import-save" class="btn btn-secondary" style="flex: 1; font-size: 12px; padding: 7px 10px;" title="Загрузить сохранение из файла">📂 Импорт из файла</button>
|
||||
<div class="auth-cloud-status" style="margin-top: 8px; margin-bottom: 12px; padding: 10px; background: rgba(0, 229, 255, 0.08); border-radius: 8px; border: 1px solid rgba(0, 229, 255, 0.25); text-align: center;">
|
||||
<div style="font-size: 12px; font-weight: 600; color: #80deea; display: flex; align-items: center; justify-content: center; gap: 6px;">
|
||||
☁️ Единый облачный профиль
|
||||
</div>
|
||||
<div style="font-size: 11px; color: #b0bec5; margin-top: 4px;">
|
||||
Сохранения привязаны к аккаунту и защищены от подделки.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -699,8 +699,7 @@
|
||||
<button id="btn-auth-close-reg" class="btn btn-secondary" style="font-size: 13px; padding: 6px 20px;">Закрыть</button>
|
||||
</div>
|
||||
|
||||
<!-- Hidden file input for importing saves -->
|
||||
<input type="file" id="input-import-save" accept=".json" style="display: none;">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in new issue
Block a user