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.")
        )