*************************** Sample Receiving Changelog *****************************

Sample Receiving Changelog per year:

2019 / 2020 / 2021 / 2022

Receiving Addon v1.0

- CHANGED: Made Workflow addon detection work on windows, and not only Linux

 - CHANGE: Change plate save method to user ajax (HTTPS CURL problem)

 - CHANGE: Save custom fields mapping by project instead of module

 - BUG: Fixed an SQL error on addon installation

 - BUG: Fixed bug box save

 - BUG: Fixed bug plate edition save
 - BUG: Fixed bug plate opening after filter

 - IMPROVEMENT: Double scan as option (M4399)
 - IMPROVEMENT: Finish Package and Finish Plate buttons placed at different sides (M4309)
 - IMPROVEMENT: In New package form, leave the field Project name EMPTY (M4308)

 - IMPROVEMENT: New column LOGS to use the comment field for user comment only (M4298)
 - BUG: Fix plate NO LSM: new unique_code was not saved (M4385) & styles V2
 - IMPROVEMENT: Recover the package ID and the arrival date in sample record (M4393)
 - IMPROVEMENT: When a plate is saved, stay on this plate view and not return on all plates list (M4386)

 - CHANGE: Made a new mode to plate existing samples with new setup options (M4406)
 - CHANGE: Allow the mapping of default parameter from LSM (M4395)
 - CHANGE: LSM token in setup for remote instances (M4455)
 - CHANGE: Need to check the project code from LSM (M4388)

 - CHANGE: Check if project code has been returned from LSM API to prevent an error
 - CHANGE: Check if consent has been configured on LSM, if not set consent = no by default, to create pending samples

 - CHANGE: Update LSM batch
 - CHANGE: Can now chose naming option for box/sample

 - CHANGE: Cannot close a package having pending samples
 - BUG: Fixed a bug on QC passed, plate comment was replaced.
 - CHANGE: Added help sliders in setup
 - CHANGE: Use avatar everywhere a user name is displayed

 - CHANGE: Added checks on CSV load after some barcodes have been already plated by scan
 - CHANGE: Plate scanning popin now allows box barcode (PLTxx or xx/BX), box id, box name
 - CHANGE: Save new plate unsaved positions in sessionStorage to recover on new plate reload 
 - BUG: Fixed Gravatar ajax bug 
 - BUG: Fixed setup LSM mapping removed on update
 - CHANGE: Ajax loader on CSV loading and plate saving to prevent double click
 - CHANGE: Default volume in setup, then in plate, then specific by position
 - CHANGE: Generate random barcode & print, & fixed a bug on volume

 - CHANGE: Plate list: choose a package with a selectbox
 - CHANGE: Plate list: list packages in table

 - CHANGE: Added an option to enter free text as box name
 - CHANGE: Locked cells styles
 - CHANGE: Added option to skip QC & option to update LSM batch on skip QC
 - CHANGE: If license type is empty, type is LITE
 - CHANGE: Renamed boxes status QC passed and Finished
 - CHANGE: Changed LSM API call: samplename replace with samplesearch (for name & S[id])
 - CHANGE: Check LSM sample with less restriction (checked an existing parameter in sample)
 - CHANGE: Choice list of multiple samples from LSM styles
 - CHANGE: Added box name pattern y_n

 - CHANGE: Pooling - v2.206
 - CHANGE: Moved barcode generation button
 - BUG: Fixed bug on sample name during box edition
 - CHANGE: Package samples screen: left sample list scroll
 - CHANGE: Box name check before plate creation & regeneration/edition management (patterns & free text)
 - CHANGE: Package sample: inversed samples list

 - CHANGE: Package sample: print barcode label in a popin instead of new tab & green icon after click
 - CHANGE: Allow LSM samples from another projects (configured in setup)
 - CHANGE: Package samples screen: group plate management buttons, move pooling switch on the left of the menu
 - CHANGE: Package samples screen: single barcode printing with freetext fixed 
 - CHANGE: Setup: can only create configuration for non-archived projects
 - CHANGE: Setup & plating: LSM projects must be checked to be restricted
 - CHANGE: Setup: projects can now be archived / unarchived - v2.207
 - CHANGE: Direct batch on finish is dissociated with skip QC step
 - CHANGE: Button to print all samples barcodes from plating or box listing
 - CHANGE: Fixed a potential PHP warning
 - CHANGE: After QC validation, return on box listing filtered on waiting for QC 

 - CHANGE: Package sample: barcode with double quote now throws an error
 - CHANGE: Package sample: truncate too long barcodes & improved error catching on save
 - CHANGE: Can now remove pending samples
 - CHANGE: Consent parameter name / values are now all case insensitive
 - CHANGE: Fixed a bug on last setup projects checkboxes - v2.3

 - CHANGE: Test LSM connection in setup
 - CHANGE: Can now scan a limited number of replicates - v2.31
 - CHANGE: Option to update job acceptance status - v2.32  
 - CHANGE: Added LSM case data - v2.33

 - CHANGE: LSM case data now stays 30sec instead of 3sec 
 - CHANGE: Added an option update LSM sample status or not - v2.34
 - CHANGE: Improved license decryption
 - CHANGE: Tests on curl with option to disable certificate verfication
 - CHANGE: Fixed license version in lic_ws
 - BUG: plating mode by record name

 - CHANGE: Sample type for Samples module
 - CHANGE: Display used packaged by box in all plates UI
 - CHANGE: Trace date/user of all status & fix date update with mysql now() - v2.36

 - CHANGE: Added an option to add samples in a secondary storage - v2.37
 - BUG: Fixed box name generation bug on pattern 5

 - CHANGE: Added the "copy activation key to clipboard" feature

 - BUG: Hide Skip QC step from setup when lite mode
 - BUG: Fixed a SQL bug on lite mode
 - CHANGE: Added an option to allow/forbid csv/rack loading - v2.38
 - CHANGE: Replaced php date function with mysql date function
 - CHANGE: oBox object is now saved by project

 - CHANGE: Changed all boxes ui to add filters - v2.39
 - CHANGE: Changed all packages ui to add filters - v2.40
 - BUG: Fixed a bug on license check (host condition)
 - CHANGE: On home, pre-select project if there is just 1 project configured
 - CHANGE: Can now continue with a new plate after having finished a plate
 - CHANGE: Changed unfinished packages ui to add filters
 - CHANGE: Changed pending samples ui to add filters
 - BUG: Pending samples location edition popin button styles & translations
 - CHANGE: Added project to multiple sample
 - CHANGE: Package samples: warning message on page unload without having save
 - CHANGE: Change label in setup
 - CHANGE: Package samples: changed close package menu entry to distinguish from finish plate

 - CHANGE: Changed all tables filter selectboxes to show labels instead
 - CHANGE: Removed duplicate function with LC generaterandomstring - v2.41
 - CHANGE: Multiple changes on all boxes actions - v2.42
 - BUG: Package samples save: bug sql with commas with some conditions
 - ADDED: PDF label printing

 - CHANGE: Added title on every actions in tables
 - CHANGE: Package samples: Print UI in fancy
 - CHANGE: Give assay id on batch update


 - CHANGE: Direct batch on plate finish now working with secondary storage
 - CHANGE: Merge plates to 384 and auto update LSM batch - v2.43

 - CHANGE: All lists can now be exported in CSV format - v2.44
 - CHANGE: All external tools used in lists are now open in a fancy
 - CHANGE: On LSM status update, open a popin to retry until LSM response is 200 - v2.45 

 - CHANGE: On plate save: new popin to choose save option - v2.46
 - CHANGE: Changed texts on popin to choose save option
 - BUG: Fixed large login popin

 - BUG: Display bugs after having started workflow
 - CHANGE: Package samples: CSV import now accepts coords like A1 AND A01 - v2.47
 - CHANGE: New LSM option to auto start batch after having created it - v2.48 
 - CHANGE: Merge 384 now creates a special receiving box entity - v2.49

 - CHANGE: New option to update LSM shipment status with plating date or package arrival date - v2.50
 - CHANGE: Button on home to close opened packages since 1 day/week/month 
 - CHANGE: All plates: replaced workflow & 384 buttons with icons 

 - CHANGE: Refactored all finish actions with skip qc and batch action
 - CHANGE: Added some charts on all plates screen
 - BUG: Don't show archived projects on package creation selectbox
 - CHANGE: Arrival date is now a datetime with a datepicker - v2.51

 - CHANGE: Lists: Remove reset button text to keep icon only
 - CHANGE: Plating: Can now clear a position (remove a sample from a cell) - v2.52
 - CHANGE: Plating: Redirections on all plates list now pre-select appropriate status
 - CHANGE: Now using LC configured timezone - v2.53
 - CHANGE: Lists: Display all dates with LC configured date format
 - CHANGE: Plating: Now managing html entities in case records - v2.54
 - CHANGE: Lists: Full pagination system changed for sliding window pagination - v.2.55
 - CHANGE: Lists: Pagination first & last, and loader on filter

 - CHANGE: Added an API with begin_time/end_time parameters returning samples/boxes data having change in this interval - v2.56
 - BUG: LSM update batch icon not working with 384 plates
 - CHANGE: Added an API with begin_time/end_time parameters returning packages/boxes data having change in this interval - v2.57
 - CHANGE: Lists: action icons grouped into a dropdown

 - CHANGE: All plates: show a warning popin when modifying a non-filling plate
 - BUG: Plating: Fixed bug on sample naming, when saving in a not full plate

 - BUG: Plating: Managed barcodes with special characters
 - CHANGE: Plating: Raise an error if job status is not requested/pending/started

 - BUG: Plating: Fixed scroll top on scan on Firefox 
 - CHANGE: Plating: Filter locations with prefered modules
 - CHANGE: QC: Can now save box data & save box data + direct validation - v2.58
 - BUG/CHANGE: Plating: Fixed rack scanner messages & added a loader

 - CHANGE: Packages: Added a marker 'urgent' - v2.59
 - BUG: Fixed a bug on box name generation for [yy]_[incremental number by year] option

 - BUG: Plating: Convert XML LSM response from ISO to UTF8 to avoid crashes on special characters - v2.60

 - BUG: Fixed blocking alter table query on plating save - v2.61
 - CHANGE: On batch auto start, prefix contact id with LC to indicate LSM it's a LC user id
 - CHANGE: Refactored addon installation to take in account db engine & prefix
 - CHANGE: Setup: hide unarchive selectbox when no project is archived

 - BUG: Fixed storage filter when a prefered has been removed (with record still in module_options)

 - CHANGE: Added audit trail on license update & changed box_features field type to TEXT - v2.62
 - BUG: Fixed simple quotes in box features on QC validation (direct & indirect)

 - BUG: Fixed quotes in box json object
 - BUG: Fixed an install bug on 2.61 - v2.63
 - BUG: Made Reject QC action work again

 - CHANGE: Plating mode now supporting LSM - v2.64

 - CHANGE: Cleaned all GET & POST variables, and all db queries - v2.65
 - CHANGE: Fixed allow pooling switch button styles

 - CHANGE: QC: Added confirmation msg box when leave page
 - CHANGE: Fixed bugs related to variables cleaning - v2.66

 - CHANGE: Fixed a plating mode error with secondary management and config combination

 - CHANGE: Improved performance (indexes & algo)
 - BUG: Fixed a js error on notifications when LSM sample with a #
 - BUG: Fixed empty LSM search on plate save when barcode has a #
 - CHANGE: All plates: Limit the number of available packages to 5
 - CHANGE: Listing: fixed bug on barcode filter & delay keyup on all filters

 - CHANGE: Plating: Refactored all CSV loading & added an errors summary
 - CHANGE: Plating: Refactored all rack loading & improved code & errors management

 - CHANGE: Support saas mode licences (Thibaut)
 - CHANGE: Plating & routing: grouped LSM calls to optimize execution time - v2.68

 - BUG: Plating mode: Fixed box_json bug on record creation because of mysql real escape
 - BUG: Plating mode: Fixed existing record update when multiple samples found on same barcode
 - CHANGE: Plating mode: Allow samples replicates - v2.69
 - CHANGE: box_json is now longtext - v2.70

 - CHANGE: Package samples: save to CSV is now POST data
 - CHANGE: Added option to display patient data tooltip on plating or not - v2.71

 - CHANGE: Addon can now be standalone, with a new get parameter standalone=1 
 - CHANGE: Can now define plating without associated package, by project
 - CHANGE: Added HTTP error code on LSM test in setup

 - CHANGE: Added an option to select box model in scanning UI - v2.73
 - CHANGE: Extra field for plating now filtering only active option
 - CHANGE: Remove barcode white spaces on plating & show a notification

 - BUG: Made LSM patient tooltip work on plating mode

 - BUG: Fixed QC reset progression
 - CHANGE: QC custom fields record (Wish 62)
 - BUG: Fixed package id update

 - CHANGE: On LSM shipment status update, added tracking numer & user - v2.75

 - CHANGE: QC user custom field now accepts user field & fixed bug when QC last sample is checked - v2.76

 - CHANGE: LSM connection test: convert response encoding - v2.77
 - CHANGE: APICaller force curl to set http version to 1.1 (apache worker mode problem)
 - CHANGE: Finish plate & Finish plate skip QC modals now showing loader after clickking on different yes buttons - v2.78

 - BUG: Fixed sample removal from plate (Ticket #611119) - v2.79
 - BUG: Fixed sample pos fail on QC - v2.800
 - CHANGE: Transparent addon install - v2.801
 - CHANGE: LSM re-check UI - v2.802

 - CHANGE: LSM calls refactoring and local/remote calls option - v2.803
 - BUG: Escaped caserecordname to avoid display pb when quote/doublequotes
 - BUG: Dealed with accents & quotes
 - BUG: Fixed parameters page not showing LSM tests

 - CHANGE: Changed text No test for Any test

 - BUG: On receiving_lsm_sample_id field creation, create the module_fields entry & added a patch for existing fields (M5882) - v2.804
 - CHANGE: Can now map valuelist LSM/select LC custom field (M5883) - v2.805

 - CHANGED: $action=nologin in lic_ws.php

 - BUG: fixed encoding problem on requester name
 - BUG: fixed isInstalled (addon) function & made pending samples home header work again - v2.806

 - CHANGE: Removed API calls debug traces
 - ADDED: LSM with plating mode & multiple jobs update for one sample name - v2.807