Userlog / app.py
Movajao's picture
Update app.py
ef43cdb verified
Raw
History Blame Contribute Delete
1.35 kB
import gradio as gr
from datetime import datetime
logs = []
def login(name):
if not name:
name = "Unknown"
now = datetime.now().strftime("%H:%M:%S")
message = f"[{now}] {name} has logged in."
print(message)
logs.append(message)
return "\n".join(logs)
def refresh():
if logs:
return "\n".join(logs)
return "=== Waiting for users... ==="
css = """
body{
background:#e8ecf2;
}
.gradio-container{
background:#e8ecf2 !important;
}
button{
border-radius:15px !important;
}
textarea{
background:#111111 !important;
color:#00ff66 !important;
font-family:Consolas, monospace !important;
font-size:15px !important;
}
"""
with gr.Blocks() as demo:
gr.Markdown("# 🖥️ User Login Monitor")
with gr.Row():
username = gr.Textbox(
label="User",
placeholder="Jason"
)
login_btn = gr.Button("Login")
terminal = gr.Textbox(
label="Terminal",
value="=== SERVER STARTED ===",
lines=18,
interactive=False
)
refresh_btn = gr.Button("Refresh Logs")
login_btn.click(
fn=login,
inputs=username,
outputs=terminal,
api_name="login"
)
refresh_btn.click(
fn=refresh,
outputs=terminal
)
demo.launch(css=css)