moved request audit in screening function to optional & disabled it; moved set_querylog_args & set_errorhandler_args near top of cgiapp_prerun() so they take effect for login & session update handling
new screen_category table; moved screens 'type' col to category_id; modified all screening terms & screening tests admin functions to accomodate new screen_category table; removed ajax validation from screen description & lab test field_label as these use 2 & 3-col unique keys so can't be validated by AJAX; email reports function uses users secure email address as sender; modifed portal_access function to supply SHA1 hash of current date - so failed login not sent back to portal page without explanation; modified mail_reports.pl to use item names instead of table id accessors
patched L:Dispatch to avoid error on undefined dispatch_path; moved L::Local::QueryLog dispatcher construction from _warn_handler() to BEGIN block to avoid re-creation per request; changed sql.log to Log::Dispatch::File::Rolling object; amended log_rotate.pl to process the new sql.log filenames; added new method ensure_warn_handler_capture() to L::Local::QueryLog for use with non-external fastcgi, where FCGI re-defines the warn handler set in L::L::Q so that sql statements go to Apache error log
changed Dispatch param from _whoami to Class; removed do_ajax from unprotected runmodes, added ajax class to unprotected classes; bugfix to LIMS::_check_portal_referral() - added user profile to list of requirements; increased test count on column_types.t
LIMS::Dispatch passes class_name to LIMS so authen->protected_runmodes can be skipped for certain classes; added hilis user to users table; completed mail_reports.pl functions with L::Model::update_request_dispatch_log()
moved some LIMS::Base methods out to LIMS::Role::Base; new cron mail_reports.pl - shares some methods from LIMS; exempted http requests to Chart methods from authentication to allow mail_reports.pl script to generate charts
moved Devel::Cycle find_cycle() code from cgiapp_init to teardown, and made it permanently active for non-fastcgi requests - found and fixed many circular refs inside callback subs; new resources menu items; new file-uploader scripts
added user permission restrictions to resouces links; restricted resources/new_diagnoses list to users location if not lab-staff - doesn't work properly yet; changed LIMS::_debug_authen() to use LIMS::Local::Debug::DEBUG() instead of self->debug() to avoid circular ref to self in caller; added specimen description to patient summary display
removed reference to in CAP::Authen config callback - causing multiple filehandles to build up; separated calls to different system resources in resource meter code
added ENV variable DB_SESSIONS to force dev server to use db instead of file store for sessions; moved _update_session_userid flag to top of block in cgiapp_prerun so only have to set it once for both new logins & re-authenication after timeout & removed it from _create_user_profile()
set flag in cgiapp_prerun() to update sessions.userid on re-authentication after a session timeout, as session is deleted & re-created (without userid) - still needs more worksvk_diff