Skip to content

Commit bcf701a

Browse files
committed
wspólne stringi
1 parent 19031b3 commit bcf701a

File tree

6 files changed

+45
-21
lines changed

6 files changed

+45
-21
lines changed

core/branding.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
APP_NAME = "Janusz Danych RODO"
2+
APP_DESCRIPTION = "Anonimizator Umów Notarialnych"
3+
VERSION = "0.1.0"
4+
APP_TITLE = f"{APP_NAME}{APP_DESCRIPTION} v{VERSION}"
5+
6+
# UI Texts
7+
L_FILE_UPLOAD = "Wgraj plik (.txt, .md)"
8+
L_PROFILE = "Profil Anonimizacji"
9+
L_ANONYMIZE_BTN = "Anonimizuj"
10+
L_OUTPUT_TEXT = "Tekst zanonimizowany"
11+
L_SUBSTITUTION_MAP = "Słownik mapowań"
12+
L_SAVE_MAP_BTN = "Zapisz słownik mapowań"
13+
L_SAVE_TEXT_BTN = "Zapisz tekst anonimizowany"
14+
L_DOWNLOAD_FILES = "Pobierz pliki"

interfaces/cli.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@
33
from core.anonymizer import anonymize_text
44
from .file_io import read_file, write_file, save_map_dict
55
from utils.log import setup_logger
6+
from core.branding import APP_DESCRIPTION, VERSION
67

78
def main():
8-
parser = argparse.ArgumentParser(description="Anonymize documents from the command line.")
9+
parser = argparse.ArgumentParser(description=APP_DESCRIPTION)
10+
parser.add_argument('-v', '--version', action='version', version=f'%(prog)s {VERSION}')
911
parser.add_argument("-i", "--input", required=True, help="Path to the source file.")
1012
parser.add_argument("-o", "--output", help="Path to the output anonymized file. Defaults to <input>.anon.<ext>")
1113
parser.add_argument("--profile", default="pseudonymized", choices=["pseudonymized", "gdpr", "llm-safe"],

interfaces/gradio_ui.py

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@
44
import tempfile
55
import json
66
from core.profile_config import PROFILES
7+
from core.branding import (
8+
APP_TITLE, L_FILE_UPLOAD, L_PROFILE, L_ANONYMIZE_BTN, L_OUTPUT_TEXT,
9+
L_SUBSTITUTION_MAP, L_DOWNLOAD_FILES
10+
)
711

812
# Wyłącz analytics
913
os.environ['GRADIO_ANALYTICS_ENABLED'] = 'False'
@@ -67,40 +71,40 @@ def create_ui():
6771
theme=gr.themes.Soft()
6872
) as demo:
6973

70-
gr.Markdown("# Janusz Danych Rodo - Anonimizator Umów Notarialnych")
74+
gr.Markdown(f"# {APP_TITLE}")
7175

7276
# Wiersz 1: Wgranie pliku, profil, przycisk
7377
with gr.Row():
7478
file_input = gr.File(
75-
label="Wgraj plik (.txt, .md)",
79+
label=L_FILE_UPLOAD,
7680
type="binary",
7781
file_count="single"
7882
)
7983
profile_dropdown = gr.Dropdown(
8084
choices=list(PROFILES.keys()),
8185
value="pseudonymized",
82-
label="Profil Anonimizacji"
86+
label=L_PROFILE
8387
)
84-
submit_btn = gr.Button("Anonimizuj")
88+
submit_btn = gr.Button(L_ANONYMIZE_BTN)
8589

8690
# Wiersz 2: Tekst zanonimizowany
8791
with gr.Row():
8892
output_text = gr.Textbox(
89-
label="Tekst zanonimizowany",
93+
label=L_OUTPUT_TEXT,
9094
lines=15,
9195
interactive=True
9296
)
9397

9498
# Wiersz 3: Słownik mapowań i pobieranie
9599
with gr.Row():
96100
with gr.Column():
97-
output_map = gr.JSON(label="Słownik mapowań")
101+
output_map = gr.JSON(label=L_SUBSTITUTION_MAP)
98102

99103
with gr.Column():
100-
gr.Markdown("### Pobierz pliki")
104+
gr.Markdown(f"### {L_DOWNLOAD_FILES}")
101105
with gr.Group():
102-
download_map_btn = gr.File(label="Słownik mapowań")
103-
download_text_btn = gr.File(label="Tekst anonimizowany")
106+
download_map_btn = gr.File(label=L_SUBSTITUTION_MAP)
107+
download_text_btn = gr.File(label=L_OUTPUT_TEXT)
104108

105109
submit_btn.click(
106110
fn=AnonymizerInterface.process_file,

interfaces/pyside6_ui.py

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,50 +8,54 @@
88

99
from core.anonymizer import anonymize_text
1010
from core.profile_config import PROFILES
11+
from core.branding import (
12+
APP_TITLE, L_FILE_UPLOAD, L_PROFILE, L_ANONYMIZE_BTN, L_OUTPUT_TEXT,
13+
L_SUBSTITUTION_MAP, L_SAVE_MAP_BTN, L_SAVE_TEXT_BTN
14+
)
1115

1216

1317
class AnonymizerGUI(QWidget):
1418
def __init__(self):
1519
super().__init__()
16-
self.setWindowTitle("Janusz Danych RODO – Anonimizator Umów Notarialnych")
20+
self.setWindowTitle(APP_TITLE)
1721
self.setMinimumWidth(800)
1822

1923
layout = QVBoxLayout()
2024

2125
# Wybór pliku
22-
self.load_button = QPushButton("Wgraj plik (.txt, .md)")
26+
self.load_button = QPushButton(L_FILE_UPLOAD)
2327
self.load_button.clicked.connect(self.load_file)
2428
layout.addWidget(self.load_button)
2529

2630
# Profil anonimizacji
2731
self.profile_dropdown = QComboBox()
2832
self.profile_dropdown.addItems(PROFILES.keys())
29-
layout.addWidget(QLabel("Profil Anonimizacji"))
33+
layout.addWidget(QLabel(L_PROFILE))
3034
layout.addWidget(self.profile_dropdown)
3135

3236
# Przycisk anonimizacji
33-
self.anon_button = QPushButton("Anonimizuj")
37+
self.anon_button = QPushButton(L_ANONYMIZE_BTN)
3438
self.anon_button.clicked.connect(self.run_anonymization)
3539
layout.addWidget(self.anon_button)
3640

3741
# Wyjście: zanonimizowany tekst
3842
self.output_text = QTextEdit()
3943
self.output_text.setReadOnly(False)
40-
layout.addWidget(QLabel("Tekst zanonimizowany"))
44+
layout.addWidget(QLabel(L_OUTPUT_TEXT))
4145
layout.addWidget(self.output_text)
4246

4347
# Wyjście: słownik mapowań
4448
self.output_map = QTextEdit()
4549
self.output_map.setReadOnly(True)
46-
layout.addWidget(QLabel("Słownik mapowań"))
50+
layout.addWidget(QLabel(L_SUBSTITUTION_MAP))
4751
layout.addWidget(self.output_map)
4852

4953
# Przyciski pobierania
50-
self.save_map_btn = QPushButton("Zapisz słownik mapowań")
54+
self.save_map_btn = QPushButton(L_SAVE_MAP_BTN)
5155
self.save_map_btn.clicked.connect(self.save_map)
5256
layout.addWidget(self.save_map_btn)
5357

54-
self.save_text_btn = QPushButton("Zapisz tekst anonimizowany")
58+
self.save_text_btn = QPushButton(L_SAVE_TEXT_BTN)
5559
self.save_text_btn.clicked.connect(self.save_text)
5660
layout.addWidget(self.save_text_btn)
5761

readme.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
[Pełna specyfikacja projektu (BRD)](readme-BRD.md)
1+
[Pełna specyfikacja projektu (BRD)](resources/readme-BRD.md)
22

3-
# Janusz Danych Rodo - Wersja 0.3
3+
# Janusz Danych Rodo
44

55
Proste narzędzie do anonimizacji i pseudonimizacji dokumentów, stworzone z myślą o ochronie danych wrażliwych w polskich umowach i pismach urzędowych.
66

@@ -66,7 +66,7 @@ python3 janusz-pyside.py
6666

6767
### 3. Interfejs Webowy (Gradio)
6868

69-
Umożliwia pracę przez przeglądarkę internetową, idealny do demonstracji i zdalnego dostępu.
69+
Umożliwia pracę przez przeglądarkę internetową, idealny do demonstracji
7070

7171
**Uruchomienie:**
7272
```bash
File renamed without changes.

0 commit comments

Comments
 (0)