Rename OBFUSCATOR product branding

This commit is contained in:
Repinoid
2026-10-21 17:30:34 +03:00
parent 4b0a9e5422
commit 4fb6c992b7
7 changed files with 12 additions and 12 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
DrHider — обфускация документов (двухпроходная, в памяти, без БД). Obfuscator — обфускация документов (двухпроходная, в памяти, без БД).
Проход 1: собрать все сущности из всех файлов → глобальный словарь замен. Проход 1: собрать все сущности из всех файлов → глобальный словарь замен.
Проход 2: применить замены → собрать ZIP с обфусцированными файлами + mapping.csv. Проход 2: применить замены → собрать ZIP с обфусцированными файлами + mapping.csv.
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
Константы и словари для DrHider. Константы и словари для Obfuscator.
Содержит: Содержит:
- ENTITY_PATTERNS — regex-паттерны для обнаружения сущностей - ENTITY_PATTERNS — regex-паттерны для обнаружения сущностей
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
LLM-клиент для DrHider. LLM-клиент для Obfuscator.
Используется в TwoPassObfuscator._scan_llm_ner() для обнаружения Используется в TwoPassObfuscator._scan_llm_ner() для обнаружения
имён, компаний, адресов и паспортных данных через LLM API. имён, компаний, адресов и паспортных данных через LLM API.
+1 -1
View File
@@ -1,5 +1,5 @@
""" """
DrHider — Managed Flask приложение на платформе Штурвал. Obfuscator — Managed Flask приложение на платформе Штурвал.
Приложение создаётся фабрикой create_app(). Приложение создаётся фабрикой create_app().
Штурвал запускает Flask самостоятельно (без Dockerfile/gunicorn). Штурвал запускает Flask самостоятельно (без Dockerfile/gunicorn).
+2 -2
View File
@@ -1,5 +1,5 @@
""" """
Blueprint: API DrHider. Blueprint: API Obfuscator.
Five endpoints: Five endpoints:
- POST /api/upload — upload one file -> {session_id} - POST /api/upload — upload one file -> {session_id}
@@ -345,7 +345,7 @@ def download(sid):
return jsonify({"ok": False, "error": "Not found"}), 404 return jsonify({"ok": False, "error": "Not found"}), 404
ts = (datetime.now() + timedelta(hours=3)).strftime("%Y-%m-%d_%H-%M-%S") ts = (datetime.now() + timedelta(hours=3)).strftime("%Y-%m-%d_%H-%M-%S")
return send_file(io.BytesIO(zip_data), mimetype="application/zip", return send_file(io.BytesIO(zip_data), mimetype="application/zip",
as_attachment=True, download_name=f"drhider_{ts}.zip") as_attachment=True, download_name=f"obfuscator_{ts}.zip")
@api_bp.route("/csv/<sid>", methods=["GET"]) @api_bp.route("/csv/<sid>", methods=["GET"])
+2 -2
View File
@@ -1,7 +1,7 @@
""" """
Blueprint: главная страница (GET /). Blueprint: главная страница (GET /).
Отдаёт HTML-интерфейс DrHider. Отдаёт HTML-интерфейс Obfuscator.
""" """
import os import os
@@ -22,7 +22,7 @@ main_bp = Blueprint("main", __name__)
@main_bp.route("/") @main_bp.route("/")
def index(): def index():
"""Главная страница — веб-интерфейс DrHider. """Главная страница — веб-интерфейс Obfuscator.
Передаёт в шаблон текущую версию приложения. Передаёт в шаблон текущую версию приложения.
""" """
+4 -4
View File
@@ -7,7 +7,7 @@
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"> <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
<meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="0"> <meta http-equiv="Expires" content="0">
<title>DrHider — обфускация документов</title> <title>Obfuscator — обфускация документов</title>
<link rel="icon" type="image/svg+xml" href="/static/favicon.svg"> <link rel="icon" type="image/svg+xml" href="/static/favicon.svg">
<style> <style>
:root { :root {
@@ -448,7 +448,7 @@
<body> <body>
<div class="topbar"> <div class="topbar">
<img src="/static/logo.svg" alt="Nubes"> <img src="/static/logo.svg" alt="Nubes">
<span class="title">DrHider</span> <span class="title">Obfuscator</span>
<span class="ver">v{{ version }}</span> <span class="ver">v{{ version }}</span>
<span class="help" onclick="document.getElementById('helpModal').style.display='flex'">HELP</span> <span class="help" onclick="document.getElementById('helpModal').style.display='flex'">HELP</span>
</div> </div>
@@ -877,7 +877,7 @@
.then(r => { .then(r => {
const disp = r.headers.get('Content-Disposition'); const disp = r.headers.get('Content-Disposition');
const m = disp && disp.match(/filename="?(.+?)"?$/); const m = disp && disp.match(/filename="?(.+?)"?$/);
return Promise.all([r.blob(), m ? m[1] : 'drhider.zip']); return Promise.all([r.blob(), m ? m[1] : 'obfuscator.zip']);
}) })
.then(([blob, fname]) => { .then(([blob, fname]) => {
const a = document.createElement('a'); const a = document.createElement('a');
@@ -924,7 +924,7 @@
<div <div
style="background:var(--card);border-radius:12px;padding:24px;max-width:420px;box-shadow:0 4px 24px rgba(0,0,0,.15)" style="background:var(--card);border-radius:12px;padding:24px;max-width:420px;box-shadow:0 4px 24px rgba(0,0,0,.15)"
onclick="event.stopPropagation()"> onclick="event.stopPropagation()">
<h3 style="margin-bottom:12px">DrHider — обфускация документов</h3> <h3 style="margin-bottom:12px">Obfuscator — обфускация документов</h3>
<p style="font-size:13px;color:var(--muted);line-height:1.6"> <p style="font-size:13px;color:var(--muted);line-height:1.6">
Загрузите документы (.docx, .doc, .pdf, .txt, .md, .zip) — получите ZIP-архив с обезличенными копиями. Загрузите документы (.docx, .doc, .pdf, .txt, .md, .zip) — получите ZIP-архив с обезличенными копиями.
Персональные данные, реквизиты компаний, телефоны, email и другие приватные сведения заменяются на обезличенные Персональные данные, реквизиты компаний, телефоны, email и другие приватные сведения заменяются на обезличенные