Princeton-LSI-ResearchComputing / tracebase

Mouse Metabolite Tracing Data Repository for the Rabinowitz Lab
MIT License
4 stars 1 forks source link

Add fields to specify a researcher, instrument, protocol and date #1097

Closed hepcat72 closed 1 month ago

hepcat72 commented 3 months ago

FEATURE REQUEST

Inspiration

None provided

Description

Add fields to specify a researcher, instrument, protocol and possibly date. Perhaps make the form duplicate the form to associate each file with its sequence metadata

Alternatives

None

Dependencies

None

Comment

None


ISSUE OWNER SECTION

Assumptions

None

Limitations

  1. This will not implement the processing of the new form fields (except to process the individual file fields as opposed to the multi-file picker). This will be handled in a yet-to-be-defined issue that autofills the Sequences and Peak Annotation Files sheets.

Affected Components

Requirements

DESIGN

Interface Change description

New form entries will exist for each file: researcher, protocol, instrument, and date.

There will be +/- buttons.

Instead of a multi-file picker on the submission start page, forms for individual files (including the sequence details) will be replicated in a manner similar to the advanced search, only with the ability to drag and drop a group of files to replicate the forms. Existing sequence selections in the last form (empty or populated) will be default-filled into each new form.

There will exist a drop-area to add files (and replicate forms).

Optionally, I will add copy, paste, and copy-and-paste-all (copy-and-paste-empties - or perhaps change behavior based on depression of a modifier key) buttons at the end of each form to copy and paste the sequence details between forms.

Code Change Description

I will use the drop-area code that was added and then removed for an early version of the submission page for mzXML files. I think it still exists in a branch. It will need to be edited to replicate forms.

Form replication will happen in a similar manner to the advanced search page (using the same multi-form code), only without the hierarchical nesting.

I may need to add a javascript file or css file for some of the requirements.

The DataSubmissionValidationForm will get new fields (which is straightforward).

The template will get a hidden div with the skeleton form.

Replicating forms will have to grab the values of the form whose "+" button was clicked and fill in values for the fields.

The javascript code that processes dropped files will have to copy the values of the last form (populated or not) and paste it into every added form. I might use a user-copied form for the dropped files if I implement the copy/paste buttons.

Tests

A test for each requirements.

hepcat72 commented 1 month ago

This was changed to blocking because #1199 relies on it and it is blocking.

hepcat72 commented 1 month ago

Looks like auto-complete can be done using this strategy.

hepcat72 commented 1 month ago

Done. (Some items split into other issues.)