File size: 828 Bytes
8769d0e | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | import hashlib
from data.dataset_manager import load_hf_dataset
from config.settings import *
import gradio as gr
def hash_password(password: str) -> str:
return hashlib.sha256(password.encode()).hexdigest()
def admin_login(input_password):
if hash_password(input_password) == ADMIN_PASSWORD_HASH:
ds = load_hf_dataset()
df = ds.to_pandas()
# For download: write temp CSV
temp_csv = "annotations_export.csv"
df.to_csv(temp_csv, index=False)
return (
gr.update(visible=True),
df,
temp_csv,
gr.update(value="Admin authentication successful.")
)
else:
return (
gr.update(visible=False),
None,
None,
gr.update(value="Admin authentication failed.")
) |