Spaces:
Running
Running
import gradio as gr | |
def login(profile_id, profile_type, visibility): | |
# Simulated login check | |
if profile_type.lower() == 'user' and profile_id == "123": # Assume "123" is a valid user ID | |
visibility.value = True # Update visibility state to True if login is successful | |
return "Login Successful" | |
else: | |
visibility.value = False # Keep the AI tab hidden if login fails | |
return "Login Failed" | |
def gradio_interface(): | |
with gr.Blocks() as app: | |
ai_tab_visibility = gr.State(False) # State to control the visibility of the AI Interaction tab | |
with gr.Tabs(): | |
login_tab = gr.TabItem("Login") | |
ai_tab = gr.TabItem("AI Interaction", visible=ai_tab_visibility) # Controlled by state | |
with login_tab: | |
profile_id_input = gr.Textbox(label="Enter your User ID") | |
profile_type_input = gr.Radio(choices=["User", "Ninja"], label="Select Profile Type") | |
login_result = gr.Textbox(label="Login Result", interactive=False) | |
login_button = gr.Button("Login") | |
login_button.click( | |
fn=login, | |
inputs=[profile_id_input, profile_type_input, ai_tab_visibility], | |
outputs=login_result | |
) | |
with ai_tab: | |
gr.Markdown("## AI Interaction Panel") | |
# Place your AI interaction components here | |
app.launch() | |
if __name__ == "__main__": | |
gradio_interface() |