Kikulika commited on
Commit
9650a2b
·
verified ·
1 Parent(s): 920558b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -25
app.py CHANGED
@@ -613,7 +613,8 @@ def open_task_details_page(task_id):
613
  st.session_state.selected_task_id = task_id
614
 
615
  # Use query parameters to navigate to the details page
616
- st.experimental_set_query_params(view='task_details', task_id=task_id)
 
617
 
618
  # Rerun to reload the page with new query params
619
  st.rerun()
@@ -642,9 +643,8 @@ else:
642
  # Load assignees
643
  assignee_list = load_assignees()
644
 
645
- query_params = st.experimental_get_query_params()
646
- view_mode = query_params.get('view', ['main'])[0]
647
- selected_task_id = query_params.get('task_id', [None])[0]
648
 
649
  if view_mode == 'task_details' and selected_task_id:
650
  # Task details page
@@ -656,8 +656,9 @@ if view_mode == 'task_details' and selected_task_id:
656
 
657
  # Back button
658
  if st.button("← Back to Board"):
659
- # Clear query params and return to main board
660
- st.experimental_set_query_params()
 
661
  st.rerun()
662
 
663
  # Display task details in a full page
@@ -699,21 +700,24 @@ if view_mode == 'task_details' and selected_task_id:
699
  update_task(task_idx, 'Status', new_status)
700
  st.success(f"Updated task status to {new_status}")
701
  st.rerun()
702
-
703
  with col2:
704
  if st.button("Delete Task"):
705
  if delete_task(selected_task_id):
706
- st.success(f"Task {selected_task_id} deleted!")
707
- # Return to main board
708
- st.experimental_set_query_params()
709
- st.rerun()
710
- else:
711
- st.error(f"Failed to delete task {selected_task_id}")
 
712
  else:
713
  st.error(f"Task {selected_task_id} not found")
714
- # Return to main board
715
- st.experimental_set_query_params()
 
716
  st.rerun()
 
717
  else:
718
  # Display storage status notification if using memory storage
719
  if st.session_state.using_memory_storage:
@@ -905,17 +909,19 @@ else:
905
 
906
  # Create the card HTML with inline status dropdown
907
  card_html = f"""
908
- <div class="task-card" data-task-id="{task_id}" onclick="openTaskDetails('{task_id}');">
909
- <div class="card-header {status_class}">
910
- <span class="task-id">{task_id}</span>
911
- </div>
912
- <div class="task-title">{task['Title']}</div>
913
- <div class="task-assignee">{task['Assignee']}</div>
914
- <div class="task-dates">
915
- <span class="date-display">Start: {date_started_str}</span>
916
- <span class="date-display">Finish: {date_to_finish_str}</span>
 
 
917
  </div>
918
- </div>
919
  """
920
 
921
  # Render the card
 
613
  st.session_state.selected_task_id = task_id
614
 
615
  # Use query parameters to navigate to the details page
616
+ st.query_params.view = 'task_details'
617
+ st.query_params.task_id = task_id
618
 
619
  # Rerun to reload the page with new query params
620
  st.rerun()
 
643
  # Load assignees
644
  assignee_list = load_assignees()
645
 
646
+ view_mode = st.query_params.get('view', 'main')
647
+ selected_task_id = st.query_params.get('task_id', None)
 
648
 
649
  if view_mode == 'task_details' and selected_task_id:
650
  # Task details page
 
656
 
657
  # Back button
658
  if st.button("← Back to Board"):
659
+ for key in list(st.query_params.keys()):
660
+ del st.query_params[key]
661
+
662
  st.rerun()
663
 
664
  # Display task details in a full page
 
700
  update_task(task_idx, 'Status', new_status)
701
  st.success(f"Updated task status to {new_status}")
702
  st.rerun()
703
+
704
  with col2:
705
  if st.button("Delete Task"):
706
  if delete_task(selected_task_id):
707
+ st.success(f"Task {selected_task_id} deleted!")
708
+ # Return to main board - use new API
709
+ for key in list(st.query_params.keys()):
710
+ del st.query_params[key]
711
+ st.rerun()
712
+ else:
713
+ st.error(f"Failed to delete task {selected_task_id}")
714
  else:
715
  st.error(f"Task {selected_task_id} not found")
716
+ # Return to main board - use new API
717
+ for key in list(st.query_params.keys()):
718
+ del st.query_params[key]
719
  st.rerun()
720
+
721
  else:
722
  # Display storage status notification if using memory storage
723
  if st.session_state.using_memory_storage:
 
909
 
910
  # Create the card HTML with inline status dropdown
911
  card_html = f"""
912
+ <a href="?view=task_details&task_id={task_id}" style="text-decoration:none; color:inherit;">
913
+ <div class="task-card" data-task-id="{task_id}">
914
+ <div class="card-header {status_class}">
915
+ <span class="task-id">{task_id}</span>
916
+ </div>
917
+ <div class="task-title">{task['Title']}</div>
918
+ <div class="task-assignee">{task['Assignee']}</div>
919
+ <div class="task-dates">
920
+ <span class="date-display">Start: {date_started_str}</span>
921
+ <span class="date-display">Finish: {date_to_finish_str}</span>
922
+ </div>
923
  </div>
924
+ </a>
925
  """
926
 
927
  # Render the card