openpharma / clinsight

ClinSight - An application for medical monitoring within clinical trials
https://openpharma.github.io/clinsight/
Other
3 stars 0 forks source link

`Start` tab enchancements #26

Open aclark02-arcus opened 5 months ago

aclark02-arcus commented 5 months ago

Three potential enhancements:

  1. The Start tab uses pagination for the DT table which is slightly cumbersome when navigating through all patients. As such, there are ways to allow DT to keep the browsing window the same size but perform an "endless scroll" that @jthompson-arcus discovered recently. I think this would be a good use case to use.

  2. Would it make sense to push all the patients who need review to the top of the list? I was reviewing recently, and noticed there were a lot of patients who didn't need review at the top, so I had to scroll down looking for bold patients.

  3. Would it make sense to just add a column to the DT table that contains how many forms each patient needs reviewed? That way, users could sort / filter on this variable and then you won't have open the modal to view this number.

Thoughts?

LDSamson commented 5 months ago

These are all good enhancements I think. I have some scrolling in the queries follow-up table implemented, is that what you had in mind?

https://github.com/openpharma/clinsight/blob/f29a720bd6a705241adf76843a4fc5195a51c7c0/R/mod_queries.R#L143

jthompson-arcus commented 5 months ago

A little different. Using the Scroller extension for DataTable, you can have a scroll where only the visible rows are rendered.

aclark02-arcus commented 1 month ago

Items 1 & 2 are complete, 3 is still outstanding.

Regarding number 2 above, even though we don't show number of SAEs in this table, do you think we could push patients w/ SAEs who need review to the top of the list?

LDSamson commented 3 weeks ago

3 can be achieved. Pushing patients with SAEs that need review to the top is a bit harder since this data is in a different table.

Maybe we can reuse some of the logic in mod_header_widgets for this