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
changed result_summary_opts from AoA to HoA in C::Roles::ResultHandler::process_raw_lab_test_data() to make hadnling optgroup in template easier; result/default.tt handles optgroup and numerical order in construction of select menus; re-authentication sets flash message if user email address empty; fixed some html syntax errors in templates
modified LIMS::cgiapp_prerun() to check for new messages after re-authentication - will mainly benefit external users where idle timeout equals ajax poll new msgs frequency, so will never see ajax notification