OCEANAI / app /event_handlers /practical_task_sorted.py
DmitryRyumin's picture
Summary
6d7dc58
raw
history blame
No virus
3.57 kB
"""
File: practical_task_sorted.py
Author: Elena Ryumina and Dmitry Ryumin
Description: Event handler for the practical task sorted to the Gradio app.
License: MIT License
"""
import gradio as gr
from pathlib import Path
# Importing necessary components for the Gradio app
from app.video_metadata import video_metadata
from app.components import video_create_ui, textbox_create_ui
def event_handler_practical_task_sorted(
files, practical_task_sorted, evt_data: gr.SelectData
):
person_id = int(practical_task_sorted.iloc[evt_data.index[0]]["Person ID"]) - 1
if evt_data.index[0] == 0:
label = "Best"
else:
label = ""
label += " Person ID"
if Path(files[person_id]).name in video_metadata:
person_metadata_list = video_metadata[Path(files[person_id]).name]
person_metadata = (
gr.Column(visible=True),
gr.Row(visible=True),
gr.Row(visible=True),
gr.Image(visible=True),
textbox_create_ui(
person_metadata_list[0],
"text",
"First name",
None,
None,
1,
True,
False,
True,
False,
1,
False,
),
gr.Row(visible=True),
gr.Image(visible=True),
textbox_create_ui(
person_metadata_list[1],
"text",
"Last name",
None,
None,
1,
True,
False,
True,
False,
1,
False,
),
gr.Row(visible=True),
gr.Row(visible=True),
gr.Image(visible=True),
textbox_create_ui(
person_metadata_list[2],
"email",
"Email",
None,
None,
1,
True,
False,
True,
False,
1,
False,
),
gr.Row(visible=True),
gr.Image(visible=True),
textbox_create_ui(
person_metadata_list[3],
"text",
"Phone number",
None,
None,
1,
True,
False,
True,
False,
1,
False,
),
)
else:
person_metadata = (
gr.Column(visible=False),
gr.Row(visible=False),
gr.Row(visible=False),
gr.Image(visible=False),
textbox_create_ui(visible=False),
gr.Row(visible=False),
gr.Image(visible=False),
textbox_create_ui(visible=False),
gr.Row(visible=False),
gr.Row(visible=False),
gr.Image(visible=False),
textbox_create_ui(visible=False),
gr.Row(visible=False),
gr.Image(visible=False),
textbox_create_ui(visible=False),
)
existing_tuple = (
gr.Column(visible=True),
video_create_ui(
value=files[person_id],
file_name=Path(files[person_id]).name,
label=f"{label} - " + str(person_id + 1),
visible=True,
elem_classes="video-sorted-container",
),
)
return existing_tuple + person_metadata