InstaDraft / app.py
SuriRaja's picture
Update app.py
9c42352 verified
import gradio as gr
from truck_owner import truck_owner_ui
# from transporter import transporter_ui
# from customer_service import customer_service_ui
# from admin import admin_ui
import pandas as pd
file_path = 'data.xlsx'
users_df = pd.read_excel(file_path, sheet_name='Users')
def authenticate(username, password):
user = users_df[(users_df['Username'] == username) & (users_df['Password'] == password)]
if not user.empty:
return user.iloc[0]['Role']
return None
def main_ui():
with gr.Blocks() as main_block:
gr.Markdown("## Instacomm App Login")
username = gr.Textbox(label="Username")
password = gr.Textbox(label="Password", type="password")
login_btn = gr.Button("Login")
login_status = gr.Text()
def login(username, password):
role = authenticate(username, password)
if role:
if role == "Truck Owner":
return truck_owner_ui()
# elif role == "Transporter":
# return transporter_ui()
# elif role == "Customer Service":
# return customer_service_ui()
# elif role == "Admin":
# return admin_ui()
else:
return gr.Text(value="Invalid credentials")
login_btn.click(fn=login, inputs=[username, password], outputs=login_status)
main_block.launch()
if __name__ == "__main__":
main_ui()