Changes between Version 6 and Version 7 of Ticket #801, comment 169
- Timestamp:
- Jan 11, 2016, 3:06:43 PM (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #801, comment 169
v6 v7 13 13 2. Javascript file `inspect_start_plate.js` in `resources/libprep/` updated:[[BR]]a. Function `initPage()` updated by adding event handlers for clicks on new lab protocol links coupled to new function `viewProtocol()`. Also removal of unused code.[[BR]]b. Function `plateInfoLoaded(response)` updated by setting plate name to name in response data.[[BR]]c. Function `downloadLibPrepFile()` updated by obtaining bioplate data for submit info by calling new function `fetchBioplateData()`.[[BR]]d. New function `fetchBioplateData()` added. It contains code previously in function `downloadLibPrepFile()`, in order to make it available to other functions.[[BR]]e. Function `createProtocol()` updated by obtaining submit info for bioplate by calling new function `fetchSubmitInfo()`. Call of function `JSON.stringify(submitInfo)` to obtain string to store in hidden form field exchanged for call of function `JSON.stringify(submitInfo, circular_reference_remover)`, where second argument is new function `circular_reference_remover(key, value)`, that removes any circular references in input JSON object.[[BR]]f. New function `fetchSubmitInfo()` added. It contains code previously in function `createProtocol()`, in order to make it available to other functions.[[BR]]g. New function `viewProtocol(event)` added. It calls new function `fetchBioplateData()` to obtain bioplate data for submit info, and new function `fetchSubmitInfo()` to obtain rest of the submit info. Function `JSON.stringify(submitInfo, circular_reference_remover)` is called to obtain string to store in hidden form field, where second argument is new function `circular_reference_remover(key, value)`, that removes any circular references in input JSON object. Data is stored in hidden fields for form with name "`meludi2`", after which `frm.submit()` is called to change action to JSP file `libprep_plate_protocol2.jsp`.[[BR]]h. New function `circular_reference_remover(key, value)` added. It removes any circular references in input JSON object, relying on global JSONArray `circular_reference_cache`, that should be set to `null`, after each call to `JSON.stringify(JSONJObject, circular_reference_remover)`. 14 14 3. New JSP file `libprep_plate_protocol2.jsp` in `resources/libprep/` added. Start plate name, description, library preparation kit name, pool schema, and JSONArray with data for DNA aliquots in wells are retrieved from request parameters, after which a list or plate view HTML layout is created for a plate with 8x12 wells. The JSP file is coupled to new javascript file `libprep_plate_protocol.js` in `resources/libprep/`. 15 4. New javascript file `libprep_plate_protocol.js` in `resources/libprep/` added.[[BR]]a. Function `initializeProtocol(submitInfoJsonStr)` obtains data for the DNA items on the plate and then calls either function `viewAsList(list)` or `viewAsPlate(list, schema)`, depending on the value of attribute `view`.[[BR]]b. Function `viewAsList(list)` calls function `libListEntry(lib)` for each aliquot in the input item list, in order to create a list of data for the wells on the start plate.[[BR]]c. Function `viewAsPlate(list, schema)` sets plate extracts for wells for each aliquot in the input item list, after which `Plate.paint(Plate.getWells())` is called to draw a plate view of the start plate.[[BR]]d. Function `painter.getClassNameForWell(well, schema)` sets the background for a well to `green` for FPA aliquots, and `blue` for `FPB` aliquots.[[BR]]e. Function `painter.getWellText(well, schema)` calls function `painter.fetchPlateViewAliquotName(name)` to obtain a compressed aliquot name to display for a well, prints the DNA and water dilution volumes, with optional highlight for low DNA volume, and prints Illumina index 1 and 2 primers for each well.[[BR }}f. Function `painter.fetchPlateViewAliquotName(name)` returns a compressed aliquot name by concatenating the parts before first dot and after last dot and convert to uppercase.15 4. New javascript file `libprep_plate_protocol.js` in `resources/libprep/` added.[[BR]]a. Function `initializeProtocol(submitInfoJsonStr)` obtains data for the DNA items on the plate and then calls either function `viewAsList(list)` or `viewAsPlate(list, schema)`, depending on the value of attribute `view`.[[BR]]b. Function `viewAsList(list)` calls function `libListEntry(lib)` for each aliquot in the input item list, in order to create a list of data for the wells on the start plate.[[BR]]c. Function `viewAsPlate(list, schema)` sets plate extracts for wells for each aliquot in the input item list, after which `Plate.paint(Plate.getWells())` is called to draw a plate view of the start plate.[[BR]]d. Function `painter.getClassNameForWell(well, schema)` sets the background for a well to `green` for FPA aliquots, and `blue` for `FPB` aliquots.[[BR]]e. Function `painter.getWellText(well, schema)` calls function `painter.fetchPlateViewAliquotName(name)` to obtain a compressed aliquot name to display for a well, prints the DNA and water dilution volumes, with optional highlight for low DNA volume, and prints Illumina index 1 and 2 primers for each well.[[BR]]f. Function `painter.fetchPlateViewAliquotName(name)` returns a compressed aliquot name by concatenating the parts before first dot and after last dot and convert to uppercase.